[oe-commits] woglinde : uclibc-0.9.30: enable linker option for hashstyle-gnu

GIT User account git at amethyst.openembedded.net
Sat Nov 15 22:03:26 UTC 2008


Module: openembedded.git
Branch: org.openembedded.dev
Commit: c3c3e495eda917ba2db75dd9238f2efdbed431a1
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=c3c3e495eda917ba2db75dd9238f2efdbed431a1

Author: woglinde <heinold at inf.fu-berlin.de>
Date:   Sat Nov 15 22:47:34 2008 +0100

uclibc-0.9.30: enable linker option for hashstyle-gnu
        * uclibc can be compiled with hashstyle-gnu too
        * add the settings in angstrom-uclibc.inc
        * add patch ldso_hash_arm.patch because binutils
          after 2.18 for arm are somehow broken for the hashstyle
          test in uclibc
        * prefer version 0.9.30 in angstroem may break avr32
          and if we fix it than

---

 .../include/angstrom-2008-preferred-versions.inc   |    2 ++
 conf/distro/include/angstrom-uclibc.inc            |    1 +
 packages/uclibc/uclibc-0.9.30/ldso_hash_arm.patch  |   19 +++++++++++++++++++
 packages/uclibc/uclibc-0.9.30/uClibc.distro        |    1 +
 packages/uclibc/uclibc_0.9.30.bb                   |    6 ++++--
 5 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/conf/distro/include/angstrom-2008-preferred-versions.inc b/conf/distro/include/angstrom-2008-preferred-versions.inc
index e58eb40..0832f31 100644
--- a/conf/distro/include/angstrom-2008-preferred-versions.inc
+++ b/conf/distro/include/angstrom-2008-preferred-versions.inc
@@ -26,5 +26,7 @@ PREFERRED_VERSION_pkgconfig	= "0.23"
 PREFERRED_VERSION_pkgconfig-native = "0.23"
 PREFERRED_VERSION_pulseaudio 	= "0.9.10"
 PREFERRED_VERSION_tiff 		= "3.8.2+4.0.0beta2"
+PREFERRED_VERSION_uclibc-initial = "0.9.30"
+PREFERRED_VERSION_uclibc        = "0.9.30"
 PREFERRED_VERSION_udev 		= "124"
 PREFERRED_VERSION_xserver-kdrive = "1.4.0.90"
diff --git a/conf/distro/include/angstrom-uclibc.inc b/conf/distro/include/angstrom-uclibc.inc
index 8993a6a..c26613b 100644
--- a/conf/distro/include/angstrom-uclibc.inc
+++ b/conf/distro/include/angstrom-uclibc.inc
@@ -32,6 +32,7 @@ BUILD_OPTIMIZATION = "-Os"
 #Note that this testing was done without the gcc-pr32889.patch.
 FULL_OPTIMIZATION_avr32 = "-Os -fomit-frame-pointer"
 
+TARGET_LINK_HASH_STYLE = "-Wl,--hash-style=gnu"
 
 CXXFLAGS += "-fvisibility-inlines-hidden"
 
diff --git a/packages/uclibc/uclibc-0.9.30/ldso_hash_arm.patch b/packages/uclibc/uclibc-0.9.30/ldso_hash_arm.patch
new file mode 100644
index 0000000..8a625f2
--- /dev/null
+++ b/packages/uclibc/uclibc-0.9.30/ldso_hash_arm.patch
@@ -0,0 +1,19 @@
+Index: uClibc-0.9.30/Rules.mak
+===================================================================
+--- uClibc-0.9.30.orig/Rules.mak	2008-11-15 16:35:00.713664783 +0100
++++ uClibc-0.9.30/Rules.mak	2008-11-15 16:36:32.776988120 +0100
+@@ -519,13 +519,7 @@
+ endif
+ 
+ ifeq ($(LDSO_GNU_HASH_SUPPORT),y)
+-# Be sure that binutils support it
+-LDFLAGS_GNUHASH:=$(call check_ld,--hash-style=gnu)
+-ifeq ($(LDFLAGS_GNUHASH),)
+-$(error Your binutils don't support --hash-style option, while you want to use it)
+-else
+-LDFLAGS_NOSTRIP += -Wl,$(LDFLAGS_GNUHASH)
+-endif
++LDFLAGS_NOSTRIP += -Wl,--hash-style=gnu
+ endif
+ 
+ LDFLAGS:=$(LDFLAGS_NOSTRIP) -Wl,-z,defs
diff --git a/packages/uclibc/uclibc-0.9.30/uClibc.distro b/packages/uclibc/uclibc-0.9.30/uClibc.distro
index 7374d0c..b072b2f 100644
--- a/packages/uclibc/uclibc-0.9.30/uClibc.distro
+++ b/packages/uclibc/uclibc-0.9.30/uClibc.distro
@@ -14,6 +14,7 @@ LDSO_BASE_FILENAME="ld.so"
 # UCLIBC_STATIC_LDCONFIG is not set
 LDSO_RUNPATH=y
 UCLIBC_CTOR_DTOR=y
+LDSO_GNU_HASH_SUPPORT=y
 # HAS_NO_THREADS is not set
 UCLIBC_HAS_THREADS=y
 # PTHREADS_DEBUG_SUPPORT is not set
diff --git a/packages/uclibc/uclibc_0.9.30.bb b/packages/uclibc/uclibc_0.9.30.bb
index 4b7a8a9..faeaeca 100644
--- a/packages/uclibc/uclibc_0.9.30.bb
+++ b/packages/uclibc/uclibc_0.9.30.bb
@@ -15,9 +15,11 @@ require uclibc.inc
 PROVIDES += "virtual/${TARGET_PREFIX}libc-for-gcc"
 
 SRC_URI += "file://uClibc.machine file://uClibc.distro \
-                file://arm-linuxthreads.patch;patch=1 \
-                file://linuxthreads-changes.patch;patch=1 \
+            file://arm-linuxthreads.patch;patch=1 \
+            file://linuxthreads-changes.patch;patch=1 \
 	   "
+SRC_URI_append_arm = " file://ldso_hash_arm.patch;patch=1 "
+SRC_URI_append_armeb = " file://ldso_hash_arm.patch;patch=1 "
 
 #recent versions uclibc require real kernel headers
 PACKAGE_ARCH = "${MACHINE_ARCH}"





More information about the Openembedded-commits mailing list