diff options
author | Abdoulaye Walsimou Gaye <walsimou@walsimou.com> | 2009-08-16 20:26:27 +0200 |
---|---|---|
committer | Abdoulaye Walsimou Gaye <walsimou@walsimou.com> | 2009-08-16 20:26:27 +0200 |
commit | dede3ad80946c862ae8301769b12adfee7ce892d (patch) | |
tree | e2fec71df66465765acff447827c21e2d159f14d | |
parent | 290956cc3a790e4d8167073f5531b1de2b989e9b (diff) | |
download | embtoolkit-dede3ad80946c862ae8301769b12adfee7ce892d.tar.gz embtoolkit-dede3ad80946c862ae8301769b12adfee7ce892d.tar.bz2 embtoolkit-dede3ad80946c862ae8301769b12adfee7ce892d.tar.xz |
Rootfs: give the ability to strip binaries in the root filesystem
Signed-off-by: Abdoulaye Walsimou Gaye <walsimou@walsimou.com>
-rw-r--r-- | Kconfig | 9 | ||||
-rw-r--r-- | mk/initialpath.mk | 1 | ||||
-rw-r--r-- | mk/rootfs.mk | 21 |
3 files changed, 27 insertions, 4 deletions
@@ -55,6 +55,15 @@ config EMBTK_TARGET_COMPILER_CFLAGS embedded system target are built: C library, packages, ... By default we optimize for size. default "-Os" +config EMBTK_TARGET_STRIPPED + bool "Strip target's binaries" + help + Say yes if you want to strip binaries (including libraries) generated + for your target embedded system. This will reduce the size of these + binaries. + Note: These binaries are only stripped if you choose to build a root + filesystem. + endmenu menu "Debugging system" diff --git a/mk/initialpath.mk b/mk/initialpath.mk index d2091a8..4976052 100644 --- a/mk/initialpath.mk +++ b/mk/initialpath.mk @@ -35,6 +35,7 @@ export SYSROOT TOOLS TOOLS_BUILD PACKAGES_BUILD ROOTFS HOSTTOOLS mkinitialpath: @mkdir -p $(SYSROOT) @mkdir -p $(SYSROOT)/usr + @mkdir -p $(SYSROOT)/root @mkdir -p $(SYSROOT)/usr/lib @mkdir -p $(TOOLS) @mkdir -p $(TOOLS_BUILD) diff --git a/mk/rootfs.mk b/mk/rootfs.mk index fd03370..507a77e 100644 --- a/mk/rootfs.mk +++ b/mk/rootfs.mk @@ -67,21 +67,34 @@ ifeq ($(CONFIG_EMBTK_TARGET_ARCH_64BITS),y) @mkdir -p $(ROOTFS)/usr/lib64 @rm -rf $(ROOTFS)/lib $(ROOTFS)/usr/lib @cp -R $(SYSROOT)/lib64/* $(ROOTFS)/lib64/ - @-$(TARGETSTRIP) $(ROOTFS)/lib64/*.so @cp -R $(SYSROOT)/usr/bin/* $(ROOTFS)/usr/bin/ - @-$(TARGETSTRIP) $(ROOTFS)/usr/bin/* @cp -R $(SYSROOT)/usr/sbin/* $(ROOTFS)/usr/sbin/ + @cp -R $(SYSROOT)/root $(ROOTFS)/root +ifeq ($(CONFIG_EMBTK_TARGET_STRIPPED),y) + $(call EMBTK_GENERIC_MESSAGE,"Stripping binaries as specified...") + @-$(TARGETSTRIP) $(ROOTFS)/lib64/*.so + @-$(TARGETSTRIP) $(ROOTFS)/bin/* + @-$(TARGETSTRIP) $(ROOTFS)/usr/bin/* @$(TARGETSTRIP) $(ROOTFS)/usr/sbin/* +endif + else @mkdir -p $(ROOTFS)/lib @cp -R $(SYSROOT)/lib/* $(ROOTFS)/lib/ - @-$(TARGETSTRIP) $(ROOTFS)/lib/*.so @cp -R $(SYSROOT)/usr/bin/* $(ROOTFS)/usr/bin/ - @-$(TARGETSTRIP) $(ROOTFS)/usr/bin/* @cp -R $(SYSROOT)/usr/sbin/* $(ROOTFS)/usr/sbin/ + @cp -R $(SYSROOT)/root $(ROOTFS)/root +ifeq ($(CONFIG_EMBTK_TARGET_STRIPPED),y) + $(call EMBTK_GENERIC_MESSAGE,"Stripping binaries as specified...") + @-$(TARGETSTRIP) $(ROOTFS)/lib/*.so + @-$(TARGETSTRIP) $(ROOTFS)/bin/* + @-$(TARGETSTRIP) $(ROOTFS)/usr/bin/* @-$(TARGETSTRIP) $(ROOTFS)/usr/sbin/* endif +endif + + rootfs_clean: $(ROOTFS_HOSTTOOLS_CLEAN) $(ROOTFS_COMPONENTS_CLEAN) @rm -rf rootfs-* initramfs-* |