diff options
author | root <root@rshg054.dnsready.net> | 2012-01-26 23:14:55 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-01-26 23:14:55 +0000 |
commit | 3741146d50cb93e8985f8aac937e36d35ee76446 (patch) | |
tree | 98628c2ca15482ec0c66a81db48b4ddd777e1136 /multilib-testing | |
parent | a61c6fb05ec1cbc6845b2ed4077ce0c5950c36ed (diff) |
Thu Jan 26 23:14:55 UTC 2012
Diffstat (limited to 'multilib-testing')
-rw-r--r-- | multilib-testing/lib32-glibc/PKGBUILD | 26 | ||||
-rw-r--r-- | multilib-testing/lib32-glibc/glibc-2.15-regex.patch | 16 | ||||
-rw-r--r-- | multilib-testing/lib32-glibc/glibc-2.15-strcmp-disable-avx.patch | 48 |
3 files changed, 82 insertions, 8 deletions
diff --git a/multilib-testing/lib32-glibc/PKGBUILD b/multilib-testing/lib32-glibc/PKGBUILD index b537d6891..a14489c72 100644 --- a/multilib-testing/lib32-glibc/PKGBUILD +++ b/multilib-testing/lib32-glibc/PKGBUILD @@ -1,5 +1,5 @@ -# $Id: PKGBUILD 62106 2012-01-16 01:54:58Z heftig $ -# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com> +# $Id: PKGBUILD 62757 2012-01-26 04:37:18Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> # Contributor: Jan de Groot <jgc@archlinux.org> # Contributor: Allan McRae <allan@archlinux.org> @@ -9,7 +9,7 @@ _pkgbasename=glibc pkgname=lib32-$_pkgbasename pkgver=2.15 -pkgrel=3.1 +pkgrel=4 _glibcdate=20111227 pkgdesc="GNU C Library for multilib" arch=('x86_64') @@ -27,9 +27,10 @@ source=(ftp://ftp.archlinux.org/other/glibc/${_pkgbasename}-${pkgver}_${_glibcda glibc-2.14-revert-4768ae77.patch glibc-2.14-reexport-rpc-interface.patch glibc-2.14-reinstall-nis-rpc-headers.patch + glibc-2.15-regex.patch glibc-2.15-lddebug-scopes.patch glibc-2.15-revert-c5a0802a.patch - glibc-2.15-math64crash.patch + glibc-2.15-strcmp-disable-avx.patch lib32-glibc.conf) md5sums=('6ffdf5832192b92f98bdd125317c0dfc' '4dadb9203b69a3210d53514bb46f41c3' @@ -40,9 +41,10 @@ md5sums=('6ffdf5832192b92f98bdd125317c0dfc' '7da8c554a3b591c7401d7023b1928afc' 'c5de2a946215d647c8af5432ec4b0da0' '55febbb72139ac7b65757df085024b83' + 'b3526cbd5e29773560dba725db99af5a' '3c219ddfb619b6df903cac4cc42c611d' '7ae3e426251ae33e73dbad71f9c91378' - 'dc7550e659ddd685bd78a930d15a01f2' + '7a44dd821835e4984aa75ad44fad3baf' '6e052f1cb693d5d3203f50f9d4e8c33b') build() { @@ -79,6 +81,10 @@ build() { # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=bdd816a3 (only fedora branch...) patch -Np1 -i ${srcdir}/glibc-2.14-reinstall-nis-rpc-headers.patch + # Fix up regcomp/regexec + # http://sourceware.org/git/?p=glibc.git;a=commit;h=2ba92745 + patch -Np1 -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 (only fedora branch...) patch -Np1 -i ${srcdir}/glibc-2.15-lddebug-scopes.patch @@ -87,9 +93,13 @@ build() { # https://bugzilla.redhat.com/show_bug.cgi?id=769421 patch -Np1 -i ${srcdir}/glibc-2.15-revert-c5a0802a.patch - # revert optimized math routines that can cause crashes (FS#27736, FS#27743) - # obviously not a real fix... - patch -Np1 -i ${srcdir}/glibc-2.15-math64crash.patch + # Disable AVX in strcmp as this breaks Xen + # http://sourceware.org/bugzilla/show_bug.cgi?id=13583 + patch -Np1 -i ${srcdir}/glibc-2.15-strcmp-disable-avx.patch + + # "revert" optimized math routines that can cause crashes (FS#27736, FS#27743) + # http://sourceware.org/bugzilla/show_bug.cgi?id=13618 + rm sysdeps/x86_64/fpu/multiarch/* cd ${srcdir} mkdir glibc-build diff --git a/multilib-testing/lib32-glibc/glibc-2.15-regex.patch b/multilib-testing/lib32-glibc/glibc-2.15-regex.patch new file mode 100644 index 000000000..6385f2c08 --- /dev/null +++ b/multilib-testing/lib32-glibc/glibc-2.15-regex.patch @@ -0,0 +1,16 @@ +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/multilib-testing/lib32-glibc/glibc-2.15-strcmp-disable-avx.patch b/multilib-testing/lib32-glibc/glibc-2.15-strcmp-disable-avx.patch new file mode 100644 index 000000000..7f1f5b8f2 --- /dev/null +++ b/multilib-testing/lib32-glibc/glibc-2.15-strcmp-disable-avx.patch @@ -0,0 +1,48 @@ +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; \ |