uclibc: build uclibc unstripped by default
authorAlexey Brodkin <alexey.brodkin@gmail.com>
Sun, 12 Oct 2014 13:15:39 +0000 (15:15 +0200)
committerPeter Korsgaard <peter@korsgaard.com>
Sun, 12 Oct 2014 14:14:17 +0000 (16:14 +0200)
uClibc can be built stripped (implemented as link-time option in uClibc).
This could be useful for those who build root fs manually.

In Buildroot there is a global strip stage wich strips most of shared libs
in "target" folder (wexcept kernel modules known to not work properly being
stripped and libpthread required to be non-stripped for correct debugging with
gdb of multi-threaded apps).

So there're few problems with current implementation:
 1. uClibc is being stripped 2 times (first on its build stage, second on
    global Buildroot strip stage)
 2. uClibc libs in "staging" folder are also always stripped except if
    "no strip" (BR2_STRIP_none) is explicitly is selected in Buildroot config.
    That makes it possible to remote debug uClibc libs on target only if target
    rootfs was not stripped (which might not be possible due to huge libs
    like Qt)

This patch disables embedded strip in uClibc (still users may modify uClibc
config and explicitly set "DOSTRIP=yes" if really needed).

Interesting that DOSTRIP was not only selected in uClibc config but also was
force set with Buildroot on uClibc configuration step with UCLIBC_STRIP_CONFIG.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Waldemar Brodkorb <wbx@openadk.org>
Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/uclibc/uClibc-0.9.31.config
package/uclibc/uClibc-0.9.33.config
package/uclibc/uClibc-snapshot.config
package/uclibc/uclibc.mk

index e990178df5484638b4f337d8a731f60f5620d255..b23ba731ae5086a68b43d1d34949bc9e177c4a70 100644 (file)
@@ -228,7 +228,7 @@ CROSS_COMPILER_PREFIX=""
 UCLIBC_EXTRA_CFLAGS=""
 # DODEBUG is not set
 # DODEBUG_PT is not set
-DOSTRIP=y
+# DOSTRIP is not set
 # DOASSERTS is not set
 # SUPPORT_LD_DEBUG is not set
 # SUPPORT_LD_DEBUG_EARLY is not set
index eb39df6edaa28a502e716f74bcfc0b4b8f93c2f7..0fbce19b969f92a4e5c1013e19681c3aac9547a4 100644 (file)
@@ -266,7 +266,7 @@ CROSS_COMPILER_PREFIX=""
 UCLIBC_EXTRA_CFLAGS=""
 # DODEBUG is not set
 # DODEBUG_PT is not set
-DOSTRIP=y
+# DOSTRIP is not set
 # DOASSERTS is not set
 # SUPPORT_LD_DEBUG is not set
 # SUPPORT_LD_DEBUG_EARLY is not set
index 890aefd8ec5919fe96fb7f170425d186e7d071d0..dea767e4ae7fa2b4a6a3fbbfef3be006dc5f2269 100644 (file)
@@ -271,7 +271,7 @@ CROSS_COMPILER_PREFIX=""
 UCLIBC_EXTRA_CFLAGS=""
 # DODEBUG is not set
 # DODEBUG_PT is not set
-DOSTRIP=y
+# DOSTRIP is not set
 # DOASSERTS is not set
 # SUPPORT_LD_DEBUG is not set
 # SUPPORT_LD_DEBUG_EARLY is not set
index 1469f8dff76af0af945daaf838e681c25ea95882..d66da17dd5542397a6bd959cee065f93e171c491 100644 (file)
@@ -381,16 +381,6 @@ else
 UCLIBC_WCHAR_CONFIG = $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_WCHAR,$(@D)/.config)
 endif
 
-#
-# strip
-#
-
-ifeq ($(BR2_STRIP_none),y)
-UCLIBC_STRIP_CONFIG = $(call KCONFIG_DISABLE_OPT,DOSTRIP,$(@D)/.config)
-else
-UCLIBC_STRIP_CONFIG = $(call KCONFIG_ENABLE_OPT,DOSTRIP,$(@D)/.config)
-endif
-
 #
 # Commands
 #
@@ -430,7 +420,6 @@ define UCLIBC_KCONFIG_FIXUP_CMDS
        $(UCLIBC_THREAD_DEBUG_CONFIG)
        $(UCLIBC_LOCALE_CONFIG)
        $(UCLIBC_WCHAR_CONFIG)
-       $(UCLIBC_STRIP_CONFIG)
 endef
 
 ifeq ($(BR2_UCLIBC_INSTALL_TEST_SUITE),y)