diff options
author | Fantix King | 2014-09-17 16:35:34 +0800 |
---|---|---|
committer | Fantix King | 2015-11-13 01:19:09 +0800 |
commit | 04e15c1da04f8f50e79cdd597cb000ab576bde8a (patch) | |
tree | 2a8e7eafb932961f99ceca6d747abe29e6e2497a | |
parent | 99395b9de3eed0772fcb5f1e00c08d67a5c78402 (diff) | |
download | aur-04e15c1da04f8f50e79cdd597cb000ab576bde8a.tar.gz |
2.20-2.1
-rw-r--r-- | .SRCINFO | 26 | ||||
-rw-r--r-- | PKGBUILD | 70 | ||||
-rw-r--r-- | glibc-2.19-fix-sign-in-bsloww1-input.patch | 71 | ||||
-rw-r--r-- | glibc-2.19-tzselect-default.patch | 13 | ||||
-rw-r--r-- | glibc-2.19-xattr_header.patch | 42 | ||||
-rw-r--r-- | glibc-2.20-do_ftell_wide-memleak.patch | 12 | ||||
-rw-r--r-- | glibc-2.20-getifaddrs_internal-segfault.patch | 29 | ||||
-rw-r--r-- | glibc-2.20-linux-3.16-additions.patch | 15 |
8 files changed, 106 insertions, 172 deletions
@@ -1,28 +1,28 @@ pkgbase = libx32-glibc pkgdesc = GNU C Library (x32 ABI) - pkgver = 2.19_5 - pkgrel = 1 + pkgver = 2.20 + pkgrel = 2.1 url = http://www.gnu.org/software/libc arch = x86_64 license = GPL license = LGPL - makedepends = gcc-multilib-x32>=4.8 + makedepends = gcc-multilib-x32>=4.9 provides = glibc-x32-seed conflicts = glibc-x32-seed options = !strip - options = !emptydirs options = staticlibs - source = http://ftp.gnu.org/gnu/libc/glibc-2.19.tar.xz - source = http://ftp.gnu.org/gnu/libc/glibc-2.19.tar.xz.sig - source = glibc-2.19-xattr_header.patch - source = glibc-2.19-fix-sign-in-bsloww1-input.patch - source = glibc-2.19-tzselect-default.patch + options = !emptydirs + source = http://ftp.gnu.org/gnu/libc/glibc-2.20.tar.xz + source = http://ftp.gnu.org/gnu/libc/glibc-2.20.tar.xz.sig + source = glibc-2.20-getifaddrs_internal-segfault.patch + source = glibc-2.20-linux-3.16-additions.patch + source = glibc-2.20-do_ftell_wide-memleak.patch source = libx32-glibc.conf - md5sums = e26b8cc666b162f999404b03970f14e4 + md5sums = 948a6e06419a01bd51e97206861595b0 md5sums = SKIP - md5sums = 39a4876837789e07746f1d84cd8cb46a - md5sums = 755a1a9d7844a5e338eddaa9a5d974cd - md5sums = c772dc99ddd8032ecbf43884ae0cf42e + md5sums = 1c5d5c2017445c75dbc5c6d0c1e45ddb + md5sums = 8f1059f431b842e54b12bde689620df8 + md5sums = b50feeab78fa6ce0a8cfb41ee8dc1fd8 md5sums = 34a4169d2bdc5a3eb83676a0831aae57 pkgname = libx32-glibc @@ -1,50 +1,53 @@ -# $Id: PKGBUILD 111334 2014-05-16 22:03:28Z heftig $ -# Maintainer: Fantix King <fantix.king@gmail.com> -# Upstream Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# $Id: PKGBUILD 118950 2014-09-14 08:30:52Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> # Contributor: Jan de Groot <jgc@archlinux.org> # Contributor: Allan McRae <allan@archlinux.org> +# x32 Maintainer: Fantix King <fantix.king@gmail.com> # toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc -# NOTE: valgrind requires rebuilt with each major glibc version _pkgbasename=glibc pkgname=libx32-$_pkgbasename -pkgver=2.19_5 -pkgrel=1 +pkgver=2.20 +pkgrel=2.1 pkgdesc="GNU C Library (x32 ABI)" arch=('x86_64') url="http://www.gnu.org/software/libc" license=('GPL' 'LGPL') groups=() depends=() -makedepends=('gcc-multilib-x32>=4.8') +makedepends=('gcc-multilib-x32>=4.9') backup=() conflicts=('glibc-x32-seed') provides=('glibc-x32-seed') -options=('!strip' '!emptydirs' 'staticlibs') -source=(http://ftp.gnu.org/gnu/libc/${_pkgbasename}-${pkgver%_*}.tar.xz{,.sig} - glibc-2.19-xattr_header.patch - glibc-2.19-fix-sign-in-bsloww1-input.patch - glibc-2.19-tzselect-default.patch + + +options=('!strip' 'staticlibs' '!emptydirs') + +source=(http://ftp.gnu.org/gnu/libc/${_pkgbasename}-${pkgver}.tar.xz{,.sig} + glibc-2.20-getifaddrs_internal-segfault.patch + glibc-2.20-linux-3.16-additions.patch + glibc-2.20-do_ftell_wide-memleak.patch libx32-glibc.conf) -md5sums=('e26b8cc666b162f999404b03970f14e4' +md5sums=('948a6e06419a01bd51e97206861595b0' 'SKIP' - '39a4876837789e07746f1d84cd8cb46a' - '755a1a9d7844a5e338eddaa9a5d974cd' - 'c772dc99ddd8032ecbf43884ae0cf42e' + '1c5d5c2017445c75dbc5c6d0c1e45ddb' + '8f1059f431b842e54b12bde689620df8' + 'b50feeab78fa6ce0a8cfb41ee8dc1fd8' '34a4169d2bdc5a3eb83676a0831aae57') prepare() { - cd ${srcdir}/${_pkgbasename}-${pkgver%_*} - - # fix for {linux,sys}/xattr.h incompatibility - commit fdbe8eae - patch -p1 -i $srcdir/glibc-2.19-xattr_header.patch - - # fix issues in sin/cos slow path calculation - commit ffe768a9 - patch -p1 -i $srcdir/glibc-2.19-fix-sign-in-bsloww1-input.patch - - # fix tzselect with missing TZDIR - commit 893b4f37/c72399fb - patch -p1 -i $srcdir/glibc-2.19-tzselect-default.patch + cd ${srcdir}/glibc-${pkgver} + + # fix segfault in getifaddrs_internal + # https://sourceware.org/ml/libc-alpha/2014-09/msg00312.html + patch -p1 -i $srcdir/glibc-2.20-getifaddrs_internal-segfault.patch + + # linux 3.16 additions - commit 0bd72468 + patch -p1 -i $srcdir/glibc-2.20-linux-3.16-additions.patch + + # plug memory leak - commit 984c0ea9 + patch -p1 -i $srcdir/glibc-2.20-do_ftell_wide-memleak.patch mkdir ${srcdir}/glibc-build } @@ -69,6 +72,7 @@ build() { export CXX="g++ -mx32" fi echo "slibdir=/usr/libx32" >> configparms + echo "rtlddir=/usr/libx32" >> configparms echo "sbindir=/usr/bin" >> configparms echo "rootsbindir=/usr/bin" >> configparms @@ -76,11 +80,11 @@ build() { CFLAGS=${CFLAGS/-fstack-protector-strong/} CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2/} - ${srcdir}/${_pkgbasename}-${pkgver%_*}/configure --prefix=/usr \ + ${srcdir}/${_pkgbasename}-${pkgver}/configure --prefix=/usr \ --libdir=/usr/libx32 --libexecdir=/usr/libx32 \ --with-headers=/usr/include \ --with-bugurl=https://bugs.archlinux.org/ \ - --enable-add-ons=nptl,libidn \ + --enable-add-ons \ --enable-obsolete-rpc \ --enable-kernel=2.6.32 \ --enable-bind-now --disable-profile \ @@ -100,7 +104,7 @@ build() { make # remove harding in preparation to run test-suite - sed -i '4,6d' configparms + sed -i '5,7d' configparms } check() { @@ -108,12 +112,12 @@ check() { LDFLAGS=${LDFLAGS/--as-needed,/} cd ${srcdir}/glibc-build + if [ -x "/opt/gcc-x32-seed/bin/gcc" ]; then - make -k check || true + make check || true else - # ULP failures on i686 are all small and can be ignored - # tst-cleanupx4.out failure on i686 needs investigating... - make -k check || true + # tst-cleanupx4 failure on i686 is "expected" + make check || true fi } diff --git a/glibc-2.19-fix-sign-in-bsloww1-input.patch b/glibc-2.19-fix-sign-in-bsloww1-input.patch deleted file mode 100644 index 91b0c9abbe41..000000000000 --- a/glibc-2.19-fix-sign-in-bsloww1-input.patch +++ /dev/null @@ -1,71 +0,0 @@ -From ffe768a90912f9bce43b70a82576b3dc99e3121c Mon Sep 17 00:00:00 2001 -From: Siddhesh Poyarekar <siddhesh@redhat.com> -Date: Thu, 27 Feb 2014 21:29:16 +0530 -Subject: [PATCH] Fix sign of input to bsloww1 (BZ #16623) - -In 84ba214c, I removed some redundant sign computations and in the -process, I incorrectly got rid of a temporary variable, thus passing -the absolute value of the input to bsloww1. This caused #16623. - -This fix undoes the incorrect change. ---- - sysdeps/ieee754/dbl-64/s_sin.c | 16 ++++++++++------ - 3 files changed, 18 insertions(+), 7 deletions(-) - -diff --git a/sysdeps/ieee754/dbl-64/s_sin.c b/sysdeps/ieee754/dbl-64/s_sin.c -index 6105e9f..50109b8 100644 ---- a/sysdeps/ieee754/dbl-64/s_sin.c -+++ b/sysdeps/ieee754/dbl-64/s_sin.c -@@ -447,19 +447,21 @@ __sin (double x) - } - else - { -+ double t; - if (a > 0) - { - m = 1; -+ t = a; - db = da; - } - else - { - m = 0; -- a = -a; -+ t = -a; - db = -da; - } -- u.x = big + a; -- y = a - (u.x - big); -+ u.x = big + t; -+ y = t - (u.x - big); - res = do_sin (u, y, db, &cor); - cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps; - retval = ((res == res + cor) ? ((m) ? res : -res) -@@ -671,19 +673,21 @@ __cos (double x) - } - else - { -+ double t; - if (a > 0) - { - m = 1; -+ t = a; - db = da; - } - else - { - m = 0; -- a = -a; -+ t = -a; - db = -da; - } -- u.x = big + a; -- y = a - (u.x - big); -+ u.x = big + t; -+ y = t - (u.x - big); - res = do_sin (u, y, db, &cor); - cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps; - retval = ((res == res + cor) ? ((m) ? res : -res) --- -1.9.0 - diff --git a/glibc-2.19-tzselect-default.patch b/glibc-2.19-tzselect-default.patch deleted file mode 100644 index ccafb0b606f2..000000000000 --- a/glibc-2.19-tzselect-default.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/timezone/Makefile b/timezone/Makefile -index 998cd14..d5f647c 100644 ---- a/timezone/Makefile -+++ b/timezone/Makefile -@@ -118,7 +118,7 @@ $(testdata)/Asia/Tokyo: asia $(zic-deps) - - $(objpfx)tzselect: tzselect.ksh $(common-objpfx)config.make - sed -e 's|/bin/bash|$(KSH)|g' \ -- -e '/TZDIR=/s|\$$(pwd)|$(zonedir)|' \ -+ -e 's|TZDIR=[^}]*|TZDIR=$(zonedir)|' \ - -e '/TZVERSION=/s|see_Makefile|"$(version)"|' \ - -e '/PKGVERSION=/s|=.*|="$(PKGVERSION)"|' \ - -e '/REPORT_BUGS_TO=/s|=.*|="$(REPORT_BUGS_TO)"|' \ diff --git a/glibc-2.19-xattr_header.patch b/glibc-2.19-xattr_header.patch deleted file mode 100644 index 438626ef3f4b..000000000000 --- a/glibc-2.19-xattr_header.patch +++ /dev/null @@ -1,42 +0,0 @@ -From: Serge Hallyn <serge.hallyn@ubuntu.com> -Date: Tue, 11 Mar 2014 04:17:07 +0000 (-0500) -Subject: misc/sys/xattr.h: guard against linux uapi header inclusion -X-Git-Url: https://sourceware.org/git/?p=glibc.git;a=commitdiff_plain;h=fdbe8eae;hp=fede7a5ffa188c22c3789135bd5cf82e487dd3d0 - -misc/sys/xattr.h: guard against linux uapi header inclusion - -If the glibc xattr.h header is included after the uapi header, -compilation fails due to an enum re-using a #define from the -uapi header. Protect against this by guarding the define and -enum inclusions against each other. - -(A corresponding kernel patch has been sent here: -http://lkml.org/lkml/2014/3/7/331 ) - -(See https://lists.debian.org/debian-glibc/2014/03/msg00029.html -and https://sourceware.org/glibc/wiki/Synchronizing_Headers -for more information.) - -Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com> ---- - -diff --git a/misc/sys/xattr.h b/misc/sys/xattr.h -index 929cd87..796df90 100644 ---- a/misc/sys/xattr.h -+++ b/misc/sys/xattr.h -@@ -26,6 +26,7 @@ __BEGIN_DECLS - - /* The following constants should be used for the fifth parameter of - `*setxattr'. */ -+#ifndef __USE_KERNEL_XATTR_DEFS - enum - { - XATTR_CREATE = 1, /* set value, fail if attr already exists. */ -@@ -33,6 +34,7 @@ enum - XATTR_REPLACE = 2 /* set value, fail if attr does not exist. */ - #define XATTR_REPLACE XATTR_REPLACE - }; -+#endif - - /* Set the attribute NAME of the file pointed to by PATH to VALUE (which - is SIZE bytes long). Return 0 on success, -1 for errors. */ diff --git a/glibc-2.20-do_ftell_wide-memleak.patch b/glibc-2.20-do_ftell_wide-memleak.patch new file mode 100644 index 000000000000..0896a6430dc2 --- /dev/null +++ b/glibc-2.20-do_ftell_wide-memleak.patch @@ -0,0 +1,12 @@ +diff --git a/libio/wfileops.c b/libio/wfileops.c +index f123add..ebc06e8 100644 +--- a/libio/wfileops.c ++++ b/libio/wfileops.c +@@ -711,6 +711,7 @@ do_ftell_wide (_IO_FILE *fp) + return WEOF; + + offset += outstop - out; ++ free (out); + } + + /* We don't trust _IO_read_end to represent the current file offset diff --git a/glibc-2.20-getifaddrs_internal-segfault.patch b/glibc-2.20-getifaddrs_internal-segfault.patch new file mode 100644 index 000000000000..57c84f8b4792 --- /dev/null +++ b/glibc-2.20-getifaddrs_internal-segfault.patch @@ -0,0 +1,29 @@ +diff --git a/sysdeps/unix/sysv/linux/ifaddrs.c b/sysdeps/unix/sysv/linux/ifaddrs.c +index 2c04e17..a47b2ed 100644 +--- a/sysdeps/unix/sysv/linux/ifaddrs.c ++++ b/sysdeps/unix/sysv/linux/ifaddrs.c +@@ -770,20 +770,17 @@ getifaddrs_internal (struct ifaddrs **ifap) + + if (cp != NULL) + { +- char c; + unsigned int preflen; + +- if ((max_prefixlen > 0) && +- (ifam->ifa_prefixlen > max_prefixlen)) ++ if (ifam->ifa_prefixlen > max_prefixlen) + preflen = max_prefixlen; + else + preflen = ifam->ifa_prefixlen; + +- for (i = 0; i < ((preflen - 1) / 8); i++) ++ for (i = 0; i < preflen / 8; i++) + *cp++ = 0xff; +- c = 0xff; +- c <<= ((128 - preflen) % 8); +- *cp = c; ++ if (preflen % 8) ++ *cp = 0xff << (8 - preflen % 8); + } + } + } diff --git a/glibc-2.20-linux-3.16-additions.patch b/glibc-2.20-linux-3.16-additions.patch new file mode 100644 index 000000000000..be57a3817956 --- /dev/null +++ b/glibc-2.20-linux-3.16-additions.patch @@ -0,0 +1,15 @@ +diff --git a/sysdeps/gnu/netinet/udp.h b/sysdeps/gnu/netinet/udp.h +index 32159cd..8cc1c60 100644 +--- a/sysdeps/gnu/netinet/udp.h ++++ b/sysdeps/gnu/netinet/udp.h +@@ -78,6 +78,10 @@ struct udphdr + #define UDP_CORK 1 /* Never send partially complete segments. */ + #define UDP_ENCAP 100 /* Set the socket to accept + encapsulated packets. */ ++#define UDP_NO_CHECK6_TX 101 /* Disable sending checksum for UDP ++ over IPv6. */ ++#define UDP_NO_CHECK6_RX 102 /* Disable accepting checksum for UDP ++ over IPv6. */ + + /* UDP encapsulation types */ + #define UDP_ENCAP_ESPINUDP_NON_IKE 1 /* draft-ietf-ipsec-nat-t-ike-00/01 */ |