diff options
author | Khem Raj <raj.khem@gmail.com> | 2012-01-06 20:40:23 -0800 |
---|---|---|
committer | Saul Wold <sgw@linux.intel.com> | 2012-01-09 21:51:50 -0800 |
commit | 289d09176f8b6f66f6a7807b57f10e86939942f5 (patch) | |
tree | adff6c96ab37208b1bc38ae3b28ac2ba40b0ef39 /meta/recipes-core/eglibc | |
parent | 553deffc8040afabd56b1c1d87a8a8d24bbae5d0 (diff) | |
download | openembedded-core-289d09176f8b6f66f6a7807b57f10e86939942f5.tar.gz openembedded-core-289d09176f8b6f66f6a7807b57f10e86939942f5.tar.bz2 openembedded-core-289d09176f8b6f66f6a7807b57f10e86939942f5.tar.xz openembedded-core-289d09176f8b6f66f6a7807b57f10e86939942f5.zip |
eglibc: Upgrade recipes 2.14 -> 2.15
Add patch to provide __finite_sqrt functions for ppc
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta/recipes-core/eglibc')
-rw-r--r-- | meta/recipes-core/eglibc/cross-localedef-native_2.15.bb (renamed from meta/recipes-core/eglibc/cross-localedef-native_2.14.bb) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/IO-acquire-lock-fix.patch (renamed from meta/recipes-core/eglibc/eglibc-2.14/IO-acquire-lock-fix.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/armv4-eabi-compile-fix.patch (renamed from meta/recipes-core/eglibc/eglibc-2.14/armv4-eabi-compile-fix.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/eglibc-rpc-export-again.patch (renamed from meta/recipes-core/eglibc/eglibc-2.14/eglibc-rpc-export-again.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/eglibc-svn-arm-lowlevellock-include-tls.patch (renamed from meta/recipes-core/eglibc/eglibc-2.14/eglibc-svn-arm-lowlevellock-include-tls.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/etc/ld.so.conf (renamed from meta/recipes-core/eglibc/eglibc-2.14/etc/ld.so.conf) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/generate-supported.mk (renamed from meta/recipes-core/eglibc/eglibc-2.14/generate-supported.mk) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/glibc-2.14-libdl-crash.patch (renamed from meta/recipes-core/eglibc/eglibc-2.14/glibc-2.14-libdl-crash.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/ld-search-order.patch (renamed from meta/recipes-core/eglibc/eglibc-2.14/ld-search-order.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/mips-rld-map-check.patch (renamed from meta/recipes-core/eglibc/eglibc-2.14/mips-rld-map-check.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/multilib_readlib.patch (renamed from meta/recipes-core/eglibc/eglibc-2.14/multilib_readlib.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/ppc-sqrt.patch (renamed from meta/recipes-core/eglibc/eglibc-2.14/ppc-sqrt.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/ppc-sqrt_finite.patch | 112 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/stack-protector-test.patch (renamed from meta/recipes-core/eglibc/eglibc-2.14/stack-protector-test.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/use-sysroot-cxx-headers.patch (renamed from meta/recipes-core/eglibc/eglibc-2.14/use-sysroot-cxx-headers.patch) | 30 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/x86_fenv.patch | 29 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-initial_2.15.bb (renamed from meta/recipes-core/eglibc/eglibc-initial_2.14.bb) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-locale_2.15.bb (renamed from meta/recipes-core/eglibc/eglibc-locale_2.14.bb) | 0 | ||||
-rw-r--r-- | meta/recipes-core/eglibc/eglibc_2.15.bb (renamed from meta/recipes-core/eglibc/eglibc_2.14.bb) | 16 |
19 files changed, 172 insertions, 15 deletions
diff --git a/meta/recipes-core/eglibc/cross-localedef-native_2.14.bb b/meta/recipes-core/eglibc/cross-localedef-native_2.15.bb index 6f311fc33..6f311fc33 100644 --- a/meta/recipes-core/eglibc/cross-localedef-native_2.14.bb +++ b/meta/recipes-core/eglibc/cross-localedef-native_2.15.bb diff --git a/meta/recipes-core/eglibc/eglibc-2.14/IO-acquire-lock-fix.patch b/meta/recipes-core/eglibc/eglibc-2.15/IO-acquire-lock-fix.patch index cf5803585..cf5803585 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/IO-acquire-lock-fix.patch +++ b/meta/recipes-core/eglibc/eglibc-2.15/IO-acquire-lock-fix.patch diff --git a/meta/recipes-core/eglibc/eglibc-2.14/armv4-eabi-compile-fix.patch b/meta/recipes-core/eglibc/eglibc-2.15/armv4-eabi-compile-fix.patch index c2407eea0..c2407eea0 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/armv4-eabi-compile-fix.patch +++ b/meta/recipes-core/eglibc/eglibc-2.15/armv4-eabi-compile-fix.patch diff --git a/meta/recipes-core/eglibc/eglibc-2.14/eglibc-rpc-export-again.patch b/meta/recipes-core/eglibc/eglibc-2.15/eglibc-rpc-export-again.patch index 15bd2f851..15bd2f851 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/eglibc-rpc-export-again.patch +++ b/meta/recipes-core/eglibc/eglibc-2.15/eglibc-rpc-export-again.patch diff --git a/meta/recipes-core/eglibc/eglibc-2.14/eglibc-svn-arm-lowlevellock-include-tls.patch b/meta/recipes-core/eglibc/eglibc-2.15/eglibc-svn-arm-lowlevellock-include-tls.patch index 4313aa519..4313aa519 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/eglibc-svn-arm-lowlevellock-include-tls.patch +++ b/meta/recipes-core/eglibc/eglibc-2.15/eglibc-svn-arm-lowlevellock-include-tls.patch diff --git a/meta/recipes-core/eglibc/eglibc-2.14/etc/ld.so.conf b/meta/recipes-core/eglibc/eglibc-2.15/etc/ld.so.conf index e69de29bb..e69de29bb 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/etc/ld.so.conf +++ b/meta/recipes-core/eglibc/eglibc-2.15/etc/ld.so.conf diff --git a/meta/recipes-core/eglibc/eglibc-2.14/generate-supported.mk b/meta/recipes-core/eglibc/eglibc-2.15/generate-supported.mk index d2a28c2dc..d2a28c2dc 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/generate-supported.mk +++ b/meta/recipes-core/eglibc/eglibc-2.15/generate-supported.mk diff --git a/meta/recipes-core/eglibc/eglibc-2.14/glibc-2.14-libdl-crash.patch b/meta/recipes-core/eglibc/eglibc-2.15/glibc-2.14-libdl-crash.patch index 1c30c9d83..1c30c9d83 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/glibc-2.14-libdl-crash.patch +++ b/meta/recipes-core/eglibc/eglibc-2.15/glibc-2.14-libdl-crash.patch diff --git a/meta/recipes-core/eglibc/eglibc-2.14/ld-search-order.patch b/meta/recipes-core/eglibc/eglibc-2.15/ld-search-order.patch index 40ae6d37f..40ae6d37f 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/ld-search-order.patch +++ b/meta/recipes-core/eglibc/eglibc-2.15/ld-search-order.patch diff --git a/meta/recipes-core/eglibc/eglibc-2.14/mips-rld-map-check.patch b/meta/recipes-core/eglibc/eglibc-2.15/mips-rld-map-check.patch index 9b646fea9..9b646fea9 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/mips-rld-map-check.patch +++ b/meta/recipes-core/eglibc/eglibc-2.15/mips-rld-map-check.patch diff --git a/meta/recipes-core/eglibc/eglibc-2.14/multilib_readlib.patch b/meta/recipes-core/eglibc/eglibc-2.15/multilib_readlib.patch index 1542b1b51..1542b1b51 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/multilib_readlib.patch +++ b/meta/recipes-core/eglibc/eglibc-2.15/multilib_readlib.patch diff --git a/meta/recipes-core/eglibc/eglibc-2.14/ppc-sqrt.patch b/meta/recipes-core/eglibc/eglibc-2.15/ppc-sqrt.patch index 203040c15..203040c15 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/ppc-sqrt.patch +++ b/meta/recipes-core/eglibc/eglibc-2.15/ppc-sqrt.patch diff --git a/meta/recipes-core/eglibc/eglibc-2.15/ppc-sqrt_finite.patch b/meta/recipes-core/eglibc/eglibc-2.15/ppc-sqrt_finite.patch new file mode 100644 index 000000000..52890510c --- /dev/null +++ b/meta/recipes-core/eglibc/eglibc-2.15/ppc-sqrt_finite.patch @@ -0,0 +1,112 @@ +on ppc fixes the errors like below +| ./.libs/libpulsecore-1.1.so: undefined reference to `__sqrt_finite' +| collect2: ld returned 1 exit status + +Upstream-Status: Pending + +ChangeLog + +2012-01-06 Khem Raj <raj.khem@gmail.com> + + * sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c: Add __*_finite alias. + Remove cruft. + * sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c: Ditto. + * sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c: Ditto. + * sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c: Ditto. + +Index: libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c +=================================================================== +--- libc.orig/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c 2012-01-06 18:07:42.296909187 -0800 ++++ libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c 2012-01-06 18:09:22.572914856 -0800 +@@ -39,14 +39,8 @@ + We find the actual square root and half of its reciprocal + simultaneously. */ + +-#ifdef __STDC__ + double + __ieee754_sqrt (double b) +-#else +-double +-__ieee754_sqrt (b) +- double b; +-#endif + { + if (__builtin_expect (b > 0, 1)) + { +@@ -132,3 +126,4 @@ + } + return f_wash (b); + } ++strong_alias (__ieee754_sqrt, __sqrt_finite) +Index: libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c +=================================================================== +--- libc.orig/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c 2012-01-06 18:10:37.068917644 -0800 ++++ libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c 2012-01-06 18:11:33.408920635 -0800 +@@ -37,14 +37,8 @@ + We find the reciprocal square root and use that to compute the actual + square root. */ + +-#ifdef __STDC__ + float + __ieee754_sqrtf (float b) +-#else +-float +-__ieee754_sqrtf (b) +- float b; +-#endif + { + if (__builtin_expect (b > 0, 1)) + { +@@ -99,3 +93,4 @@ + } + return f_washf (b); + } ++strong_alias (__ieee754_sqrtf, __sqrtf_finite) +Index: libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c +=================================================================== +--- libc.orig/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c 2012-01-06 18:11:51.460925644 -0800 ++++ libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c 2012-01-06 18:12:39.344924405 -0800 +@@ -39,14 +39,8 @@ + We find the actual square root and half of its reciprocal + simultaneously. */ + +-#ifdef __STDC__ + double + __ieee754_sqrt (double b) +-#else +-double +-__ieee754_sqrt (b) +- double b; +-#endif + { + if (__builtin_expect (b > 0, 1)) + { +@@ -132,3 +126,4 @@ + } + return f_wash (b); + } ++strong_alias (__ieee754_sqrt, __sqrt_finite) +Index: libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c +=================================================================== +--- libc.orig/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c 2012-01-06 18:13:00.892924586 -0800 ++++ libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c 2012-01-06 18:15:27.992931106 -0800 +@@ -37,14 +37,8 @@ + We find the reciprocal square root and use that to compute the actual + square root. */ + +-#ifdef __STDC__ + float + __ieee754_sqrtf (float b) +-#else +-float +-__ieee754_sqrtf (b) +- float b; +-#endif + { + if (__builtin_expect (b > 0, 1)) + { +@@ -99,3 +93,4 @@ + } + return f_washf (b); + } ++strong_alias (__ieee754_sqrtf, __sqrtf_finite) diff --git a/meta/recipes-core/eglibc/eglibc-2.14/stack-protector-test.patch b/meta/recipes-core/eglibc/eglibc-2.15/stack-protector-test.patch index dbf70a974..dbf70a974 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/stack-protector-test.patch +++ b/meta/recipes-core/eglibc/eglibc-2.15/stack-protector-test.patch diff --git a/meta/recipes-core/eglibc/eglibc-2.14/use-sysroot-cxx-headers.patch b/meta/recipes-core/eglibc/eglibc-2.15/use-sysroot-cxx-headers.patch index c06eebfac..7f8225371 100644 --- a/meta/recipes-core/eglibc/eglibc-2.14/use-sysroot-cxx-headers.patch +++ b/meta/recipes-core/eglibc/eglibc-2.15/use-sysroot-cxx-headers.patch @@ -10,27 +10,33 @@ Upstream-Status: Inappropriate [OE-specific] --- a/configure.in +++ b/configure.in -@@ -1118,9 +1118,8 @@ if test -n "$sysheaders"; then - SYSINCLUDES="$SYSINCLUDES \ +@@ -1094,11 +1094,10 @@ if test -n "$sysheaders"; then -isystem `echo $sysheaders | sed 's/:/ -isystem /g'`" if test -n "$CXX"; then + CXX_SYSINCLUDES= - cxxversion=`$CXX -dumpversion 2>&AS_MESSAGE_LOG_FD` && cxxmachine=`$CXX -dumpmachine 2>&AS_MESSAGE_LOG_FD` && -- cxxheaders=`$CXX -print-file-name=../../../../include/c++/`"$cxxversion" && -+ cxxheaders=`$CXX -print-sysroot`"$prefix/include/c++" && - CXX_SYSINCLUDES="-isystem $cxxheaders \ + for d in include "$cxxmachine/include"; do +- i=../../../../$d/c++/$cxxversion +- cxxheaders=`$CXX -print-file-name="$i"` && ++ i="$prefix/$d/c++" ++ cxxheaders=`$CXX -print-sysroot`"$i" && + test "x$cxxheaders" != x && test "x$i" != "x$cxxheaders" && + CXX_SYSINCLUDES="$CXX_SYSINCLUDES -isystem $cxxheaders \ -isystem $cxxheaders/$cxxmachine -isystem $cxxheaders/backward" - fi --- a/configure +++ b/configure -@@ -5544,9 +5544,8 @@ if test -n "$sysheaders"; then - SYSINCLUDES="$SYSINCLUDES \ +@@ -5618,11 +5618,10 @@ if test -n "$sysheaders"; then -isystem `echo $sysheaders | sed 's/:/ -isystem /g'`" if test -n "$CXX"; then + CXX_SYSINCLUDES= - cxxversion=`$CXX -dumpversion 2>&5` && cxxmachine=`$CXX -dumpmachine 2>&5` && -- cxxheaders=`$CXX -print-file-name=../../../../include/c++/`"$cxxversion" && -+ cxxheaders=`$CXX -print-sysroot`"$prefix/include/c++" && - CXX_SYSINCLUDES="-isystem $cxxheaders \ + for d in include "$cxxmachine/include"; do +- i=../../../../$d/c++/$cxxversion +- cxxheaders=`$CXX -print-file-name="$i"` && ++ i="$prefix/$d/c++" ++ cxxheaders=`$CXX -print-sysroot`"$i" && + test "x$cxxheaders" != x && test "x$i" != "x$cxxheaders" && + CXX_SYSINCLUDES="$CXX_SYSINCLUDES -isystem $cxxheaders \ -isystem $cxxheaders/$cxxmachine -isystem $cxxheaders/backward" - fi diff --git a/meta/recipes-core/eglibc/eglibc-2.15/x86_fenv.patch b/meta/recipes-core/eglibc/eglibc-2.15/x86_fenv.patch new file mode 100644 index 000000000..40c1c4d67 --- /dev/null +++ b/meta/recipes-core/eglibc/eglibc-2.15/x86_fenv.patch @@ -0,0 +1,29 @@ +--- a/sysdeps/x86_64/fpu/bits/fenv.h ++++ b/sysdeps/x86_64/fpu/bits/fenv.h +@@ -112,16 +112,24 @@ __NTH (feraiseexcept (int __excepts)) + { + /* One example of a invalid operation is 0.0 / 0.0. */ + float __f = 0.0; +- ++# if defined __SSE_MATH__ || __WORDSIZE == 64 + __asm__ __volatile__ ("divss %0, %0 " : : "x" (__f)); ++# else ++ __asm__ __volatile__ ("fdiv %%st, %%st(0); fwait" ++ : "=t" (__f) : "0" (__f)); ++# endif + (void) &__f; + } + if ((FE_DIVBYZERO & __excepts) != 0) + { + float __f = 1.0; + float __g = 0.0; +- ++# if defined __SSE_MATH__ || __WORDSIZE == 64 + __asm__ __volatile__ ("divss %1, %0" : : "x" (__f), "x" (__g)); ++# else ++ __asm__ __volatile__ ("fdivp %%st(1), %%st; fwait" ++ : "=t" (__f) : "0" (__f), "u" (__g) : "st(1)"); ++# endif + (void) &__f; + } + diff --git a/meta/recipes-core/eglibc/eglibc-initial_2.14.bb b/meta/recipes-core/eglibc/eglibc-initial_2.15.bb index 787c76260..787c76260 100644 --- a/meta/recipes-core/eglibc/eglibc-initial_2.14.bb +++ b/meta/recipes-core/eglibc/eglibc-initial_2.15.bb diff --git a/meta/recipes-core/eglibc/eglibc-locale_2.14.bb b/meta/recipes-core/eglibc/eglibc-locale_2.15.bb index ce6c1d232..ce6c1d232 100644 --- a/meta/recipes-core/eglibc/eglibc-locale_2.14.bb +++ b/meta/recipes-core/eglibc/eglibc-locale_2.15.bb diff --git a/meta/recipes-core/eglibc/eglibc_2.14.bb b/meta/recipes-core/eglibc/eglibc_2.15.bb index ad2161e1d..6d66342d5 100644 --- a/meta/recipes-core/eglibc/eglibc_2.14.bb +++ b/meta/recipes-core/eglibc/eglibc_2.15.bb @@ -1,12 +1,11 @@ require eglibc.inc -SRCREV = "15870" +SRCREV = "16540" DEPENDS += "gperf-native" -PR = "r3" PR_append = "+svnr${SRCPV}" -EGLIBC_BRANCH="eglibc-2_14" +EGLIBC_BRANCH="eglibc-2_15" SRC_URI = "svn://www.eglibc.org/svn/branches/;module=${EGLIBC_BRANCH};proto=http \ file://eglibc-svn-arm-lowlevellock-include-tls.patch \ file://IO-acquire-lock-fix.patch \ @@ -20,6 +19,8 @@ SRC_URI = "svn://www.eglibc.org/svn/branches/;module=${EGLIBC_BRANCH};proto=http file://eglibc-rpc-export-again.patch \ file://glibc-2.14-libdl-crash.patch \ file://use-sysroot-cxx-headers.patch \ + file://x86_fenv.patch \ + file://ppc-sqrt_finite.patch \ " LIC_FILES_CHKSUM = "file://LICENSES;md5=98a1128c4b58120182cbea3b1752d8b9 \ file://COPYING;md5=393a5ca445f6965873eca0259a17f833 \ @@ -88,6 +89,15 @@ do_patch_append() { bb.build.exec_func('do_fix_readlib_c', d) } +# for mips eglibc now builds syscall tables for all abi's +# so we make sure that we choose right march option which is +# compatible with o32,n32 and n64 abi's +# e.g. -march=mips32 is not compatible with n32 and n64 therefore +# we filter it out in such case -march=from-abi which will be +# mips1 when using o32 and mips3 when using n32/n64 + +TUNE_CCARGS_mips := "${@oe_filter_out('-march=mips32', '${TUNE_CCARGS}', d)}" + # We need to ensure that all of the i386 and x86_64 headers are identical # to support the multilib case. We do this by copying headers from x86_64 # to i386 directories. Normally when hand building eglibc or a combined |