From 960bf52df1c112be1852c98086b07a874732dccd Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 6 Jul 2012 20:02:56 -0400 Subject: [PATCH] core/glibc to 2.16.0-1 --- core/glibc/PKGBUILD | 258 +---- core/glibc/alarm.patch | 15 - core/glibc/glibc-2.14-libdl-crash.patch | 132 --- .../glibc-2.14-reexport-rpc-interface.patch | 26 - ...glibc-2.14-reinstall-nis-rpc-headers.patch | 28 - ..._libc_res_nquerydomain-out-of-bounds.patch | 24 - core/glibc/glibc-2.15-arena.patch | 29 - core/glibc/glibc-2.15-avx.patch | 196 ---- ...ibc-2.15-confstr-local-buffer-extent.patch | 297 ------ ...2.15-do-not-install-timezone-files-2.patch | 20 - ...c-2.15-do-not-install-timezone-files.patch | 124 --- core/glibc/glibc-2.15-feraiseexcept-plt.patch | 20 - core/glibc/glibc-2.15-fmtmsg-locking.patch | 148 --- core/glibc/glibc-2.15-gb18030.patch.gz | Bin 470126 -> 0 bytes core/glibc/glibc-2.15-ifunc.patch | 262 ------ core/glibc/glibc-2.15-lddebug-scopes.patch | 27 - .../glibc-2.15-multiarch-x86-strcmp.patch | 39 - .../glibc-2.15-nearbyintf-rounding.patch | 75 -- .../glibc-2.15-negative-result-cache.patch | 138 --- ...libc-2.15-non-signalling-comparisons.patch | 886 ------------------ core/glibc/glibc-2.15-regex.patch | 16 - core/glibc/glibc-2.15-revert-c5a0802a.patch | 11 +- .../glibc-2.15-revert-netlink-cache.patch | 680 -------------- core/glibc/glibc-2.15-rintf-rounding.patch | 158 ---- core/glibc/glibc-2.15-scanf.patch | 19 - .../glibc-2.15-strcasecmp-disable-avx.patch | 48 - core/glibc/glibc-2.15-testsuite.patch | 109 --- core/glibc/glibc-2.15-vdso.patch | 40 - core/glibc/glibc-2.15-vfprintf-nargs.patch | 180 ---- core/glibc/glibc-__i686.patch | 13 - core/glibc/local-soname-hack.diff | 18 + core/glibc/nscd.rcd | 0 core/glibc/nscd.service | 4 +- 33 files changed, 66 insertions(+), 3974 deletions(-) delete mode 100644 core/glibc/alarm.patch delete mode 100644 core/glibc/glibc-2.14-libdl-crash.patch delete mode 100644 core/glibc/glibc-2.14-reexport-rpc-interface.patch delete mode 100644 core/glibc/glibc-2.14-reinstall-nis-rpc-headers.patch delete mode 100644 core/glibc/glibc-2.15-__libc_res_nquerydomain-out-of-bounds.patch delete mode 100644 core/glibc/glibc-2.15-arena.patch delete mode 100644 core/glibc/glibc-2.15-avx.patch delete mode 100644 core/glibc/glibc-2.15-confstr-local-buffer-extent.patch delete mode 100644 core/glibc/glibc-2.15-do-not-install-timezone-files-2.patch delete mode 100644 core/glibc/glibc-2.15-do-not-install-timezone-files.patch delete mode 100644 core/glibc/glibc-2.15-feraiseexcept-plt.patch delete mode 100644 core/glibc/glibc-2.15-fmtmsg-locking.patch delete mode 100644 core/glibc/glibc-2.15-gb18030.patch.gz delete mode 100644 core/glibc/glibc-2.15-ifunc.patch delete mode 100644 core/glibc/glibc-2.15-lddebug-scopes.patch delete mode 100644 core/glibc/glibc-2.15-multiarch-x86-strcmp.patch delete mode 100644 core/glibc/glibc-2.15-nearbyintf-rounding.patch delete mode 100644 core/glibc/glibc-2.15-negative-result-cache.patch delete mode 100644 core/glibc/glibc-2.15-non-signalling-comparisons.patch delete mode 100644 core/glibc/glibc-2.15-regex.patch delete mode 100644 core/glibc/glibc-2.15-revert-netlink-cache.patch delete mode 100644 core/glibc/glibc-2.15-rintf-rounding.patch delete mode 100644 core/glibc/glibc-2.15-scanf.patch delete mode 100644 core/glibc/glibc-2.15-strcasecmp-disable-avx.patch delete mode 100644 core/glibc/glibc-2.15-testsuite.patch delete mode 100644 core/glibc/glibc-2.15-vdso.patch delete mode 100644 core/glibc/glibc-2.15-vfprintf-nargs.patch delete mode 100644 core/glibc/glibc-__i686.patch create mode 100644 core/glibc/local-soname-hack.diff mode change 100644 => 100755 core/glibc/nscd.rcd diff --git a/core/glibc/PKGBUILD b/core/glibc/PKGBUILD index 316db6e04..cb42b32aa 100644 --- a/core/glibc/PKGBUILD +++ b/core/glibc/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 145916 2012-01-04 01:25:04Z allan $ +# $Id: PKGBUILD 163008 2012-07-05 13:48:19Z allan $ # Maintainer: Allan McRae # toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc @@ -7,252 +7,77 @@ # ALARM: Kevin Mihelich # - Added source file for glibc-ports, needed for building on ARM # - Symlink glibc-ports source dir to ports dir in glibc directory -# - Patch glibc-ports for v5 +# - Patch glibc for ld-linux-armhf.so.3 and symlink ld-linux.so.3 # - Changed configure to enable ports add-on, specify our build host type # - Disabled distcc, make -j1 for v5, -j2 for v7 -plugrel=1 noautobuild=1 pkgname=glibc -pkgver=2.15 -pkgrel=12 -_glibcdate=20111227 +pkgver=2.16.0 +pkgrel=1 pkgdesc="GNU C Library" arch=('i686' 'x86_64') url="http://www.gnu.org/software/libc" license=('GPL' 'LGPL') groups=('base') -depends=('linux-api-headers>=3.1.6' 'tzdata') -makedepends=('gcc>=4.6') +depends=('linux-api-headers>=3.4' 'tzdata') +makedepends=('gcc>=4.7') backup=(etc/gai.conf etc/locale.gen etc/nscd.conf) -options=('!strip' '!distcc') +options=('!strip') install=glibc.install -source=(ftp://ftp.archlinux.org/other/glibc/${pkgname}-${pkgver}_${_glibcdate}.tar.xz - http://ftp.gnu.org/gnu/libc/glibc-ports-2.15.tar.bz2 - alarm.patch - glibc-2.15-do-not-install-timezone-files.patch - glibc-2.15-do-not-install-timezone-files-2.patch - glibc-__i686.patch - glibc-2.14-libdl-crash.patch - glibc-2.14-reexport-rpc-interface.patch - glibc-2.14-reinstall-nis-rpc-headers.patch +source=(http://ftp.gnu.org/gnu/libc/${pkgname}-${pkgver}.tar.xz{,.sig} + http://ftp.gnu.org/gnu/libc/glibc-ports-${pkgver}.tar.bz2 glibc-2.15-fix-res_query-assert.patch - glibc-2.15-regex.patch - glibc-2.15-lddebug-scopes.patch glibc-2.15-revert-c5a0802a.patch - glibc-2.15-scanf.patch - glibc-2.15-ifunc.patch - glibc-2.15-avx.patch - glibc-2.15-strcasecmp-disable-avx.patch - glibc-2.15-gb18030.patch.gz - glibc-2.15-revert-netlink-cache.patch - glibc-2.15-arena.patch - glibc-2.15-negative-result-cache.patch - glibc-2.15-multiarch-x86-strcmp.patch - glibc-2.15-vdso.patch - glibc-2.15-feraiseexcept-plt.patch - glibc-2.15-vfprintf-nargs.patch - glibc-2.15-__libc_res_nquerydomain-out-of-bounds.patch - glibc-2.15-fmtmsg-locking.patch - glibc-2.15-non-signalling-comparisons.patch - glibc-2.15-rintf-rounding.patch - glibc-2.15-nearbyintf-rounding.patch - glibc-2.15-confstr-local-buffer-extent.patch - glibc-2.15-testsuite.patch + local-soname-hack.diff nscd.rcd nscd.service nscd.tmpfiles locale.gen.txt locale-gen) -md5sums=('6ffdf5832192b92f98bdd125317c0dfc' - '56efe246ce89f16a52792cea9224823c' - 'c45df830828555a85e5b15d46fb0520a' - '349227bcedb19cea008fbcb2c7e1a582' - '880439de2c608177ed1d749722d26820' - '40cd342e21f71f5e49e32622b25acc52' - '6970bcfeb3bf88913436d5112d16f588' - 'c5de2a946215d647c8af5432ec4b0da0' - '55febbb72139ac7b65757df085024b83' +md5sums=('80b181b02ab249524ec92822c0174cf7' + '2a1221a15575820751c325ef4d2fbb90' + '668bcd584718ff0c6aa2f14b668595b6' '31f415b41197d85d3bbee3d1eecd06a3' - 'b3526cbd5e29773560dba725db99af5a' - '3c219ddfb619b6df903cac4cc42c611d' - '7ae3e426251ae33e73dbad71f9c91378' - 'f0782ddbf38e0b30ec6b85348816046f' - '3d844b53b2dbb7c996e39c7ad932f55d' - '41ae047ac88e8f6f547c70b0a0bc3b72' - 'fccb89f6628f59752278e125c35941f8' - '001a4044ac3d59aca6ee144eaca57ab2' - '94b61302a7ca6c5764d013dc7738fcfe' - 'a9ffadcfd2d357f91fee0b861fd4a7c6' - '2c46b8e294de24c531f2253ff69aeef3' - '7a2998a04ebfcf8bf820540f490ce714' - '0d77d20fa7fe2f87ad945cb9edb4d91d' - 'bfdefac3d705f41fbf84b1de1dc945af' - 'de9399a35a9c14f793c66f1230674d67' - '340deaa582a95ddde86edb624c3bfea0' - '6bbac50e6ff82187654e6a0a7bd849e7' - 'c483504cf404ed0b44480af627813a97' - '1419d61fd1dbc6cdc48bb59da86fa66f' - '7ff501435078b1a2622124fbeaafc921' - '4ed0bb09c3851cd9cb5e39c946a8a334' - '6962c3fa29306bfbf6f0d22b19cb825d' + '0a0383d50d63f1c02919fe9943b82014' + 'fa192d063312907797eb48f59da99588' '589d79041aa767a5179eaa4e2737dd3f' 'ad8a9af15ab7eeaa23dc7ee85024af9f' 'bccbe5619e75cf1d97312ec3681c605c' '07ac979b6ab5eeb778d55f041529d623' '476e9113489f93b348b21e144b6a8fcf') -mksource() { - git clone git://sourceware.org/git/glibc.git - pushd glibc - #git checkout -b glibc-2.15-arch origin/release/2.15/master - git checkout -b glibc-2.15-arch origin/master - popd - tar -cvJf glibc-${pkgver}_${_glibcdate}.tar.xz glibc/* -} - build() { - cd ${srcdir}/glibc + cd ${srcdir}/${pkgname}-${pkgver} - # ALARM: Symlink ports dir + # ALARM: Symlink ports dir, patch for hard-float ld-linux soname ln -s ${srcdir}/${pkgname}-ports-${pkgver} ./ports - [[ $CARCH == "arm" ]] && patch -p1 -i "${srcdir}/alarm.patch" - - # timezone data is in separate package (tzdata) - # http://sourceware.org/git/?p=glibc.git;a=commit;h=482ff4da - patch -p1 -i ${srcdir}/glibc-2.15-do-not-install-timezone-files.patch - # http://sourceware.org/git/?p=glibc.git;a=commit;h=a458e7fe - patch -p1 -i ${srcdir}/glibc-2.15-do-not-install-timezone-files-2.patch - - # undefine __i686 - # http://sourceware.org/glibc/wiki/Release/2.15#Build_Failures - patch -p1 -i ${srcdir}/glibc-__i686.patch - - # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=675155e9 (fedora branch) - # http://sourceware.org/ml/libc-alpha/2011-06/msg00006.html - patch -p1 -i ${srcdir}/glibc-2.14-libdl-crash.patch - - # re-export RPC interface until libtirpc is ready as a replacement - # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=acee4873 (fedora branch) - patch -p1 -i ${srcdir}/glibc-2.14-reexport-rpc-interface.patch - # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=bdd816a3 (fedora branch) - patch -p1 -i ${srcdir}/glibc-2.14-reinstall-nis-rpc-headers.patch + [[ $CARCH == "armv7h" ]] && patch -p1 -i ${srcdir}/local-soname-hack.diff # fix res_query assertion # http://sourceware.org/bugzilla/show_bug.cgi?id=13013 patch -p1 -i ${srcdir}/glibc-2.15-fix-res_query-assert.patch - # fix up regcomp/regexec - # http://sourceware.org/git/?p=glibc.git;a=commit;h=2ba92745 - patch -p1 -i ${srcdir}/glibc-2.15-regex.patch - - # propriety nvidia crash - https://bugzilla.redhat.com/show_bug.cgi?id=737223 - # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=0c95ab64 (fedora branch) - patch -p1 -i ${srcdir}/glibc-2.15-lddebug-scopes.patch - # revert commit c5a0802a - causes various hangs - # https://bugzilla.redhat.com/show_bug.cgi?id=769421 - # Note: fedora may have actual fix (not submitted upstream yet...) - # http://pkgs.fedoraproject.org/gitweb/?p=glibc.git;a=blob_plain;f=glibc-rh552960-2.patch + # https://bugzilla.redhat.com/show_bug.cgi?id=552960 patch -p1 -i ${srcdir}/glibc-2.15-revert-c5a0802a.patch - # fix realloc usage in vfscanf - # http://sourceware.org/git/?p=glibc.git;a=commit;h=20b38e03 - patch -p1 -i ${srcdir}/glibc-2.15-scanf.patch - - # fix ifunc relocations - # http://sourceware.org/git/?p=glibc.git;a=commit;h=6ee65ed6 - patch -p1 -i ${srcdir}/glibc-2.15-ifunc.patch - - # fix AVX detection - # http://sourceware.org/git/?p=glibc.git;a=commit;h=afc5ed09 - # http://sourceware.org/git/?p=glibc.git;a=commit;h=08cf777f - patch -p1 -i ${srcdir}/glibc-2.15-avx.patch - # and "fix" strcasecmp - patch -p1 -i ${srcdir}/glibc-2.15-strcasecmp-disable-avx.patch - - # fix GB18030 charmap - # http://sourceware.org/bugzilla/show_bug.cgi?id=11837 - # http://sourceware.org/git/?p=glibc.git;a=commit;h=2a57bd79 (fedora branch) - # http://sourceware.org/git/?p=glibc.git;a=commit;h=3d828a61 (fedora branch) - patch -p1 -i ${srcdir}/glibc-2.15-gb18030.patch - - # fix crash in __nscd_get_mapping if nscd not running - # http://sourceware.org/bugzilla/show_bug.cgi?id=13594 (potential fix in comment) - # reverts commit 3a2c0242 and other necessary following changes... - patch -p1 -i ${srcdir}/glibc-2.15-revert-netlink-cache.patch - - # handle ARENA_TEST correctly - # http://sourceware.org/git/?p=glibc.git;a=commit;h=41b81892 - patch -p1 -i ${srcdir}/glibc-2.15-arena.patch - - # Do not cache negative results in nscd if these are transient - # http://sourceware.org/git/?p=glibc.git;a=commit;h=3e1aa84e - patch -p1 -i ${srcdir}/glibc-2.15-negative-result-cache.patch - - # strcasecmp_l, strncasecmp_l act as strcmp for multiarch x86 - # http://sourceware.org/git/?p=glibc.git;a=commit;h=0bab47b6 - patch -p1 -i ${srcdir}/glibc-2.15-multiarch-x86-strcmp.patch - - # always set l_used for vDSO. - # http://sourceware.org/git/?p=glibc.git;a=commit;h=1f393a11 - patch -p1 -i ${srcdir}/glibc-2.15-vdso.patch - - # fix x86 PLT slot usage for feraiseexcept - # http://sourceware.org/git/?p=glibc.git;a=commit;h=7c35ffed - patch -p1 -i ${srcdir}/glibc-2.15-feraiseexcept-plt.patch - - # vfprintf nargs overflow - CVE-2012-0864 - # http://sourceware.org/git/?p=glibc.git;a=commit;h=7c1f4834 - patch -p1 -i ${srcdir}/glibc-2.15-vfprintf-nargs.patch - - # avoid out ouf bounds read in __libc_res_nquerydomain - # http://sourceware.org/git/?p=glibc.git;a=commit;h=8fdceb2e - patch -p1 -i ${srcdir}/glibc-2.15-__libc_res_nquerydomain-out-of-bounds.patch - - # make fmtmsg function thread-safe - # http://sourceware.org/git/?p=glibc.git;a=commit;h=7724defc - patch -p1 -i ${srcdir}/glibc-2.15-fmtmsg-locking.patch - - # use non-signaling floating-point comparisons in math functions - # http://sourceware.org/git/?p=glibc.git;a=commit;h=92221550 - patch -p1 -i ${srcdir}/glibc-2.15-non-signalling-comparisons.patch - - # fix rintf rounding. - # http://sourceware.org/git/?p=glibc.git;a=commit;h=fe45ce09 - patch -p1 -i ${srcdir}/glibc-2.15-rintf-rounding.patch - - # fix nearbyintf rounding - # http://sourceware.org/git/?p=glibc.git;a=commit;h=6cbeae47 - patch -p1 -i ${srcdir}/glibc-2.15-nearbyintf-rounding.patch - - # fix varaible scope issue in confstr - # http://sourceware.org/git/?p=glibc.git;a=commit;h=ac4c54f0 - # http://sourceware.org/git/?p=glibc.git;a=commit;h=d6a403f9 - patch -p1 -i ${srcdir}/glibc-2.15-confstr-local-buffer-extent.patch - - # fix testsuite failures with --as-needed - # http://sourceware.org/git/?p=glibc.git;a=commit;h=d4c2917f - patch -p1 -i ${srcdir}/glibc-2.15-testsuite.patch - - install -dm755 ${pkgdir}/etc - touch ${pkgdir}/etc/ld.so.conf - cd ${srcdir} mkdir glibc-build cd glibc-build if [[ ${CARCH} = "i686" ]]; then # Hack to fix NPTL issues with Xen, only required on 32bit platforms + # TODO: make separate glibc-xen package for i686 export CFLAGS="${CFLAGS} -mno-tls-direct-seg-refs" fi # ALARM: Specify build host types [[ $CARCH == "arm" ]] && CONFIGFLAG="--host=arm-unknown-linux-gnueabi --build=arm-unknown-linux-gnueabi" && MAKEFLAG="-j1" - [[ $CARCH == "armv7h" ]] && CONFIGFLAG="--host=armv7l-unknown-linux-gnueabi --build=armv7l-unknown-linux-gnueabi" && MAKEFLAG="-j2" + [[ $CARCH == "armv7h" ]] && CONFIGFLAG="--host=armv7l-unknown-linux-gnueabihf --build=armv7l-unknown-linux-gnueabihf" && MAKEFLAG="-j2" echo "slibdir=/lib" >> configparms @@ -260,12 +85,14 @@ build() { CFLAGS=${CFLAGS/-fstack-protector/} CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/} - ${srcdir}/glibc/configure --prefix=/usr \ + ${srcdir}/${pkgname}-${pkgver}/configure --prefix=/usr \ --libdir=/usr/lib --libexecdir=/usr/lib \ --with-headers=/usr/include \ --enable-add-ons=nptl,libidn,ports \ + --enable-obsolete-rpc \ --enable-kernel=2.6.27 \ --enable-bind-now --disable-profile \ + --enable-stackguard-randomization \ --disable-multi-arch $CONFIGFLAG # build libraries with hardening disabled @@ -284,46 +111,45 @@ build() { check() { cd ${srcdir}/glibc-build - - # some errors are expected - manually check log files - #make -k check || true + #make -k check } package() { cd ${srcdir}/glibc-build + + install -dm755 ${pkgdir}/etc + touch ${pkgdir}/etc/ld.so.conf + make install_root=${pkgdir} install rm -f ${pkgdir}/etc/ld.so.{cache,conf} install -dm755 ${pkgdir}/{etc/rc.d,usr/{sbin,lib/{,locale,systemd/system,tmpfiles.d}}} - install -m644 ${srcdir}/glibc/nscd/nscd.conf ${pkgdir}/etc/nscd.conf + install -m644 ${srcdir}/${pkgname}-${pkgver}/nscd/nscd.conf ${pkgdir}/etc/nscd.conf sed -i -e 's/^\tserver-user/#\tserver-user/' ${pkgdir}/etc/nscd.conf install -m755 ${srcdir}/nscd.rcd ${pkgdir}/etc/rc.d/nscd install -m644 ${srcdir}/nscd.service ${pkgdir}/usr/lib/systemd/system install -m644 ${srcdir}/nscd.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/nscd.conf - install -m644 ${srcdir}/glibc/posix/gai.conf ${pkgdir}/etc/gai.conf + install -m644 ${srcdir}/${pkgname}-${pkgver}/posix/gai.conf ${pkgdir}/etc/gai.conf install -m755 ${srcdir}/locale-gen ${pkgdir}/usr/sbin # create /etc/locale.gen install -m644 ${srcdir}/locale.gen.txt ${pkgdir}/etc/locale.gen - sed -i "s|/| |g" ${srcdir}/glibc/localedata/SUPPORTED - sed -i 's|\\| |g' ${srcdir}/glibc/localedata/SUPPORTED - sed -i "s|SUPPORTED-LOCALES=||" ${srcdir}/glibc/localedata/SUPPORTED - cat ${srcdir}/glibc/localedata/SUPPORTED >> ${pkgdir}/etc/locale.gen - sed -i "s|^|#|g" ${pkgdir}/etc/locale.gen + sed -e '1,3d' -e 's|/| |g' -e 's|\\| |g' -e 's|^|#|g' \ + ${srcdir}/glibc-2.16.0/localedata/SUPPORTED >> ${pkgdir}/etc/locale.gen if [[ ${CARCH} = "x86_64" ]]; then - # fix for the linker + # fix paths and compliance with binary blobs... sed -i '/RTLDLIST/s%lib64%lib%' ${pkgdir}/usr/bin/ldd - # Comply with multilib binaries, they look for the linker in /lib64 - mkdir ${pkgdir}/lib64 - cd ${pkgdir}/lib64 - ln -v -s ../lib/ld* . + ln -s /lib ${pkgdir}/lib64 fi - + + # ALARM: symlink ld-linux.so.3 for hard-float + [[ $CARCH == "armv7h" ]] && ln -s /lib/ld-2.16.so ${pkgdir}/lib/ld-linux.so.3 + # Do not strip the following files for improved debugging support # ("improved" as in not breaking gdb and valgrind...): # ld-${pkgver}.so @@ -341,9 +167,9 @@ package() { strip $STRIP_STATIC usr/lib/*.a - strip $STRIP_SHARED lib/{libanl,libBrokenLocale,libcidn,libcrypt}-${pkgver}.so \ - lib/libnss_{compat,db,dns,files,hesiod,nis,nisplus}-${pkgver}.so \ - lib/{libdl,libm,libnsl,libresolv,librt,libutil}-${pkgver}.so \ + strip $STRIP_SHARED lib/{libanl,libBrokenLocale,libcidn,libcrypt}-*.so \ + lib/libnss_{compat,db,dns,files,hesiod,nis,nisplus}-*.so \ + lib/{libdl,libm,libnsl,libresolv,librt,libutil}-*.so \ lib/{libmemusage,libpcprofile,libSegFault}.so \ usr/lib/{pt_chown,{audit,gconv}/*.so} } diff --git a/core/glibc/alarm.patch b/core/glibc/alarm.patch deleted file mode 100644 index 9839431be..000000000 --- a/core/glibc/alarm.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/sysdeps/arm/Makefile b/sysdeps/arm/Makefile -index 5651161..1a88430 100644 ---- a/sysdeps/arm/Makefile -+++ b/sysdeps/arm/Makefile -@@ -7,3 +7,8 @@ endif - ifeq ($(subdir),csu) - gen-as-const-headers += tlsdesc.sym - endif -+ -+# to pull in __aeabi_read_tp, needed for tls -+ifeq ($(subdir),malloc) -+$(objpfx)libmemusage.so: $(common-objpfx)libc_nonshared.a -+endif --- -1.7.6.5 diff --git a/core/glibc/glibc-2.14-libdl-crash.patch b/core/glibc/glibc-2.14-libdl-crash.patch deleted file mode 100644 index 6c9d2718e..000000000 --- a/core/glibc/glibc-2.14-libdl-crash.patch +++ /dev/null @@ -1,132 +0,0 @@ -diff --git a/elf/dl-close.c b/elf/dl-close.c -index 73b2a2f..9bd91e3 100644 ---- a/elf/dl-close.c -+++ b/elf/dl-close.c -@@ -1,5 +1,5 @@ - /* Close a shared object opened by `_dl_open'. -- Copyright (C) 1996-2007, 2009, 2010, 2011 Free Software Foundation, Inc. -+ Copyright (C) 1996-2007, 2009, 2010 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -119,17 +119,8 @@ _dl_close_worker (struct link_map *map) - if (map->l_direct_opencount > 0 || map->l_type != lt_loaded - || dl_close_state != not_pending) - { -- if (map->l_direct_opencount == 0) -- { -- if (map->l_type == lt_loaded) -- dl_close_state = rerun; -- else if (map->l_type == lt_library) -- { -- struct link_map **oldp = map->l_initfini; -- map->l_initfini = map->l_orig_initfini; -- _dl_scope_free (oldp); -- } -- } -+ if (map->l_direct_opencount == 0 && map->l_type == lt_loaded) -+ dl_close_state = rerun; - - /* There are still references to this object. Do nothing more. */ - if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_FILES, 0)) -diff --git a/elf/dl-deps.c b/elf/dl-deps.c -index 9e30594..3890d00 100644 ---- a/elf/dl-deps.c -+++ b/elf/dl-deps.c -@@ -478,6 +478,7 @@ _dl_map_object_deps (struct link_map *map, - nneeded * sizeof needed[0]); - atomic_write_barrier (); - l->l_initfini = l_initfini; -+ l->l_free_initfini = 1; - } - - /* If we have no auxiliary objects just go on to the next map. */ -@@ -681,6 +682,7 @@ Filters not supported with LD_TRACE_PRELINKING")); - l_initfini[nlist] = NULL; - atomic_write_barrier (); - map->l_initfini = l_initfini; -+ map->l_free_initfini = 1; - if (l_reldeps != NULL) - { - atomic_write_barrier (); -@@ -689,5 +691,5 @@ Filters not supported with LD_TRACE_PRELINKING")); - _dl_scope_free (old_l_reldeps); - } - if (old_l_initfini != NULL) -- map->l_orig_initfini = old_l_initfini; -+ _dl_scope_free (old_l_initfini); - -diff --git a/elf/dl-libc.c b/elf/dl-libc.c -index 7be9483..a13fce3 100644 ---- a/elf/dl-libc.c -+++ b/elf/dl-libc.c -@@ -265,13 +265,13 @@ libc_freeres_fn (free_mem) - - for (Lmid_t ns = 0; ns < GL(dl_nns); ++ns) - { -- /* Remove all additional names added to the objects. */ - for (l = GL(dl_ns)[ns]._ns_loaded; l != NULL; l = l->l_next) - { - struct libname_list *lnp = l->l_libname->next; - - l->l_libname->next = NULL; - -+ /* Remove all additional names added to the objects. */ - while (lnp != NULL) - { - struct libname_list *old = lnp; -@@ -279,6 +279,10 @@ libc_freeres_fn (free_mem) - if (! old->dont_free) - free (old); - } -+ -+ /* Free the initfini dependency list. */ -+ if (l->l_free_initfini) -+ free (l->l_initfini); - } - - if (__builtin_expect (GL(dl_ns)[ns]._ns_global_scope_alloc, 0) != 0 -diff --git a/elf/rtld.c b/elf/rtld.c -index 4a9109e..617e30e 100644 ---- a/elf/rtld.c -+++ b/elf/rtld.c -@@ -2251,6 +2251,7 @@ ERROR: ld.so: object '%s' cannot be loaded as audit interface: %s; ignored.\n", - lnp->dont_free = 1; - lnp = lnp->next; - } -+ l->l_free_initfini = 0; - - if (l != &GL(dl_rtld_map)) - _dl_relocate_object (l, l->l_scope, GLRO(dl_lazy) ? RTLD_LAZY : 0, -diff --git a/include/link.h b/include/link.h -index e877104..051b99a 100644 ---- a/include/link.h -+++ b/include/link.h -@@ -1,6 +1,6 @@ - /* Data structure for communication from the run-time dynamic linker for - loaded ELF shared objects. -- Copyright (C) 1995-2006, 2007, 2009, 2010, 2011 Free Software Foundation, Inc. -+ Copyright (C) 1995-2006, 2007, 2009, 2010 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -192,6 +192,9 @@ struct link_map - during LD_TRACE_PRELINKING=1 - contains any DT_SYMBOLIC - libraries. */ -+ unsigned int l_free_initfini:1; /* Nonzero if l_initfini can be -+ freed, ie. not allocated with -+ the dummy malloc in ld.so. */ - - /* Collected information about own RPATH directories. */ - struct r_search_path_struct l_rpath_dirs; -@@ -240,9 +243,6 @@ struct link_map - - /* List of object in order of the init and fini calls. */ - struct link_map **l_initfini; -- /* The init and fini list generated at startup, saved when the -- object is also loaded dynamically. */ -- struct link_map **l_orig_initfini; - - /* List of the dependencies introduced through symbol binding. */ - struct link_map_reldeps diff --git a/core/glibc/glibc-2.14-reexport-rpc-interface.patch b/core/glibc/glibc-2.14-reexport-rpc-interface.patch deleted file mode 100644 index e2beea881..000000000 --- a/core/glibc/glibc-2.14-reexport-rpc-interface.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/include/libc-symbols.h b/include/libc-symbols.h -index 67e1ca2..5e7cca5 100644 ---- a/include/libc-symbols.h -+++ b/include/libc-symbols.h -@@ -635,7 +635,7 @@ for linking") - # define libc_hidden_proto(name, attrs...) hidden_proto (name, ##attrs) - # define libc_hidden_def(name) hidden_def (name) - # define libc_hidden_weak(name) hidden_weak (name) --# define libc_hidden_nolink(name, version) hidden_nolink (name, libc, version) -+# define libc_hidden_nolink(name, version) hidden_def (name) - # define libc_hidden_ver(local, name) hidden_ver (local, name) - # define libc_hidden_data_def(name) hidden_data_def (name) - # define libc_hidden_data_weak(name) hidden_data_weak (name) -diff --git a/sunrpc/Makefile b/sunrpc/Makefile -index 5134ce9..40c73d1 100644 ---- a/sunrpc/Makefile -+++ b/sunrpc/Makefile -@@ -53,7 +53,7 @@ headers-in-tirpc = $(addprefix rpc/,auth.h auth_unix.h clnt.h pmap_clnt.h \ - des_crypt.h) - headers-not-in-tirpc = $(addprefix rpc/,key_prot.h rpc_des.h) \ - $(rpcsvc:%=rpcsvc/%) rpcsvc/bootparam.h --headers = rpc/netdb.h -+headers = rpc/netdb.h $(headers-in-tirpc) $(headers-not-in-tirpc) - install-others = $(inst_sysconfdir)/rpc - generated = $(rpcsvc:%.x=rpcsvc/%.h) $(rpcsvc:%.x=x%.c) $(rpcsvc:%.x=x%.stmp) \ - $(rpcsvc:%.x=rpcsvc/%.stmp) rpcgen diff --git a/core/glibc/glibc-2.14-reinstall-nis-rpc-headers.patch b/core/glibc/glibc-2.14-reinstall-nis-rpc-headers.patch deleted file mode 100644 index eb0fd822d..000000000 --- a/core/glibc/glibc-2.14-reinstall-nis-rpc-headers.patch +++ /dev/null @@ -1,28 +0,0 @@ -From bdd816a366c4e5bba5de7157d948e0c0737fb4fb Mon Sep 17 00:00:00 2001 -From: Andreas Schwab -Date: Tue, 17 May 2011 17:42:30 +0200 -Subject: [PATCH] Reinstall NIS RPC headers - ---- - nis/Makefile | 4 ++-- - 1 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/nis/Makefile b/nis/Makefile -index b5c9609..d2934d9 100644 ---- a/nis/Makefile -+++ b/nis/Makefile -@@ -23,9 +23,9 @@ subdir := nis - - aux := nis_hash - -+headers := $(wildcard rpcsvc/*.[hx]) - distribute := nss-nis.h nss-nisplus.h nis_intern.h Banner \ -- nisplus-parser.h nis_xdr.h nss \ -- $(wildcard rpcsvc/*.[hx]) -+ nisplus-parser.h nis_xdr.h nss - - # These are the databases available for the nis (and perhaps later nisplus) - # service. This must be a superset of the services in nss. --- -1.7.5.4 - diff --git a/core/glibc/glibc-2.15-__libc_res_nquerydomain-out-of-bounds.patch b/core/glibc/glibc-2.15-__libc_res_nquerydomain-out-of-bounds.patch deleted file mode 100644 index 6f0a0398f..000000000 --- a/core/glibc/glibc-2.15-__libc_res_nquerydomain-out-of-bounds.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff --git a/resolv/res_query.c b/resolv/res_query.c -index 947c651..abccd4a 100644 ---- a/resolv/res_query.c -+++ b/resolv/res_query.c -@@ -556,12 +556,16 @@ __libc_res_nquerydomain(res_state statp, - * copy without '.' if present. - */ - n = strlen(name); -- if (n >= MAXDNAME) { -+ -+ /* Decrement N prior to checking it against MAXDNAME -+ so that we detect a wrap to SIZE_MAX and return -+ a reasonable error. */ -+ n--; -+ if (n >= MAXDNAME - 1) { - RES_SET_H_ERRNO(statp, NO_RECOVERY); - return (-1); - } -- n--; -- if (n >= 0 && name[n] == '.') { -+ if (name[n] == '.') { - strncpy(nbuf, name, n); - nbuf[n] = '\0'; - } else diff --git a/core/glibc/glibc-2.15-arena.patch b/core/glibc/glibc-2.15-arena.patch deleted file mode 100644 index 46f52e98d..000000000 --- a/core/glibc/glibc-2.15-arena.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff --git a/malloc/arena.c b/malloc/arena.c -index d3cf4b9..b1c9469 100644 ---- a/malloc/arena.c -+++ b/malloc/arena.c -@@ -828,7 +828,7 @@ arena_get2(mstate a_tsd, size_t size) - { - if (mp_.arena_max != 0) - narenas_limit = mp_.arena_max; -- else -+ else if (narenas > mp_.arena_test) - { - int n = __get_nprocs (); - -@@ -842,7 +842,14 @@ arena_get2(mstate a_tsd, size_t size) - } - repeat:; - size_t n = narenas; -- if (__builtin_expect (n <= mp_.arena_test || n < narenas_limit, 0)) -+ /* NB: the following depends on the fact that (size_t)0 - 1 is a -+ very large number and that the underflow is OK. If arena_max -+ is set the value of arena_test is irrelevant. If arena_test -+ is set but narenas is not yet larger or equal to arena_test -+ narenas_limit is 0. There is no possibility for narenas to -+ be too big for the test to always fail since there is not -+ enough address space to create that many arenas. */ -+ if (__builtin_expect (n <= narenas_limit - 1, 0)) - { - if (catomic_compare_and_exchange_bool_acq (&narenas, n + 1, n)) - goto repeat; diff --git a/core/glibc/glibc-2.15-avx.patch b/core/glibc/glibc-2.15-avx.patch deleted file mode 100644 index 5439da8d0..000000000 --- a/core/glibc/glibc-2.15-avx.patch +++ /dev/null @@ -1,196 +0,0 @@ -diff --git a/sysdeps/x86_64/fpu/multiarch/e_atan2.c b/sysdeps/x86_64/fpu/multiarch/e_atan2.c -index 6867c6e..3a615fc 100644 ---- a/sysdeps/x86_64/fpu/multiarch/e_atan2.c -+++ b/sysdeps/x86_64/fpu/multiarch/e_atan2.c -@@ -14,7 +14,7 @@ extern double __ieee754_atan2_fma4 (double, double); - - libm_ifunc (__ieee754_atan2, - HAS_FMA4 ? __ieee754_atan2_fma4 -- : (HAS_AVX ? __ieee754_atan2_avx : __ieee754_atan2_sse2)); -+ : (HAS_YMM_USABLE ? __ieee754_atan2_avx : __ieee754_atan2_sse2)); - strong_alias (__ieee754_atan2, __atan2_finite) - - # define __ieee754_atan2 __ieee754_atan2_sse2 -diff --git a/sysdeps/x86_64/fpu/multiarch/e_exp.c b/sysdeps/x86_64/fpu/multiarch/e_exp.c -index 3c65028..7b2320a 100644 ---- a/sysdeps/x86_64/fpu/multiarch/e_exp.c -+++ b/sysdeps/x86_64/fpu/multiarch/e_exp.c -@@ -14,7 +14,7 @@ extern double __ieee754_exp_fma4 (double); - - libm_ifunc (__ieee754_exp, - HAS_FMA4 ? __ieee754_exp_fma4 -- : (HAS_AVX ? __ieee754_exp_avx : __ieee754_exp_sse2)); -+ : (HAS_YMM_USABLE ? __ieee754_exp_avx : __ieee754_exp_sse2)); - strong_alias (__ieee754_exp, __exp_finite) - - # define __ieee754_exp __ieee754_exp_sse2 -diff --git a/sysdeps/x86_64/fpu/multiarch/e_log.c b/sysdeps/x86_64/fpu/multiarch/e_log.c -index 3b468d0..ab277d6 100644 ---- a/sysdeps/x86_64/fpu/multiarch/e_log.c -+++ b/sysdeps/x86_64/fpu/multiarch/e_log.c -@@ -14,7 +14,7 @@ extern double __ieee754_log_fma4 (double); - - libm_ifunc (__ieee754_log, - HAS_FMA4 ? __ieee754_log_fma4 -- : (HAS_AVX ? __ieee754_log_avx -+ : (HAS_YMM_USABLE ? __ieee754_log_avx - : __ieee754_log_sse2)); - strong_alias (__ieee754_log, __log_finite) - -diff --git a/sysdeps/x86_64/fpu/multiarch/s_atan.c b/sysdeps/x86_64/fpu/multiarch/s_atan.c -index 3160201..78c7e09 100644 ---- a/sysdeps/x86_64/fpu/multiarch/s_atan.c -+++ b/sysdeps/x86_64/fpu/multiarch/s_atan.c -@@ -12,7 +12,8 @@ extern double __atan_fma4 (double); - # define __atan_fma4 ((void *) 0) - # endif - --libm_ifunc (atan, HAS_FMA4 ? __atan_fma4 : HAS_AVX ? __atan_avx : __atan_sse2); -+libm_ifunc (atan, (HAS_FMA4 ? __atan_fma4 : -+ HAS_YMM_USABLE ? __atan_avx : __atan_sse2)); - - # define atan __atan_sse2 - #endif -diff --git a/sysdeps/x86_64/fpu/multiarch/s_sin.c b/sysdeps/x86_64/fpu/multiarch/s_sin.c -index 1ba9dbc..417acd0 100644 ---- a/sysdeps/x86_64/fpu/multiarch/s_sin.c -+++ b/sysdeps/x86_64/fpu/multiarch/s_sin.c -@@ -17,10 +17,12 @@ extern double __sin_fma4 (double); - # define __sin_fma4 ((void *) 0) - # endif - --libm_ifunc (__cos, HAS_FMA4 ? __cos_fma4 : HAS_AVX ? __cos_avx : __cos_sse2); -+libm_ifunc (__cos, (HAS_FMA4 ? __cos_fma4 : -+ HAS_YMM_USABLE ? __cos_avx : __cos_sse2)); - weak_alias (__cos, cos) - --libm_ifunc (__sin, HAS_FMA4 ? __sin_fma4 : HAS_AVX ? __sin_avx : __sin_sse2); -+libm_ifunc (__sin, (HAS_FMA4 ? __sin_fma4 : -+ HAS_YMM_USABLE ? __sin_avx : __sin_sse2)); - weak_alias (__sin, sin) - - # define __cos __cos_sse2 -diff --git a/sysdeps/x86_64/fpu/multiarch/s_tan.c b/sysdeps/x86_64/fpu/multiarch/s_tan.c -index 8f6601e..3047155 100644 ---- a/sysdeps/x86_64/fpu/multiarch/s_tan.c -+++ b/sysdeps/x86_64/fpu/multiarch/s_tan.c -@@ -12,7 +12,8 @@ extern double __tan_fma4 (double); - # define __tan_fma4 ((void *) 0) - # endif - --libm_ifunc (tan, HAS_FMA4 ? __tan_fma4 : HAS_AVX ? __tan_avx : __tan_sse2); -+libm_ifunc (tan, (HAS_FMA4 ? __tan_fma4 : -+ HAS_YMM_USABLE ? __tan_avx : __tan_sse2)); - - # define tan __tan_sse2 - #endif -diff --git a/sysdeps/x86_64/multiarch/init-arch.c b/sysdeps/x86_64/multiarch/init-arch.c -index 65b0ee9..76d146c 100644 ---- a/sysdeps/x86_64/multiarch/init-arch.c -+++ b/sysdeps/x86_64/multiarch/init-arch.c -@@ -1,6 +1,6 @@ - /* Initialize CPU feature data. - This file is part of the GNU C Library. -- Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc. -+ Copyright (C) 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. - Contributed by Ulrich Drepper . - - The GNU C Library is free software; you can redistribute it and/or -@@ -144,6 +144,18 @@ __init_cpu_features (void) - else - kind = arch_kind_other; - -+ if (__cpu_features.cpuid[COMMON_CPUID_INDEX_1].ecx & bit_AVX) -+ { -+ /* Reset the AVX bit in case OSXSAVE is disabled. */ -+ if ((__cpu_features.cpuid[COMMON_CPUID_INDEX_1].ecx & bit_OSXSAVE) != 0 -+ && ({ unsigned int xcrlow; -+ unsigned int xcrhigh; -+ asm ("xgetbv" -+ : "=a" (xcrlow), "=d" (xcrhigh) : "c" (0)); -+ (xcrlow & 6) == 6; })) -+ __cpu_features.feature[index_YMM_Usable] |= bit_YMM_Usable; -+ } -+ - __cpu_features.family = family; - __cpu_features.model = model; - atomic_write_barrier (); -diff --git a/sysdeps/x86_64/multiarch/init-arch.h b/sysdeps/x86_64/multiarch/init-arch.h -index 2a1df39..2dc75ab 100644 ---- a/sysdeps/x86_64/multiarch/init-arch.h -+++ b/sysdeps/x86_64/multiarch/init-arch.h -@@ -1,5 +1,5 @@ - /* This file is part of the GNU C Library. -- Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc. -+ Copyright (C) 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public -@@ -22,11 +22,13 @@ - #define bit_Prefer_SSE_for_memop (1 << 3) - #define bit_Fast_Unaligned_Load (1 << 4) - #define bit_Prefer_PMINUB_for_stringop (1 << 5) -+#define bit_YMM_Usable (1 << 6) - - #define bit_SSE2 (1 << 26) - #define bit_SSSE3 (1 << 9) - #define bit_SSE4_1 (1 << 19) - #define bit_SSE4_2 (1 << 20) -+#define bit_OSXSAVE (1 << 27) - #define bit_AVX (1 << 28) - #define bit_POPCOUNT (1 << 23) - #define bit_FMA (1 << 12) -@@ -48,6 +50,7 @@ - # define index_Prefer_SSE_for_memop FEATURE_INDEX_1*FEATURE_SIZE - # define index_Fast_Unaligned_Load FEATURE_INDEX_1*FEATURE_SIZE - # define index_Prefer_PMINUB_for_stringop FEATURE_INDEX_1*FEATURE_SIZE -+# define index_YMM_Usable FEATURE_INDEX_1*FEATURE_SIZE - - #else /* __ASSEMBLER__ */ - -@@ -92,7 +95,7 @@ extern struct cpu_features - - - extern void __init_cpu_features (void) attribute_hidden; --#define INIT_ARCH()\ -+# define INIT_ARCH() \ - do \ - if (__cpu_features.kind == arch_kind_unknown) \ - __init_cpu_features (); \ -@@ -125,23 +128,21 @@ extern const struct cpu_features *__get_cpu_features (void) - # define index_Slow_BSF FEATURE_INDEX_1 - # define index_Prefer_SSE_for_memop FEATURE_INDEX_1 - # define index_Fast_Unaligned_Load FEATURE_INDEX_1 -+# define index_YMM_Usable FEATURE_INDEX_1 - --#define HAS_ARCH_FEATURE(idx, bit) \ -- ((__get_cpu_features ()->feature[idx] & (bit)) != 0) -+# define HAS_ARCH_FEATURE(name) \ -+ ((__get_cpu_features ()->feature[index_##name] & (bit_##name)) != 0) - --#define HAS_FAST_REP_STRING \ -- HAS_ARCH_FEATURE (index_Fast_Rep_String, bit_Fast_Rep_String) -+# define HAS_FAST_REP_STRING HAS_ARCH_FEATURE (Fast_Rep_String) - --#define HAS_FAST_COPY_BACKWARD \ -- HAS_ARCH_FEATURE (index_Fast_Copy_Backward, bit_Fast_Copy_Backward) -+# define HAS_FAST_COPY_BACKWARD HAS_ARCH_FEATURE (Fast_Copy_Backward) - --#define HAS_SLOW_BSF \ -- HAS_ARCH_FEATURE (index_Slow_BSF, bit_Slow_BSF) -+# define HAS_SLOW_BSF HAS_ARCH_FEATURE (Slow_BSF) - --#define HAS_PREFER_SSE_FOR_MEMOP \ -- HAS_ARCH_FEATURE (index_Prefer_SSE_for_memop, bit_Prefer_SSE_for_memop) -+# define HAS_PREFER_SSE_FOR_MEMOP HAS_ARCH_FEATURE (Prefer_SSE_for_memop) - --#define HAS_FAST_UNALIGNED_LOAD \ -- HAS_ARCH_FEATURE (index_Fast_Unaligned_Load, bit_Fast_Unaligned_Load) -+# define HAS_FAST_UNALIGNED_LOAD HAS_ARCH_FEATURE (Fast_Unaligned_Load) -+ -+# define HAS_YMM_USABLE HAS_ARCH_FEATURE (YMM_Usable) - - #endif /* __ASSEMBLER__ */ --- -1.7.9 - diff --git a/core/glibc/glibc-2.15-confstr-local-buffer-extent.patch b/core/glibc/glibc-2.15-confstr-local-buffer-extent.patch deleted file mode 100644 index 614880dd4..000000000 --- a/core/glibc/glibc-2.15-confstr-local-buffer-extent.patch +++ /dev/null @@ -1,297 +0,0 @@ -diff --git a/posix/confstr.c b/posix/confstr.c -index 3c9566d..cad6561 100644 ---- a/posix/confstr.c -+++ b/posix/confstr.c -@@ -35,6 +34,10 @@ confstr (name, buf, len) - const char *string = ""; - size_t string_len = 1; - -+ /* Note that this buffer must be large enough for the longest strings -+ used below. */ -+ char restenvs[4 * sizeof "POSIX_V7_LPBIG_OFFBIG"]; -+ - switch (name) - { - case _CS_PATH: -@@ -53,59 +56,55 @@ confstr (name, buf, len) - wint_t types are no greater than the width of type long. - - Currently this means all environment which the system allows. */ -- { -- char restenvs[4 * sizeof "POSIX_V7_LPBIG_OFFBIG"]; -- -- string_len = 0; -+ string_len = 0; - #ifndef _POSIX_V7_ILP32_OFF32 -- if (__sysconf (_SC_V7_ILP32_OFF32) > 0) -+ if (__sysconf (_SC_V7_ILP32_OFF32) > 0) - #endif - #if !defined _POSIX_V7_ILP32_OFF32 || _POSIX_V7_ILP32_OFF32 > 0 -- { -- memcpy (restenvs + string_len, "POSIX_V7_ILP32_OFF32", -- sizeof "POSIX_V7_ILP32_OFF32" - 1); -- string_len += sizeof "POSIX_V7_ILP32_OFF32" - 1; -- } -+ { -+ memcpy (restenvs + string_len, "POSIX_V7_ILP32_OFF32", -+ sizeof "POSIX_V7_ILP32_OFF32" - 1); -+ string_len += sizeof "POSIX_V7_ILP32_OFF32" - 1; -+ } - #endif - #ifndef _POSIX_V7_ILP32_OFFBIG -- if (__sysconf (_SC_V7_ILP32_OFFBIG) > 0) -+ if (__sysconf (_SC_V7_ILP32_OFFBIG) > 0) - #endif - #if !defined _POSIX_V7_ILP32_OFFBIG || _POSIX_V7_ILP32_OFFBIG > 0 -- { -- if (string_len) -- restenvs[string_len++] = '\n'; -- memcpy (restenvs + string_len, "POSIX_V7_ILP32_OFFBIG", -- sizeof "POSIX_V7_ILP32_OFFBIG" - 1); -- string_len += sizeof "POSIX_V7_ILP32_OFFBIG" - 1; -- } -+ { -+ if (string_len) -+ restenvs[string_len++] = '\n'; -+ memcpy (restenvs + string_len, "POSIX_V7_ILP32_OFFBIG", -+ sizeof "POSIX_V7_ILP32_OFFBIG" - 1); -+ string_len += sizeof "POSIX_V7_ILP32_OFFBIG" - 1; -+ } - #endif - #ifndef _POSIX_V7_LP64_OFF64 -- if (__sysconf (_SC_V7_LP64_OFF64) > 0) -+ if (__sysconf (_SC_V7_LP64_OFF64) > 0) - #endif - #if !defined _POSIX_V7_LP64_OFF64 || _POSIX_V7_LP64_OFF64 > 0 -- { -- if (string_len) -- restenvs[string_len++] = '\n'; -- memcpy (restenvs + string_len, "POSIX_V7_LP64_OFF64", -- sizeof "POSIX_V7_LP64_OFF64" - 1); -- string_len += sizeof "POSIX_V7_LP64_OFF64" - 1; -- } -+ { -+ if (string_len) -+ restenvs[string_len++] = '\n'; -+ memcpy (restenvs + string_len, "POSIX_V7_LP64_OFF64", -+ sizeof "POSIX_V7_LP64_OFF64" - 1); -+ string_len += sizeof "POSIX_V7_LP64_OFF64" - 1; -+ } - #endif - #ifndef _POSIX_V7_LPBIG_OFFBIG -- if (__sysconf (_SC_V7_LPBIG_OFFBIG) > 0) -+ if (__sysconf (_SC_V7_LPBIG_OFFBIG) > 0) - #endif - #if !defined _POSIX_V7_LPBIG_OFFBIG || _POSIX_V7_LPBIG_OFFBIG > 0 -- { -- if (string_len) -- restenvs[string_len++] = '\n'; -- memcpy (restenvs + string_len, "POSIX_V7_LPBIG_OFFBIG", -- sizeof "POSIX_V7_LPBIG_OFFBIG" - 1); -- string_len += sizeof "POSIX_V7_LPBIG_OFFBIG" - 1; -- } --#endif -- restenvs[string_len++] = '\0'; -- string = restenvs; -- } -+ { -+ if (string_len) -+ restenvs[string_len++] = '\n'; -+ memcpy (restenvs + string_len, "POSIX_V7_LPBIG_OFFBIG", -+ sizeof "POSIX_V7_LPBIG_OFFBIG" - 1); -+ string_len += sizeof "POSIX_V7_LPBIG_OFFBIG" - 1; -+ } -+#endif -+ restenvs[string_len++] = '\0'; -+ string = restenvs; - break; - - case _CS_V6_WIDTH_RESTRICTED_ENVS: -@@ -116,59 +115,55 @@ confstr (name, buf, len) - wint_t types are no greater than the width of type long. - - Currently this means all environment which the system allows. */ -- { -- char restenvs[4 * sizeof "POSIX_V6_LPBIG_OFFBIG"]; -- -- string_len = 0; -+ string_len = 0; - #ifndef _POSIX_V6_ILP32_OFF32 -- if (__sysconf (_SC_V6_ILP32_OFF32) > 0) -+ if (__sysconf (_SC_V6_ILP32_OFF32) > 0) - #endif - #if !defined _POSIX_V6_ILP32_OFF32 || _POSIX_V6_ILP32_OFF32 > 0 -- { -- memcpy (restenvs + string_len, "POSIX_V6_ILP32_OFF32", -- sizeof "POSIX_V6_ILP32_OFF32" - 1); -- string_len += sizeof "POSIX_V6_ILP32_OFF32" - 1; -- } -+ { -+ memcpy (restenvs + string_len, "POSIX_V6_ILP32_OFF32", -+ sizeof "POSIX_V6_ILP32_OFF32" - 1); -+ string_len += sizeof "POSIX_V6_ILP32_OFF32" - 1; -+ } - #endif - #ifndef _POSIX_V6_ILP32_OFFBIG -- if (__sysconf (_SC_V6_ILP32_OFFBIG) > 0) -+ if (__sysconf (_SC_V6_ILP32_OFFBIG) > 0) - #endif - #if !defined _POSIX_V6_ILP32_OFFBIG || _POSIX_V6_ILP32_OFFBIG > 0 -- { -- if (string_len) -- restenvs[string_len++] = '\n'; -- memcpy (restenvs + string_len, "POSIX_V6_ILP32_OFFBIG", -- sizeof "POSIX_V6_ILP32_OFFBIG" - 1); -- string_len += sizeof "POSIX_V6_ILP32_OFFBIG" - 1; -- } -+ { -+ if (string_len) -+ restenvs[string_len++] = '\n'; -+ memcpy (restenvs + string_len, "POSIX_V6_ILP32_OFFBIG", -+ sizeof "POSIX_V6_ILP32_OFFBIG" - 1); -+ string_len += sizeof "POSIX_V6_ILP32_OFFBIG" - 1; -+ } - #endif - #ifndef _POSIX_V6_LP64_OFF64 -- if (__sysconf (_SC_V6_LP64_OFF64) > 0) -+ if (__sysconf (_SC_V6_LP64_OFF64) > 0) - #endif - #if !defined _POSIX_V6_LP64_OFF64 || _POSIX_V6_LP64_OFF64 > 0 -- { -- if (string_len) -- restenvs[string_len++] = '\n'; -- memcpy (restenvs + string_len, "POSIX_V6_LP64_OFF64", -- sizeof "POSIX_V6_LP64_OFF64" - 1); -- string_len += sizeof "POSIX_V6_LP64_OFF64" - 1; -- } -+ { -+ if (string_len) -+ restenvs[string_len++] = '\n'; -+ memcpy (restenvs + string_len, "POSIX_V6_LP64_OFF64", -+ sizeof "POSIX_V6_LP64_OFF64" - 1); -+ string_len += sizeof "POSIX_V6_LP64_OFF64" - 1; -+ } - #endif - #ifndef _POSIX_V6_LPBIG_OFFBIG -- if (__sysconf (_SC_V6_LPBIG_OFFBIG) > 0) -+ if (__sysconf (_SC_V6_LPBIG_OFFBIG) > 0) - #endif - #if !defined _POSIX_V6_LPBIG_OFFBIG || _POSIX_V6_LPBIG_OFFBIG > 0 -- { -- if (string_len) -- restenvs[string_len++] = '\n'; -- memcpy (restenvs + string_len, "POSIX_V6_LPBIG_OFFBIG", -- sizeof "POSIX_V6_LPBIG_OFFBIG" - 1); -- string_len += sizeof "POSIX_V6_LPBIG_OFFBIG" - 1; -- } --#endif -- restenvs[string_len++] = '\0'; -- string = restenvs; -- } -+ { -+ if (string_len) -+ restenvs[string_len++] = '\n'; -+ memcpy (restenvs + string_len, "POSIX_V6_LPBIG_OFFBIG", -+ sizeof "POSIX_V6_LPBIG_OFFBIG" - 1); -+ string_len += sizeof "POSIX_V6_LPBIG_OFFBIG" - 1; -+ } -+#endif -+ restenvs[string_len++] = '\0'; -+ string = restenvs; - break; - - case _CS_V5_WIDTH_RESTRICTED_ENVS: -@@ -179,59 +174,55 @@ confstr (name, buf, len) - wint_t types are no greater than the width of type long. - - Currently this means all environment which the system allows. */ -- { -- char restenvs[4 * sizeof "XBS5_LPBIG_OFFBIG"]; -- -- string_len = 0; -+ string_len = 0; - #ifndef _XBS5_ILP32_OFF32 -- if (__sysconf (_SC_XBS5_ILP32_OFF32) > 0) -+ if (__sysconf (_SC_XBS5_ILP32_OFF32) > 0) - #endif - #if !defined _XBS5_ILP32_OFF32 || _XBS5_ILP32_OFF32 > 0 -- { -- memcpy (restenvs + string_len, "XBS5_ILP32_OFF32", -- sizeof "XBS5_ILP32_OFF32" - 1); -- string_len += sizeof "XBS5_ILP32_OFF32" - 1; -- } -+ { -+ memcpy (restenvs + string_len, "XBS5_ILP32_OFF32", -+ sizeof "XBS5_ILP32_OFF32" - 1); -+ string_len += sizeof "XBS5_ILP32_OFF32" - 1; -+ } - #endif - #ifndef _XBS5_ILP32_OFFBIG -- if (__sysconf (_SC_XBS5_ILP32_OFFBIG) > 0) -+ if (__sysconf (_SC_XBS5_ILP32_OFFBIG) > 0) - #endif - #if !defined _XBS5_ILP32_OFFBIG || _XBS5_ILP32_OFFBIG > 0 -- { -- if (string_len) -- restenvs[string_len++] = '\n'; -- memcpy (restenvs + string_len, "XBS5_ILP32_OFFBIG", -- sizeof "XBS5_ILP32_OFFBIG" - 1); -- string_len += sizeof "XBS5_ILP32_OFFBIG" - 1; -- } -+ { -+ if (string_len) -+ restenvs[string_len++] = '\n'; -+ memcpy (restenvs + string_len, "XBS5_ILP32_OFFBIG", -+ sizeof "XBS5_ILP32_OFFBIG" - 1); -+ string_len += sizeof "XBS5_ILP32_OFFBIG" - 1; -+ } - #endif - #ifndef _XBS5_LP64_OFF64 -- if (__sysconf (_SC_XBS5_LP64_OFF64) > 0) -+ if (__sysconf (_SC_XBS5_LP64_OFF64) > 0) - #endif - #if !defined _XBS5_LP64_OFF64 || _XBS5_LP64_OFF64 > 0 -- { -- if (string_len) -- restenvs[string_len++] = '\n'; -- memcpy (restenvs + string_len, "XBS5_LP64_OFF64", -- sizeof "XBS5_LP64_OFF64" - 1); -- string_len += sizeof "XBS5_LP64_OFF64" - 1; -- } -+ { -+ if (string_len) -+ restenvs[string_len++] = '\n'; -+ memcpy (restenvs + string_len, "XBS5_LP64_OFF64", -+ sizeof "XBS5_LP64_OFF64" - 1); -+ string_len += sizeof "XBS5_LP64_OFF64" - 1; -+ } - #endif - #ifndef _XBS5_LPBIG_OFFBIG -- if (__sysconf (_SC_XBS5_LPBIG_OFFBIG) > 0) -+ if (__sysconf (_SC_XBS5_LPBIG_OFFBIG) > 0) - #endif - #if !defined _XBS5_LPBIG_OFFBIG || _XBS5_LPBIG_OFFBIG > 0 -- { -- if (string_len) -- restenvs[string_len++] = '\n'; -- memcpy (restenvs + string_len, "XBS5_LPBIG_OFFBIG", -- sizeof "XBS5_LPBIG_OFFBIG" - 1); -- string_len += sizeof "XBS5_LPBIG_OFFBIG" - 1; -- } --#endif -- restenvs[string_len++] = '\0'; -- string = restenvs; -- } -+ { -+ if (string_len) -+ restenvs[string_len++] = '\n'; -+ memcpy (restenvs + string_len, "XBS5_LPBIG_OFFBIG", -+ sizeof "XBS5_LPBIG_OFFBIG" - 1); -+ string_len += sizeof "XBS5_LPBIG_OFFBIG" - 1; -+ } -+#endif -+ restenvs[string_len++] = '\0'; -+ string = restenvs; - break; - - case _CS_XBS5_ILP32_OFF32_CFLAGS: diff --git a/core/glibc/glibc-2.15-do-not-install-timezone-files-2.patch b/core/glibc/glibc-2.15-do-not-install-timezone-files-2.patch deleted file mode 100644 index 13b6ddc5b..000000000 --- a/core/glibc/glibc-2.15-do-not-install-timezone-files-2.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff --git a/timezone/Makefile b/timezone/Makefile -index 00bfba6..9e55a6a 100644 ---- a/timezone/Makefile -+++ b/timezone/Makefile -@@ -45,7 +45,6 @@ include ../Makeconfig # Get objpfx defined so we can use it below. - CPPFLAGS-zic = -DNOT_IN_libc - - ifeq ($(have-ksh),yes) --install-others += $(inst_zonedir)/iso3166.tab $(inst_zonedir)/zone.tab - install-bin-script = tzselect - generated += tzselect - endif -@@ -111,7 +110,3 @@ $(objpfx)tzselect: tzselect.ksh $(common-objpfx)config.make - -e 's%@TZDIR@%$(zonedir)%g' < $< > $@.new - chmod 555 $@.new - mv -f $@.new $@ -- --$(addprefix $(inst_zonedir)/,iso3166.tab zone.tab): \ -- $(inst_zonedir)/%: % $(+force) -- $(do-install) diff --git a/core/glibc/glibc-2.15-do-not-install-timezone-files.patch b/core/glibc/glibc-2.15-do-not-install-timezone-files.patch deleted file mode 100644 index 61b822608..000000000 --- a/core/glibc/glibc-2.15-do-not-install-timezone-files.patch +++ /dev/null @@ -1,124 +0,0 @@ -diff --git a/timezone/Makefile b/timezone/Makefile -index e8fb716..d5ea538 100644 ---- a/timezone/Makefile -+++ b/timezone/Makefile -@@ -1,4 +1,4 @@ --# Copyright (C) 1998,1999,2000,2002,2005,2007 Free Software Foundation, Inc. -+# Copyright (C) 1998-2000,2002,2005,2007,2012 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -49,33 +49,6 @@ include ../Makeconfig # Get objpfx defined so we can use it below. - - CPPFLAGS-zic = -DNOT_IN_libc - --# z.* use this variable. --define nl -- -- --endef --ifndef avoid-generated --ifndef inhibit_timezone_rules ---include $(addprefix $(objpfx)z.,$(tzfiles)) --endif --endif -- --# Make these absolute file names. --installed-localtime-file := $(firstword $(filter /%,$(inst_localtime-file)) \ -- $(addprefix $(inst_zonedir)/, \ -- $(localtime-file))) --installed-posixrules-file := $(firstword $(filter /%,$(posixrules-file)) \ -- $(addprefix $(inst_zonedir)/, \ -- $(posixrules-file))) -- --ifeq ($(cross-compiling),no) --# Don't try to install the zoneinfo files since we can't run zic. --install-others = $(addprefix $(inst_zonedir)/,$(zonenames) \ -- $(zonenames:%=posix/%) \ -- $(zonenames:%=right/%)) \ -- $(installed-localtime-file) $(installed-posixrules-file) --endif -- - ifeq ($(have-ksh),yes) - install-others += $(inst_zonedir)/iso3166.tab $(inst_zonedir)/zone.tab - install-bin-script = tzselect -@@ -85,79 +58,6 @@ endif - include ../Rules - - --$(tzfiles:%=$(objpfx)z.%): $(objpfx)z.%: % Makefile --# Kludge alert: we use an implicit rule (in what we are generating here) --# because that is the only way to tell Make that the one command builds all --# the files. --# The extra kludge for the $(tzlinks) files is necessary since running zic --# this file requires all other files to exist. Blech! -- $(make-target-directory) -- (echo 'define $*-zones' ;\ -- $(AWK) '$$1 == "Zone" { print $$2 } $$1 == "Link" { print $$3 }' $^ ;\ -- echo 'endef' ;\ -- echo '$*-zones := $$(subst $$(nl), ,$$($*-zones))' ;\ -- echo 'ifdef $*-zones' ;\ -- if test x$(findstring $*, $(tzlinks)) != x; then \ -- echo '$$(addprefix $$(inst_zonedir)/right/,$$($*-zones)): \';\ -- echo '$$(foreach t,$$(tzbases),$$(addprefix $$(inst_zonedir)/right/,$$($$t-zones)))' ;\ -- echo '$$(addprefix $$(inst_zonedir)/posix/,$$($*-zones)): \';\ -- echo '$$(foreach t,$$(tzbases),$$(addprefix $$(inst_zonedir)/posix/,$$($$t-zones)))' ;\ -- echo '$$(addprefix $$(inst_zonedir)/,$$($*-zones)): \' ;\ -- echo '$$(foreach t,$$(tzbases),$$(addprefix $$(inst_zonedir)/,$$($$t-zones)))' ;\ -- fi ;\ -- echo '$$(addprefix $$(dir $$(inst_zonedir))zone%/right/,$$($*-zones)): \' ;\ -- echo '$< $$(objpfx)zic leapseconds yearistype' ;\ -- echo ' $$(tzcompile)' ;\ -- echo '$$(addprefix $$(dir $$(inst_zonedir))zone%/posix/,$$($*-zones)): \' ;\ -- echo '$< $$(objpfx)zic /dev/null yearistype' ;\ -- echo ' $$(tzcompile)' ;\ -- echo '$$(addprefix $$(dir $$(inst_zonedir))zone%/,$$($*-zones)): \' ;\ -- echo '$< $$(objpfx)zic $$(leapseconds) yearistype' ;\ -- echo ' $$(tzcompile)' ;\ -- echo 'endif' ;\ -- echo 'zonenames := $$(zonenames) $$($*-zones)' ;\ -- ) > $@.new -- mv $@.new $@ -- --.PHONY: echo-zonenames --echo-zonenames: -- @echo 'Known zones: $(zonenames)' -- -- --# We have to use `-d $(inst_zonedir)' to explictly tell zic where to --# place the output files although $(zonedir) is compiled in. But the --# user might have set $(install_root) on the command line of `make install'. --zic-cmd = $(built-program-cmd) -d $(inst_zonedir) --tzcompile = $(zic-cmd)$(target-zone-flavor) -L $(word 3,$^) \ -- -y $(dir $(word 4,$^))$(notdir $(word 4,$^)) $< -- --# The source files specify the zone names relative to the -d directory, --# so for the posix/ and right/ flavors we need to pass -d $(inst_zonedir)/posix --# and the like. This magic extracts /posix or /right if it's the first --# component after $(inst_zonedir) in the target name $@. --target-zone-flavor = $(filter /posix /right, \ -- /$(firstword $(subst /, , \ -- $(patsubst $(inst_zonedir)/%,%,$@)))) -- --ifdef localtime --$(installed-localtime-file): $(inst_zonedir)/$(localtime) $(objpfx)zic \ -- $(+force) -- $(make-target-directory) -- if test -r $@; then \ -- echo Site timezone NOT reset to Factory.; \ -- else \ -- rm -f $@T; \ -- $(SHELL) $(..)scripts/rellns-sh $< $@T; \ -- mv -f $@T $@; \ -- fi --endif --ifdef posixrules --$(installed-posixrules-file): $(inst_zonedir)/$(posixrules) $(objpfx)zic \ -- $(+force) -- $(zic-cmd) -p $(posixrules) --endif -- -- - $(objpfx)zic: $(objpfx)scheck.o $(objpfx)ialloc.o - - tz-cflags = -DTZDIR='"$(zonedir)"' \ diff --git a/core/glibc/glibc-2.15-feraiseexcept-plt.patch b/core/glibc/glibc-2.15-feraiseexcept-plt.patch deleted file mode 100644 index c41acc169..000000000 --- a/core/glibc/glibc-2.15-feraiseexcept-plt.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff --git a/sysdeps/i386/fpu/feupdateenv.c b/sysdeps/i386/fpu/feupdateenv.c -index 70f9ee2..6e2ce35 100644 ---- a/sysdeps/i386/fpu/feupdateenv.c -+++ b/sysdeps/i386/fpu/feupdateenv.c -@@ -1,5 +1,5 @@ - /* Install given floating-point environment and raise exceptions. -- Copyright (C) 1997,99,2000,01,07,2010 Free Software Foundation, Inc. -+ Copyright (C) 1997,99,2000,01,07,2010,2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1997. - -@@ -44,7 +44,7 @@ __feupdateenv (const fenv_t *envp) - /* Raise the saved exception. Incidently for us the implementation - defined format of the values in objects of type fexcept_t is the - same as the ones specified using the FE_* constants. */ -- feraiseexcept ((int) temp); -+ __feraiseexcept ((int) temp); - - /* Success. */ - return 0; diff --git a/core/glibc/glibc-2.15-fmtmsg-locking.patch b/core/glibc/glibc-2.15-fmtmsg-locking.patch deleted file mode 100644 index f5976abd9..000000000 --- a/core/glibc/glibc-2.15-fmtmsg-locking.patch +++ /dev/null @@ -1,148 +0,0 @@ -diff --git a/stdlib/fmtmsg.c b/stdlib/fmtmsg.c -index 9203317..4c02302 100644 ---- a/stdlib/fmtmsg.c -+++ b/stdlib/fmtmsg.c -@@ -103,7 +103,6 @@ fmtmsg (long int classification, const char *label, int severity, - const char *text, const char *action, const char *tag) - { - __libc_once_define (static, once); -- int result = MM_OK; - struct severity_info *severity_rec; - - /* Make sure everything is initialized. */ -@@ -124,17 +123,6 @@ fmtmsg (long int classification, const char *label, int severity, - return MM_NOTOK; - } - -- for (severity_rec = severity_list; severity_rec != NULL; -- severity_rec = severity_rec->next) -- if (severity == severity_rec->severity) -- /* Bingo. */ -- break; -- -- /* If we don't know anything about the severity level return an error. */ -- if (severity_rec == NULL) -- return MM_NOTOK; -- -- - #ifdef __libc_ptf_call - /* We do not want this call to be cut short by a thread - cancellation. Therefore disable cancellation for now. */ -@@ -143,54 +131,73 @@ fmtmsg (long int classification, const char *label, int severity, - 0); - #endif - -- /* Now we can print. */ -- if (classification & MM_PRINT) -- { -- int do_label = (print & label_mask) && label != MM_NULLLBL; -- int do_severity = (print & severity_mask) && severity != MM_NULLSEV; -- int do_text = (print & text_mask) && text != MM_NULLTXT; -- int do_action = (print & action_mask) && action != MM_NULLACT; -- int do_tag = (print & tag_mask) && tag != MM_NULLTAG; -- -- if (__fxprintf (stderr, "%s%s%s%s%s%s%s%s%s%s\n", -- do_label ? label : "", -- do_label && (do_severity | do_text | do_action | do_tag) -- ? ": " : "", -- do_severity ? severity_rec->string : "", -- do_severity && (do_text | do_action | do_tag) -- ? ": " : "", -- do_text ? text : "", -- do_text && (do_action | do_tag) ? "\n" : "", -- do_action ? "TO FIX: " : "", -- do_action ? action : "", -- do_action && do_tag ? " " : "", -- do_tag ? tag : "") < 0) -- /* Oh, oh. An error occurred during the output. */ -- result = MM_NOMSG; -- } -+ __libc_lock_lock (lock); - -- if (classification & MM_CONSOLE) -+ for (severity_rec = severity_list; severity_rec != NULL; -+ severity_rec = severity_rec->next) -+ if (severity == severity_rec->severity) -+ /* Bingo. */ -+ break; -+ -+ /* If we don't know anything about the severity level return an error. */ -+ int result = MM_NOTOK; -+ if (severity_rec != NULL) - { -- int do_label = label != MM_NULLLBL; -- int do_severity = severity != MM_NULLSEV; -- int do_text = text != MM_NULLTXT; -- int do_action = action != MM_NULLACT; -- int do_tag = tag != MM_NULLTAG; -- -- syslog (LOG_ERR, "%s%s%s%s%s%s%s%s%s%s\n", -- do_label ? label : "", -- do_label && (do_severity | do_text | do_action | do_tag) -- ? ": " : "", -- do_severity ? severity_rec->string : "", -- do_severity && (do_text | do_action | do_tag) ? ": " : "", -- do_text ? text : "", -- do_text && (do_action | do_tag) ? "\n" : "", -- do_action ? "TO FIX: " : "", -- do_action ? action : "", -- do_action && do_tag ? " " : "", -- do_tag ? tag : ""); -+ result = MM_OK; -+ -+ /* Now we can print. */ -+ if (classification & MM_PRINT) -+ { -+ int do_label = (print & label_mask) && label != MM_NULLLBL; -+ int do_severity = (print & severity_mask) && severity != MM_NULLSEV; -+ int do_text = (print & text_mask) && text != MM_NULLTXT; -+ int do_action = (print & action_mask) && action != MM_NULLACT; -+ int do_tag = (print & tag_mask) && tag != MM_NULLTAG; -+ int need_colon = (do_label -+ && (do_severity | do_text | do_action | do_tag)); -+ -+ if (__fxprintf (stderr, "%s%s%s%s%s%s%s%s%s%s\n", -+ do_label ? label : "", -+ need_colon ? ": " : "", -+ do_severity ? severity_rec->string : "", -+ do_severity && (do_text | do_action | do_tag) -+ ? ": " : "", -+ do_text ? text : "", -+ do_text && (do_action | do_tag) ? "\n" : "", -+ do_action ? "TO FIX: " : "", -+ do_action ? action : "", -+ do_action && do_tag ? " " : "", -+ do_tag ? tag : "") < 0) -+ /* Oh, oh. An error occurred during the output. */ -+ result = MM_NOMSG; -+ } -+ -+ if (classification & MM_CONSOLE) -+ { -+ int do_label = label != MM_NULLLBL; -+ int do_severity = severity != MM_NULLSEV; -+ int do_text = text != MM_NULLTXT; -+ int do_action = action != MM_NULLACT; -+ int do_tag = tag != MM_NULLTAG; -+ int need_colon = (do_label -+ && (do_severity | do_text | do_action | do_tag)); -+ -+ syslog (LOG_ERR, "%s%s%s%s%s%s%s%s%s%s\n", -+ do_label ? label : "", -+ need_colon ? ": " : "", -+ do_severity ? severity_rec->string : "", -+ do_severity && (do_text | do_action | do_tag) ? ": " : "", -+ do_text ? text : "", -+ do_text && (do_action | do_tag) ? "\n" : "", -+ do_action ? "TO FIX: " : "", -+ do_action ? action : "", -+ do_action && do_tag ? " " : "", -+ do_tag ? tag : ""); -+ } - } - -+ __libc_lock_unlock (lock); -+ - #ifdef __libc_ptf_call - __libc_ptf_call (pthread_setcancelstate, (state, NULL), 0); - #endif diff --git a/core/glibc/glibc-2.15-gb18030.patch.gz b/core/glibc/glibc-2.15-gb18030.patch.gz deleted file mode 100644 index dde59c0569a56a7067f09ad383a963788b82a279..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 470126 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�V;SVU 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�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 /dev/null) -@@ -290,7 +291,9 @@ modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \ - tst-initordera1 tst-initorderb1 \ - tst-initordera2 tst-initorderb2 \ - tst-initordera3 tst-initordera4 \ -- tst-initorder2a tst-initorder2b tst-initorder2c tst-initorder2d -+ tst-initorder2a tst-initorder2b tst-initorder2c \ -+ tst-initorder2d \ -+ tst-relsort1mod1 tst-relsort1mod2 - ifeq (yes,$(have-initfini-array)) - modules-names += tst-array2dep tst-array5dep - endif -@@ -1195,3 +1198,9 @@ CFLAGS-tst-auditmod6b.c += $(AVX-CFLAGS) - CFLAGS-tst-auditmod6c.c += $(AVX-CFLAGS) - CFLAGS-tst-auditmod7b.c += $(AVX-CFLAGS) - endif -+ -+$(objpfx)tst-relsort1: $(libdl) -+$(objpfx)tst-relsort1mod1.so: $(libm) $(objpfx)tst-relsort1mod2.so -+$(objpfx)tst-relsort1mod2.so: $(libm) -+$(objpfx)tst-relsort1.out: $(objpfx)tst-relsort1mod1.so \ -+ $(objpfx)tst-relsort1mod2.so -diff --git a/elf/dl-open.c b/elf/dl-open.c -index a0b5c50..a56bdc1 100644 ---- a/elf/dl-open.c -+++ b/elf/dl-open.c -@@ -1,5 +1,5 @@ - /* Load a shared object at runtime, relocate it, and run its initializer. -- Copyright (C) 1996-2007, 2009, 2010, 2011 Free Software Foundation, Inc. -+ Copyright (C) 1996-2007, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -302,45 +302,109 @@ dl_open_worker (void *a) - if (GLRO(dl_lazy)) - reloc_mode |= mode & RTLD_LAZY; - -- /* Relocate the objects loaded. We do this in reverse order so that copy -- relocs of earlier objects overwrite the data written by later objects. */ -- -+ /* Sort the objects by dependency for the relocation process. This -+ allows IFUNC relocations to work and it also means copy -+ relocation of dependencies are if necessary overwritten. */ -+ size_t nmaps = 0; - struct link_map *l = new; -- while (l->l_next) -- l = l->l_next; -- while (1) -+ do -+ { -+ if (! l->l_real->l_relocated) -+ ++nmaps; -+ l = l->l_next; -+ } -+ while (l != NULL); -+ struct link_map *maps[nmaps]; -+ nmaps = 0; -+ l = new; -+ do - { - if (! l->l_real->l_relocated) -+ maps[nmaps++] = l; -+ l = l->l_next; -+ } -+ while (l != NULL); -+ if (nmaps > 1) -+ { -+ char seen[nmaps]; -+ memset (seen, '\0', nmaps); -+ size_t i = 0; -+ while (1) - { --#ifdef SHARED -- if (__builtin_expect (GLRO(dl_profile) != NULL, 0)) -+ ++seen[i]; -+ struct link_map *thisp = maps[i]; -+ -+ /* Find the last object in the list for which the current one is -+ a dependency and move the current object behind the object -+ with the dependency. */ -+ size_t k = nmaps - 1; -+ while (k > i) - { -- /* If this here is the shared object which we want to profile -- make sure the profile is started. We can find out whether -- this is necessary or not by observing the `_dl_profile_map' -- variable. If was NULL but is not NULL afterwars we must -- start the profiling. */ -- struct link_map *old_profile_map = GL(dl_profile_map); -+ struct link_map **runp = maps[k]->l_initfini; -+ if (runp != NULL) -+ /* Look through the dependencies of the object. */ -+ while (*runp != NULL) -+ if (__builtin_expect (*runp++ == thisp, 0)) -+ { -+ /* Move the current object to the back past the last -+ object with it as the dependency. */ -+ memmove (&maps[i], &maps[i + 1], -+ (k - i) * sizeof (maps[0])); -+ maps[k] = thisp; -+ -+ if (seen[i + 1] > 1) -+ { -+ ++i; -+ goto next_clear; -+ } -+ -+ char this_seen = seen[i]; -+ memmove (&seen[i], &seen[i + 1], -+ (k - i) * sizeof (seen[0])); -+ seen[k] = this_seen; -+ -+ goto next; -+ } -+ -+ --k; -+ } - -- _dl_relocate_object (l, l->l_scope, reloc_mode | RTLD_LAZY, 1); -+ if (++i == nmaps) -+ break; -+ next_clear: -+ memset (&seen[i], 0, (nmaps - i) * sizeof (seen[0])); -+ next:; -+ } -+ } - -- if (old_profile_map == NULL && GL(dl_profile_map) != NULL) -- { -- /* We must prepare the profiling. */ -- _dl_start_profile (); -+ for (size_t i = nmaps; i-- > 0; ) -+ { -+ l = maps[i]; - -- /* Prevent unloading the object. */ -- GL(dl_profile_map)->l_flags_1 |= DF_1_NODELETE; -- } -+#ifdef SHARED -+ if (__builtin_expect (GLRO(dl_profile) != NULL, 0)) -+ { -+ /* If this here is the shared object which we want to profile -+ make sure the profile is started. We can find out whether -+ this is necessary or not by observing the `_dl_profile_map' -+ variable. If it was NULL but is not NULL afterwars we must -+ start the profiling. */ -+ struct link_map *old_profile_map = GL(dl_profile_map); -+ -+ _dl_relocate_object (l, l->l_scope, reloc_mode | RTLD_LAZY, 1); -+ -+ if (old_profile_map == NULL && GL(dl_profile_map) != NULL) -+ { -+ /* We must prepare the profiling. */ -+ _dl_start_profile (); -+ -+ /* Prevent unloading the object. */ -+ GL(dl_profile_map)->l_flags_1 |= DF_1_NODELETE; - } -- else --#endif -- _dl_relocate_object (l, l->l_scope, reloc_mode, 0); - } -- -- if (l == new) -- break; -- l = l->l_prev; -+ else -+#endif -+ _dl_relocate_object (l, l->l_scope, reloc_mode, 0); - } - - /* If the file is not loaded now as a dependency, add the search -diff --git a/elf/tst-relsort1.c b/elf/tst-relsort1.c -new file mode 100644 -index 0000000..972100c ---- /dev/null -+++ b/elf/tst-relsort1.c -@@ -0,0 +1,19 @@ -+#include -+#include -+ -+ -+static int -+do_test () -+{ -+ const char lib[] = "$ORIGIN/tst-relsort1mod1.so"; -+ void *h = dlopen (lib, RTLD_NOW); -+ if (h == NULL) -+ { -+ puts (dlerror ()); -+ return 1; -+ } -+ return 0; -+} -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" -diff --git a/elf/tst-relsort1mod1.c b/elf/tst-relsort1mod1.c -new file mode 100644 -index 0000000..9e4a943 ---- /dev/null -+++ b/elf/tst-relsort1mod1.c -@@ -0,0 +1,7 @@ -+extern int foo (double); -+ -+int -+bar (void) -+{ -+ return foo (1.2); -+} -diff --git a/elf/tst-relsort1mod2.c b/elf/tst-relsort1mod2.c -new file mode 100644 -index 0000000..a2c3e55 ---- /dev/null -+++ b/elf/tst-relsort1mod2.c -@@ -0,0 +1,7 @@ -+#include -+ -+int -+foo (double d) -+{ -+ return floor (d) != 0.0; -+} diff --git a/core/glibc/glibc-2.15-lddebug-scopes.patch b/core/glibc/glibc-2.15-lddebug-scopes.patch deleted file mode 100644 index 808cf8d7c..000000000 --- a/core/glibc/glibc-2.15-lddebug-scopes.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 0c95ab64cb4ec0d22bb222647d9d20c7b4903e38 Mon Sep 17 00:00:00 2001 -From: Andreas Schwab -Date: Fri, 7 Oct 2011 09:31:27 +0200 -Subject: [PATCH] Horrible workaround for horribly broken software - ---- - elf/rtld.c | 4 +++- - 1 files changed, 3 insertions(+), 1 deletions(-) - -diff --git a/elf/rtld.c b/elf/rtld.c -index 978c609..8422b9f 100644 ---- a/elf/rtld.c -+++ b/elf/rtld.c -@@ -1393,7 +1393,9 @@ of this helper program; chances are you did not intend to run this program.\n\ - char *copy = malloc (len); - if (copy == NULL) - _dl_fatal_printf ("out of memory\n"); -- l->l_libname->name = l->l_name = memcpy (copy, dsoname, len); -+ l->l_libname->name = memcpy (copy, dsoname, len); -+ if (GLRO(dl_debug_mask)) -+ l->l_name = copy; - } - - /* Add the vDSO to the object list. */ --- -1.7.3.4 - diff --git a/core/glibc/glibc-2.15-multiarch-x86-strcmp.patch b/core/glibc/glibc-2.15-multiarch-x86-strcmp.patch deleted file mode 100644 index 38c9e617f..000000000 --- a/core/glibc/glibc-2.15-multiarch-x86-strcmp.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff --git a/sysdeps/i386/i686/multiarch/strcasecmp_l-c.c b/sysdeps/i386/i686/multiarch/strcasecmp_l-c.c -index d10e872..d4fcd2b 100644 ---- a/sysdeps/i386/i686/multiarch/strcasecmp_l-c.c -+++ b/sysdeps/i386/i686/multiarch/strcasecmp_l-c.c -@@ -6,6 +6,8 @@ extern __typeof (strcasecmp_l) __strcasecmp_l_nonascii; - #define USE_IN_EXTENDED_LOCALE_MODEL 1 - #include - -+strong_alias (__strcasecmp_l_nonascii, __strcasecmp_l_ia32) -+ - /* The needs of strcasecmp in libc are minimal, no need to go through - the IFUNC. */ - strong_alias (__strcasecmp_l_nonascii, __GI___strcasecmp_l) -diff --git a/sysdeps/i386/i686/multiarch/strcmp.S b/sysdeps/i386/i686/multiarch/strcmp.S -index 5410d17..b3b9eb8 100644 ---- a/sysdeps/i386/i686/multiarch/strcmp.S -+++ b/sysdeps/i386/i686/multiarch/strcmp.S -@@ -111,6 +111,7 @@ END(STRCMP) - # endif - #endif - --#ifndef USE_AS_STRNCMP -+#if !defined USE_AS_STRNCMP && !defined USE_AS_STRCASECMP_L \ -+ && !defined USE_AS_STRNCASECMP_L - # include "../strcmp.S" - #endif -diff --git a/sysdeps/i386/i686/multiarch/strncase_l-c.c b/sysdeps/i386/i686/multiarch/strncase_l-c.c -index 0c68b8d..7e601af 100644 ---- a/sysdeps/i386/i686/multiarch/strncase_l-c.c -+++ b/sysdeps/i386/i686/multiarch/strncase_l-c.c -@@ -6,6 +6,8 @@ extern __typeof (strncasecmp_l) __strncasecmp_l_nonascii; - #define USE_IN_EXTENDED_LOCALE_MODEL 1 - #include - -+strong_alias (__strncasecmp_l_nonascii, __strncasecmp_l_ia32) -+ - /* The needs of strcasecmp in libc are minimal, no need to go through - the IFUNC. */ - strong_alias (__strncasecmp_l_nonascii, __GI___strncasecmp_l) diff --git a/core/glibc/glibc-2.15-nearbyintf-rounding.patch b/core/glibc/glibc-2.15-nearbyintf-rounding.patch deleted file mode 100644 index b2bb9caac..000000000 --- a/core/glibc/glibc-2.15-nearbyintf-rounding.patch +++ /dev/null @@ -1,75 +0,0 @@ -diff --git a/math/libm-test.inc b/math/libm-test.inc -index c8186c8..1016753 100644 ---- a/math/libm-test.inc -+++ b/math/libm-test.inc -@@ -4632,6 +4632,29 @@ nearbyint_test (void) - TEST_f_f (nearbyint, 524286.75, 524287.0); - TEST_f_f (nearbyint, 524288.75, 524289.0); - -+ TEST_f_f (nearbyint, 1048576.75, 1048577.0); -+ TEST_f_f (nearbyint, 2097152.75, 2097153.0); -+ TEST_f_f (nearbyint, 2492472.75, 2492473.0); -+ TEST_f_f (nearbyint, 2886220.75, 2886221.0); -+ TEST_f_f (nearbyint, 3058792.75, 3058793.0); -+ TEST_f_f (nearbyint, -1048576.75, -1048577.0); -+ TEST_f_f (nearbyint, -2097152.75, -2097153.0); -+ TEST_f_f (nearbyint, -2492472.75, -2492473.0); -+ TEST_f_f (nearbyint, -2886220.75, -2886221.0); -+ TEST_f_f (nearbyint, -3058792.75, -3058793.0); -+#ifndef TEST_FLOAT -+ TEST_f_f (nearbyint, 70368744177664.75, 70368744177665.0); -+ TEST_f_f (nearbyint, 140737488355328.75, 140737488355329.0); -+ TEST_f_f (nearbyint, 281474976710656.75, 281474976710657.0); -+ TEST_f_f (nearbyint, 562949953421312.75, 562949953421313.0); -+ TEST_f_f (nearbyint, 1125899906842624.75, 1125899906842625.0); -+ TEST_f_f (nearbyint, -70368744177664.75, -70368744177665.0); -+ TEST_f_f (nearbyint, -140737488355328.75, -140737488355329.0); -+ TEST_f_f (nearbyint, -281474976710656.75, -281474976710657.0); -+ TEST_f_f (nearbyint, -562949953421312.75, -562949953421313.0); -+ TEST_f_f (nearbyint, -1125899906842624.75, -1125899906842625.0); -+#endif -+ - END (nearbyint); - } - -diff --git a/sysdeps/ieee754/flt-32/s_nearbyintf.c b/sysdeps/ieee754/flt-32/s_nearbyintf.c -index 04ef9ab..a6d602b 100644 ---- a/sysdeps/ieee754/flt-32/s_nearbyintf.c -+++ b/sysdeps/ieee754/flt-32/s_nearbyintf.c -@@ -30,18 +30,12 @@ __nearbyintf(float x) - { - fenv_t env; - int32_t i0,j0,sx; -- u_int32_t i,i1; - float w,t; - GET_FLOAT_WORD(i0,x); - sx = (i0>>31)&1; - j0 = ((i0>>23)&0xff)-0x7f; - if(j0<23) { - if(j0<0) { -- if((i0&0x7fffffff)==0) return x; -- i1 = (i0&0x07fffff); -- i0 &= 0xfff00000; -- i0 |= ((i1|-i1)>>9)&0x400000; -- SET_FLOAT_WORD(x,i0); - libc_feholdexceptf (&env); - w = TWO23[sx]+x; - t = w-TWO23[sx]; -@@ -49,17 +43,11 @@ __nearbyintf(float x) - GET_FLOAT_WORD(i0,t); - SET_FLOAT_WORD(t,(i0&0x7fffffff)|(sx<<31)); - return t; -- } else { -- i = (0x007fffff)>>j0; -- if((i0&i)==0) return x; /* x is integral */ -- i>>=1; -- if((i0&i)!=0) i0 = (i0&(~i))|((0x100000)>>j0); - } - } else { - if(__builtin_expect(j0==0x80, 0)) return x+x; /* inf or NaN */ - else return x; /* x is integral */ - } -- SET_FLOAT_WORD(x,i0); - libc_feholdexceptf (&env); - w = TWO23[sx]+x; - t = w-TWO23[sx]; diff --git a/core/glibc/glibc-2.15-negative-result-cache.patch b/core/glibc/glibc-2.15-negative-result-cache.patch deleted file mode 100644 index c09e79a17..000000000 --- a/core/glibc/glibc-2.15-negative-result-cache.patch +++ /dev/null @@ -1,138 +0,0 @@ -diff --git a/nscd/aicache.c b/nscd/aicache.c -index aaaf80d..e1f1244 100644 ---- a/nscd/aicache.c -+++ b/nscd/aicache.c -@@ -1,5 +1,5 @@ - /* Cache handling for host lookup. -- Copyright (C) 2004-2008, 2009, 2010, 2011 Free Software Foundation, Inc. -+ Copyright (C) 2004-2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2004. - -@@ -514,8 +514,9 @@ next_nip: - if (fd != -1) - TEMP_FAILURE_RETRY (send (fd, ¬found, total, MSG_NOSIGNAL)); - -- /* If we cannot permanently store the result, so be it. */ -- if (__builtin_expect (db->negtimeout == 0, 0)) -+ /* If we have a transient error or cannot permanently store the -+ result, so be it. */ -+ if (rc4 == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) - { - /* Mark the old entry as obsolete. */ - if (dh != NULL) -diff --git a/nscd/grpcache.c b/nscd/grpcache.c -index e9607c6..a698f36 100644 ---- a/nscd/grpcache.c -+++ b/nscd/grpcache.c -@@ -1,5 +1,5 @@ - /* Cache handling for group lookup. -- Copyright (C) 1998-2008, 2009, 2011 Free Software Foundation, Inc. -+ Copyright (C) 1998-2008, 2009, 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1998. - -@@ -120,8 +120,9 @@ cache_addgr (struct database_dyn *db, int fd, request_header *req, - else - written = total; - -- /* If we cannot permanently store the result, so be it. */ -- if (db->negtimeout == 0) -+ /* If we have a transient error or cannot permanently store -+ the result, so be it. */ -+ if (errno == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) - { - /* Mark the old entry as obsolete. */ - if (dh != NULL) -diff --git a/nscd/hstcache.c b/nscd/hstcache.c -index 4d68ade..c72feaa 100644 ---- a/nscd/hstcache.c -+++ b/nscd/hstcache.c -@@ -1,5 +1,5 @@ - /* Cache handling for host lookup. -- Copyright (C) 1998-2008, 2009, 2011 Free Software Foundation, Inc. -+ Copyright (C) 1998-2008, 2009, 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1998. - -@@ -141,8 +141,9 @@ cache_addhst (struct database_dyn *db, int fd, request_header *req, - MSG_NOSIGNAL)) != total) - all_written = false; - -- /* If we cannot permanently store the result, so be it. */ -- if (__builtin_expect (db->negtimeout == 0, 0)) -+ /* If we have a transient error or cannot permanently store -+ the result, so be it. */ -+ if (errval == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) - { - /* Mark the old entry as obsolete. */ - if (dh != NULL) -diff --git a/nscd/initgrcache.c b/nscd/initgrcache.c -index 4ac9942..2019991 100644 ---- a/nscd/initgrcache.c -+++ b/nscd/initgrcache.c -@@ -1,5 +1,5 @@ - /* Cache handling for host lookup. -- Copyright (C) 2004-2006, 2008, 2009, 2011 Free Software Foundation, Inc. -+ Copyright (C) 2004-2006, 2008, 2009, 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2004. - -@@ -202,8 +202,9 @@ addinitgroupsX (struct database_dyn *db, int fd, request_header *req, - written = TEMP_FAILURE_RETRY (send (fd, ¬found, total, - MSG_NOSIGNAL)); - -- /* If we cannot permanently store the result, so be it. */ -- if (__builtin_expect (db->negtimeout == 0, 0)) -+ /* If we have a transient error or cannot permanently store -+ the result, so be it. */ -+ if (all_tryagain || __builtin_expect (db->negtimeout == 0, 0)) - { - /* Mark the old entry as obsolete. */ - if (dh != NULL) -diff --git a/nscd/pwdcache.c b/nscd/pwdcache.c -index 49e130c..e2ba09d 100644 ---- a/nscd/pwdcache.c -+++ b/nscd/pwdcache.c -@@ -1,5 +1,5 @@ - /* Cache handling for passwd lookup. -- Copyright (C) 1998-2008, 2009, 2011 Free Software Foundation, Inc. -+ Copyright (C) 1998-2008, 2009, 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1998. - -@@ -124,8 +124,9 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, - written = TEMP_FAILURE_RETRY (send (fd, ¬found, total, - MSG_NOSIGNAL)); - -- /* If we cannot permanently store the result, so be it. */ -- if (__builtin_expect (db->negtimeout == 0, 0)) -+ /* If we have a transient error or cannot permanently store -+ the result, so be it. */ -+ if (errno == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) - { - /* Mark the old entry as obsolete. */ - if (dh != NULL) -diff --git a/nscd/servicescache.c b/nscd/servicescache.c -index d3d5dce..a6337e3 100644 ---- a/nscd/servicescache.c -+++ b/nscd/servicescache.c -@@ -1,5 +1,5 @@ - /* Cache handling for services lookup. -- Copyright (C) 2007, 2008, 2009, 2011 Free Software Foundation, Inc. -+ Copyright (C) 2007, 2008, 2009, 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2007. - -@@ -108,8 +108,9 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, - written = TEMP_FAILURE_RETRY (send (fd, ¬found, total, - MSG_NOSIGNAL)); - -- /* If we cannot permanently store the result, so be it. */ -- if (__builtin_expect (db->negtimeout == 0, 0)) -+ /* If we have a transient error or cannot permanently store -+ the result, so be it. */ -+ if (errval == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) - { - /* Mark the old entry as obsolete. */ - if (dh != NULL) diff --git a/core/glibc/glibc-2.15-non-signalling-comparisons.patch b/core/glibc/glibc-2.15-non-signalling-comparisons.patch deleted file mode 100644 index 874f8b4cb..000000000 --- a/core/glibc/glibc-2.15-non-signalling-comparisons.patch +++ /dev/null @@ -1,886 +0,0 @@ -diff --git a/math/w_acos.c b/math/w_acos.c -index 3138408..0490933 100644 ---- a/math/w_acos.c -+++ b/math/w_acos.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - double - __acos (double x) - { -- if (__builtin_expect (fabs (x) > 1.0, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabs (x), 1.0), 0) -+ && _LIB_VERSION != _IEEE_) - { - /* acos(|x|>1) */ - feraiseexcept (FE_INVALID); -diff --git a/math/w_acosf.c b/math/w_acosf.c -index 0e41a2c..2500a7d 100644 ---- a/math/w_acosf.c -+++ b/math/w_acosf.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - float - __acosf (float x) - { -- if (__builtin_expect (fabsf (x) > 1.0f, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabsf (x), 1.0f), 0) -+ && _LIB_VERSION != _IEEE_) - { - /* acos(|x|>1) */ - feraiseexcept (FE_INVALID); -diff --git a/math/w_acosh.c b/math/w_acosh.c -index 0bd2686..d632987 100644 ---- a/math/w_acosh.c -+++ b/math/w_acosh.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -24,7 +24,7 @@ - double - __acosh (double x) - { -- if (__builtin_expect (x < 1.0, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isless (x, 1.0), 0) && _LIB_VERSION != _IEEE_) - /* acosh(x<1) */ - return __kernel_standard (x, x, 29); - -diff --git a/math/w_acoshf.c b/math/w_acoshf.c -index c59bf94..f77df2b 100644 ---- a/math/w_acoshf.c -+++ b/math/w_acoshf.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -24,7 +24,7 @@ - float - __acoshf (float x) - { -- if (__builtin_expect (x < 1.0f, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isless (x, 1.0f), 0) && _LIB_VERSION != _IEEE_) - /* acosh(x<1) */ - return __kernel_standard_f (x, x, 129); - -diff --git a/math/w_acoshl.c b/math/w_acoshl.c -index 819bdfc..cc823b8 100644 ---- a/math/w_acoshl.c -+++ b/math/w_acoshl.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -24,7 +24,7 @@ - long double - __acoshl (long double x) - { -- if (__builtin_expect (x < 1.0L, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isless (x, 1.0L), 0) && _LIB_VERSION != _IEEE_) - /* acosh(x<1) */ - return __kernel_standard (x, x, 229); - -diff --git a/math/w_acosl.c b/math/w_acosl.c -index 6417068..05023b4 100644 ---- a/math/w_acosl.c -+++ b/math/w_acosl.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - long double - __acosl (long double x) - { -- if (__builtin_expect (fabsl (x) > 1.0L, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabsl (x), 1.0L), 0) -+ && _LIB_VERSION != _IEEE_) - { - /* acos(|x|>1) */ - feraiseexcept (FE_INVALID); -diff --git a/math/w_asin.c b/math/w_asin.c -index d4e89ce..0fa9487 100644 ---- a/math/w_asin.c -+++ b/math/w_asin.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - double - __asin (double x) - { -- if (__builtin_expect (fabs (x) > 1.0, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabs (x), 1.0), 0) -+ && _LIB_VERSION != _IEEE_) - { - /* asin(|x|>1) */ - feraiseexcept (FE_INVALID); -diff --git a/math/w_asinf.c b/math/w_asinf.c -index 270961f..c28edab 100644 ---- a/math/w_asinf.c -+++ b/math/w_asinf.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - float - __asinf (float x) - { -- if (__builtin_expect (fabsf (x) > 1.0f, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabsf (x), 1.0f), 0) -+ && _LIB_VERSION != _IEEE_) - { - /* asin(|x|>1) */ - feraiseexcept (FE_INVALID); -diff --git a/math/w_asinl.c b/math/w_asinl.c -index 32e5273..e4036d8 100644 ---- a/math/w_asinl.c -+++ b/math/w_asinl.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - long double - __asinl (long double x) - { -- if (__builtin_expect (fabsl (x) > 1.0L, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabsl (x), 1.0L), 0) -+ && _LIB_VERSION != _IEEE_) - { - /* asin(|x|>1) */ - feraiseexcept (FE_INVALID); -diff --git a/math/w_atanh.c b/math/w_atanh.c -index 1022bd5..190d2e9 100644 ---- a/math/w_atanh.c -+++ b/math/w_atanh.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -24,7 +24,8 @@ - double - __atanh (double x) - { -- if (__builtin_expect (fabs (x) >= 1.0, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreaterequal (fabs (x), 1.0), 0) -+ && _LIB_VERSION != _IEEE_) - return __kernel_standard (x, x, - fabs (x) > 1.0 - ? 30 /* atanh(|x|>1) */ -diff --git a/math/w_atanhf.c b/math/w_atanhf.c -index 3c8cf83..e0c5dc3 100644 ---- a/math/w_atanhf.c -+++ b/math/w_atanhf.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -24,7 +24,8 @@ - float - __atanhf (float x) - { -- if (__builtin_expect (fabsf (x) >= 1.0f, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreaterequal (fabsf (x), 1.0f), 0) -+ && _LIB_VERSION != _IEEE_) - return __kernel_standard_f (x, x, - fabsf (x) > 1.0f - ? 130 /* atanh(|x|>1) */ -diff --git a/math/w_atanhl.c b/math/w_atanhl.c -index f582acf..319535d 100644 ---- a/math/w_atanhl.c -+++ b/math/w_atanhl.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -24,7 +24,8 @@ - long double - __atanhl (long double x) - { -- if (__builtin_expect (fabsl (x) >= 1.0L, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreaterequal (fabsl (x), 1.0L), 0) -+ && _LIB_VERSION != _IEEE_) - return __kernel_standard (x, x, - fabsl (x) > 1.0L - ? 230 /* atanh(|x|>1) */ -diff --git a/math/w_exp2.c b/math/w_exp2.c -index bf22326..7a3b0af 100644 ---- a/math/w_exp2.c -+++ b/math/w_exp2.c -@@ -12,7 +12,8 @@ static const double u_threshold = (double) (DBL_MIN_EXP - DBL_MANT_DIG - 1); - double - __exp2 (double x) - { -- if (__builtin_expect (x <= u_threshold || x > o_threshold, 0) -+ if (__builtin_expect (islessequal (x, u_threshold) -+ || isgreater (x, o_threshold), 0) - && _LIB_VERSION != _IEEE_ && __finite (x)) - /* exp2 overflow: 44, exp2 underflow: 45 */ - return __kernel_standard (x, x, 44 + (x <= o_threshold)); -diff --git a/math/w_exp2f.c b/math/w_exp2f.c -index 7215fca..c4e9e94 100644 ---- a/math/w_exp2f.c -+++ b/math/w_exp2f.c -@@ -12,7 +12,8 @@ static const float u_threshold = (float) (FLT_MIN_EXP - FLT_MANT_DIG - 1); - float - __exp2f (float x) - { -- if (__builtin_expect (x <= u_threshold || x > o_threshold, 0) -+ if (__builtin_expect (islessequal (x, u_threshold) -+ || isgreater (x, o_threshold), 0) - && _LIB_VERSION != _IEEE_ && __finitef (x)) - /* exp2 overflow: 144, exp2 underflow: 145 */ - return __kernel_standard_f (x, x, 144 + (x <= o_threshold)); -diff --git a/math/w_exp2l.c b/math/w_exp2l.c -index ac8d231..442a637 100644 ---- a/math/w_exp2l.c -+++ b/math/w_exp2l.c -@@ -13,7 +13,8 @@ static const long double u_threshold - long double - __exp2l (long double x) - { -- if (__builtin_expect (x <= u_threshold || x > o_threshold, 0) -+ if (__builtin_expect (islessequal (x, u_threshold) -+ || isgreater (x, o_threshold), 0) - && _LIB_VERSION != _IEEE_ && __finitel (x)) - /* exp2 overflow: 244, exp2 underflow: 245 */ - return __kernel_standard (x, x, 244 + (x <= o_threshold)); -diff --git a/math/w_j0.c b/math/w_j0.c -index 1dff8b4..f8d3724 100644 ---- a/math/w_j0.c -+++ b/math/w_j0.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - double - j0 (double x) - { -- if (__builtin_expect (fabs (x) > X_TLOSS, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabs (x), X_TLOSS), 0) -+ && _LIB_VERSION != _IEEE_) - /* j0(|x|>X_TLOSS) */ - return __kernel_standard (x, x, 34); - -@@ -40,7 +41,8 @@ strong_alias (j0, j0l) - double - y0 (double x) - { -- if (__builtin_expect (x <= 0.0 || x > X_TLOSS, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0) || isgreater (x, X_TLOSS), 0) -+ && _LIB_VERSION != _IEEE_) - { - if (x < 0.0) - { -diff --git a/math/w_j0f.c b/math/w_j0f.c -index fc52f26..cef36aa 100644 ---- a/math/w_j0f.c -+++ b/math/w_j0f.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,7 @@ - float - j0f (float x) - { -- if (__builtin_expect (fabsf (x) > (float) X_TLOSS, 0) -+ if (__builtin_expect (isgreater (fabsf (x), (float) X_TLOSS), 0) - && _LIB_VERSION != _IEEE_) - /* j0(|x|>X_TLOSS) */ - return __kernel_standard_f (x, x, 134); -@@ -38,7 +38,8 @@ j0f (float x) - float - y0f (float x) - { -- if (__builtin_expect (x <= 0.0f || x > (float) X_TLOSS, 0) -+ if (__builtin_expect (islessequal (x, 0.0f) -+ || isgreater (x, (float) X_TLOSS), 0) - && _LIB_VERSION != _IEEE_) - { - if (x < 0.0f) -diff --git a/math/w_j0l.c b/math/w_j0l.c -index 8d72d50..144f33c 100644 ---- a/math/w_j0l.c -+++ b/math/w_j0l.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - long double - __j0l (long double x) - { -- if (__builtin_expect (fabsl (x) > X_TLOSS, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabsl (x), X_TLOSS), 0) -+ && _LIB_VERSION != _IEEE_) - /* j0(|x|>X_TLOSS) */ - return __kernel_standard (x, x, 234); - -@@ -38,7 +39,8 @@ weak_alias (__j0l, j0l) - long double - __y0l (long double x) - { -- if (__builtin_expect (x <= 0.0L || x > X_TLOSS, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0L) || isgreater (x, X_TLOSS), 0) -+ && _LIB_VERSION != _IEEE_) - { - if (x < 0.0L) - { -diff --git a/math/w_j1.c b/math/w_j1.c -index 358e0e1..e9a5357 100644 ---- a/math/w_j1.c -+++ b/math/w_j1.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - double - j1 (double x) - { -- if (__builtin_expect (fabs (x) > X_TLOSS, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabs (x), X_TLOSS), 0) -+ && _LIB_VERSION != _IEEE_) - /* j1(|x|>X_TLOSS) */ - return __kernel_standard (x, x, 36); - -@@ -40,7 +41,8 @@ strong_alias (j1, j1l) - double - y1 (double x) - { -- if (__builtin_expect (x <= 0.0 || x > X_TLOSS, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0) || isgreater (x, X_TLOSS), 0) -+ && _LIB_VERSION != _IEEE_) - { - if (x < 0.0) - { -diff --git a/math/w_j1f.c b/math/w_j1f.c -index 096fdf5..29bd949 100644 ---- a/math/w_j1f.c -+++ b/math/w_j1f.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - float - j1f (float x) - { -- if (__builtin_expect (fabsf (x) > X_TLOSS, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabsf (x), X_TLOSS), 0) -+ && _LIB_VERSION != _IEEE_) - /* j1(|x|>X_TLOSS) */ - return __kernel_standard_f (x, x, 136); - -@@ -37,7 +38,8 @@ j1f (float x) - float - y1f (float x) - { -- if (__builtin_expect (x <= 0.0f || x > (float) X_TLOSS, 0) -+ if (__builtin_expect (islessequal (x, 0.0f) -+ || isgreater (x, (float) X_TLOSS), 0) - && _LIB_VERSION != _IEEE_) - { - if (x < 0.0f) -diff --git a/math/w_j1l.c b/math/w_j1l.c -index 93e4ee4..01b8551 100644 ---- a/math/w_j1l.c -+++ b/math/w_j1l.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - long double - __j1l (long double x) - { -- if (__builtin_expect (fabsl (x) > X_TLOSS, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabsl (x), X_TLOSS), 0) -+ && _LIB_VERSION != _IEEE_) - /* j1(|x|>X_TLOSS) */ - return __kernel_standard (x, x, 236); - -@@ -38,7 +39,8 @@ weak_alias (__j1l, j1l) - long double - __y1l (long double x) - { -- if (__builtin_expect (x <= 0.0L || x > X_TLOSS, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0L) || isgreater (x, X_TLOSS), 0) -+ && _LIB_VERSION != _IEEE_) - { - if (x < 0.0L) - { -diff --git a/math/w_jn.c b/math/w_jn.c -index f0dd8c6..fd3fb16 100644 ---- a/math/w_jn.c -+++ b/math/w_jn.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,8 @@ - double - jn (int n, double x) - { -- if (__builtin_expect (fabs (x) > X_TLOSS, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isgreater (fabs (x), X_TLOSS), 0) -+ && _LIB_VERSION != _IEEE_) - /* jn(n,|x|>X_TLOSS) */ - return __kernel_standard (n, x, 38); - -@@ -40,7 +41,8 @@ strong_alias (jn, jnl) - double - yn (int n, double x) - { -- if (__builtin_expect (x <= 0.0 || x > X_TLOSS, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0) || isgreater (x, X_TLOSS), 0) -+ && _LIB_VERSION != _IEEE_) - { - if (x < 0.0) - { -diff --git a/math/w_jnf.c b/math/w_jnf.c -index ef29eb4..36d6f6d 100644 ---- a/math/w_jnf.c -+++ b/math/w_jnf.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,7 @@ - float - jnf (int n, float x) - { -- if (__builtin_expect (fabsf (x) > (float) X_TLOSS, 0) -+ if (__builtin_expect (isgreater (fabsf (x), (float) X_TLOSS), 0) - && _LIB_VERSION != _IEEE_) - /* jn(n,|x|>X_TLOSS) */ - return __kernel_standard_f (n, x, 138); -@@ -38,7 +38,8 @@ jnf (int n, float x) - float - ynf (int n, float x) - { -- if (__builtin_expect (x <= 0.0f || x > (float) X_TLOSS, 0) -+ if (__builtin_expect (islessequal (x, 0.0f) -+ || isgreater (x, (float) X_TLOSS), 0) - && _LIB_VERSION != _IEEE_) - { - if (x < 0.0f) -diff --git a/math/w_log.c b/math/w_log.c -index efc1c4c..ec33605 100644 ---- a/math/w_log.c -+++ b/math/w_log.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,7 @@ - double - __log (double x) - { -- if (__builtin_expect (x <= 0.0, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0), 0) && _LIB_VERSION != _IEEE_) - { - if (x == 0.0) - { -diff --git a/math/w_log10.c b/math/w_log10.c -index 2717ade..fe799ad 100644 ---- a/math/w_log10.c -+++ b/math/w_log10.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,7 @@ - double - __log10 (double x) - { -- if (__builtin_expect (x <= 0.0, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0), 0) && _LIB_VERSION != _IEEE_) - { - if (x == 0.0) - { -diff --git a/math/w_log10f.c b/math/w_log10f.c -index 60737ca..4b821f7 100644 ---- a/math/w_log10f.c -+++ b/math/w_log10f.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,7 @@ - float - __log10f (float x) - { -- if (__builtin_expect (x <= 0.0f, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0f), 0) && _LIB_VERSION != _IEEE_) - { - if (x == 0.0f) - { -diff --git a/math/w_log10l.c b/math/w_log10l.c -index b26f18c..0e5a137 100644 ---- a/math/w_log10l.c -+++ b/math/w_log10l.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,7 @@ - long double - __log10l (long double x) - { -- if (__builtin_expect (x <= 0.0L, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0L), 0) && _LIB_VERSION != _IEEE_) - { - if (x == 0.0L) - { -diff --git a/math/w_log2.c b/math/w_log2.c -index 998e5d9..e58e109 100644 ---- a/math/w_log2.c -+++ b/math/w_log2.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,7 @@ - double - __log2 (double x) - { -- if (__builtin_expect (x <= 0.0, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0), 0) && _LIB_VERSION != _IEEE_) - { - if (x == 0.0) - { -diff --git a/math/w_log2f.c b/math/w_log2f.c -index 6d91bf4..6963ed2 100644 ---- a/math/w_log2f.c -+++ b/math/w_log2f.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,7 @@ - float - __log2f (float x) - { -- if (__builtin_expect (x <= 0.0f, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0f), 0) && _LIB_VERSION != _IEEE_) - { - if (x == 0.0) - { -diff --git a/math/w_log2l.c b/math/w_log2l.c -index e51c1bc..eed04ff6c 100644 ---- a/math/w_log2l.c -+++ b/math/w_log2l.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,7 @@ - long double - __log2l (long double x) - { -- if (__builtin_expect (x <= 0.0L, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0L), 0) && _LIB_VERSION != _IEEE_) - { - if (x == 0.0L) - { -diff --git a/math/w_logf.c b/math/w_logf.c -index 8aa27c8..38d408f 100644 ---- a/math/w_logf.c -+++ b/math/w_logf.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,7 @@ - float - __logf (float x) - { -- if (__builtin_expect (x <= 0.0f, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0f), 0) && _LIB_VERSION != _IEEE_) - { - if (x == 0.0f) - { -diff --git a/math/w_logl.c b/math/w_logl.c -index a3139ff..593b37d 100644 ---- a/math/w_logl.c -+++ b/math/w_logl.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -25,7 +25,7 @@ - long double - __logl (long double x) - { -- if (__builtin_expect (x <= 0.0L, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (islessequal (x, 0.0L), 0) && _LIB_VERSION != _IEEE_) - { - if (x == 0.0L) - { -diff --git a/math/w_sqrt.c b/math/w_sqrt.c -index 409a6df..f6ba542 100644 ---- a/math/w_sqrt.c -+++ b/math/w_sqrt.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -24,7 +24,7 @@ - double - __sqrt (double x) - { -- if (__builtin_expect (x < 0.0, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isless (x, 0.0), 0) && _LIB_VERSION != _IEEE_) - return __kernel_standard (x, x, 26); /* sqrt(negative) */ - - return __ieee754_sqrt (x); -diff --git a/math/w_sqrtf.c b/math/w_sqrtf.c -index 3c3d2f8..c128e9b 100644 ---- a/math/w_sqrtf.c -+++ b/math/w_sqrtf.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -24,7 +24,7 @@ - float - __sqrtf (float x) - { -- if (__builtin_expect (x < 0.0f, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isless (x, 0.0f), 0) && _LIB_VERSION != _IEEE_) - return __kernel_standard_f (x, x, 126); /* sqrt(negative) */ - - return __ieee754_sqrtf (x); -diff --git a/math/w_sqrtl.c b/math/w_sqrtl.c -index 5e18f44..2a4a048 100644 ---- a/math/w_sqrtl.c -+++ b/math/w_sqrtl.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -24,7 +24,7 @@ - long double - __sqrtl (long double x) - { -- if (__builtin_expect (x < 0.0L, 0) && _LIB_VERSION != _IEEE_) -+ if (__builtin_expect (isless (x, 0.0L), 0) && _LIB_VERSION != _IEEE_) - return __kernel_standard (x, x, 226); /* sqrt(negative) */ - - return __ieee754_sqrtl (x); -diff --git a/sysdeps/ieee754/dbl-64/e_atanh.c b/sysdeps/ieee754/dbl-64/e_atanh.c -index 9fc21ab..5f471b1 100644 ---- a/sysdeps/ieee754/dbl-64/e_atanh.c -+++ b/sysdeps/ieee754/dbl-64/e_atanh.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -46,7 +46,7 @@ __ieee754_atanh (double x) - { - double xa = fabs (x); - double t; -- if (xa < 0.5) -+ if (isless (xa, 0.5)) - { - if (__builtin_expect (xa < 0x1.0p-28, 0)) - { -@@ -57,11 +57,11 @@ __ieee754_atanh (double x) - t = xa + xa; - t = 0.5 * __log1p (t + t * xa / (1.0 - xa)); - } -- else if (__builtin_expect (xa < 1.0, 1)) -+ else if (__builtin_expect (isless (xa, 1.0), 1)) - t = 0.5 * __log1p ((xa + xa) / (1.0 - xa)); - else - { -- if (xa > 1.0) -+ if (isgreater (xa, 1.0)) - return (x - x) / (x - x); - - return x / 0.0; -diff --git a/sysdeps/ieee754/dbl-64/w_exp.c b/sysdeps/ieee754/dbl-64/w_exp.c -index ee42587..b584ed8 100644 ---- a/sysdeps/ieee754/dbl-64/w_exp.c -+++ b/sysdeps/ieee754/dbl-64/w_exp.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -28,12 +28,12 @@ u_threshold= -7.45133219101941108420e+02; /* 0xc0874910, 0xD52D3051 */ - double - __exp (double x) - { -- if (__builtin_expect (x > o_threshold, 0)) -+ if (__builtin_expect (isgreater (x, o_threshold), 0)) - { - if (_LIB_VERSION != _IEEE_) - return __kernel_standard_f (x, x, 6); - } -- else if (__builtin_expect (x < u_threshold, 0)) -+ else if (__builtin_expect (isless (x, u_threshold), 0)) - { - if (_LIB_VERSION != _IEEE_) - return __kernel_standard_f (x, x, 7); -diff --git a/sysdeps/ieee754/flt-32/e_atanhf.c b/sysdeps/ieee754/flt-32/e_atanhf.c -index 75ed691..7af2f6c 100644 ---- a/sysdeps/ieee754/flt-32/e_atanhf.c -+++ b/sysdeps/ieee754/flt-32/e_atanhf.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -46,7 +46,7 @@ __ieee754_atanhf (float x) - { - float xa = fabsf (x); - float t; -- if (xa < 0.5f) -+ if (isless (xa, 0.5f)) - { - if (__builtin_expect (xa < 0x1.0p-28f, 0)) - { -@@ -57,11 +57,11 @@ __ieee754_atanhf (float x) - t = xa + xa; - t = 0.5f * __log1pf (t + t * xa / (1.0f - xa)); - } -- else if (__builtin_expect (xa < 1.0f, 1)) -+ else if (__builtin_expect (isless (xa, 1.0f), 1)) - t = 0.5f * __log1pf ((xa + xa) / (1.0f - xa)); - else - { -- if (xa > 1.0f) -+ if (isgreater (xa, 1.0f)) - return (x - x) / (x - x); - - return x / 0.0f; -diff --git a/sysdeps/ieee754/flt-32/w_expf.c b/sysdeps/ieee754/flt-32/w_expf.c -index 5500872..bc3b2f6 100644 ---- a/sysdeps/ieee754/flt-32/w_expf.c -+++ b/sysdeps/ieee754/flt-32/w_expf.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -28,12 +28,12 @@ u_threshold= -1.0397208405e+02; /* 0xc2cff1b5 */ - float - __expf (float x) - { -- if (__builtin_expect (x > o_threshold, 0)) -+ if (__builtin_expect (isgreater (x, o_threshold), 0)) - { - if (_LIB_VERSION != _IEEE_) - return __kernel_standard_f (x, x, 106); - } -- else if (__builtin_expect (x < u_threshold, 0)) -+ else if (__builtin_expect (isless (x, u_threshold), 0)) - { - if (_LIB_VERSION != _IEEE_) - return __kernel_standard_f (x, x, 107); -diff --git a/sysdeps/ieee754/ldbl-96/w_expl.c b/sysdeps/ieee754/ldbl-96/w_expl.c -index ec9d8a7..d61c0a3 100644 ---- a/sysdeps/ieee754/ldbl-96/w_expl.c -+++ b/sysdeps/ieee754/ldbl-96/w_expl.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2011. - -@@ -30,12 +30,12 @@ u_threshold= -1.140019167866942050398521670162263001513e4; - long double - __expl (long double x) - { -- if (__builtin_expect (x > o_threshold, 0)) -+ if (__builtin_expect (isgreater (x, o_threshold), 0)) - { - if (_LIB_VERSION != _IEEE_) - return __kernel_standard (x, x, 206); - } -- else if (__builtin_expect (x < u_threshold, 0)) -+ else if (__builtin_expect (isless (x, u_threshold), 0)) - { - if (_LIB_VERSION != _IEEE_) - return __kernel_standard (x, x, 207); diff --git a/core/glibc/glibc-2.15-regex.patch b/core/glibc/glibc-2.15-regex.patch deleted file mode 100644 index 6385f2c08..000000000 --- a/core/glibc/glibc-2.15-regex.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/posix/regex_internal.c b/posix/regex_internal.c -index bc19243..124f8cc 100644 ---- a/posix/regex_internal.c -+++ b/posix/regex_internal.c -@@ -868,7 +868,7 @@ re_string_peek_byte_case (const re_string_t *pstr, int idx) - } - - static unsigned char --internal_function __attribute ((pure)) -+internal_function - re_string_fetch_byte_case (re_string_t *pstr) - { - if (BE (!pstr->mbs_allocated, 1)) --- -1.7.3.4 - diff --git a/core/glibc/glibc-2.15-revert-c5a0802a.patch b/core/glibc/glibc-2.15-revert-c5a0802a.patch index f532b95e8..d8894723a 100644 --- a/core/glibc/glibc-2.15-revert-c5a0802a.patch +++ b/core/glibc/glibc-2.15-revert-c5a0802a.patch @@ -118,9 +118,9 @@ diff -rup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysde #include #include -#include + #include #include - @@ -137,14 +136,11 @@ __pthread_cond_wait: cmpl $PI_BIT, %eax jne 61f @@ -161,7 +161,7 @@ diff -rup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysde -#if cond_lock != 0 - addq $cond_lock, %rdi -#endif -- cmpq $-1, dep_mutex-cond_lock(%rdi) +- LP_OP(cmp) $-1, dep_mutex-cond_lock(%rdi) - movl $LLL_PRIVATE, %eax - movl $LLL_SHARED, %esi - cmovne %eax, %esi @@ -187,7 +187,7 @@ diff -rup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysde -#if cond_lock != 0 - addq $cond_lock, %rdi -#endif -- cmpq $-1, dep_mutex-cond_lock(%rdi) +- LP_OP(cmp) $-1, dep_mutex-cond_lock(%rdi) - movl $LLL_PRIVATE, %eax - movl $LLL_SHARED, %esi - cmovne %eax, %esi @@ -199,7 +199,7 @@ diff -rup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysde -93: - /* Set the rest of SYS_futex args for FUTEX_WAIT_REQUEUE_PI. */ - xorq %r10, %r10 -- movq dep_mutex(%rdi), %r8 +- mov dep_mutex(%rdi), %R8_LP - leaq cond_futex(%rdi), %rdi - jmp 90b -.LcleanupEND2: @@ -224,6 +224,3 @@ diff -rup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysde + .uleb128 0 .Lcstend: - -Only in b/nptl/sysdeps/unix/sysv/linux/x86_64: pthread_cond_wait.S.orig -Only in b/nptl/sysdeps/unix/sysv/linux/x86_64: pthread_cond_wait.S.rej diff --git a/core/glibc/glibc-2.15-revert-netlink-cache.patch b/core/glibc/glibc-2.15-revert-netlink-cache.patch deleted file mode 100644 index 87d04c794..000000000 --- a/core/glibc/glibc-2.15-revert-netlink-cache.patch +++ /dev/null @@ -1,680 +0,0 @@ -diff --git a/include/ifaddrs.h b/include/ifaddrs.h -index e1c6cac..50e4c48 100644 ---- a/include/ifaddrs.h -+++ b/include/ifaddrs.h -@@ -21,13 +21,8 @@ struct in6addrinfo - extern void __check_pf (bool *seen_ipv4, bool *seen_ipv6, - struct in6addrinfo **in6ai, size_t *in6ailen) - attribute_hidden; --extern void __free_in6ai (struct in6addrinfo *in6ai) attribute_hidden; - extern void __check_native (uint32_t a1_index, int *a1_native, - uint32_t a2_index, int *a2_native) - attribute_hidden; - --#ifdef IS_IN_nscd --extern uint32_t __bump_nl_timestamp (void) attribute_hidden; --#endif -- - #endif /* ifaddrs.h */ -diff --git a/inet/check_pf.c b/inet/check_pf.c -index 0fa34cc..b015432 100644 ---- a/inet/check_pf.c -+++ b/inet/check_pf.c -@@ -1,5 +1,5 @@ - /* Determine protocol families for which interfaces exist. Generic version. -- Copyright (C) 2003, 2006, 2011 Free Software Foundation, Inc. -+ Copyright (C) 2003, 2006 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -54,19 +54,3 @@ __check_pf (bool *seen_ipv4, bool *seen_ipv6, - - (void) freeifaddrs (ifa); - } -- -- --void --__free_in6ai (struct in6addrinfo *in6ai) --{ -- /* Nothing to do. */ --} -- -- --#ifdef IS_IN_nscd --uint32_t --__bump_nl_timestamp (void) --{ -- return 0; --} --#endif -diff --git a/nscd/connections.c b/nscd/connections.c -index c741996..2b5c7ef 100644 ---- a/nscd/connections.c -+++ b/nscd/connections.c -@@ -24,7 +24,6 @@ - #include - #include - #include --#include - #include - #include - #include -@@ -33,10 +32,6 @@ - #include - #include - #include --#ifdef HAVE_NETLINK --# include --# include --#endif - #ifdef HAVE_EPOLL - # include - #endif -@@ -252,11 +247,6 @@ static int sock; - int inotify_fd = -1; - #endif - --#ifdef HAVE_NETLINK --/* Descriptor for netlink status updates. */ --static int nl_status_fd = -1; --#endif -- - #ifndef __ASSUME_SOCK_CLOEXEC - /* Negative if SOCK_CLOEXEC is not supported, positive if it is, zero - before be know the result. */ -@@ -913,65 +903,6 @@ cannot set socket to close on exec: %s; disabling paranoia mode"), - exit (1); - } - --#ifdef HAVE_NETLINK -- if (dbs[hstdb].enabled) -- { -- /* Try to open netlink socket to monitor network setting changes. */ -- nl_status_fd = socket (AF_NETLINK, -- SOCK_RAW | SOCK_CLOEXEC | SOCK_NONBLOCK, -- NETLINK_ROUTE); -- if (nl_status_fd != -1) -- { -- struct sockaddr_nl snl; -- memset (&snl, '\0', sizeof (snl)); -- snl.nl_family = AF_NETLINK; -- /* XXX Is this the best set to use? */ -- snl.nl_groups = (RTMGRP_IPV4_IFADDR | RTMGRP_TC | RTMGRP_IPV4_MROUTE -- | RTMGRP_IPV4_ROUTE | RTMGRP_IPV4_RULE -- | RTMGRP_IPV6_IFADDR | RTMGRP_IPV6_MROUTE -- | RTMGRP_IPV6_ROUTE | RTMGRP_IPV6_IFINFO -- | RTMGRP_IPV6_PREFIX); -- -- if (bind (nl_status_fd, (struct sockaddr *) &snl, sizeof (snl)) != 0) -- { -- close (nl_status_fd); -- nl_status_fd = -1; -- } -- else -- { -- /* Start the timestamp process. */ -- dbs[hstdb].head->extra_data[NSCD_HST_IDX_CONF_TIMESTAMP] -- = __bump_nl_timestamp (); -- --# ifndef __ASSUME_SOCK_CLOEXEC -- if (have_sock_cloexec < 0) -- { -- /* We don't want to get stuck on accept. */ -- int fl = fcntl (nl_status_fd, F_GETFL); -- if (fl == -1 -- || fcntl (nl_status_fd, F_SETFL, fl | O_NONBLOCK) == -1) -- { -- dbg_log (_("\ --cannot change socket to nonblocking mode: %s"), -- strerror (errno)); -- exit (1); -- } -- -- /* The descriptor needs to be closed on exec. */ -- if (paranoia -- && fcntl (nl_status_fd, F_SETFD, FD_CLOEXEC) == -1) -- { -- dbg_log (_("cannot set socket to close on exec: %s"), -- strerror (errno)); -- exit (1); -- } -- } --# endif -- } -- } -- } --#endif -- - /* Change to unprivileged uid/gid/groups if specified in config file */ - if (server_user != NULL) - finish_drop_privileges (); -@@ -1895,18 +1826,6 @@ main_loop_poll (void) - } - #endif - --#ifdef HAVE_NETLINK -- size_t idx_nl_status_fd = 0; -- if (nl_status_fd != -1) -- { -- idx_nl_status_fd = nused; -- conns[nused].fd = nl_status_fd; -- conns[nused].events = POLLRDNORM; -- ++nused; -- firstfree = nused; -- } --#endif -- - while (1) - { - /* Wait for any event. We wait at most a couple of seconds so -@@ -2049,20 +1968,6 @@ disabled inotify after read error %d"), - } - #endif - --#ifdef HAVE_NETLINK -- if (idx_nl_status_fd != 0 && conns[idx_nl_status_fd].revents != 0) -- { -- char buf[4096]; -- /* Read all the data. We do not interpret it here. */ -- while (TEMP_FAILURE_RETRY (read (nl_status_fd, buf, -- sizeof (buf))) != -1) -- ; -- -- dbs[hstdb].head->extra_data[NSCD_HST_IDX_CONF_TIMESTAMP] -- = __bump_nl_timestamp (); -- } --#endif -- - for (size_t cnt = first; cnt < nused && n > 0; ++cnt) - if (conns[cnt].revents != 0) - { -@@ -2141,17 +2046,6 @@ main_loop_epoll (int efd) - } - # endif - --# ifdef HAVE_NETLINK -- if (nl_status_fd != -1) -- { -- ev.events = EPOLLRDNORM; -- ev.data.fd = nl_status_fd; -- if (epoll_ctl (efd, EPOLL_CTL_ADD, nl_status_fd, &ev) == -1) -- /* We cannot use epoll. */ -- return; -- } --# endif -- - while (1) - { - struct epoll_event revs[100]; -@@ -2268,18 +2162,6 @@ main_loop_epoll (int efd) - } - } - # endif --# ifdef HAVE_NETLINK -- else if (revs[cnt].data.fd == nl_status_fd) -- { -- char buf[4096]; -- /* Read all the data. We do not interpret it here. */ -- while (TEMP_FAILURE_RETRY (read (nl_status_fd, buf, -- sizeof (buf))) != -1) -- ; -- -- __bump_nl_timestamp (); -- } --# endif - else - { - /* Remove the descriptor from the epoll descriptor. */ -@@ -2303,7 +2185,6 @@ main_loop_epoll (int efd) - time_t laststart = now - ACCEPT_TIMEOUT; - assert (starttime[sock] == 0); - assert (inotify_fd == -1 || starttime[inotify_fd] == 0); -- assert (nl_status_fd == -1 || starttime[nl_status_fd] == 0); - for (int cnt = highest; cnt > STDERR_FILENO; --cnt) - if (starttime[cnt] != 0 && starttime[cnt] < laststart) - { -diff --git a/nscd/nscd-client.h b/nscd/nscd-client.h -index b5cd2d2..caad26a 100644 ---- a/nscd/nscd-client.h -+++ b/nscd/nscd-client.h -@@ -260,17 +260,12 @@ struct hashentry - - - /* Current persistent database version. */ --#define DB_VERSION 2 -+#define DB_VERSION 1 - - /* Maximum time allowed between updates of the timestamp. */ - #define MAPPING_TIMEOUT (5 * 60) - - --/* Used indices for the EXTRA_DATA element of 'database_pers_head'. -- Each database has its own indices. */ --#define NSCD_HST_IDX_CONF_TIMESTAMP 0 -- -- - /* Header of persistent database file. */ - struct database_pers_head - { -@@ -279,8 +274,6 @@ struct database_pers_head - volatile int32_t gc_cycle; - volatile int32_t nscd_certainly_running; - volatile nscd_time_t timestamp; -- /* Room for extensions. */ -- volatile uint32_t extra_data[4]; - - nscd_ssize_t module; - nscd_ssize_t data_size; -@@ -329,12 +322,6 @@ extern int __nscd_open_socket (const char *key, size_t keylen, - request_type type, void *response, - size_t responselen) attribute_hidden; - --/* Try to get a file descriptor for the shared meory segment -- containing the database. */ --extern struct mapped_database *__nscd_get_mapping (request_type type, -- const char *key, -- struct mapped_database **mappedp) attribute_hidden; -- - /* Get reference of mapping. */ - extern struct mapped_database *__nscd_get_map_ref (request_type type, - const char *name, -@@ -384,7 +371,4 @@ extern ssize_t writeall (int fd, const void *buf, size_t len) - extern ssize_t sendfileall (int tofd, int fromfd, off_t off, size_t len) - attribute_hidden; - --/* Get netlink timestamp counter from mapped area or zero. */ --extern uint32_t __nscd_get_nl_timestamp (void); -- - #endif /* nscd.h */ -diff --git a/nscd/nscd_gethst_r.c b/nscd/nscd_gethst_r.c -index 6ee142d..70631fa 100644 ---- a/nscd/nscd_gethst_r.c -+++ b/nscd/nscd_gethst_r.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 1998-2005, 2006, 2007, 2008, 2009, 2011 -+/* Copyright (C) 1998-2005, 2006, 2007, 2008, 2009 - Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1998. -@@ -98,27 +98,6 @@ libc_freeres_fn (hst_map_free) - } - - --uint32_t --__nscd_get_nl_timestamp (void) --{ -- if (__nss_not_use_nscd_hosts != 0) -- return 0; -- -- struct mapped_database *map = __hst_map_handle.mapped; -- -- if (map == NULL -- || (map != NO_MAPPING -- && map->head->nscd_certainly_running == 0 -- && map->head->timestamp + MAPPING_TIMEOUT < time (NULL))) -- map = __nscd_get_mapping (GETFDHST, "hosts", &__hst_map_handle.mapped); -- -- if (map == NO_MAPPING) -- return 0; -- -- return map->head->extra_data[NSCD_HST_IDX_CONF_TIMESTAMP]; --} -- -- - int __nss_have_localdomain attribute_hidden; - - static int -diff --git a/nscd/nscd_helper.c b/nscd/nscd_helper.c -index 365b599..fe63f9a 100644 ---- a/nscd/nscd_helper.c -+++ b/nscd/nscd_helper.c -@@ -277,9 +277,9 @@ __nscd_unmap (struct mapped_database *mapped) - - /* Try to get a file descriptor for the shared meory segment - containing the database. */ --struct mapped_database * --__nscd_get_mapping (request_type type, const char *key, -- struct mapped_database **mappedp) -+static struct mapped_database * -+get_mapping (request_type type, const char *key, -+ struct mapped_database **mappedp) - { - struct mapped_database *result = NO_MAPPING; - #ifdef SCM_RIGHTS -@@ -449,8 +449,8 @@ __nscd_get_map_ref (request_type type, const char *name, - || (cur->head->nscd_certainly_running == 0 - && cur->head->timestamp + MAPPING_TIMEOUT < time (NULL)) - || cur->head->data_size > cur->datasize) -- cur = __nscd_get_mapping (type, name, -- (struct mapped_database **) &mapptr->mapped); -+ cur = get_mapping (type, name, -+ (struct mapped_database **) &mapptr->mapped); - - if (__builtin_expect (cur != NO_MAPPING, 1)) - { -diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c -index 1a023f9..4979805 100644 ---- a/sysdeps/posix/getaddrinfo.c -+++ b/sysdeps/posix/getaddrinfo.c -@@ -2386,7 +2386,7 @@ getaddrinfo (const char *name, const char *service, - || (hints->ai_family == PF_INET6 && ! seen_ipv6)) - { - /* We cannot possibly return a valid answer. */ -- __free_in6ai (in6ai); -+ free (in6ai); - return EAI_NONAME; - } - } -@@ -2400,7 +2400,7 @@ getaddrinfo (const char *name, const char *service, - { - if (hints->ai_flags & AI_NUMERICSERV) - { -- __free_in6ai (in6ai); -+ free (in6ai); - return EAI_NONAME; - } - -@@ -2422,7 +2422,7 @@ getaddrinfo (const char *name, const char *service, - if (last_i != 0) - { - freeaddrinfo (p); -- __free_in6ai (in6ai); -+ free (in6ai); - - return -(last_i & GAIH_EAI); - } -@@ -2434,7 +2434,7 @@ getaddrinfo (const char *name, const char *service, - } - else - { -- __free_in6ai (in6ai); -+ free (in6ai); - return EAI_FAMILY; - } - -@@ -2622,7 +2622,7 @@ getaddrinfo (const char *name, const char *service, - p->ai_canonname = canonname; - } - -- __free_in6ai (in6ai); -+ free (in6ai); - - if (p) - { -diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile -index e684b16..c907af4 100644 ---- a/sysdeps/unix/sysv/linux/Makefile -+++ b/sysdeps/unix/sysv/linux/Makefile -@@ -173,6 +173,6 @@ CFLAGS-mq_receive.c += -fexceptions - endif - - ifeq ($(subdir),nscd) --sysdep-CFLAGS += -DHAVE_EPOLL -DHAVE_SENDFILE -DHAVE_INOTIFY -DHAVE_NETLINK -+sysdep-CFLAGS += -DHAVE_EPOLL -DHAVE_SENDFILE -DHAVE_INOTIFY - CFLAGS-gai.c += -DNEED_NETLINK - endif -diff --git a/sysdeps/unix/sysv/linux/check_pf.c b/sysdeps/unix/sysv/linux/check_pf.c -index 0738a70..d5ad7ea 100644 ---- a/sysdeps/unix/sysv/linux/check_pf.c -+++ b/sysdeps/unix/sysv/linux/check_pf.c -@@ -1,5 +1,5 @@ - /* Determine protocol families for which interfaces exist. Linux version. -- Copyright (C) 2003, 2006-2008, 2010, 2011 Free Software Foundation, Inc. -+ Copyright (C) 2003, 2006, 2007, 2008, 2010, 2011 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -33,9 +33,6 @@ - - #include - #include --#include --#include --#include - - - #ifndef IFA_F_HOMEADDRESS -@@ -46,42 +43,9 @@ - #endif - - --struct cached_data --{ -- uint32_t timestamp; -- uint32_t usecnt; -- bool seen_ipv4; -- bool seen_ipv6; -- size_t in6ailen; -- struct in6addrinfo in6ai[0]; --}; -- --static struct cached_data noai6ai_cached = -- { -- .usecnt = 1, /* Make sure we never try to delete this entry. */ -- .in6ailen = 0 -- }; -- --static struct cached_data *cache; --__libc_lock_define_initialized (static, lock); -- -- --#ifdef IS_IN_nscd --static uint32_t nl_timestamp; -- --uint32_t --__bump_nl_timestamp (void) --{ -- if (atomic_increment_val (&nl_timestamp) == 0) -- atomic_increment (&nl_timestamp); -- -- return nl_timestamp; --} --#endif -- -- --static struct cached_data * --make_request (int fd, pid_t pid) -+static int -+make_request (int fd, pid_t pid, bool *seen_ipv4, bool *seen_ipv6, -+ struct in6addrinfo **in6ai, size_t *in6ailen) - { - struct req - { -@@ -135,6 +99,9 @@ make_request (int fd, pid_t pid) - sizeof (nladdr))) < 0) - goto out_fail; - -+ *seen_ipv4 = false; -+ *seen_ipv6 = false; -+ - bool done = false; - struct in6ailist - { -@@ -142,8 +109,6 @@ make_request (int fd, pid_t pid) - struct in6ailist *next; - } *in6ailist = NULL; - size_t in6ailistlen = 0; -- bool seen_ipv4 = false; -- bool seen_ipv6 = false; - - do - { -@@ -207,12 +172,12 @@ make_request (int fd, pid_t pid) - { - if (*(const in_addr_t *) address - != htonl (INADDR_LOOPBACK)) -- seen_ipv4 = true; -+ *seen_ipv4 = true; - } - else - { - if (!IN6_IS_ADDR_LOOPBACK (address)) -- seen_ipv6 = true; -+ *seen_ipv6 = true; - } - } - -@@ -246,47 +211,30 @@ make_request (int fd, pid_t pid) - } - while (! done); - -- struct cached_data *result; -- if (seen_ipv6 && in6ailist != NULL) -+ if (*seen_ipv6 && in6ailist != NULL) - { -- result = malloc (sizeof (*result) -- + in6ailistlen * sizeof (struct in6addrinfo)); -- if (result == NULL) -+ *in6ai = malloc (in6ailistlen * sizeof (**in6ai)); -+ if (*in6ai == NULL) - goto out_fail; - --#ifdef IS_IN_nscd -- result->timestamp = nl_timestamp; --#else -- result->timestamp = __nscd_get_nl_timestamp (); --#endif -- result->usecnt = 2; -- result->seen_ipv4 = seen_ipv4; -- result->seen_ipv6 = true; -- result->in6ailen = in6ailistlen; -+ *in6ailen = in6ailistlen; - - do - { -- result->in6ai[--in6ailistlen] = in6ailist->info; -+ (*in6ai)[--in6ailistlen] = in6ailist->info; - in6ailist = in6ailist->next; - } - while (in6ailist != NULL); - } -- else -- { -- atomic_add (&noai6ai_cached.usecnt, 2); -- noai6ai_cached.seen_ipv4 = seen_ipv4; -- noai6ai_cached.seen_ipv6 = seen_ipv6; -- result = &noai6ai_cached; -- } - - if (use_malloc) - free (buf); -- return result; -+ return 0; - - out_fail: - if (use_malloc) - free (buf); -- return NULL; -+ return -1; - } - - -@@ -310,65 +258,28 @@ __check_pf (bool *seen_ipv4, bool *seen_ipv6, - - if (! __no_netlink_support) - { -- struct cached_data *olddata = NULL; -- struct cached_data *data = NULL; -+ int fd = __socket (PF_NETLINK, SOCK_RAW, NETLINK_ROUTE); - -- __libc_lock_lock (lock); -- --#ifdef IS_IN_nscd --# define cache_valid() nl_timestamp != 0 && cache->timestamp == nl_timestamp --#else --# define cache_valid() \ -- ({ uint32_t val = __nscd_get_nl_timestamp (); \ -- val != 0 && cache->timestamp == val; }) --#endif -- if (cache != NULL && cache_valid ()) -- { -- data = cache; -- atomic_increment (&cache->usecnt); -- } -- else -+ if (__builtin_expect (fd >= 0, 1)) - { -- int fd = __socket (PF_NETLINK, SOCK_RAW, NETLINK_ROUTE); -+ struct sockaddr_nl nladdr; -+ memset (&nladdr, '\0', sizeof (nladdr)); -+ nladdr.nl_family = AF_NETLINK; - -- if (__builtin_expect (fd >= 0, 1)) -- { -- struct sockaddr_nl nladdr; -- memset (&nladdr, '\0', sizeof (nladdr)); -- nladdr.nl_family = AF_NETLINK; -- -- socklen_t addr_len = sizeof (nladdr); -- -- if(__bind (fd, (struct sockaddr *) &nladdr, sizeof (nladdr)) == 0 -- && __getsockname (fd, (struct sockaddr *) &nladdr, -- &addr_len) == 0) -- data = make_request (fd, nladdr.nl_pid); -- -- close_not_cancel_no_status (fd); -- } -- -- if (data != NULL) -- { -- olddata = cache; -- cache = data; -- } -- } -+ socklen_t addr_len = sizeof (nladdr); - -- __libc_lock_unlock (lock); -+ bool success -+ = (__bind (fd, (struct sockaddr *) &nladdr, sizeof (nladdr)) == 0 -+ && __getsockname (fd, (struct sockaddr *) &nladdr, -+ &addr_len) == 0 -+ && make_request (fd, nladdr.nl_pid, seen_ipv4, seen_ipv6, -+ in6ai, in6ailen) == 0); - -- if (data != NULL) -- { -- /* It worked. */ -- *seen_ipv4 = data->seen_ipv4; -- *seen_ipv6 = data->seen_ipv6; -- *in6ailen = data->in6ailen; -- *in6ai = data->in6ai; -- -- if (olddata != NULL && olddata->usecnt > 0 -- && atomic_add_zero (&olddata->usecnt, -1)) -- free (olddata); -+ close_not_cancel_no_status (fd); - -- return; -+ if (success) -+ /* It worked. */ -+ return; - } - - #if __ASSUME_NETLINK_SUPPORT == 0 -@@ -407,26 +318,3 @@ __check_pf (bool *seen_ipv4, bool *seen_ipv6, - (void) freeifaddrs (ifa); - #endif - } -- -- --void --__free_in6ai (struct in6addrinfo *ai) --{ -- if (ai != NULL) -- { -- struct cached_data *data = -- (struct cached_data *) ((char *) ai -- - offsetof (struct cached_data, in6ai)); -- -- if (atomic_add_zero (&data->usecnt, -1)) -- { -- __libc_lock_lock (lock); -- -- if (data->usecnt == 0) -- /* Still unused. */ -- free (data); -- -- __libc_lock_unlock (lock); -- } -- } --} diff --git a/core/glibc/glibc-2.15-rintf-rounding.patch b/core/glibc/glibc-2.15-rintf-rounding.patch deleted file mode 100644 index e0240ac6c..000000000 --- a/core/glibc/glibc-2.15-rintf-rounding.patch +++ /dev/null @@ -1,158 +0,0 @@ -diff --git a/math/libm-test.inc b/math/libm-test.inc -index 6243e1e..c8186c8 100644 ---- a/math/libm-test.inc -+++ b/math/libm-test.inc -@@ -5037,6 +5037,22 @@ rint_test (void) - TEST_f_f (rint, 262142.75, 262143.0); - TEST_f_f (rint, 524286.75, 524287.0); - TEST_f_f (rint, 524288.75, 524289.0); -+ TEST_f_f (rint, 1048576.75, 1048577.0); -+ TEST_f_f (rint, 2097152.75, 2097153.0); -+ TEST_f_f (rint, -1048576.75, -1048577.0); -+ TEST_f_f (rint, -2097152.75, -2097153.0); -+#ifndef TEST_FLOAT -+ TEST_f_f (rint, 70368744177664.75, 70368744177665.0); -+ TEST_f_f (rint, 140737488355328.75, 140737488355329.0); -+ TEST_f_f (rint, 281474976710656.75, 281474976710657.0); -+ TEST_f_f (rint, 562949953421312.75, 562949953421313.0); -+ TEST_f_f (rint, 1125899906842624.75, 1125899906842625.0); -+ TEST_f_f (rint, -70368744177664.75, -70368744177665.0); -+ TEST_f_f (rint, -140737488355328.75, -140737488355329.0); -+ TEST_f_f (rint, -281474976710656.75, -281474976710657.0); -+ TEST_f_f (rint, -562949953421312.75, -562949953421313.0); -+ TEST_f_f (rint, -1125899906842624.75, -1125899906842625.0); -+#endif - #ifdef TEST_LDOUBLE - /* The result can only be represented in long double. */ - TEST_f_f (rint, 4503599627370495.5L, 4503599627370496.0L); -@@ -5137,6 +5153,22 @@ rint_test_tonearest (void) - TEST_f_f (rint, -0.1, -0.0); - TEST_f_f (rint, -0.25, -0.0); - TEST_f_f (rint, -0.625, -1.0); -+ TEST_f_f (rint, 1048576.75, 1048577.0); -+ TEST_f_f (rint, 2097152.75, 2097153.0); -+ TEST_f_f (rint, -1048576.75, -1048577.0); -+ TEST_f_f (rint, -2097152.75, -2097153.0); -+#ifndef TEST_FLOAT -+ TEST_f_f (rint, 70368744177664.75, 70368744177665.0); -+ TEST_f_f (rint, 140737488355328.75, 140737488355329.0); -+ TEST_f_f (rint, 281474976710656.75, 281474976710657.0); -+ TEST_f_f (rint, 562949953421312.75, 562949953421313.0); -+ TEST_f_f (rint, 1125899906842624.75, 1125899906842625.0); -+ TEST_f_f (rint, -70368744177664.75, -70368744177665.0); -+ TEST_f_f (rint, -140737488355328.75, -140737488355329.0); -+ TEST_f_f (rint, -281474976710656.75, -281474976710657.0); -+ TEST_f_f (rint, -562949953421312.75, -562949953421313.0); -+ TEST_f_f (rint, -1125899906842624.75, -1125899906842625.0); -+#endif - #ifdef TEST_LDOUBLE - /* The result can only be represented in long double. */ - TEST_f_f (rint, 4503599627370495.5L, 4503599627370496.0L); -@@ -5207,6 +5239,22 @@ rint_test_towardzero (void) - TEST_f_f (rint, -0.1, -0.0); - TEST_f_f (rint, -0.25, -0.0); - TEST_f_f (rint, -0.625, -0.0); -+ TEST_f_f (rint, 1048576.75, 1048576.0); -+ TEST_f_f (rint, 2097152.75, 2097152.0); -+ TEST_f_f (rint, -1048576.75, -1048576.0); -+ TEST_f_f (rint, -2097152.75, -2097152.0); -+#ifndef TEST_FLOAT -+ TEST_f_f (rint, 70368744177664.75, 70368744177664.0); -+ TEST_f_f (rint, 140737488355328.75, 140737488355328.0); -+ TEST_f_f (rint, 281474976710656.75, 281474976710656.0); -+ TEST_f_f (rint, 562949953421312.75, 562949953421312.0); -+ TEST_f_f (rint, 1125899906842624.75, 1125899906842624.0); -+ TEST_f_f (rint, -70368744177664.75, -70368744177664.0); -+ TEST_f_f (rint, -140737488355328.75, -140737488355328.0); -+ TEST_f_f (rint, -281474976710656.75, -281474976710656.0); -+ TEST_f_f (rint, -562949953421312.75, -562949953421312.0); -+ TEST_f_f (rint, -1125899906842624.75, -1125899906842624.0); -+#endif - #ifdef TEST_LDOUBLE - /* The result can only be represented in long double. */ - TEST_f_f (rint, 4503599627370495.5L, 4503599627370495.0L); -@@ -5277,6 +5325,22 @@ rint_test_downward (void) - TEST_f_f (rint, -0.1, -1.0); - TEST_f_f (rint, -0.25, -1.0); - TEST_f_f (rint, -0.625, -1.0); -+ TEST_f_f (rint, 1048576.75, 1048576.0); -+ TEST_f_f (rint, 2097152.75, 2097152.0); -+ TEST_f_f (rint, -1048576.75, -1048577.0); -+ TEST_f_f (rint, -2097152.75, -2097153.0); -+#ifndef TEST_FLOAT -+ TEST_f_f (rint, 70368744177664.75, 70368744177664.0); -+ TEST_f_f (rint, 140737488355328.75, 140737488355328.0); -+ TEST_f_f (rint, 281474976710656.75, 281474976710656.0); -+ TEST_f_f (rint, 562949953421312.75, 562949953421312.0); -+ TEST_f_f (rint, 1125899906842624.75, 1125899906842624.0); -+ TEST_f_f (rint, -70368744177664.75, -70368744177665.0); -+ TEST_f_f (rint, -140737488355328.75, -140737488355329.0); -+ TEST_f_f (rint, -281474976710656.75, -281474976710657.0); -+ TEST_f_f (rint, -562949953421312.75, -562949953421313.0); -+ TEST_f_f (rint, -1125899906842624.75, -1125899906842625.0); -+#endif - #ifdef TEST_LDOUBLE - /* The result can only be represented in long double. */ - TEST_f_f (rint, 4503599627370495.5L, 4503599627370495.0L); -@@ -5347,6 +5411,22 @@ rint_test_upward (void) - TEST_f_f (rint, -0.1, -0.0); - TEST_f_f (rint, -0.25, -0.0); - TEST_f_f (rint, -0.625, -0.0); -+ TEST_f_f (rint, 1048576.75, 1048577.0); -+ TEST_f_f (rint, 2097152.75, 2097153.0); -+ TEST_f_f (rint, -1048576.75, -1048576.0); -+ TEST_f_f (rint, -2097152.75, -2097152.0); -+#ifndef TEST_FLOAT -+ TEST_f_f (rint, 70368744177664.75, 70368744177665.0); -+ TEST_f_f (rint, 140737488355328.75, 140737488355329.0); -+ TEST_f_f (rint, 281474976710656.75, 281474976710657.0); -+ TEST_f_f (rint, 562949953421312.75, 562949953421313.0); -+ TEST_f_f (rint, 1125899906842624.75, 1125899906842625.0); -+ TEST_f_f (rint, -70368744177664.75, -70368744177664.0); -+ TEST_f_f (rint, -140737488355328.75, -140737488355328.0); -+ TEST_f_f (rint, -281474976710656.75, -281474976710656.0); -+ TEST_f_f (rint, -562949953421312.75, -562949953421312.0); -+ TEST_f_f (rint, -1125899906842624.75, -1125899906842624.0); -+#endif - #ifdef TEST_LDOUBLE - /* The result can only be represented in long double. */ - TEST_f_f (rint, 4503599627370495.5L, 4503599627370496.0L); -diff --git a/sysdeps/ieee754/flt-32/s_rintf.c b/sysdeps/ieee754/flt-32/s_rintf.c -index 9ea9b6f..9ba6b57 100644 ---- a/sysdeps/ieee754/flt-32/s_rintf.c -+++ b/sysdeps/ieee754/flt-32/s_rintf.c -@@ -26,34 +26,22 @@ float - __rintf(float x) - { - int32_t i0,j0,sx; -- u_int32_t i,i1; - float w,t; - GET_FLOAT_WORD(i0,x); - sx = (i0>>31)&1; - j0 = ((i0>>23)&0xff)-0x7f; - if(j0<23) { - if(j0<0) { -- if((i0&0x7fffffff)==0) return x; -- i1 = (i0&0x07fffff); -- i0 &= 0xfff00000; -- i0 |= ((i1|-i1)>>9)&0x400000; -- SET_FLOAT_WORD(x,i0); - w = TWO23[sx]+x; - t = w-TWO23[sx]; - GET_FLOAT_WORD(i0,t); - SET_FLOAT_WORD(t,(i0&0x7fffffff)|(sx<<31)); - return t; -- } else { -- i = (0x007fffff)>>j0; -- if((i0&i)==0) return x; /* x is integral */ -- i>>=1; -- if((i0&i)!=0) i0 = (i0&(~i))|((0x100000)>>j0); - } - } else { - if(j0==0x80) return x+x; /* inf or NaN */ - else return x; /* x is integral */ - } -- SET_FLOAT_WORD(x,i0); - w = TWO23[sx]+x; - return w-TWO23[sx]; - } diff --git a/core/glibc/glibc-2.15-scanf.patch b/core/glibc/glibc-2.15-scanf.patch deleted file mode 100644 index a2561b232..000000000 --- a/core/glibc/glibc-2.15-scanf.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff --git a/stdio-common/vfscanf.c b/stdio-common/vfscanf.c -index 0e71deb..e18a6c3 100644 ---- a/stdio-common/vfscanf.c -+++ b/stdio-common/vfscanf.c -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991-2006, 2007, 2010, 2011 Free Software Foundation, Inc. -+/* Copyright (C) 1991-2007, 2010, 2011, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -274,7 +274,7 @@ _IO_vfscanf_internal (_IO_FILE *s, const char *format, _IO_va_list argptr, - CHAR_T *old = wp; \ - size_t newsize = (UCHAR_MAX + 1 > 2 * wpmax \ - ? UCHAR_MAX + 1 : 2 * wpmax); \ -- if (use_malloc || __libc_use_alloca (newsize)) \ -+ if (use_malloc || !__libc_use_alloca (newsize)) \ - { \ - wp = realloc (use_malloc ? wp : NULL, newsize); \ - if (wp == NULL) \ diff --git a/core/glibc/glibc-2.15-strcasecmp-disable-avx.patch b/core/glibc/glibc-2.15-strcasecmp-disable-avx.patch deleted file mode 100644 index 4c104fa55..000000000 --- a/core/glibc/glibc-2.15-strcasecmp-disable-avx.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff --git a/sysdeps/x86_64/multiarch/strcmp.S b/sysdeps/x86_64/multiarch/strcmp.S -index f93c83d..d8aa889 100644 ---- a/sysdeps/x86_64/multiarch/strcmp.S -+++ b/sysdeps/x86_64/multiarch/strcmp.S -@@ -105,11 +105,6 @@ ENTRY(__strcasecmp) - jne 1f - call __init_cpu_features - 1: --# ifdef HAVE_AVX_SUPPORT -- leaq __strcasecmp_avx(%rip), %rax -- testl $bit_AVX, __cpu_features+CPUID_OFFSET+index_AVX(%rip) -- jnz 2f --# endif - leaq __strcasecmp_sse42(%rip), %rax - testl $bit_SSE4_2, __cpu_features+CPUID_OFFSET+index_SSE4_2(%rip) - jnz 2f -@@ -128,11 +123,6 @@ ENTRY(__strncasecmp) - jne 1f - call __init_cpu_features - 1: --# ifdef HAVE_AVX_SUPPORT -- leaq __strncasecmp_avx(%rip), %rax -- testl $bit_AVX, __cpu_features+CPUID_OFFSET+index_AVX(%rip) -- jnz 2f --# endif - leaq __strncasecmp_sse42(%rip), %rax - testl $bit_SSE4_2, __cpu_features+CPUID_OFFSET+index_SSE4_2(%rip) - jnz 2f -@@ -152,19 +142,6 @@ weak_alias (__strncasecmp, strncasecmp) - # include "strcmp-sse42.S" - - --# ifdef HAVE_AVX_SUPPORT --# if defined USE_AS_STRCASECMP_L || defined USE_AS_STRNCASECMP_L --# define LABEL(l) .L##l##_avx --# define GLABEL(l) l##_avx --# define USE_AVX 1 --# undef STRCMP_SSE42 --# define STRCMP_SSE42 STRCMP_AVX --# define SECTION avx --# include "strcmp-sse42.S" --# endif --# endif -- -- - # undef ENTRY - # define ENTRY(name) \ - .type STRCMP_SSE2, @function; \ diff --git a/core/glibc/glibc-2.15-testsuite.patch b/core/glibc/glibc-2.15-testsuite.patch deleted file mode 100644 index 1ec882da3..000000000 --- a/core/glibc/glibc-2.15-testsuite.patch +++ /dev/null @@ -1,109 +0,0 @@ -From d4c2917fc5091dae7ab1b30c165becb70d3c3453 Mon Sep 17 00:00:00 2001 -From: Allan McRae -Date: Mon, 16 Apr 2012 14:06:47 +1000 -Subject: [PATCH] Fix test-suite failues with -Wl,--as-needed - -Signed-off-by: Allan McRae ---- - ChangeLog | 24 ++++++++++++++++++++++++ - elf/Makefile | 21 ++++++++++++++++++++- - nptl/ChangeLog | 5 +++++ - nptl/Makefile | 3 ++- - stdlib/Makefile | 1 + - 5 files changed, 52 insertions(+), 2 deletions(-) - -diff --git a/elf/Makefile b/elf/Makefile -index 57dcab0..47729c3 100644 ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -500,6 +500,18 @@ $(objpfx)tst-initordera3.so: $(objpfx)tst-initorderb2.so $(objpfx)tst-initorderb - $(objpfx)tst-initordera4.so: $(objpfx)tst-initordera3.so - $(objpfx)tst-initorder: $(objpfx)tst-initordera4.so $(objpfx)tst-initordera1.so $(objpfx)tst-initorderb2.so - -+LDFLAGS-nodel2mod3.so = $(no-as-needed) -+LDFLAGS-reldepmod5.so = $(no-as-needed) -+LDFLAGS-reldep6mod1.so = $(no-as-needed) -+LDFLAGS-reldep6mod4.so = $(no-as-needed) -+LDFLAGS-reldep8mod3.so = $(no-as-needed) -+LDFLAGS-unload4mod1.so = $(no-as-needed) -+LDFLAGS-unload4mod2.so = $(no-as-needed) -+LDFLAGS-tst-initorder = $(no-as-needed) -+LDFLAGS-tst-initordera2.so = $(no-as-needed) -+LDFLAGS-tst-initordera3.so = $(no-as-needed) -+LDFLAGS-tst-initordera4.so = $(no-as-needed) -+LDFLAGS-tst-initorderb2.so = $(no-as-needed) - LDFLAGS-tst-tlsmod5.so = -nostdlib - LDFLAGS-tst-tlsmod6.so = -nostdlib - -@@ -633,7 +645,7 @@ $(objpfx)vismain.out: $(addprefix $(objpfx),vismod3.so) - vismain-ENV = LD_PRELOAD=$(addprefix $(objpfx),vismod3.so) - - $(objpfx)noload: $(objpfx)testobj1.so $(common-objpfx)dlfcn/libdl.so --LDFLAGS-noload = -rdynamic -+LDFLAGS-noload = -rdynamic $(no-as-needed) - $(objpfx)noload.out: $(objpfx)testobj5.so - - $(objpfx)noload-mem: $(objpfx)noload.out -@@ -678,6 +690,7 @@ $(objpfx)reldep4: $(libdl) - $(objpfx)reldep4.out: $(objpfx)reldep4mod1.so $(objpfx)reldep4mod2.so - - $(objpfx)next: $(objpfx)nextmod1.so $(objpfx)nextmod2.so $(libdl) -+LDFLAGS-next = $(no-as-needed) - - $(objpfx)unload2: $(libdl) - $(objpfx)unload2.out: $(objpfx)unload2mod.so $(objpfx)unload2dep.so -@@ -1025,6 +1038,8 @@ $(objpfx)order2mod1.so: $(objpfx)order2mod4.so - $(objpfx)order2mod4.so: $(objpfx)order2mod3.so - $(objpfx)order2mod2.so: $(objpfx)order2mod3.so - order2mod2.so-no-z-defs = yes -+LDFLAGS-order2mod1.so = $(no-as-needed) -+LDFLAGS-order2mod2.so = $(no-as-needed) - - tst-stackguard1-ARGS = --command "$(built-program-cmd) --child" - tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child" -@@ -1113,6 +1128,10 @@ $(objpfx)tst-initorder2: $(objpfx)tst-initorder2a.so $(objpfx)tst-initorder2d.so - $(objpfx)tst-initorder2a.so: $(objpfx)tst-initorder2b.so - $(objpfx)tst-initorder2b.so: $(objpfx)tst-initorder2c.so - $(objpfx)tst-initorder2c.so: $(objpfx)tst-initorder2d.so -+LDFLAGS-tst-initorder2 = $(no-as-needed) -+LDFLAGS-tst-initorder2a.so = $(no-as-needed) -+LDFLAGS-tst-initorder2b.so = $(no-as-needed) -+LDFLAGS-tst-initorder2c.so = $(no-as-needed) - define o-iterator-doit - $(objpfx)tst-initorder2$o.os: tst-initorder2.c; \ - $$(compile-command.c) -DNAME=\"$o\" -diff --git a/nptl/Makefile b/nptl/Makefile -index 09acd8a..07a1022 100644 ---- a/nptl/Makefile -+++ b/nptl/Makefile -@@ -458,6 +458,7 @@ $(objpfx)tst-tls4: $(libdl) $(shared-thread-library) - $(objpfx)tst-tls4.out: $(objpfx)tst-tls4moda.so $(objpfx)tst-tls4modb.so - - $(objpfx)tst-tls5: $(objpfx)tst-tls5mod.so $(shared-thread-library) -+LDFLAGS-tst-tls5 = $(no-as-needed) - LDFLAGS-tst-tls5mod.so = -Wl,-soname,tst-tls5mod.so - - ifeq ($(build-shared),yes) -@@ -503,7 +504,7 @@ $(objpfx)tst-clock2: $(common-objpfx)rt/librt.a - $(objpfx)tst-rwlock14: $(common-objpfx)rt/librt.a - endif - --LDFLAGS-tst-cancel24 = -lstdc++ -+LDFLAGS-tst-cancel24 = $(no-as-needed) -lstdc++ - - extra-B-pthread.so = -B$(common-objpfx)nptl/ - $(objpfx)libpthread.so: $(addprefix $(objpfx),$(crti-objs) $(crtn-objs)) -diff --git a/stdlib/Makefile b/stdlib/Makefile -index 44eb20d..f7811c5 100644 ---- a/stdlib/Makefile -+++ b/stdlib/Makefile -@@ -138,6 +138,7 @@ $(objpfx)tst-fmtmsg.out: tst-fmtmsg.sh $(objpfx)tst-fmtmsg - $(SHELL) -e $< $(common-objpfx) '$(run-program-prefix)' $(common-objpfx)stdlib/ - - $(objpfx)tst-putenv: $(objpfx)tst-putenvmod.so -+LDFLAGS-tst-putenv = $(no-as-needed) - - $(objpfx)tst-putenvmod.so: $(objpfx)tst-putenvmod.os - $(build-module) --- -1.7.3.4 diff --git a/core/glibc/glibc-2.15-vdso.patch b/core/glibc/glibc-2.15-vdso.patch deleted file mode 100644 index 7fd394f90..000000000 --- a/core/glibc/glibc-2.15-vdso.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff --git a/elf/Makefile b/elf/Makefile -index 8234ba7..25ffc57 100644 ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -1203,3 +1203,14 @@ $(objpfx)tst-relsort1mod1.so: $(libm) $(objpfx)tst-relsort1mod2.so - $(objpfx)tst-relsort1mod2.so: $(libm) - $(objpfx)tst-relsort1.out: $(objpfx)tst-relsort1mod1.so \ - $(objpfx)tst-relsort1mod2.so -+ -+tests: $(objpfx)tst-unused-dep.out -+ -+$(objpfx)tst-unused-dep.out: $(objpfx)testobj1.so -+ LD_TRACE_LOADED_OBJECTS=1 \ -+ LD_DEBUG=unused \ -+ LD_PRELOAD= \ -+ $(elf-objpfx)${rtld-installed-name} \ -+ --library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)) \ -+ $< > $@ -+ cmp $@ /dev/null > /dev/null -diff --git a/elf/rtld.c b/elf/rtld.c -index 2e4f97f..3e15447 100644 ---- a/elf/rtld.c -+++ b/elf/rtld.c -@@ -1,5 +1,5 @@ - /* Run time dynamic linker. -- Copyright (C) 1995-2010, 2011 Free Software Foundation, Inc. -+ Copyright (C) 1995-2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -1375,6 +1375,9 @@ of this helper program; chances are you did not intend to run this program.\n\ - _dl_setup_hash (l); - l->l_relocated = 1; - -+ /* The vDSO is always used. */ -+ l->l_used = 1; -+ - /* Initialize l_local_scope to contain just this map. This allows - the use of dl_lookup_symbol_x to resolve symbols within the vdso. - So we create a single entry list pointing to l_real as its only diff --git a/core/glibc/glibc-2.15-vfprintf-nargs.patch b/core/glibc/glibc-2.15-vfprintf-nargs.patch deleted file mode 100644 index f682ad5fe..000000000 --- a/core/glibc/glibc-2.15-vfprintf-nargs.patch +++ /dev/null @@ -1,180 +0,0 @@ -diff --git a/stdio-common/Makefile b/stdio-common/Makefile -index a847b28..080badc 100644 ---- a/stdio-common/Makefile -+++ b/stdio-common/Makefile -@@ -59,7 +59,8 @@ tests := tstscanf test_rdwr test-popen tstgetln test-fseek \ - tst-popen tst-unlockedio tst-fmemopen2 tst-put-error tst-fgets \ - tst-fwrite bug16 bug17 tst-swscanf tst-sprintf2 bug18 bug18a \ - bug19 bug19a tst-popen2 scanf13 scanf14 scanf15 bug20 bug21 bug22 \ -- scanf16 scanf17 tst-setvbuf1 tst-grouping bug23 bug24 -+ scanf16 scanf17 tst-setvbuf1 tst-grouping bug23 bug24 \ -+ bug-vfprintf-nargs - - test-srcs = tst-unbputc tst-printf - -diff --git a/stdio-common/bug-vfprintf-nargs.c b/stdio-common/bug-vfprintf-nargs.c -new file mode 100644 -index 0000000..13c66c0 ---- /dev/null -+++ b/stdio-common/bug-vfprintf-nargs.c -@@ -0,0 +1,78 @@ -+/* Test for vfprintf nargs allocation overflow (BZ #13656). -+ Copyright (C) 2012 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Kees Cook , 2012. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+static int -+format_failed (const char *fmt, const char *expected) -+{ -+ char output[80]; -+ -+ printf ("%s : ", fmt); -+ -+ memset (output, 0, sizeof output); -+ /* Having sprintf itself detect a failure is good. */ -+ if (sprintf (output, fmt, 1, 2, 3, "test") > 0 -+ && strcmp (output, expected) != 0) -+ { -+ printf ("FAIL (output '%s' != expected '%s')\n", output, expected); -+ return 1; -+ } -+ puts ("ok"); -+ return 0; -+} -+ -+static int -+do_test (void) -+{ -+ int rc = 0; -+ char buf[64]; -+ -+ /* Regular positionals work. */ -+ if (format_failed ("%1$d", "1") != 0) -+ rc = 1; -+ -+ /* Regular width positionals work. */ -+ if (format_failed ("%1$*2$d", " 1") != 0) -+ rc = 1; -+ -+ /* Positional arguments are constructed via read_int, so nargs can only -+ overflow on 32-bit systems. On 64-bit systems, it will attempt to -+ allocate a giant amount of memory and possibly crash, which is the -+ expected situation. Since the 64-bit behavior is arch-specific, only -+ test this on 32-bit systems. */ -+ if (sizeof (long int) == 4) -+ { -+ sprintf (buf, "%%1$d %%%" PRIdPTR "$d", UINT32_MAX / sizeof (int)); -+ if (format_failed (buf, "1 %$d") != 0) -+ rc = 1; -+ } -+ -+ return rc; -+} -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" -diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c -index 863cd5d..c802e46 100644 ---- a/stdio-common/vfprintf.c -+++ b/stdio-common/vfprintf.c -@@ -235,6 +235,9 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap) - 0 if unknown. */ - int readonly_format = 0; - -+ /* For the argument descriptions, which may be allocated on the heap. */ -+ void *args_malloced = NULL; -+ - /* This table maps a character into a number representing a - class. In each step there is a destination label for each - class. */ -@@ -1647,9 +1650,10 @@ do_positional: - determine the size of the array needed to store the argument - attributes. */ - size_t nargs = 0; -- int *args_type; -- union printf_arg *args_value = NULL; -+ size_t bytes_per_arg; -+ union printf_arg *args_value; - int *args_size; -+ int *args_type; - - /* Positional parameters refer to arguments directly. This could - also determine the maximum number of arguments. Track the -@@ -1698,13 +1702,38 @@ do_positional: - - /* Determine the number of arguments the format string consumes. */ - nargs = MAX (nargs, max_ref_arg); -+ /* Calculate total size needed to represent a single argument across -+ all three argument-related arrays. */ -+ bytes_per_arg = sizeof (*args_value) + sizeof (*args_size) -+ + sizeof (*args_type); -+ -+ /* Check for potential integer overflow. */ -+ if (__builtin_expect (nargs > SIZE_MAX / bytes_per_arg, 0)) -+ { -+ __set_errno (ERANGE); -+ done = -1; -+ goto all_done; -+ } - -- /* Allocate memory for the argument descriptions. */ -- args_type = alloca (nargs * sizeof (int)); -+ /* Allocate memory for all three argument arrays. */ -+ if (__libc_use_alloca (nargs * bytes_per_arg)) -+ args_value = alloca (nargs * bytes_per_arg); -+ else -+ { -+ args_value = args_malloced = malloc (nargs * bytes_per_arg); -+ if (args_value == NULL) -+ { -+ done = -1; -+ goto all_done; -+ } -+ } -+ -+ /* Set up the remaining two arrays to each point past the end of the -+ prior array, since space for all three has been allocated now. */ -+ args_size = &args_value[nargs].pa_int; -+ args_type = &args_size[nargs]; - memset (args_type, s->_flags2 & _IO_FLAGS2_FORTIFY ? '\xff' : '\0', -- nargs * sizeof (int)); -- args_value = alloca (nargs * sizeof (union printf_arg)); -- args_size = alloca (nargs * sizeof (int)); -+ nargs * sizeof (*args_type)); - - /* XXX Could do sanity check here: If any element in ARGS_TYPE is - still zero after this loop, format is invalid. For now we -@@ -1973,8 +2002,8 @@ do_positional: - } - - all_done: -- if (__builtin_expect (workstart != NULL, 0)) -- free (workstart); -+ free (args_malloced); -+ free (workstart); - /* Unlock the stream. */ - _IO_funlockfile (s); - _IO_cleanup_region_end (0); diff --git a/core/glibc/glibc-__i686.patch b/core/glibc/glibc-__i686.patch deleted file mode 100644 index 28d5dd424..000000000 --- a/core/glibc/glibc-__i686.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Naur glibc-old//sysdeps/i386/Makefile glibc//sysdeps/i386/Makefile ---- glibc-old//sysdeps/i386/Makefile 2010-03-18 11:52:30.000000000 +1000 -+++ glibc//sysdeps/i386/Makefile 2010-04-16 15:05:50.000000000 +1000 -@@ -1,6 +1,7 @@ - # The mpn functions need a #define for asm syntax flavor. --# Every i386 port in use uses gas syntax (I think). --asm-CPPFLAGS += -DGAS_SYNTAX -+# Every i386 port in use uses gas syntax (I think). Don't replace -+# __i686 in __i686.get_pc_thunk.bx. -+asm-CPPFLAGS += -DGAS_SYNTAX -U __i686 - - # The i386 `long double' is a distinct type we support. - long-double-fcts = yes diff --git a/core/glibc/local-soname-hack.diff b/core/glibc/local-soname-hack.diff new file mode 100644 index 000000000..94d44c216 --- /dev/null +++ b/core/glibc/local-soname-hack.diff @@ -0,0 +1,18 @@ +diff -urN a/elf/dl-load.c b/elf/dl-load.c +--- a/elf/dl-load.c 2012-06-30 13:12:34.000000000 -0600 ++++ b/elf/dl-load.c 2012-07-06 15:45:51.728813355 -0600 +@@ -2081,10 +2081,13 @@ + soname = ((const char *) D_PTR (l, l_info[DT_STRTAB]) + + l->l_info[DT_SONAME]->d_un.d_val); + if (strcmp (name, soname) != 0) ++#ifdef __arm__ ++ if (strcmp(name, "ld-linux.so.3") || strcmp(soname, "ld-linux-armhf.so.3")) ++#endif + continue; + + /* We have a match on a new name -- cache it. */ +- add_name_to_object (l, soname); ++ add_name_to_object (l, name); + l->l_soname_added = 1; + } + diff --git a/core/glibc/nscd.rcd b/core/glibc/nscd.rcd old mode 100644 new mode 100755 diff --git a/core/glibc/nscd.service b/core/glibc/nscd.service index 18bb7dcba..de5315e9b 100644 --- a/core/glibc/nscd.service +++ b/core/glibc/nscd.service @@ -1,7 +1,7 @@ [Unit] Description=Name Service Cache Daemon After=syslog.target - + [Service] Type=forking ExecStart=/usr/sbin/nscd @@ -12,6 +12,6 @@ ExecReload=/usr/sbin/nscd -i hosts ExecReload=/usr/sbin/nscd -i service Restart=always PIDFile=/run/nscd/nscd.pid - + [Install] WantedBy=multi-user.target