add a config option to select the binary stripping method to use (between none, strip...
authorNicolas Thill <nico@openwrt.org>
Tue, 7 Jul 2009 02:34:58 +0000 (02:34 +0000)
committerNicolas Thill <nico@openwrt.org>
Tue, 7 Jul 2009 02:34:58 +0000 (02:34 +0000)
SVN-Revision: 16728

Config.in
rules.mk
toolchain/Config.in

index 4d75896..d7ce63e 100644 (file)
--- a/Config.in
+++ b/Config.in
@@ -88,7 +88,7 @@ config ALL
        bool "Select all packages by default"
        default n
 
-comment "Features"
+comment "General build options"
 
 config CLEAN_IPKG
        bool
@@ -97,6 +97,35 @@ config CLEAN_IPKG
        help
                This removes all ipkg data from the target directory before building the root fs
 
+choice
+       prompt "Binary stripping method"
+       default USE_STRIP   if USE_GLIBC || USE_EGLIBC
+       default USE_SSTRIP
+       help
+         Select the binary stripping method you wish to use.
+
+       config NO_STRIP
+               bool "none"
+               help
+                 This will install unstripped binaries (useful for native compiling/debugging)
+
+       config USE_STRIP
+               bool "strip"
+               depends !DEBUG
+               help
+                 This will install binaries stripped using strip from binutils
+
+
+       config USE_SSTRIP
+               bool "sstrip"
+               depends !DEBUG
+               depends !USE_GLIBC
+               depends !USE_EGLIBC
+               help
+                 This will install binaries stripped using sstrip
+
+endchoice
+
 comment "Package build options"
 
 config DEBUG
@@ -113,10 +142,6 @@ config DEBUG_DIR
                This will install all compiled package binaries into build_dir/target-*/debug-*/,
                useful for cross-debugging via gdb/gdbserver
 
-config NO_STRIP
-       bool "Install unstripped binary on the target (useful for native compiling/debugging)"
-       default n
-
 comment "Kernel build options"
 
 config KERNEL_KALLSYMS
index 15d62bc..05609b9 100644 (file)
--- a/rules.mk
+++ b/rules.mk
@@ -104,7 +104,6 @@ HOST_LDFLAGS:=-L$(STAGING_DIR_HOST)/lib
 
 TARGET_CC:=$(TARGET_CROSS)gcc
 TARGET_CXX:=$(if $(CONFIG_INSTALL_LIBSTDCPP),$(TARGET_CROSS)g++,no)
-STRIP:=$(STAGING_DIR_HOST)/bin/sstrip
 PATCH:=$(SCRIPT_DIR)/patch-kernel.sh
 SED:=$(STAGING_DIR_HOST)/bin/sed -i -e
 CP:=cp -fpR
@@ -137,7 +136,15 @@ TARGET_CONFIGURE_OPTS:= \
 # strip an entire directory
 ifneq ($(CONFIG_NO_STRIP),)
   RSTRIP:=:
+  STRIP:=:
 else
+  ifneq ($(CONFIG_USE_STRIP),)
+    STRIP:=$(TARGET_CROSS)strip
+  else
+    ifneq ($(CONFIG_USE_SSTRIP),)
+      STRIP:=$(STAGING_DIR_HOST)/bin/sstrip
+    endif
+  endif
   RSTRIP:= \
     NM="$(TARGET_CROSS)nm" \
     STRIP="$(STRIP)" \
index 5b5ad37..3ff0801 100644 (file)
@@ -54,12 +54,10 @@ choice
        config USE_EGLIBC
                bool "Use eglibc"
                depends !avr32
-               select NO_STRIP
        
        config USE_GLIBC
                bool "Use glibc"
                depends !avr32
-               select NO_STRIP
        
        config USE_UCLIBC
                bool "Use uClibc"