summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2008-12-18 12:09:22 -0800
committerKhem Raj <raj.khem@gmail.com>2008-12-18 12:09:22 -0800
commitde73536c6dbbfa26de7a7d009f1dd5cc7ca07c90 (patch)
treeba594cc937ae6540e2214f5ae079b4f7fd242ec0
parente9474d3dc54742065a75d38e7b9c5cdecc803f06 (diff)
uclibc-nptl: Add ldso_hash.patch
* Eanble LDSO_GNU_HASH_SUPPORT in config
-rw-r--r--packages/uclibc/uclibc-nptl/ldso_hash.patch19
-rw-r--r--packages/uclibc/uclibc-nptl/uClibc.distro3
-rw-r--r--packages/uclibc/uclibc_nptl.bb4
3 files changed, 24 insertions, 2 deletions
diff --git a/packages/uclibc/uclibc-nptl/ldso_hash.patch b/packages/uclibc/uclibc-nptl/ldso_hash.patch
new file mode 100644
index 0000000000..8a625f21c2
--- /dev/null
+++ b/packages/uclibc/uclibc-nptl/ldso_hash.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-nptl/uClibc.distro b/packages/uclibc/uclibc-nptl/uClibc.distro
index d51a29715a..853708014b 100644
--- a/packages/uclibc/uclibc-nptl/uClibc.distro
+++ b/packages/uclibc/uclibc-nptl/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
UCLIBC_HAS_THREADS_NATIVE=y
@@ -133,7 +134,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
diff --git a/packages/uclibc/uclibc_nptl.bb b/packages/uclibc/uclibc_nptl.bb
index dbb25f41f1..d261b50b5b 100644
--- a/packages/uclibc/uclibc_nptl.bb
+++ b/packages/uclibc/uclibc_nptl.bb
@@ -25,11 +25,13 @@ FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-nptl', '${FILE_DIRN
#however: we can't depend on virtual/kernel when nptl hits due to depends deadlocking ....
KERNEL_SOURCE = "${CROSS_DIR}/${TARGET_SYS}"
-SRC_URI += "svn://uclibc.org/branches/;module=uClibc-nptl \
+SRC_URI += "svn://uclibc.org/branches/;module=uClibc-nptl;rev=${SRCREV} \
file://uClibc.machine \
file://uClibc.distro \
file://uclibc-arm-ftruncate64.patch;patch=1 \
file://arm_fix_alignment.patch;patch=1 \
"
+SRC_URI_append_arm = " file://ldso_hash.patch;patch=1 "
+SRC_URI_append_armeb = " file://ldso_hash.patch;patch=1 "
S = "${WORKDIR}/uClibc-nptl"