diff options
author | Karel Kočí <karel.koci@nic.cz> | 2019-08-05 13:31:52 +0200 |
---|---|---|
committer | Josef Schlehofer <pepe.schlehofer@gmail.com> | 2019-08-06 09:56:59 +0200 |
commit | d9020050b3a93517b8a4a10b5c51d64b9547f90e (patch) | |
tree | cca1a8a9d6c2ae24e7831c6e4074c03e571e71bc | |
parent | d7bdd9045b1fbd969de04c455eaa36bb8f72a564 (diff) |
btrfs-progs: use box version of btrfs tool (busybox like)
This instead of building every tool separately builds one btrfs binary
and additional tools are links to this binary. This is same approach as
busybox is using.
This splits list of tools to two. boxprogs are tools that are boxed to
code btrfs binary and progs are tools that are not.
This also overload default all make target of Build/Compile and instead
builds (unified) btrfs.progs and separate progs.
Signed-off-by: Karel Kočí <karel.koci@nic.cz>
-rw-r--r-- | utils/btrfs-progs/Makefile | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/utils/btrfs-progs/Makefile b/utils/btrfs-progs/Makefile index 25d077115..167c51c85 100644 --- a/utils/btrfs-progs/Makefile +++ b/utils/btrfs-progs/Makefile @@ -44,8 +44,8 @@ define Package/btrfs-progs/config source "$(SOURCE)/Config.in" endef -progs = btrfs btrfs-find-root btrfs-image btrfs-map-logical \ - btrfs-select-super btrfstune mkfs.btrfs +boxprogs = btrfsck mkfs.btrfs btrfs-image btrfstune btrfs-find-root +progs = btrfs-map-logical btrfs-select-super TARGET_CFLAGS += -ffunction-sections -fdata-sections TARGET_LDFLAGS += -Wl,--gc-sections -Wl,--as-needed @@ -61,6 +61,10 @@ ifneq ($(CONFIG_BTRFS_PROGS_ZSTD),y) CONFIGURE_ARGS += --disable-zstd endif +MAKE_INSTALL_FLAGS += BUILD_PROGRAMS=0 + +Build/Compile=$(call Build/Compile/Default,btrfs.box $(progs)) + define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ @@ -72,8 +76,9 @@ define Package/btrfs-progs/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/libbtrfs.so* $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libbtrfsutil.so* $(1)/usr/lib $(INSTALL_DIR) $(1)/usr/bin - $(INSTALL_BIN) $(addprefix $(PKG_INSTALL_DIR)/usr/bin/, $(progs)) $(1)/usr/bin/ - $(LN) btrfs $(1)/usr/bin/btrfsck + $(INSTALL_BIN) $(PKG_BUILD_DIR)/btrfs.box $(1)/usr/bin/btrfs + $(foreach prog,$(boxprogs),$(LN) btrfs $(1)/usr/bin/$(prog);) + $(foreach prog,$(progs),$(INSTALL_BIN) $(PKG_BUILD_DIR)/$(prog) $(1)/usr/bin/;) $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/btrfs-scan.init $(1)/etc/init.d/btrfs-scan endef |