From 3d2b48fb7a7b958575714d1d3ca180c53aeb8604 Mon Sep 17 00:00:00 2001 From: Chris Packham Date: Tue, 21 Sep 2021 19:56:07 +1200 Subject: glibc: Remove obsolete versions The following versions were marked obsolete in crosstool-ng-1.24.0, remove them. - glibc-linaro-2.20-2014.11 - glibc-2.12.2 - glibc-2.13 - glibc-2.14.1 - glibc-2.15 - glibc-2.16.0 - glibc-2.18 - glibc-2.20 - glibc-2.21 - glibc-2.22 Signed-off-by: Chris Packham diff --git a/packages/glibc-linaro/2.20-2014.11/0000-sparc-nptl.patch b/packages/glibc-linaro/2.20-2014.11/0000-sparc-nptl.patch deleted file mode 100644 index 4c5a10e..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0000-sparc-nptl.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- - sysdeps/sparc/sparc32/sem_trywait.c | 1 + - 1 file changed, 1 insertion(+) - ---- a/sysdeps/sparc/sparc32/sem_trywait.c -+++ b/sysdeps/sparc/sparc32/sem_trywait.c -@@ -22,6 +22,7 @@ - #include - #include - #include -+#include - - #include - diff --git a/packages/glibc-linaro/2.20-2014.11/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch b/packages/glibc-linaro/2.20-2014.11/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch deleted file mode 100644 index d92014e..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch +++ /dev/null @@ -1,75 +0,0 @@ -From df1cf48777fe4cd81ad7fb09ecbe5b31432b7c1c Mon Sep 17 00:00:00 2001 -From: Yvan Roux -Date: Fri, 15 Apr 2016 13:29:26 +0200 -Subject: [PATCH] Suppress GCC 6 warning about ambiguous 'else' with - -Wparentheses - ---- - nis/nis_call.c | 20 +++++++++++--------- - stdlib/setenv.c | 24 +++++++++++++----------- - 2 files changed, 24 insertions(+), 20 deletions(-) - ---- a/nis/nis_call.c -+++ b/nis/nis_call.c -@@ -680,16 +680,18 @@ - /* Choose which entry should be evicted from the cache. */ - loc = &nis_server_cache[0]; - if (*loc != NULL) -- for (i = 1; i < 16; ++i) -- if (nis_server_cache[i] == NULL) -- { -+ { -+ for (i = 1; i < 16; ++i) -+ if (nis_server_cache[i] == NULL) -+ { -+ loc = &nis_server_cache[i]; -+ break; -+ } -+ else if ((*loc)->uses > nis_server_cache[i]->uses -+ || ((*loc)->uses == nis_server_cache[i]->uses -+ && (*loc)->expires > nis_server_cache[i]->expires)) - loc = &nis_server_cache[i]; -- break; -- } -- else if ((*loc)->uses > nis_server_cache[i]->uses -- || ((*loc)->uses == nis_server_cache[i]->uses -- && (*loc)->expires > nis_server_cache[i]->expires)) -- loc = &nis_server_cache[i]; -+ } - old = *loc; - *loc = new; - ---- a/stdlib/setenv.c -+++ b/stdlib/setenv.c -@@ -262,18 +262,20 @@ - ep = __environ; - if (ep != NULL) - while (*ep != NULL) -- if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -- { -- /* Found it. Remove this pointer by moving later ones back. */ -- char **dp = ep; -+ { -+ if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -+ { -+ /* Found it. Remove this pointer by moving later ones back. */ -+ char **dp = ep; - -- do -- dp[0] = dp[1]; -- while (*dp++); -- /* Continue the loop in case NAME appears again. */ -- } -- else -- ++ep; -+ do -+ dp[0] = dp[1]; -+ while (*dp++); -+ /* Continue the loop in case NAME appears again. */ -+ } -+ else -+ ++ep; -+ } - - UNLOCK; - diff --git a/packages/glibc-linaro/2.20-2014.11/0002-fix-signed-shift-overlow.patch b/packages/glibc-linaro/2.20-2014.11/0002-fix-signed-shift-overlow.patch deleted file mode 100644 index c7cc330..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0002-fix-signed-shift-overlow.patch +++ /dev/null @@ -1,97 +0,0 @@ -commit 5542236837c5c41435f8282ec92799f480c36f18 -Author: Paul Eggert -Date: Tue Jul 21 22:50:29 2015 -0700 - - Port the 0x7efe...feff pattern to GCC 6. - - See Steve Ellcey's bug report in: - https://sourceware.org/ml/libc-alpha/2015-07/msg00673.html - * string/memrchr.c (MEMRCHR): - * string/rawmemchr.c (RAWMEMCHR): - * string/strchr.c (strchr): - * string/strchrnul.c (STRCHRNUL): - Rewrite code to avoid issues with signed shift overflow. - ---- - string/memrchr.c | 11 ++--------- - string/rawmemchr.c | 11 ++--------- - string/strchr.c | 9 ++------- - string/strchrnul.c | 9 ++------- - 4 files changed, 8 insertions(+), 32 deletions(-) - ---- a/string/memrchr.c -+++ b/string/memrchr.c -@@ -96,15 +96,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/rawmemchr.c -+++ b/string/rawmemchr.c -@@ -86,15 +86,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchr.c -+++ b/string/strchr.c -@@ -60,13 +60,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchrnul.c -+++ b/string/strchrnul.c -@@ -66,13 +66,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); diff --git a/packages/glibc-linaro/2.20-2014.11/0003-dl-openat64-variadic.patch b/packages/glibc-linaro/2.20-2014.11/0003-dl-openat64-variadic.patch deleted file mode 100644 index 552db12..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0003-dl-openat64-variadic.patch +++ /dev/null @@ -1,197 +0,0 @@ -commit 9dd346ff431fc761f1b748bd4da8bb59f7652094 -Author: Joseph Myers -Date: Tue Oct 20 11:54:09 2015 +0000 - - Convert 113 more function definitions to prototype style (files with assertions). - - This mostly automatically-generated patch converts 113 function - definitions in glibc from old-style K&R to prototype-style. Following - my other recent such patches, this one deals with the case of function - definitions in files that either contain assertions or where grep - suggested they might contain assertions - and thus where it isn't - possible to use a simple object code comparison as a sanity check on - the correctness of the patch, because line numbers are changed. - - A few such automatically-generated changes needed to be supplemented - by manual changes for the result to compile. openat64 had a prototype - declaration with "..." but an old-style definition in - sysdeps/unix/sysv/linux/dl-openat64.c, and "..." needed adding to the - generated prototype in the definition (I've filed - for diagnosing - such cases in GCC; the old state was undefined behavior not requiring - a diagnostic, but one seems a good idea). In addition, as Florian has - noted regparm attribute mismatches between declaration and definition - are only diagnosed for prototype definitions, and five functions - needed internal_function added to their definitions (in the case of - __pthread_mutex_cond_lock, via the macro definition of - __pthread_mutex_lock) to compile on i386. - - After this patch is in, remaining old-style definitions are probably - most readily fixed manually before we can turn on - -Wold-style-definition for all builds. - - Tested for x86_64 and x86 (testsuite). - - * crypt/md5-crypt.c (__md5_crypt_r): Convert to prototype-style - function definition. - * crypt/sha256-crypt.c (__sha256_crypt_r): Likewise. - * crypt/sha512-crypt.c (__sha512_crypt_r): Likewise. - * debug/backtracesyms.c (__backtrace_symbols): Likewise. - * elf/dl-minimal.c (_itoa): Likewise. - * hurd/hurdmalloc.c (malloc): Likewise. - (free): Likewise. - (realloc): Likewise. - * inet/inet6_option.c (inet6_option_space): Likewise. - (inet6_option_init): Likewise. - (inet6_option_append): Likewise. - (inet6_option_alloc): Likewise. - (inet6_option_next): Likewise. - (inet6_option_find): Likewise. - * io/ftw.c (FTW_NAME): Likewise. - (NFTW_NAME): Likewise. - (NFTW_NEW_NAME): Likewise. - (NFTW_OLD_NAME): Likewise. - * libio/iofwide.c (_IO_fwide): Likewise. - * libio/strops.c (_IO_str_init_static_internal): Likewise. - (_IO_str_init_static): Likewise. - (_IO_str_init_readonly): Likewise. - (_IO_str_overflow): Likewise. - (_IO_str_underflow): Likewise. - (_IO_str_count): Likewise. - (_IO_str_seekoff): Likewise. - (_IO_str_pbackfail): Likewise. - (_IO_str_finish): Likewise. - * libio/wstrops.c (_IO_wstr_init_static): Likewise. - (_IO_wstr_overflow): Likewise. - (_IO_wstr_underflow): Likewise. - (_IO_wstr_count): Likewise. - (_IO_wstr_seekoff): Likewise. - (_IO_wstr_pbackfail): Likewise. - (_IO_wstr_finish): Likewise. - * locale/programs/localedef.c (normalize_codeset): Likewise. - * locale/programs/locarchive.c (add_locale_to_archive): Likewise. - (add_locales_to_archive): Likewise. - (delete_locales_from_archive): Likewise. - * malloc/malloc.c (__libc_mallinfo): Likewise. - * math/gen-auto-libm-tests.c (init_fp_formats): Likewise. - * misc/tsearch.c (__tfind): Likewise. - * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Likewise. - * nptl/pthread_attr_getdetachstate.c - (__pthread_attr_getdetachstate): Likewise. - * nptl/pthread_attr_getguardsize.c (pthread_attr_getguardsize): - Likewise. - * nptl/pthread_attr_getinheritsched.c - (__pthread_attr_getinheritsched): Likewise. - * nptl/pthread_attr_getschedparam.c - (__pthread_attr_getschedparam): Likewise. - * nptl/pthread_attr_getschedpolicy.c - (__pthread_attr_getschedpolicy): Likewise. - * nptl/pthread_attr_getscope.c (__pthread_attr_getscope): - Likewise. - * nptl/pthread_attr_getstack.c (__pthread_attr_getstack): - Likewise. - * nptl/pthread_attr_getstackaddr.c (__pthread_attr_getstackaddr): - Likewise. - * nptl/pthread_attr_getstacksize.c (__pthread_attr_getstacksize): - Likewise. - * nptl/pthread_attr_init.c (__pthread_attr_init_2_1): Likewise. - (__pthread_attr_init_2_0): Likewise. - * nptl/pthread_attr_setdetachstate.c - (__pthread_attr_setdetachstate): Likewise. - * nptl/pthread_attr_setguardsize.c (pthread_attr_setguardsize): - Likewise. - * nptl/pthread_attr_setinheritsched.c - (__pthread_attr_setinheritsched): Likewise. - * nptl/pthread_attr_setschedparam.c - (__pthread_attr_setschedparam): Likewise. - * nptl/pthread_attr_setschedpolicy.c - (__pthread_attr_setschedpolicy): Likewise. - * nptl/pthread_attr_setscope.c (__pthread_attr_setscope): - Likewise. - * nptl/pthread_attr_setstack.c (__pthread_attr_setstack): - Likewise. - * nptl/pthread_attr_setstackaddr.c (__pthread_attr_setstackaddr): - Likewise. - * nptl/pthread_attr_setstacksize.c (__pthread_attr_setstacksize): - Likewise. - * nptl/pthread_condattr_setclock.c (pthread_condattr_setclock): - Likewise. - * nptl/pthread_create.c (__find_in_stack_list): Likewise. - * nptl/pthread_getattr_np.c (pthread_getattr_np): Likewise. - * nptl/pthread_mutex_cond_lock.c (__pthread_mutex_lock): Define to - use internal_function. - * nptl/pthread_mutex_init.c (__pthread_mutex_init): Convert to - prototype-style function definition. - * nptl/pthread_mutex_lock.c (__pthread_mutex_lock): Likewise. - (__pthread_mutex_cond_lock_adjust): Likewise. Use - internal_function. - * nptl/pthread_mutex_timedlock.c (pthread_mutex_timedlock): - Convert to prototype-style function definition. - * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): - Likewise. - * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_usercnt): - Likewise. - (__pthread_mutex_unlock): Likewise. - * nptl_db/td_ta_clear_event.c (td_ta_clear_event): Likewise. - * nptl_db/td_ta_set_event.c (td_ta_set_event): Likewise. - * nptl_db/td_thr_clear_event.c (td_thr_clear_event): Likewise. - * nptl_db/td_thr_event_enable.c (td_thr_event_enable): Likewise. - * nptl_db/td_thr_set_event.c (td_thr_set_event): Likewise. - * nss/makedb.c (process_input): Likewise. - * posix/fnmatch.c (__strchrnul): Likewise. - (__wcschrnul): Likewise. - (fnmatch): Likewise. - * posix/fnmatch_loop.c (FCT): Likewise. - * posix/glob.c (globfree): Likewise. - (__glob_pattern_type): Likewise. - (__glob_pattern_p): Likewise. - * posix/regcomp.c (re_compile_pattern): Likewise. - (re_set_syntax): Likewise. - (re_compile_fastmap): Likewise. - (regcomp): Likewise. - (regerror): Likewise. - (regfree): Likewise. - * posix/regexec.c (regexec): Likewise. - (re_match): Likewise. - (re_search): Likewise. - (re_match_2): Likewise. - (re_search_2): Likewise. - (re_search_stub): Likewise. Use internal_function - (re_copy_regs): Likewise. - (re_set_registers): Convert to prototype-style function - definition. - (prune_impossible_nodes): Likewise. Use internal_function. - * resolv/inet_net_pton.c (inet_net_pton): Convert to - prototype-style function definition. - (inet_net_pton_ipv4): Likewise. - * stdlib/strtod_l.c (____STRTOF_INTERNAL): Likewise. - * sysdeps/pthread/aio_cancel.c (aio_cancel): Likewise. - * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise. - * sysdeps/pthread/timer_delete.c (timer_delete): Likewise. - * sysdeps/unix/sysv/linux/dl-openat64.c (openat64): Likewise. - Make variadic. - * time/strptime_l.c (localtime_r): Convert to prototype-style - function definition. - * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Likewise. - * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Likewise. - * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Likewise. - * wcsmbs/wcsrtombs.c (__wcsrtombs): Likewise. - ---- - sysdeps/unix/sysv/linux/dl-openat64.c | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - ---- a/sysdeps/unix/sysv/linux/dl-openat64.c -+++ b/sysdeps/unix/sysv/linux/dl-openat64.c -@@ -23,10 +23,7 @@ - - - int --openat64 (dfd, file, oflag) -- int dfd; -- const char *file; -- int oflag; -+openat64 (int dfd, const char *file, int oflag, ...) - { - assert ((oflag & O_CREAT) == 0); - diff --git a/packages/glibc-linaro/2.20-2014.11/0004-unused-variables.patch b/packages/glibc-linaro/2.20-2014.11/0004-unused-variables.patch deleted file mode 100644 index 694bc61..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0004-unused-variables.patch +++ /dev/null @@ -1,171 +0,0 @@ -commit 6565fcb6e189d67b5a3f321453daebb805056d73 -Author: Wilco Dijkstra -Date: Fri Sep 18 20:27:20 2015 +0100 - - Fix several build failures with GCC6 due to unused static variables. - - 2015-09-18 Wilco Dijkstra - - * resolv/base64.c (rcsid): Remove unused static. - * sysdeps/ieee754/dbl-64/atnat2.h (qpi1): Remove unused - static. (tqpi1): Likewise. - * sysdeps/ieee754/dbl-64/uexp.h (one): Likewise. - * sysdeps/ieee754/dbl-64/upow.h (sqrt_2): Likewise. - * sysdeps/ieee754/flt-32/e_log10f.c (one): Likewise. - * sysdeps/ieee754/flt-32/s_cosf.c (one): Likewise. - * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (zero): Likewise. - * sysdeps/ieee754/ldbl-128/s_erfl.c (half): Likewise. - * sysdeps/ieee754/ldbl-128/s_log1pl.c (maxlog): Likewise. - * timezone/private.h (time_t_min): Likewise. (time_t_max): - Likewise. - ---- - resolv/base64.c | 4 ---- - sysdeps/ieee754/dbl-64/atnat2.h | 4 ---- - sysdeps/ieee754/dbl-64/uexp.h | 2 +- - sysdeps/ieee754/dbl-64/upow.h | 2 -- - sysdeps/ieee754/flt-32/e_log10f.c | 2 -- - sysdeps/ieee754/flt-32/s_cosf.c | 2 -- - sysdeps/ieee754/ldbl-128/e_lgammal_r.c | 1 - - sysdeps/ieee754/ldbl-128/s_erfl.c | 1 - - sysdeps/ieee754/ldbl-128/s_log1pl.c | 1 - - timezone/private.h | 10 ---------- - 10 files changed, 1 insertion(+), 28 deletions(-) - ---- a/resolv/base64.c -+++ b/resolv/base64.c -@@ -40,10 +40,6 @@ - * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. - */ - --#if !defined(LINT) && !defined(CODECENTER) --static const char rcsid[] = "$BINDId: base64.c,v 8.7 1999/10/13 16:39:33 vixie Exp $"; --#endif /* not lint */ -- - #include - #include - #include ---- a/sysdeps/ieee754/dbl-64/atnat2.h -+++ b/sysdeps/ieee754/dbl-64/atnat2.h -@@ -65,10 +65,8 @@ - /**/ hpi1 = {{0x3c91a626, 0x33145c07} }, /* pi/2-hpi */ - /**/ mhpi = {{0xbff921fb, 0x54442d18} }, /* -pi/2 */ - /**/ qpi = {{0x3fe921fb, 0x54442d18} }, /* pi/4 */ --/**/ qpi1 = {{0x3c81a626, 0x33145c07} }, /* pi/4-qpi */ - /**/ mqpi = {{0xbfe921fb, 0x54442d18} }, /* -pi/4 */ - /**/ tqpi = {{0x4002d97c, 0x7f3321d2} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x3c9a7939, 0x4c9e8a0a} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0xc002d97c, 0x7f3321d2} }, /* -3pi/4 */ - /**/ u1 = {{0x3c314c2a, 0x00000000} }, /* 9.377e-19 */ - /**/ u2 = {{0x3bf955e4, 0x00000000} }, /* 8.584e-20 */ -@@ -129,10 +127,8 @@ - /**/ hpi1 = {{0x33145c07, 0x3c91a626} }, /* pi/2-hpi */ - /**/ mhpi = {{0x54442d18, 0xbff921fb} }, /* -pi/2 */ - /**/ qpi = {{0x54442d18, 0x3fe921fb} }, /* pi/4 */ --/**/ qpi1 = {{0x33145c07, 0x3c81a626} }, /* pi/4-qpi */ - /**/ mqpi = {{0x54442d18, 0xbfe921fb} }, /* -pi/4 */ - /**/ tqpi = {{0x7f3321d2, 0x4002d97c} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x4c9e8a0a, 0x3c9a7939} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0x7f3321d2, 0xc002d97c} }, /* -3pi/4 */ - /**/ u1 = {{0x00000000, 0x3c314c2a} }, /* 9.377e-19 */ - /**/ u2 = {{0x00000000, 0x3bf955e4} }, /* 8.584e-20 */ ---- a/sysdeps/ieee754/dbl-64/uexp.h -+++ b/sysdeps/ieee754/dbl-64/uexp.h -@@ -29,7 +29,7 @@ - - #include "mydefs.h" - --const static double one = 1.0, zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, -+const static double zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, - err_0 = 1.000014, err_1 = 0.000016; - const static int4 bigint = 0x40862002, - badint = 0x40876000,smallint = 0x3C8fffff; ---- a/sysdeps/ieee754/dbl-64/upow.h -+++ b/sysdeps/ieee754/dbl-64/upow.h -@@ -34,7 +34,6 @@ - /**/ nZERO = {{0x80000000, 0}}, /* -0.0 */ - /**/ INF = {{0x7ff00000, 0x00000000}}, /* INF */ - /**/ nINF = {{0xfff00000, 0x00000000}}, /* -INF */ --/**/ sqrt_2 = {{0x3ff6a09e, 0x667f3bcc}}, /* sqrt(2) */ - /**/ ln2a = {{0x3fe62e42, 0xfefa3800}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x3d2ef357, 0x93c76730}}, /* ln(2)-ln2a */ - /**/ bigu = {{0x4297ffff, 0xfffffd2c}}, /* 1.5*2**42 -724*2**-10 */ -@@ -48,7 +47,6 @@ - /**/ nZERO = {{0, 0x80000000}}, /* -0.0 */ - /**/ INF = {{0x00000000, 0x7ff00000}}, /* INF */ - /**/ nINF = {{0x00000000, 0xfff00000}}, /* -INF */ --/**/ sqrt_2 = {{0x667f3bcc, 0x3ff6a09e}}, /* sqrt(2) */ - /**/ ln2a = {{0xfefa3800, 0x3fe62e42}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x93c76730, 0x3d2ef357}}, /* ln(2)-ln2a */ - /**/ bigu = {{0xfffffd2c, 0x4297ffff}}, /* 1.5*2**42 -724*2**-10 */ ---- a/sysdeps/ieee754/flt-32/e_log10f.c -+++ b/sysdeps/ieee754/flt-32/e_log10f.c -@@ -22,8 +22,6 @@ - log10_2hi = 3.0102920532e-01, /* 0x3e9a2080 */ - log10_2lo = 7.9034151668e-07; /* 0x355427db */ - --static const float zero = 0.0; -- - float - __ieee754_log10f(float x) - { ---- a/sysdeps/ieee754/flt-32/s_cosf.c -+++ b/sysdeps/ieee754/flt-32/s_cosf.c -@@ -21,8 +21,6 @@ - #include - #include - --static const float one=1.0; -- - #ifndef COSF - # define COSF_FUNC __cosf - #else ---- a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -+++ b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -@@ -74,7 +74,6 @@ - static const long double PIL = 3.1415926535897932384626433832795028841972E0L; - static const long double MAXLGM = 1.0485738685148938358098967157129705071571E4928L; - static const long double one = 1.0L; --static const long double zero = 0.0L; - static const long double huge = 1.0e4000L; - - /* log gamma(x) = ( x - 0.5 ) * log(x) - x + LS2PI + 1/x P(1/x^2) ---- a/sysdeps/ieee754/ldbl-128/s_erfl.c -+++ b/sysdeps/ieee754/ldbl-128/s_erfl.c -@@ -140,7 +140,6 @@ - - static const long double - tiny = 1e-4931L, -- half = 0.5L, - one = 1.0L, - two = 2.0L, - /* 2/sqrt(pi) - 1 */ ---- a/sysdeps/ieee754/ldbl-128/s_log1pl.c -+++ b/sysdeps/ieee754/ldbl-128/s_log1pl.c -@@ -116,7 +116,6 @@ - - static const long double sqrth = 0.7071067811865475244008443621048490392848L; - /* ln (2^16384 * (1 - 2^-113)) */ --static const long double maxlog = 1.1356523406294143949491931077970764891253E4L; - static const long double zero = 0.0L; - - long double ---- a/timezone/private.h -+++ b/timezone/private.h -@@ -326,16 +326,6 @@ - #define TYPE_SIGNED(type) (((type) -1) < 0) - #endif /* !defined TYPE_SIGNED */ - --/* The minimum and maximum finite time values. */ --static time_t const time_t_min = -- (TYPE_SIGNED(time_t) -- ? (time_t) -1 << (CHAR_BIT * sizeof (time_t) - 1) -- : 0); --static time_t const time_t_max = -- (TYPE_SIGNED(time_t) -- ? - (~ 0 < 0) - ((time_t) -1 << (CHAR_BIT * sizeof (time_t) - 1)) -- : -1); -- - #ifndef INT_STRLEN_MAXIMUM - /* - ** 302 / 1000 is log10(2.0) rounded up. diff --git a/packages/glibc-linaro/2.20-2014.11/0005-misleading-indentation.patch b/packages/glibc-linaro/2.20-2014.11/0005-misleading-indentation.patch deleted file mode 100644 index 8e08259..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0005-misleading-indentation.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 976ef870542580cf5fed896c2c652b3e1a95f9da -Author: Steve Ellcey -Date: Fri Dec 11 09:19:37 2015 -0800 - - Fix indentation. - - * sysdeps/ieee754/flt-32/k_rem_pio2f.c (__kernel_rem_pio2f): - Fix indentation. - ---- - sysdeps/ieee754/flt-32/k_rem_pio2f.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - ---- a/sysdeps/ieee754/flt-32/k_rem_pio2f.c -+++ b/sysdeps/ieee754/flt-32/k_rem_pio2f.c -@@ -65,7 +65,9 @@ - - /* compute q[0],q[1],...q[jk] */ - for (i=0;i<=jk;i++) { -- for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; q[i] = fw; -+ for(j=0,fw=0.0;j<=jx;j++) -+ fw += x[j]*f[jx+i-j]; -+ q[i] = fw; - } - - jz = jk; diff --git a/packages/glibc-linaro/2.20-2014.11/0006-dl-open-array-bounds.patch b/packages/glibc-linaro/2.20-2014.11/0006-dl-open-array-bounds.patch deleted file mode 100644 index 83eb0b3..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0006-dl-open-array-bounds.patch +++ /dev/null @@ -1,38 +0,0 @@ -commit 328c44c3670ebf6c1bd790acddce65a12998cd6c -Author: Roland McGrath -Date: Fri Apr 17 12:11:58 2015 -0700 - - Fuller check for invalid NSID in _dl_open. - ---- - elf/dl-open.c | 12 +++++++++--- - 1 file changed, 9 insertions(+), 3 deletions(-) - ---- a/elf/dl-open.c -+++ b/elf/dl-open.c -@@ -211,7 +211,7 @@ - struct link_map *l = _dl_find_dso_for_object ((ElfW(Addr)) caller_dlopen); - - if (l) -- call_map = l; -+ call_map = l; - - if (args->nsid == __LM_ID_CALLER) - args->nsid = call_map->l_ns; -@@ -627,8 +627,14 @@ - /* Never allow loading a DSO in a namespace which is empty. Such - direct placements is only causing problems. Also don't allow - loading into a namespace used for auditing. */ -- else if (__builtin_expect (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER, 0) -- && (GL(dl_ns)[nsid]._ns_nloaded == 0 -+ else if (__glibc_unlikely (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER) -+ && (__glibc_unlikely (nsid < 0 || nsid >= GL(dl_nns)) -+ /* This prevents the [NSID] index expressions from being -+ evaluated, so the compiler won't think that we are -+ accessing an invalid index here in the !SHARED case where -+ DL_NNS is 1 and so any NSID != 0 is invalid. */ -+ || DL_NNS == 1 -+ || GL(dl_ns)[nsid]._ns_nloaded == 0 - || GL(dl_ns)[nsid]._ns_loaded->l_auditing)) - _dl_signal_error (EINVAL, file, NULL, - N_("invalid target namespace in dlmopen()")); diff --git a/packages/glibc-linaro/2.20-2014.11/0007-Fix-combreloc-test-BSD-grep.patch b/packages/glibc-linaro/2.20-2014.11/0007-Fix-combreloc-test-BSD-grep.patch deleted file mode 100644 index f56a4ca..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0007-Fix-combreloc-test-BSD-grep.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 61d5f9c09b3157db76bd1a393e248c262a8d9dd4 Mon Sep 17 00:00:00 2001 -From: Alexey Neyman -Date: Wed, 8 Mar 2017 14:31:10 -0800 -Subject: [PATCH] Fix combreloc test with BSD grep - -The test for "-z combreloc" fails when cross-compiling on a machine -that uses BSD grep (e.g. on macos). grep complains about empty -subexpression and exits with non-zero status, which is interpreted -by configure as "not found". As a result, support for "-z combreloc" -(HAVE_Z_COMBRELOC) is not detected, leading to link failure on SPARC. - - * configure.ac: Avoid empty subexpression in grep. - -Signed-off-by: Alexey Neyman ---- - configure | 2 +- - configure.ac | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/configure -+++ b/configure -@@ -6025,7 +6025,7 @@ - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } - then -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no ---- a/configure.ac -+++ b/configure.ac -@@ -1397,7 +1397,7 @@ - dnl introducing new options this is not easily doable. Instead use a tool - dnl which always is cross-platform: readelf. To detect whether -z combreloc - dnl look for a section named .rel.dyn. -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/packages/glibc-linaro/2.20-2014.11/0008-fix-rpc_parse-format.patch b/packages/glibc-linaro/2.20-2014.11/0008-fix-rpc_parse-format.patch deleted file mode 100644 index 341d541..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0008-fix-rpc_parse-format.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 5874510faaf3cbd0bb112aaacab9f225002beed1 -Author: Joseph Myers -Date: Tue Nov 8 23:44:51 2016 +0000 - - Fix rpcgen buffer overrun (bug 20790). - - Building with GCC 7 produces an error building rpcgen: - - rpc_parse.c: In function 'get_prog_declaration': - rpc_parse.c:543:25: error: may write a terminating nul past the end of the destination [-Werror=format-length=] - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ~~~~^ - rpc_parse.c:543:5: note: format output between 5 and 14 bytes into a destination of size 10 - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - That buffer overrun is for the case where the .x file declares a - program with a million arguments. The strcpy two lines above can - generate a buffer overrun much more simply for a long argument name. - - The limit on length of line read by rpcgen (MAXLINESIZE == 1024) - provides a bound on the buffer size needed, so this patch just changes - the buffer size to MAXLINESIZE to avoid both possible buffer - overruns. A testcase is added that rpcgen does not crash with a - 500-character argument name, where it previously crashed. - - It would not at all surprise me if there are many other ways of - crashing rpcgen with either valid or invalid input; fuzz testing would - likely find various such bugs, though I don't think they are that - important to fix (rpcgen is not that likely to be used with untrusted - .x files as input). (As well as fuzz-findable bugs there are probably - also issues when various int variables get overflowed on very large - input.) The test infrastructure for rpcgen-not-crashing tests would - need extending if tests are to be added for cases where rpcgen should - produce an error, as opposed to cases where it should succeed. - - Tested for x86_64 and x86. - - [BZ #20790] - * sunrpc/rpc_parse.c (get_prog_declaration): Increase buffer size - to MAXLINESIZE. - * sunrpc/bug20790.x: New file. - * sunrpc/Makefile [$(run-built-tests) = yes] (rpcgen-tests): New - variable. - [$(run-built-tests) = yes] (tests-special): Add $(rpcgen-tests). - [$(run-built-tests) = yes] ($(rpcgen-tests)): New rule. - ---- - sunrpc/rpc_parse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sunrpc/rpc_parse.c -+++ b/sunrpc/rpc_parse.c -@@ -521,7 +521,7 @@ - get_prog_declaration (declaration * dec, defkind dkind, int num /* arg number */ ) - { - token tok; -- char name[10]; /* argument name */ -+ char name[MAXLINESIZE]; /* argument name */ - - if (dkind == DEF_PROGRAM) - { diff --git a/packages/glibc-linaro/2.20-2014.11/0009-explicit-boolean.patch b/packages/glibc-linaro/2.20-2014.11/0009-explicit-boolean.patch deleted file mode 100644 index ff7cd87..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0009-explicit-boolean.patch +++ /dev/null @@ -1,35 +0,0 @@ -commit e223d1fe72e820d96f43831412ab267a1ace04d0 -Author: steve ellcey-CA Eng-Software -Date: Fri Oct 14 12:53:27 2016 -0700 - - Fix warnings from latest GCC. - - * sysdeps/ieee754/dbl-64/e_pow.c (checkint) Make conditions explicitly - boolean. - ---- - sysdeps/ieee754/dbl-64/e_pow.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - ---- a/sysdeps/ieee754/dbl-64/e_pow.c -+++ b/sysdeps/ieee754/dbl-64/e_pow.c -@@ -462,15 +462,15 @@ - return (n & 1) ? -1 : 1; /* odd or even */ - if (k > 20) - { -- if (n << (k - 20)) -+ if (n << (k - 20) != 0) - return 0; /* if not integer */ -- return (n << (k - 21)) ? -1 : 1; -+ return (n << (k - 21) != 0) ? -1 : 1; - } - if (n) - return 0; /*if not integer */ - if (k == 20) - return (m & 1) ? -1 : 1; -- if (m << (k + 12)) -+ if (m << (k + 12) != 0) - return 0; -- return (m << (k + 11)) ? -1 : 1; -+ return (m << (k + 11) != 0) ? -1 : 1; - } diff --git a/packages/glibc-linaro/2.20-2014.11/0010-nis-bogus-conditional.patch b/packages/glibc-linaro/2.20-2014.11/0010-nis-bogus-conditional.patch deleted file mode 100644 index e728368..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0010-nis-bogus-conditional.patch +++ /dev/null @@ -1,64 +0,0 @@ -commit f88759ea9bd3c8d8fef28f123ba9767cb0e421a3 -Author: Joseph Myers -Date: Wed Dec 21 23:44:01 2016 +0000 - - Fix nss_nisplus build with mainline GCC (bug 20978). - - glibc build with current mainline GCC fails because - nis/nss_nisplus/nisplus-alias.c contains code - - if (name != NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; - } - - char buf[strlen (name) + 9 + tablename_len]; - - producing an error about strlen being called on a pointer that is - always NULL (and a subsequent use of that pointer with a %s format in - snprintf). - - As Andreas noted, the bogus conditional comes from a 1997 change: - - - if (name == NULL || strlen(name) > 8) - - return NSS_STATUS_NOTFOUND; - - else - + if (name != NULL || strlen(name) <= 8) - - So the intention is clearly to return an error for NULL name. - - This patch duly inverts the sense of the conditional. It fixes the - build with GCC mainline, and passes usual glibc testsuite testing for - x86_64. However, I have not tried any actual substantive nisplus - testing, do not have an environment for such testing, and do not know - whether it is possible that strlen (name) or tablename_len might be - large so that the VLA for buf is actually a security issue. However, - if it is a security issue, there are plenty of other similar instances - in the nisplus code (that haven't been hidden by a bogus comparison - with NULL) - and nis_table.c:__create_ib_request uses strdupa on the - string passed to nis_list, so a local fix in the caller wouldn't - suffice anyway (see bug 20987). (Calls to strdupa and other such - macros that use alloca must be considered equally questionable - regarding stack overflow issues as direct calls to alloca and VLA - declarations.) - - [BZ #20978] - * nis/nss_nisplus/nisplus-alias.c (_nss_nisplus_getaliasbyname_r): - Compare name == NULL, not name != NULL. - ---- - nis/nss_nisplus/nisplus-alias.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/nis/nss_nisplus/nisplus-alias.c -+++ b/nis/nss_nisplus/nisplus-alias.c -@@ -291,7 +291,7 @@ - return status; - } - -- if (name != NULL) -+ if (name == NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; diff --git a/packages/glibc-linaro/2.20-2014.11/0011-strftime-multiple-stmts.patch b/packages/glibc-linaro/2.20-2014.11/0011-strftime-multiple-stmts.patch deleted file mode 100644 index 0f97e7d..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0011-strftime-multiple-stmts.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb -Author: Joseph Myers -Date: Tue Jun 27 17:12:13 2017 +0000 - - Fix strftime build with GCC 8. - - Building with current GCC mainline fails with: - - strftime_l.c: In function '__strftime_internal': - strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros] - digits = d > width ? d : width; \ - ^ - strftime_l.c:1260:6: note: in expansion of macro 'DO_NUMBER' - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - ^~~~~~~~~ - strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this 'else' clause - else - ^~~~ - - In fact this particular instance is harmless; the code looks like: - - if (modifier == L_('O')) - goto bad_format; - else - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - - and because of the goto, it doesn't matter that part of the expansion - isn't under the "else" conditional. But it's also clearly bad style - to rely on that. This patch changes DO_NUMBER and DO_NUMBER_SPACEPAD - to use do { } while (0) to avoid such problems. - - Tested (full testsuite) for x86_64 (GCC 6), and with - build-many-glibcs.py with GCC mainline, in conjunction with my libgcc - patch . - - * time/strftime_l.c (DO_NUMBER): Define using do { } while (0). - (DO_NUMBER_SPACEPAD): Likewise. - ---- - time/strftime_l.c | 22 ++++++++++++++++------ - 1 file changed, 16 insertions(+), 6 deletions(-) - ---- a/time/strftime_l.c -+++ b/time/strftime_l.c -@@ -738,12 +738,22 @@ - format_char = *f; - switch (format_char) - { --#define DO_NUMBER(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number --#define DO_NUMBER_SPACEPAD(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number_spacepad -+#define DO_NUMBER(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number; \ -+ } \ -+ while (0) -+#define DO_NUMBER_SPACEPAD(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number_spacepad; \ -+ } \ -+ while (0) - - case L_('%'): - if (modifier != 0) diff --git a/packages/glibc-linaro/2.20-2014.11/0012-if_nametoindex-size-check.patch b/packages/glibc-linaro/2.20-2014.11/0012-if_nametoindex-size-check.patch deleted file mode 100644 index 7976fdd..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0012-if_nametoindex-size-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 2180fee114b778515b3f560e5ff1e795282e60b0 -Author: Steve Ellcey -Date: Wed Nov 15 08:58:48 2017 -0800 - - Check length of ifname before copying it into to ifreq structure. - - [BZ #22442] - * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): - Check if ifname is too long. - ---- - sysdeps/unix/sysv/linux/if_index.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/sysdeps/unix/sysv/linux/if_index.c -+++ b/sysdeps/unix/sysv/linux/if_index.c -@@ -43,6 +43,12 @@ - if (fd < 0) - return 0; - -+ if (strlen (ifname) >= IFNAMSIZ) -+ { -+ __set_errno (ENODEV); -+ return 0; -+ } -+ - strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name)); - if (__ioctl (fd, SIOCGIFINDEX, &ifr) < 0) - { diff --git a/packages/glibc-linaro/2.20-2014.11/0013-utmp-nonstring.patch b/packages/glibc-linaro/2.20-2014.11/0013-utmp-nonstring.patch deleted file mode 100644 index a4570fb..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0013-utmp-nonstring.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit 7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c -Author: Martin Sebor -Date: Wed Nov 15 17:39:59 2017 -0700 - - The -Wstringop-truncation option new in GCC 8 detects common misuses - of the strncat and strncpy function that may result in truncating - the copied string before the terminating NUL. To avoid false positive - warnings for correct code that intentionally creates sequences of - characters that aren't guaranteed to be NUL-terminated, arrays that - are intended to store such sequences should be decorated with a new - nonstring attribute. This change add this attribute to Glibc and - uses it to suppress such false positives. - - ChangeLog: - * misc/sys/cdefs.h (__attribute_nonstring__): New macro. - * sysdeps/gnu/bits/utmp.h (struct utmp): Use it. - * sysdeps/unix/sysv/linux/s390/bits/utmp.h (struct utmp): Same. - ---- - misc/sys/cdefs.h | 9 +++++++++ - sysdeps/gnu/bits/utmp.h | 9 ++++++--- - sysdeps/unix/sysv/linux/s390/bits/utmp.h | 9 ++++++--- - 3 files changed, 21 insertions(+), 6 deletions(-) - ---- a/misc/sys/cdefs.h -+++ b/misc/sys/cdefs.h -@@ -393,6 +393,15 @@ - # endif - #endif - -+#if __GNUC_PREREQ (8, 0) -+/* Describes a char array whose address can safely be passed as the first -+ argument to strncpy and strncat, as the char array is not necessarily -+ a NUL-terminated string. */ -+# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -+#else -+# define __attribute_nonstring__ -+#endif -+ - #include - - #if defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH ---- a/sysdeps/gnu/bits/utmp.h -+++ b/sysdeps/gnu/bits/utmp.h -@@ -59,10 +59,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled ---- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h -+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h -@@ -59,10 +59,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled diff --git a/packages/glibc-linaro/2.20-2014.11/0014-getlogin_r-use-strnlen.patch b/packages/glibc-linaro/2.20-2014.11/0014-getlogin_r-use-strnlen.patch deleted file mode 100644 index ff19964..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0014-getlogin_r-use-strnlen.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 4bae615022cb5a5da79ccda83cc6c9ba9f2d479c -Author: Joseph Myers -Date: Wed Nov 22 18:44:23 2017 +0000 - - Avoid use of strlen in getlogin_r (bug 22447). - - Building glibc with current mainline GCC fails, among other reasons, - because of an error for use of strlen on the nonstring ut_user field. - This patch changes the problem code in getlogin_r to use __strnlen - instead. It also needs to set the trailing NUL byte of the result - explicitly, because of the case where ut_user does not have such a - trailing NUL byte (but the result should always have one). - - Tested for x86_64. Also tested that, in conjunction with - , it fixes - the build for arm with mainline GCC. - - [BZ #22447] - * sysdeps/unix/getlogin_r.c (__getlogin_r): Use __strnlen not - strlen to compute length of ut_user and set trailing NUL byte of - result explicitly. - ---- - sysdeps/unix/getlogin_r.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - ---- a/sysdeps/unix/getlogin_r.c -+++ b/sysdeps/unix/getlogin_r.c -@@ -82,7 +82,7 @@ - - if (result == 0) - { -- size_t needed = strlen (ut->ut_user) + 1; -+ size_t needed = __strnlen (ut->ut_user, UT_NAMESIZE) + 1; - - if (needed > name_len) - { -@@ -91,7 +91,8 @@ - } - else - { -- memcpy (name, ut->ut_user, needed); -+ memcpy (name, ut->ut_user, needed - 1); -+ name[needed - 1] = 0; - result = 0; - } - } diff --git a/packages/glibc-linaro/2.20-2014.11/0015-zic.c-use-memcpy.patch b/packages/glibc-linaro/2.20-2014.11/0015-zic.c-use-memcpy.patch deleted file mode 100644 index ef768aa..0000000 --- a/packages/glibc-linaro/2.20-2014.11/0015-zic.c-use-memcpy.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit e69897bf202e18034cbef26f363bae64de70a196 -Author: Paul Eggert -Date: Sun Nov 12 22:00:28 2017 -0800 - - timezone: pacify GCC -Wstringop-truncation - - Problem reported by Martin Sebor in: - https://sourceware.org/ml/libc-alpha/2017-11/msg00336.html - * timezone/zic.c (writezone): Use memcpy, not strncpy. - ---- - timezone/zic.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/timezone/zic.c -+++ b/timezone/zic.c -@@ -1713,7 +1713,7 @@ - } - #define DO(field) ((void) fwrite(tzh.field, sizeof tzh.field, 1, fp)) - tzh = tzh0; -- (void) strncpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); -+ memcpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); - tzh.tzh_version[0] = version; - convert(thistypecnt, tzh.tzh_ttisgmtcnt); - convert(thistypecnt, tzh.tzh_ttisstdcnt); diff --git a/packages/glibc-linaro/2.20-2014.11/chksum b/packages/glibc-linaro/2.20-2014.11/chksum deleted file mode 100644 index 248160a..0000000 --- a/packages/glibc-linaro/2.20-2014.11/chksum +++ /dev/null @@ -1,4 +0,0 @@ -md5 glibc-linaro-2.20-2014.11.tar.xz ca2035b47d86856ffdd201ce2a12e60e -sha1 glibc-linaro-2.20-2014.11.tar.xz 3ca068cd6bbb9e61d0651faa19c462a4d1c41f84 -sha256 glibc-linaro-2.20-2014.11.tar.xz 2db756f9f9281f78443cd04fc544fc2d8bce38037d5f75c8284bd8b0ccf9c9ed -sha512 glibc-linaro-2.20-2014.11.tar.xz 79910b5f1a9b27519c24888253e644398b2da4789fd093fd800cfc5051322f26c38161edd602690647e2f9b9ab99f8cdde78c9e7d8513a4df584c05b19069e05 diff --git a/packages/glibc-linaro/2.20-2014.11/version.desc b/packages/glibc-linaro/2.20-2014.11/version.desc deleted file mode 100644 index fcfe389..0000000 --- a/packages/glibc-linaro/2.20-2014.11/version.desc +++ /dev/null @@ -1 +0,0 @@ -obsolete='yes' diff --git a/packages/glibc-linaro/package.desc b/packages/glibc-linaro/package.desc deleted file mode 100644 index ddf465a..0000000 --- a/packages/glibc-linaro/package.desc +++ /dev/null @@ -1,7 +0,0 @@ -master='glibc' -origin='Linaro' -repository='git https://git.linaro.org/toolchain/glibc.git' -relevantpattern='*|-' -mirrors='$(CT_Mirrors Linaro glibc ${CT_GLIBC_LINARO_VERSION})' -experimental='yes' -archive_formats='.tar.xz' diff --git a/packages/glibc/2.12.2/0000-Fix-combreloc-test-BSD-grep.patch b/packages/glibc/2.12.2/0000-Fix-combreloc-test-BSD-grep.patch deleted file mode 100644 index 0f85a50..0000000 --- a/packages/glibc/2.12.2/0000-Fix-combreloc-test-BSD-grep.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 61d5f9c09b3157db76bd1a393e248c262a8d9dd4 Mon Sep 17 00:00:00 2001 -From: Alexey Neyman -Date: Wed, 8 Mar 2017 14:31:10 -0800 -Subject: [PATCH] Fix combreloc test with BSD grep - -The test for "-z combreloc" fails when cross-compiling on a machine -that uses BSD grep (e.g. on macos). grep complains about empty -subexpression and exits with non-zero status, which is interpreted -by configure as "not found". As a result, support for "-z combreloc" -(HAVE_Z_COMBRELOC) is not detected, leading to link failure on SPARC. - - * configure.ac: Avoid empty subexpression in grep. - -Signed-off-by: Alexey Neyman ---- - configure | 2 +- - configure.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/configure -+++ b/configure -@@ -6710,7 +6710,7 @@ - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } - then -- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if readelf -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no ---- a/configure.in -+++ b/configure.in -@@ -1671,7 +1671,7 @@ - dnl introducing new options this is not easily doable. Instead use a tool - dnl which always is cross-platform: readelf. To detect whether -z combreloc - dnl look for a section named .rel.dyn. -- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if readelf -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/packages/glibc/2.12.2/0001-macos-cross-rpcgen.patch b/packages/glibc/2.12.2/0001-macos-cross-rpcgen.patch deleted file mode 100644 index 155b4f5..0000000 --- a/packages/glibc/2.12.2/0001-macos-cross-rpcgen.patch +++ /dev/null @@ -1,34 +0,0 @@ -commit ae7080d30c68cfa0c81ce3422dca948f64a94f50 -Author: Jia Liu -Date: Sat Sep 7 00:01:08 2013 +0800 - - sunrpc/rpc/types.h: fix OS X and FreeBSD build problems - - When I build arm-linux-gcc on OS X, I find glibc will get a build error - in sunrpc/rpc/types.h, so I add __APPLE_CC__ to make OS X build OK. - For FreeBSD, Add __FreeBSD__ to make it build OK, too. - - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00155.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00217.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00240.html - Signed-off-by: Jia Liu - Signed-off-by: Mike Frysinger - ---- - sunrpc/rpc/types.h | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/sunrpc/rpc/types.h -+++ b/sunrpc/rpc/types.h -@@ -68,6 +68,11 @@ - #include - #endif - -+#if defined __APPLE_CC__ || defined __FreeBSD__ -+# define __u_char_defined -+# define __daddr_t_defined -+#endif -+ - #ifndef __u_char_defined - typedef __u_char u_char; - typedef __u_short u_short; diff --git a/packages/glibc/2.12.2/0002-march-i686.patch b/packages/glibc/2.12.2/0002-march-i686.patch deleted file mode 100644 index e5ad2e0..0000000 --- a/packages/glibc/2.12.2/0002-march-i686.patch +++ /dev/null @@ -1,37 +0,0 @@ -2007-02-15 Khem Raj - - * sysdeps/unix/sysv/linux/i386/sysdep.h: Re-define __i686. - * nptl/sysdeps/pthread/pt-initfini.c: Ditto. - ---- - nptl/sysdeps/pthread/pt-initfini.c | 5 +++++ - sysdeps/unix/sysv/linux/i386/sysdep.h | 4 ++++ - 2 files changed, 9 insertions(+) - ---- a/nptl/sysdeps/pthread/pt-initfini.c -+++ b/nptl/sysdeps/pthread/pt-initfini.c -@@ -45,6 +45,11 @@ - /* Embed an #include to pull in the alignment and .end directives. */ - asm ("\n#include \"defs.h\""); - -+asm ("\n#if defined __i686 && defined __ASSEMBLER__"); -+asm ("\n#undef __i686"); -+asm ("\n#define __i686 __i686"); -+asm ("\n#endif"); -+ - /* The initial common code ends here. */ - asm ("\n/*@HEADER_ENDS*/"); - ---- a/sysdeps/unix/sysv/linux/i386/sysdep.h -+++ b/sysdeps/unix/sysv/linux/i386/sysdep.h -@@ -29,6 +29,10 @@ - #include - #include - -+#if defined __i686 && defined __ASSEMBLER__ -+#undef __i686 -+#define __i686 __i686 -+#endif - - /* For Linux we can use the system call table in the header file - /usr/include/asm/unistd.h diff --git a/packages/glibc/2.12.2/0003-typedef-caddr.patch b/packages/glibc/2.12.2/0003-typedef-caddr.patch deleted file mode 100644 index 5139bbd..0000000 --- a/packages/glibc/2.12.2/0003-typedef-caddr.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- - posix/sys/types.h | 3 +++ - sunrpc/rpc/types.h | 3 +++ - 2 files changed, 6 insertions(+) - ---- a/posix/sys/types.h -+++ b/posix/sys/types.h -@@ -114,7 +114,10 @@ - #ifdef __USE_BSD - # ifndef __daddr_t_defined - typedef __daddr_t daddr_t; -+# if ! defined(caddr_t) && ! defined(__caddr_t_defined) - typedef __caddr_t caddr_t; -+# define __caddr_t_defined -+# endif - # define __daddr_t_defined - # endif - #endif ---- a/sunrpc/rpc/types.h -+++ b/sunrpc/rpc/types.h -@@ -85,7 +85,10 @@ - #endif - #ifndef __daddr_t_defined - typedef __daddr_t daddr_t; -+# if ! defined(caddr_t) && ! defined(__caddr_t_defined) - typedef __caddr_t caddr_t; -+# define __caddr_t_defined -+# endif - # define __daddr_t_defined - #endif - diff --git a/packages/glibc/2.12.2/0004-fix-rpc_parse-format.patch b/packages/glibc/2.12.2/0004-fix-rpc_parse-format.patch deleted file mode 100644 index 906fb70..0000000 --- a/packages/glibc/2.12.2/0004-fix-rpc_parse-format.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 5874510faaf3cbd0bb112aaacab9f225002beed1 -Author: Joseph Myers -Date: Tue Nov 8 23:44:51 2016 +0000 - - Fix rpcgen buffer overrun (bug 20790). - - Building with GCC 7 produces an error building rpcgen: - - rpc_parse.c: In function 'get_prog_declaration': - rpc_parse.c:543:25: error: may write a terminating nul past the end of the destination [-Werror=format-length=] - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ~~~~^ - rpc_parse.c:543:5: note: format output between 5 and 14 bytes into a destination of size 10 - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - That buffer overrun is for the case where the .x file declares a - program with a million arguments. The strcpy two lines above can - generate a buffer overrun much more simply for a long argument name. - - The limit on length of line read by rpcgen (MAXLINESIZE == 1024) - provides a bound on the buffer size needed, so this patch just changes - the buffer size to MAXLINESIZE to avoid both possible buffer - overruns. A testcase is added that rpcgen does not crash with a - 500-character argument name, where it previously crashed. - - It would not at all surprise me if there are many other ways of - crashing rpcgen with either valid or invalid input; fuzz testing would - likely find various such bugs, though I don't think they are that - important to fix (rpcgen is not that likely to be used with untrusted - .x files as input). (As well as fuzz-findable bugs there are probably - also issues when various int variables get overflowed on very large - input.) The test infrastructure for rpcgen-not-crashing tests would - need extending if tests are to be added for cases where rpcgen should - produce an error, as opposed to cases where it should succeed. - - Tested for x86_64 and x86. - - [BZ #20790] - * sunrpc/rpc_parse.c (get_prog_declaration): Increase buffer size - to MAXLINESIZE. - * sunrpc/bug20790.x: New file. - * sunrpc/Makefile [$(run-built-tests) = yes] (rpcgen-tests): New - variable. - [$(run-built-tests) = yes] (tests-special): Add $(rpcgen-tests). - [$(run-built-tests) = yes] ($(rpcgen-tests)): New rule. - ---- - sunrpc/rpc_parse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sunrpc/rpc_parse.c -+++ b/sunrpc/rpc_parse.c -@@ -520,7 +520,7 @@ - get_prog_declaration (declaration * dec, defkind dkind, int num /* arg number */ ) - { - token tok; -- char name[10]; /* argument name */ -+ char name[MAXLINESIZE]; /* argument name */ - - if (dkind == DEF_PROGRAM) - { diff --git a/packages/glibc/2.12.2/0005-nis-bogus-conditional.patch b/packages/glibc/2.12.2/0005-nis-bogus-conditional.patch deleted file mode 100644 index 732b859..0000000 --- a/packages/glibc/2.12.2/0005-nis-bogus-conditional.patch +++ /dev/null @@ -1,64 +0,0 @@ -commit f88759ea9bd3c8d8fef28f123ba9767cb0e421a3 -Author: Joseph Myers -Date: Wed Dec 21 23:44:01 2016 +0000 - - Fix nss_nisplus build with mainline GCC (bug 20978). - - glibc build with current mainline GCC fails because - nis/nss_nisplus/nisplus-alias.c contains code - - if (name != NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; - } - - char buf[strlen (name) + 9 + tablename_len]; - - producing an error about strlen being called on a pointer that is - always NULL (and a subsequent use of that pointer with a %s format in - snprintf). - - As Andreas noted, the bogus conditional comes from a 1997 change: - - - if (name == NULL || strlen(name) > 8) - - return NSS_STATUS_NOTFOUND; - - else - + if (name != NULL || strlen(name) <= 8) - - So the intention is clearly to return an error for NULL name. - - This patch duly inverts the sense of the conditional. It fixes the - build with GCC mainline, and passes usual glibc testsuite testing for - x86_64. However, I have not tried any actual substantive nisplus - testing, do not have an environment for such testing, and do not know - whether it is possible that strlen (name) or tablename_len might be - large so that the VLA for buf is actually a security issue. However, - if it is a security issue, there are plenty of other similar instances - in the nisplus code (that haven't been hidden by a bogus comparison - with NULL) - and nis_table.c:__create_ib_request uses strdupa on the - string passed to nis_list, so a local fix in the caller wouldn't - suffice anyway (see bug 20987). (Calls to strdupa and other such - macros that use alloca must be considered equally questionable - regarding stack overflow issues as direct calls to alloca and VLA - declarations.) - - [BZ #20978] - * nis/nss_nisplus/nisplus-alias.c (_nss_nisplus_getaliasbyname_r): - Compare name == NULL, not name != NULL. - ---- - nis/nss_nisplus/nisplus-alias.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/nis/nss_nisplus/nisplus-alias.c -+++ b/nis/nss_nisplus/nisplus-alias.c -@@ -293,7 +293,7 @@ - return status; - } - -- if (name != NULL) -+ if (name == NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; diff --git a/packages/glibc/2.12.2/0006-obstack-common.patch b/packages/glibc/2.12.2/0006-obstack-common.patch deleted file mode 100644 index 1993be2..0000000 --- a/packages/glibc/2.12.2/0006-obstack-common.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit 39b1f6172a2f9ddc74a8f82d6e84dd13b22dbaf2 -Author: Peter Collingbourne -Date: Wed May 15 20:28:08 2013 +0200 - - Move _obstack_compat out of common - - it is impossible to create an alias of a common symbol (as - compat_symbol does), because common symbols do not have a section or - an offset until linked. GNU as tolerates aliases of common symbols by - simply creating another common symbol, but other assemblers (notably - LLVM's integrated assembler) are less tolerant. - - 2013-05-15 Peter Collingbourne - - * malloc/obstack.c (_obstack_compat): Add initializer. - - - ---- - malloc/obstack.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/malloc/obstack.c -+++ b/malloc/obstack.c -@@ -117,7 +117,7 @@ - /* A looong time ago (before 1994, anyway; we're not sure) this global variable - was used by non-GNU-C macros to avoid multiple evaluation. The GNU C - library still exports it because somebody might use it. */ --struct obstack *_obstack_compat; -+struct obstack *_obstack_compat = 0; - compat_symbol (libc, _obstack_compat, _obstack, GLIBC_2_0); - # endif - # endif diff --git a/packages/glibc/2.12.2/0007-new-tools.patch b/packages/glibc/2.12.2/0007-new-tools.patch deleted file mode 100644 index 693c9a1..0000000 --- a/packages/glibc/2.12.2/0007-new-tools.patch +++ /dev/null @@ -1,72 +0,0 @@ ---- - configure | 8 ++++---- - configure.in | 8 ++++---- - 2 files changed, 8 insertions(+), 8 deletions(-) - ---- a/configure -+++ b/configure -@@ -5189,7 +5189,7 @@ - ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.4* | 4.[0-9]* ) -+ 3.4* | [4-9].* | [1-9][0-9]* ) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5252,7 +5252,7 @@ - ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.79* | 3.[89]*) -+ 3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5379,7 +5379,7 @@ - ac_prog_version=`$MAKEINFO --version 2>&1 | sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 4.*) -+ [4-9].*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5439,7 +5439,7 @@ - # Found it, now check the version. - { $as_echo "$as_me:$LINENO: checking version of $SED" >&5 - $as_echo_n "checking version of $SED... " >&6; } -- ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed version \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed[^0-9]* \([0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; - 3.0[2-9]*|3.[1-9]*|[4-9]*) ---- a/configure.in -+++ b/configure.in -@@ -1026,11 +1026,11 @@ - # These programs are version sensitive. - AC_CHECK_TOOL_PREFIX - AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v, -- [version \([egcygnustpi-]*[0-9.]*\)], [3.4* | 4.[0-9]* ], -+ [version \([egcygnustpi-]*[0-9.]*\)], [3.4* | [4-9].* | [1-9][0-9].* ], - critic_missing="$critic_missing gcc") - AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version, - [GNU Make[^0-9]*\([0-9][0-9.]*\)], -- [3.79* | 3.[89]*], critic_missing="$critic_missing make") -+ [3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*], critic_missing="$critic_missing make") - - AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version, - [GNU gettext.* \([0-9]*\.[0-9.]*\)], -@@ -1038,10 +1038,10 @@ - MSGFMT=: aux_missing="$aux_missing msgfmt") - AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version, - [GNU texinfo.* \([0-9][0-9.]*\)], -- [4.*], -+ [[4-9].*], - MAKEINFO=: aux_missing="$aux_missing makeinfo") - AC_CHECK_PROG_VER(SED, sed, --version, -- [GNU sed version \([0-9]*\.[0-9.]*\)], -+ [GNU sed[^0-9]* \([0-9]*\.[0-9.]*\)], - [3.0[2-9]*|3.[1-9]*|[4-9]*], - SED=: aux_missing="$aux_missing sed") - diff --git a/packages/glibc/2.12.2/0008-strftime-multiple-stmts.patch b/packages/glibc/2.12.2/0008-strftime-multiple-stmts.patch deleted file mode 100644 index e544b33..0000000 --- a/packages/glibc/2.12.2/0008-strftime-multiple-stmts.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb -Author: Joseph Myers -Date: Tue Jun 27 17:12:13 2017 +0000 - - Fix strftime build with GCC 8. - - Building with current GCC mainline fails with: - - strftime_l.c: In function '__strftime_internal': - strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros] - digits = d > width ? d : width; \ - ^ - strftime_l.c:1260:6: note: in expansion of macro 'DO_NUMBER' - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - ^~~~~~~~~ - strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this 'else' clause - else - ^~~~ - - In fact this particular instance is harmless; the code looks like: - - if (modifier == L_('O')) - goto bad_format; - else - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - - and because of the goto, it doesn't matter that part of the expansion - isn't under the "else" conditional. But it's also clearly bad style - to rely on that. This patch changes DO_NUMBER and DO_NUMBER_SPACEPAD - to use do { } while (0) to avoid such problems. - - Tested (full testsuite) for x86_64 (GCC 6), and with - build-many-glibcs.py with GCC mainline, in conjunction with my libgcc - patch . - - * time/strftime_l.c (DO_NUMBER): Define using do { } while (0). - (DO_NUMBER_SPACEPAD): Likewise. - ---- - time/strftime_l.c | 22 ++++++++++++++++------ - 1 file changed, 16 insertions(+), 6 deletions(-) - ---- a/time/strftime_l.c -+++ b/time/strftime_l.c -@@ -742,12 +742,22 @@ - format_char = *f; - switch (format_char) - { --#define DO_NUMBER(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number --#define DO_NUMBER_SPACEPAD(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number_spacepad -+#define DO_NUMBER(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number; \ -+ } \ -+ while (0) -+#define DO_NUMBER_SPACEPAD(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number_spacepad; \ -+ } \ -+ while (0) - - case L_('%'): - if (modifier != 0) diff --git a/packages/glibc/2.12.2/0009-if_nametoindex-size-check.patch b/packages/glibc/2.12.2/0009-if_nametoindex-size-check.patch deleted file mode 100644 index 5803db5..0000000 --- a/packages/glibc/2.12.2/0009-if_nametoindex-size-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 2180fee114b778515b3f560e5ff1e795282e60b0 -Author: Steve Ellcey -Date: Wed Nov 15 08:58:48 2017 -0800 - - Check length of ifname before copying it into to ifreq structure. - - [BZ #22442] - * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): - Check if ifname is too long. - ---- - sysdeps/unix/sysv/linux/if_index.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/sysdeps/unix/sysv/linux/if_index.c -+++ b/sysdeps/unix/sysv/linux/if_index.c -@@ -54,6 +54,12 @@ - if (fd < 0) - return 0; - -+ if (strlen (ifname) >= IFNAMSIZ) -+ { -+ __set_errno (ENODEV); -+ return 0; -+ } -+ - strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name)); - if (__ioctl (fd, SIOCGIFINDEX, &ifr) < 0) - { diff --git a/packages/glibc/2.12.2/0010-utmp-nonstring.patch b/packages/glibc/2.12.2/0010-utmp-nonstring.patch deleted file mode 100644 index b789724..0000000 --- a/packages/glibc/2.12.2/0010-utmp-nonstring.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit 7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c -Author: Martin Sebor -Date: Wed Nov 15 17:39:59 2017 -0700 - - The -Wstringop-truncation option new in GCC 8 detects common misuses - of the strncat and strncpy function that may result in truncating - the copied string before the terminating NUL. To avoid false positive - warnings for correct code that intentionally creates sequences of - characters that aren't guaranteed to be NUL-terminated, arrays that - are intended to store such sequences should be decorated with a new - nonstring attribute. This change add this attribute to Glibc and - uses it to suppress such false positives. - - ChangeLog: - * misc/sys/cdefs.h (__attribute_nonstring__): New macro. - * sysdeps/gnu/bits/utmp.h (struct utmp): Use it. - * sysdeps/unix/sysv/linux/s390/bits/utmp.h (struct utmp): Same. - ---- - misc/sys/cdefs.h | 9 +++++++++ - sysdeps/gnu/bits/utmp.h | 9 ++++++--- - sysdeps/unix/sysv/linux/s390/bits/utmp.h | 9 ++++++--- - 3 files changed, 21 insertions(+), 6 deletions(-) - ---- a/misc/sys/cdefs.h -+++ b/misc/sys/cdefs.h -@@ -350,6 +350,15 @@ - # endif - #endif - -+#if __GNUC_PREREQ (8, 0) -+/* Describes a char array whose address can safely be passed as the first -+ argument to strncpy and strncat, as the char array is not necessarily -+ a NUL-terminated string. */ -+# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -+#else -+# define __attribute_nonstring__ -+#endif -+ - #include - - #if defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH ---- a/sysdeps/gnu/bits/utmp.h -+++ b/sysdeps/gnu/bits/utmp.h -@@ -61,10 +61,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled ---- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h -+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h -@@ -61,10 +61,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled diff --git a/packages/glibc/2.12.2/0011-getlogin_r-use-strnlen.patch b/packages/glibc/2.12.2/0011-getlogin_r-use-strnlen.patch deleted file mode 100644 index 15a16bd..0000000 --- a/packages/glibc/2.12.2/0011-getlogin_r-use-strnlen.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 4bae615022cb5a5da79ccda83cc6c9ba9f2d479c -Author: Joseph Myers -Date: Wed Nov 22 18:44:23 2017 +0000 - - Avoid use of strlen in getlogin_r (bug 22447). - - Building glibc with current mainline GCC fails, among other reasons, - because of an error for use of strlen on the nonstring ut_user field. - This patch changes the problem code in getlogin_r to use __strnlen - instead. It also needs to set the trailing NUL byte of the result - explicitly, because of the case where ut_user does not have such a - trailing NUL byte (but the result should always have one). - - Tested for x86_64. Also tested that, in conjunction with - , it fixes - the build for arm with mainline GCC. - - [BZ #22447] - * sysdeps/unix/getlogin_r.c (__getlogin_r): Use __strnlen not - strlen to compute length of ut_user and set trailing NUL byte of - result explicitly. - ---- - sysdeps/unix/getlogin_r.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - ---- a/sysdeps/unix/getlogin_r.c -+++ b/sysdeps/unix/getlogin_r.c -@@ -83,7 +83,7 @@ - - if (result == 0) - { -- size_t needed = strlen (ut->ut_user) + 1; -+ size_t needed = __strnlen (ut->ut_user, UT_NAMESIZE) + 1; - - if (needed > name_len) - { -@@ -92,7 +92,8 @@ - } - else - { -- memcpy (name, ut->ut_user, needed); -+ memcpy (name, ut->ut_user, needed - 1); -+ name[needed - 1] = 0; - result = 0; - } - } diff --git a/packages/glibc/2.12.2/0012-zic.c-use-memcpy.patch b/packages/glibc/2.12.2/0012-zic.c-use-memcpy.patch deleted file mode 100644 index 4c89446..0000000 --- a/packages/glibc/2.12.2/0012-zic.c-use-memcpy.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit e69897bf202e18034cbef26f363bae64de70a196 -Author: Paul Eggert -Date: Sun Nov 12 22:00:28 2017 -0800 - - timezone: pacify GCC -Wstringop-truncation - - Problem reported by Martin Sebor in: - https://sourceware.org/ml/libc-alpha/2017-11/msg00336.html - * timezone/zic.c (writezone): Use memcpy, not strncpy. - ---- - timezone/zic.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/timezone/zic.c -+++ b/timezone/zic.c -@@ -1648,7 +1648,7 @@ - #define DO(field) (void) fwrite((void *) tzh.field, \ - (size_t) sizeof tzh.field, (size_t) 1, fp) - tzh = tzh0; -- (void) strncpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); -+ memcpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); - tzh.tzh_version[0] = ZIC_VERSION; - convert(eitol(thistypecnt), tzh.tzh_ttisgmtcnt); - convert(eitol(thistypecnt), tzh.tzh_ttisstdcnt); diff --git a/packages/glibc/2.12.2/chksum b/packages/glibc/2.12.2/chksum deleted file mode 100644 index f30fb40..0000000 --- a/packages/glibc/2.12.2/chksum +++ /dev/null @@ -1,12 +0,0 @@ -md5 glibc-2.12.2.tar.xz e0043f4f8e1aa61acc62fdf0f4d6133d -sha1 glibc-2.12.2.tar.xz 1602bb3647e71747595a72fde059fce0a5ba04ec -sha256 glibc-2.12.2.tar.xz 0eb4fdf7301a59d3822194f20a2782858955291dd93be264b8b8d4d56f87203f -sha512 glibc-2.12.2.tar.xz efc1c9c3e10bb2d7d7a8529796961bf41406128132b71af2225d327317ea61438f3b19084099e15b4208b35388228640f6c7a21a807abd87ffec795248a6c306 -md5 glibc-2.12.2.tar.bz2 903fcfa547df2f453476800e0838fe52 -sha1 glibc-2.12.2.tar.bz2 3ef6d36eee2dc7c4351f215f689e6a04c161a35e -sha256 glibc-2.12.2.tar.bz2 22f8eb3c49b9eb5e88fc249daf8670899adef24eb1f74708fb150a6502fa1216 -sha512 glibc-2.12.2.tar.bz2 8197ece913e572ce3f7dfa0a33d520418aea2d8b85ccda3100118bca9f650e21fb7a8d14b1b4a5587a252c07e70c6fe85f84605a0be9dec649e92d6028979c40 -md5 glibc-2.12.2.tar.gz 49a8a5a74b624dcd15ec1689ede7e062 -sha1 glibc-2.12.2.tar.gz 738ac9b88a7e89e2a9a419db13af8ee12a38f192 -sha256 glibc-2.12.2.tar.gz 6b7392a7b339a3f2db6e4bc8d5418cf29116d9e7e36b313e845cb65e449c5346 -sha512 glibc-2.12.2.tar.gz a2e11c9824bf975b0c14c2d48f2bdbfb69a54b6c43760cf19babea187771e8d848d03e54f68be2d22074405d192ff2cc459c09a04db6779ab593ce67854a9ce9 diff --git a/packages/glibc/2.12.2/version.desc b/packages/glibc/2.12.2/version.desc deleted file mode 100644 index fcfe389..0000000 --- a/packages/glibc/2.12.2/version.desc +++ /dev/null @@ -1 +0,0 @@ -obsolete='yes' diff --git a/packages/glibc/2.13/0000-respect-env-CPPFLAGS.patch b/packages/glibc/2.13/0000-respect-env-CPPFLAGS.patch deleted file mode 100644 index 9966a27..0000000 --- a/packages/glibc/2.13/0000-respect-env-CPPFLAGS.patch +++ /dev/null @@ -1,17 +0,0 @@ -Respect environment CPPFLAGS when we run ./configure so we can inject -random -D things without having to set CFLAGS/ASFLAGS - ---- - Makeconfig | 1 + - 1 file changed, 1 insertion(+) - ---- a/Makeconfig -+++ b/Makeconfig -@@ -697,6 +697,7 @@ - $(foreach lib,$(libof-$(basename $(@F))) \ - $(libof-$( -Date: Fri, 15 Apr 2016 13:29:26 +0200 -Subject: [PATCH] Suppress GCC 6 warning about ambiguous 'else' with - -Wparentheses - ---- - nis/nis_call.c | 20 +++++++++++--------- - stdlib/setenv.c | 24 +++++++++++++----------- - 2 files changed, 24 insertions(+), 20 deletions(-) - ---- a/nis/nis_call.c -+++ b/nis/nis_call.c -@@ -682,16 +682,18 @@ - /* Choose which entry should be evicted from the cache. */ - loc = &nis_server_cache[0]; - if (*loc != NULL) -- for (i = 1; i < 16; ++i) -- if (nis_server_cache[i] == NULL) -- { -+ { -+ for (i = 1; i < 16; ++i) -+ if (nis_server_cache[i] == NULL) -+ { -+ loc = &nis_server_cache[i]; -+ break; -+ } -+ else if ((*loc)->uses > nis_server_cache[i]->uses -+ || ((*loc)->uses == nis_server_cache[i]->uses -+ && (*loc)->expires > nis_server_cache[i]->expires)) - loc = &nis_server_cache[i]; -- break; -- } -- else if ((*loc)->uses > nis_server_cache[i]->uses -- || ((*loc)->uses == nis_server_cache[i]->uses -- && (*loc)->expires > nis_server_cache[i]->expires)) -- loc = &nis_server_cache[i]; -+ } - old = *loc; - *loc = new; - ---- a/stdlib/setenv.c -+++ b/stdlib/setenv.c -@@ -328,18 +328,20 @@ - ep = __environ; - if (ep != NULL) - while (*ep != NULL) -- if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -- { -- /* Found it. Remove this pointer by moving later ones back. */ -- char **dp = ep; -+ { -+ if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -+ { -+ /* Found it. Remove this pointer by moving later ones back. */ -+ char **dp = ep; - -- do -- dp[0] = dp[1]; -- while (*dp++); -- /* Continue the loop in case NAME appears again. */ -- } -- else -- ++ep; -+ do -+ dp[0] = dp[1]; -+ while (*dp++); -+ /* Continue the loop in case NAME appears again. */ -+ } -+ else -+ ++ep; -+ } - - UNLOCK; - diff --git a/packages/glibc/2.13/0002-fix-signed-shift-overlow.patch b/packages/glibc/2.13/0002-fix-signed-shift-overlow.patch deleted file mode 100644 index 5f76afe..0000000 --- a/packages/glibc/2.13/0002-fix-signed-shift-overlow.patch +++ /dev/null @@ -1,97 +0,0 @@ -commit 5542236837c5c41435f8282ec92799f480c36f18 -Author: Paul Eggert -Date: Tue Jul 21 22:50:29 2015 -0700 - - Port the 0x7efe...feff pattern to GCC 6. - - See Steve Ellcey's bug report in: - https://sourceware.org/ml/libc-alpha/2015-07/msg00673.html - * string/memrchr.c (MEMRCHR): - * string/rawmemchr.c (RAWMEMCHR): - * string/strchr.c (strchr): - * string/strchrnul.c (STRCHRNUL): - Rewrite code to avoid issues with signed shift overflow. - ---- - string/memrchr.c | 11 ++--------- - string/rawmemchr.c | 11 ++--------- - string/strchr.c | 9 ++------- - string/strchrnul.c | 9 ++------- - 4 files changed, 8 insertions(+), 32 deletions(-) - ---- a/string/memrchr.c -+++ b/string/memrchr.c -@@ -98,15 +98,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/rawmemchr.c -+++ b/string/rawmemchr.c -@@ -90,15 +90,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchr.c -+++ b/string/strchr.c -@@ -65,13 +65,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchrnul.c -+++ b/string/strchrnul.c -@@ -63,13 +63,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); diff --git a/packages/glibc/2.13/0003-unused-variables.patch b/packages/glibc/2.13/0003-unused-variables.patch deleted file mode 100644 index 18adb17..0000000 --- a/packages/glibc/2.13/0003-unused-variables.patch +++ /dev/null @@ -1,159 +0,0 @@ -commit 6565fcb6e189d67b5a3f321453daebb805056d73 -Author: Wilco Dijkstra -Date: Fri Sep 18 20:27:20 2015 +0100 - - Fix several build failures with GCC6 due to unused static variables. - - 2015-09-18 Wilco Dijkstra - - * resolv/base64.c (rcsid): Remove unused static. - * sysdeps/ieee754/dbl-64/atnat2.h (qpi1): Remove unused - static. (tqpi1): Likewise. - * sysdeps/ieee754/dbl-64/uexp.h (one): Likewise. - * sysdeps/ieee754/dbl-64/upow.h (sqrt_2): Likewise. - * sysdeps/ieee754/flt-32/e_log10f.c (one): Likewise. - * sysdeps/ieee754/flt-32/s_cosf.c (one): Likewise. - * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (zero): Likewise. - * sysdeps/ieee754/ldbl-128/s_erfl.c (half): Likewise. - * sysdeps/ieee754/ldbl-128/s_log1pl.c (maxlog): Likewise. - * timezone/private.h (time_t_min): Likewise. (time_t_max): - Likewise. - ---- - resolv/base64.c | 4 ---- - sysdeps/ieee754/dbl-64/atnat2.h | 4 ---- - sysdeps/ieee754/dbl-64/uexp.h | 2 +- - sysdeps/ieee754/dbl-64/upow.h | 2 -- - sysdeps/ieee754/flt-32/e_log10f.c | 6 ------ - sysdeps/ieee754/flt-32/s_cosf.c | 6 ------ - sysdeps/ieee754/ldbl-128/e_lgammal_r.c | 1 - - sysdeps/ieee754/ldbl-128/s_erfl.c | 1 - - sysdeps/ieee754/ldbl-128/s_log1pl.c | 1 - - 9 files changed, 1 insertion(+), 26 deletions(-) - ---- a/resolv/base64.c -+++ b/resolv/base64.c -@@ -40,10 +40,6 @@ - * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. - */ - --#if !defined(LINT) && !defined(CODECENTER) --static const char rcsid[] = "$BINDId: base64.c,v 8.7 1999/10/13 16:39:33 vixie Exp $"; --#endif /* not lint */ -- - #include - #include - #include ---- a/sysdeps/ieee754/dbl-64/atnat2.h -+++ b/sysdeps/ieee754/dbl-64/atnat2.h -@@ -69,10 +69,8 @@ - /**/ hpi1 = {{0x3c91a626, 0x33145c07} }, /* pi/2-hpi */ - /**/ mhpi = {{0xbff921fb, 0x54442d18} }, /* -pi/2 */ - /**/ qpi = {{0x3fe921fb, 0x54442d18} }, /* pi/4 */ --/**/ qpi1 = {{0x3c81a626, 0x33145c07} }, /* pi/4-qpi */ - /**/ mqpi = {{0xbfe921fb, 0x54442d18} }, /* -pi/4 */ - /**/ tqpi = {{0x4002d97c, 0x7f3321d2} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x3c9a7939, 0x4c9e8a0a} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0xc002d97c, 0x7f3321d2} }, /* -3pi/4 */ - /**/ u1 = {{0x3c314c2a, 0x00000000} }, /* 9.377e-19 */ - /**/ u2 = {{0x3bf955e4, 0x00000000} }, /* 8.584e-20 */ -@@ -139,10 +137,8 @@ - /**/ hpi1 = {{0x33145c07, 0x3c91a626} }, /* pi/2-hpi */ - /**/ mhpi = {{0x54442d18, 0xbff921fb} }, /* -pi/2 */ - /**/ qpi = {{0x54442d18, 0x3fe921fb} }, /* pi/4 */ --/**/ qpi1 = {{0x33145c07, 0x3c81a626} }, /* pi/4-qpi */ - /**/ mqpi = {{0x54442d18, 0xbfe921fb} }, /* -pi/4 */ - /**/ tqpi = {{0x7f3321d2, 0x4002d97c} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x4c9e8a0a, 0x3c9a7939} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0x7f3321d2, 0xc002d97c} }, /* -3pi/4 */ - /**/ u1 = {{0x00000000, 0x3c314c2a} }, /* 9.377e-19 */ - /**/ u2 = {{0x00000000, 0x3bf955e4} }, /* 8.584e-20 */ ---- a/sysdeps/ieee754/dbl-64/uexp.h -+++ b/sysdeps/ieee754/dbl-64/uexp.h -@@ -30,7 +30,7 @@ - - #include "mydefs.h" - --const static double one = 1.0, zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, -+const static double zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, - err_0 = 1.000014, err_1 = 0.000016; - const static int4 bigint = 0x40862002, - badint = 0x40876000,smallint = 0x3C8fffff; ---- a/sysdeps/ieee754/dbl-64/upow.h -+++ b/sysdeps/ieee754/dbl-64/upow.h -@@ -36,7 +36,6 @@ - /**/ INF = {{0x7ff00000, 0x00000000}}, /* INF */ - /**/ nINF = {{0xfff00000, 0x00000000}}, /* -INF */ - /**/ NaNQ = {{0x7ff80000, 0x00000000}}, /* NaNQ */ --/**/ sqrt_2 = {{0x3ff6a09e, 0x667f3bcc}}, /* sqrt(2) */ - /**/ ln2a = {{0x3fe62e42, 0xfefa3800}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x3d2ef357, 0x93c76730}}, /* ln(2)-ln2a */ - /**/ bigu = {{0x4297ffff, 0xfffffd2c}}, /* 1.5*2**42 -724*2**-10 */ -@@ -51,7 +50,6 @@ - /**/ INF = {{0x00000000, 0x7ff00000}}, /* INF */ - /**/ nINF = {{0x00000000, 0xfff00000}}, /* -INF */ - /**/ NaNQ = {{0x00000000, 0x7ff80000}}, /* NaNQ */ --/**/ sqrt_2 = {{0x667f3bcc, 0x3ff6a09e}}, /* sqrt(2) */ - /**/ ln2a = {{0xfefa3800, 0x3fe62e42}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x93c76730, 0x3d2ef357}}, /* ln(2)-ln2a */ - /**/ bigu = {{0xfffffd2c, 0x4297ffff}}, /* 1.5*2**42 -724*2**-10 */ ---- a/sysdeps/ieee754/flt-32/e_log10f.c -+++ b/sysdeps/ieee754/flt-32/e_log10f.c -@@ -31,12 +31,6 @@ - log10_2lo = 7.9034151668e-07; /* 0x355427db */ - - #ifdef __STDC__ --static const float zero = 0.0; --#else --static float zero = 0.0; --#endif -- --#ifdef __STDC__ - float __ieee754_log10f(float x) - #else - float __ieee754_log10f(x) ---- a/sysdeps/ieee754/flt-32/s_cosf.c -+++ b/sysdeps/ieee754/flt-32/s_cosf.c -@@ -22,12 +22,6 @@ - #include "math_private.h" - - #ifdef __STDC__ --static const float one=1.0; --#else --static float one=1.0; --#endif -- --#ifdef __STDC__ - float __cosf(float x) - #else - float __cosf(x) ---- a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -+++ b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -@@ -74,7 +74,6 @@ - static const long double PIL = 3.1415926535897932384626433832795028841972E0L; - static const long double MAXLGM = 1.0485738685148938358098967157129705071571E4928L; - static const long double one = 1.0L; --static const long double zero = 0.0L; - static const long double huge = 1.0e4000L; - - /* log gamma(x) = ( x - 0.5 ) * log(x) - x + LS2PI + 1/x P(1/x^2) ---- a/sysdeps/ieee754/ldbl-128/s_erfl.c -+++ b/sysdeps/ieee754/ldbl-128/s_erfl.c -@@ -142,7 +142,6 @@ - static long double - #endif - tiny = 1e-4931L, -- half = 0.5L, - one = 1.0L, - two = 2.0L, - /* 2/sqrt(pi) - 1 */ ---- a/sysdeps/ieee754/ldbl-128/s_log1pl.c -+++ b/sysdeps/ieee754/ldbl-128/s_log1pl.c -@@ -116,7 +116,6 @@ - - static const long double sqrth = 0.7071067811865475244008443621048490392848L; - /* ln (2^16384 * (1 - 2^-113)) */ --static const long double maxlog = 1.1356523406294143949491931077970764891253E4L; - static const long double zero = 0.0L; - - long double diff --git a/packages/glibc/2.13/0004-misleading-indentation.patch b/packages/glibc/2.13/0004-misleading-indentation.patch deleted file mode 100644 index 35bcb1b..0000000 --- a/packages/glibc/2.13/0004-misleading-indentation.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 976ef870542580cf5fed896c2c652b3e1a95f9da -Author: Steve Ellcey -Date: Fri Dec 11 09:19:37 2015 -0800 - - Fix indentation. - - * sysdeps/ieee754/flt-32/k_rem_pio2f.c (__kernel_rem_pio2f): - Fix indentation. - ---- - sysdeps/ieee754/flt-32/k_rem_pio2f.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - ---- a/sysdeps/ieee754/flt-32/k_rem_pio2f.c -+++ b/sysdeps/ieee754/flt-32/k_rem_pio2f.c -@@ -82,7 +82,9 @@ - - /* compute q[0],q[1],...q[jk] */ - for (i=0;i<=jk;i++) { -- for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; q[i] = fw; -+ for(j=0,fw=0.0;j<=jx;j++) -+ fw += x[j]*f[jx+i-j]; -+ q[i] = fw; - } - - jz = jk; diff --git a/packages/glibc/2.13/0005-dl-open-array-bounds.patch b/packages/glibc/2.13/0005-dl-open-array-bounds.patch deleted file mode 100644 index 0bedbc0..0000000 --- a/packages/glibc/2.13/0005-dl-open-array-bounds.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 328c44c3670ebf6c1bd790acddce65a12998cd6c -Author: Roland McGrath -Date: Fri Apr 17 12:11:58 2015 -0700 - - Fuller check for invalid NSID in _dl_open. - ---- - elf/dl-open.c | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - ---- a/elf/dl-open.c -+++ b/elf/dl-open.c -@@ -526,8 +526,14 @@ - /* Never allow loading a DSO in a namespace which is empty. Such - direct placements is only causing problems. Also don't allow - loading into a namespace used for auditing. */ -- else if (__builtin_expect (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER, 0) -- && (GL(dl_ns)[nsid]._ns_nloaded == 0 -+ else if ((nsid != LM_ID_BASE && nsid != __LM_ID_CALLER) -+ && ((nsid < 0 || nsid >= GL(dl_nns)) -+ /* This prevents the [NSID] index expressions from being -+ evaluated, so the compiler won't think that we are -+ accessing an invalid index here in the !SHARED case where -+ DL_NNS is 1 and so any NSID != 0 is invalid. */ -+ || DL_NNS == 1 -+ || GL(dl_ns)[nsid]._ns_nloaded == 0 - || GL(dl_ns)[nsid]._ns_loaded->l_auditing)) - _dl_signal_error (EINVAL, file, NULL, - N_("invalid target namespace in dlmopen()")); diff --git a/packages/glibc/2.13/0006-i386-x86_64-revert-clone-cfi.patch b/packages/glibc/2.13/0006-i386-x86_64-revert-clone-cfi.patch deleted file mode 100644 index f872bac..0000000 --- a/packages/glibc/2.13/0006-i386-x86_64-revert-clone-cfi.patch +++ /dev/null @@ -1,51 +0,0 @@ -revert cfi additions to clone on i386/x86_64 to workaround problems in -gcc's unwinder code. this is not a bug in glibc, it triggers problems -elsewhere. this cfi code does not gain us a whole lot anyways. - -http://gcc.gnu.org/ml/gcc/2006-12/msg00293.html - ---- - sysdeps/unix/sysv/linux/i386/clone.S | 4 ---- - sysdeps/unix/sysv/linux/x86_64/clone.S | 4 ---- - 2 files changed, 8 deletions(-) - ---- a/sysdeps/unix/sysv/linux/i386/clone.S -+++ b/sysdeps/unix/sysv/linux/i386/clone.S -@@ -120,9 +120,6 @@ - ret - - L(thread_start): -- cfi_startproc; -- /* Clearing frame pointer is insufficient, use CFI. */ -- cfi_undefined (eip); - /* Note: %esi is zero. */ - movl %esi,%ebp /* terminate the stack frame */ - #ifdef RESET_PID -@@ -155,7 +152,6 @@ - jmp L(haspid) - .previous - #endif -- cfi_endproc; - - cfi_startproc - PSEUDO_END (BP_SYM (__clone)) ---- a/sysdeps/unix/sysv/linux/x86_64/clone.S -+++ b/sysdeps/unix/sysv/linux/x86_64/clone.S -@@ -89,9 +89,6 @@ - ret - - L(thread_start): -- cfi_startproc; -- /* Clearing frame pointer is insufficient, use CFI. */ -- cfi_undefined (rip); - /* Clear the frame pointer. The ABI suggests this be done, to mark - the outermost frame obviously. */ - xorl %ebp, %ebp -@@ -116,7 +113,6 @@ - /* Call exit with return value from function call. */ - movq %rax, %rdi - call HIDDEN_JUMPTARGET (_exit) -- cfi_endproc; - - cfi_startproc; - PSEUDO_END (BP_SYM (__clone)) diff --git a/packages/glibc/2.13/0007-disable-ldconfig.patch b/packages/glibc/2.13/0007-disable-ldconfig.patch deleted file mode 100644 index d60cb40..0000000 --- a/packages/glibc/2.13/0007-disable-ldconfig.patch +++ /dev/null @@ -1,19 +0,0 @@ -do not bother running ldconfig on DESTDIR. it wants to write the temp cache -file outside of the chroot. doesnt matter anyways as we wont use the cache -results (portage will rebuild cache), so running ldconfig is simply a waste -of time. - ---- - Makefile | 1 + - 1 file changed, 1 insertion(+) - ---- a/Makefile -+++ b/Makefile -@@ -116,6 +116,7 @@ - rm -f $(symbolic-link-list) - - install: -+dont-bother-with-destdir: - -test ! -x $(common-objpfx)elf/ldconfig || LC_ALL=C LANGUAGE=C \ - $(common-objpfx)elf/ldconfig $(addprefix -r ,$(install_root)) \ - $(slibdir) $(libdir) diff --git a/packages/glibc/2.13/0008-Fix-combreloc-test-BSD-grep.patch b/packages/glibc/2.13/0008-Fix-combreloc-test-BSD-grep.patch deleted file mode 100644 index 1fdd59f..0000000 --- a/packages/glibc/2.13/0008-Fix-combreloc-test-BSD-grep.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 61d5f9c09b3157db76bd1a393e248c262a8d9dd4 Mon Sep 17 00:00:00 2001 -From: Alexey Neyman -Date: Wed, 8 Mar 2017 14:31:10 -0800 -Subject: [PATCH] Fix combreloc test with BSD grep - -The test for "-z combreloc" fails when cross-compiling on a machine -that uses BSD grep (e.g. on macos). grep complains about empty -subexpression and exits with non-zero status, which is interpreted -by configure as "not found". As a result, support for "-z combreloc" -(HAVE_Z_COMBRELOC) is not detected, leading to link failure on SPARC. - - * configure.ac: Avoid empty subexpression in grep. - -Signed-off-by: Alexey Neyman ---- - configure | 2 +- - configure.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/configure -+++ b/configure -@@ -6504,7 +6504,7 @@ - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } - then -- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if readelf -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no ---- a/configure.in -+++ b/configure.in -@@ -1673,7 +1673,7 @@ - dnl introducing new options this is not easily doable. Instead use a tool - dnl which always is cross-platform: readelf. To detect whether -z combreloc - dnl look for a section named .rel.dyn. -- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if readelf -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/packages/glibc/2.13/0009-queue-header-updates.patch b/packages/glibc/2.13/0009-queue-header-updates.patch deleted file mode 100644 index f6515e2..0000000 --- a/packages/glibc/2.13/0009-queue-header-updates.patch +++ /dev/null @@ -1,86 +0,0 @@ -grab some updates from FreeBSD - -http://bugs.gentoo.org/201979 - ---- - misc/sys/queue.h | 36 ++++++++++++++++++++++++++++++++++++ - 1 file changed, 36 insertions(+) - ---- a/misc/sys/queue.h -+++ b/misc/sys/queue.h -@@ -136,6 +136,11 @@ - (var); \ - (var) = ((var)->field.le_next)) - -+#define LIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = LIST_FIRST((head)); \ -+ (var) && ((tvar) = LIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - /* - * List access methods. - */ -@@ -197,6 +202,16 @@ - #define SLIST_FOREACH(var, head, field) \ - for((var) = (head)->slh_first; (var); (var) = (var)->field.sle_next) - -+#define SLIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = SLIST_FIRST((head)); \ -+ (var) && ((tvar) = SLIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ -+#define SLIST_FOREACH_PREVPTR(var, varp, head, field) \ -+ for ((varp) = &SLIST_FIRST((head)); \ -+ ((var) = *(varp)) != NULL; \ -+ (varp) = &SLIST_NEXT((var), field)) -+ - /* - * Singly-linked List access methods. - */ -@@ -242,6 +257,12 @@ - (head)->stqh_last = &(elm)->field.stqe_next; \ - } while (/*CONSTCOND*/0) - -+#define STAILQ_LAST(head, type, field) \ -+ (STAILQ_EMPTY((head)) ? \ -+ NULL : \ -+ ((struct type *)(void *) \ -+ ((char *)((head)->stqh_last) - __offsetof(struct type, field)))) -+ - #define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ - if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\ - (head)->stqh_last = &(elm)->field.stqe_next; \ -@@ -271,6 +292,11 @@ - (var); \ - (var) = ((var)->field.stqe_next)) - -+#define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = STAILQ_FIRST((head)); \ -+ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - #define STAILQ_CONCAT(head1, head2) do { \ - if (!STAILQ_EMPTY((head2))) { \ - *(head1)->stqh_last = (head2)->stqh_first; \ -@@ -437,11 +463,21 @@ - (var); \ - (var) = ((var)->field.tqe_next)) - -+#define TAILQ_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = TAILQ_FIRST((head)); \ -+ (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - #define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ - for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last)); \ - (var); \ - (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last))) - -+#define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar) \ -+ for ((var) = TAILQ_LAST((head), headname); \ -+ (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \ -+ (var) = (tvar)) -+ - #define TAILQ_CONCAT(head1, head2, field) do { \ - if (!TAILQ_EMPTY(head2)) { \ - *(head1)->tqh_last = (head2)->tqh_first; \ diff --git a/packages/glibc/2.13/0010-manual-no-perl.patch b/packages/glibc/2.13/0010-manual-no-perl.patch deleted file mode 100644 index 14ddc6d..0000000 --- a/packages/glibc/2.13/0010-manual-no-perl.patch +++ /dev/null @@ -1,27 +0,0 @@ -If we're using a cvs snapshot which updates the source files, and -perl isn't installed yet, then we can't regen the docs. Not a big -deal, so just whine a little and continue on our merry way. - -http://bugs.gentoo.org/60132 - ---- - manual/Makefile | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/manual/Makefile -+++ b/manual/Makefile -@@ -104,9 +104,14 @@ - libm-err.texi: stamp-libm-err - stamp-libm-err: libm-err-tab.pl $(wildcard $(foreach dir,$(sysdirs),\ - $(dir)/libm-test-ulps)) -+ifneq ($(PERL),no) - pwd=`pwd`; \ - $(PERL) $< $$pwd/.. > libm-err-tmp - $(move-if-change) libm-err-tmp libm-err.texi -+else -+ echo "Unable to rebuild math docs, no perl installed" -+ touch libm-err.texi -+endif - touch $@ - - # Generate Texinfo files from the C source for the example programs. diff --git a/packages/glibc/2.13/0011-localedef-fix-trampoline.patch b/packages/glibc/2.13/0011-localedef-fix-trampoline.patch deleted file mode 100644 index 3b8fd6e..0000000 --- a/packages/glibc/2.13/0011-localedef-fix-trampoline.patch +++ /dev/null @@ -1,56 +0,0 @@ -# DP: Description: Fix localedef segfault when run under exec-shield, -# PaX or similar. (#231438, #198099) -# DP: Dpatch Author: James Troup -# DP: Patch Author: (probably) Jakub Jelinek -# DP: Upstream status: Unknown -# DP: Status Details: Unknown -# DP: Date: 2004-03-16 ---- -# locale/programs/3level.h | 36 ++++++++++++++++++++++++++++++++++++ -# 1 file changed, 36 insertions(+) -# ---- a/locale/programs/3level.h -+++ b/locale/programs/3level.h -@@ -203,6 +203,42 @@ - } - } - } -+ -+/* GCC ATM seems to do a poor job with pointers to nested functions passed -+ to inlined functions. Help it a little bit with this hack. */ -+#define wchead_table_iterate(tp, fn) \ -+do \ -+ { \ -+ struct wchead_table *t = (tp); \ -+ uint32_t index1; \ -+ for (index1 = 0; index1 < t->level1_size; index1++) \ -+ { \ -+ uint32_t lookup1 = t->level1[index1]; \ -+ if (lookup1 != ((uint32_t) ~0)) \ -+ { \ -+ uint32_t lookup1_shifted = lookup1 << t->q; \ -+ uint32_t index2; \ -+ for (index2 = 0; index2 < (1 << t->q); index2++) \ -+ { \ -+ uint32_t lookup2 = t->level2[index2 + lookup1_shifted]; \ -+ if (lookup2 != ((uint32_t) ~0)) \ -+ { \ -+ uint32_t lookup2_shifted = lookup2 << t->p; \ -+ uint32_t index3; \ -+ for (index3 = 0; index3 < (1 << t->p); index3++) \ -+ { \ -+ struct element_t *lookup3 \ -+ = t->level3[index3 + lookup2_shifted]; \ -+ if (lookup3 != NULL) \ -+ fn ((((index1 << t->q) + index2) << t->p) + index3, \ -+ lookup3); \ -+ } \ -+ } \ -+ } \ -+ } \ -+ } \ -+ } while (0) -+ - #endif - - #ifndef NO_FINALIZE diff --git a/packages/glibc/2.13/0012-resolv-dynamic.patch b/packages/glibc/2.13/0012-resolv-dynamic.patch deleted file mode 100644 index fcc2f80..0000000 --- a/packages/glibc/2.13/0012-resolv-dynamic.patch +++ /dev/null @@ -1,42 +0,0 @@ -ripped from SuSE - -if /etc/resolv.conf is updated, then make sure applications -already running get the updated information. - -http://bugs.gentoo.org/177416 - ---- - resolv/res_libc.c | 15 +++++++++++++++ - 1 file changed, 15 insertions(+) - ---- a/resolv/res_libc.c -+++ b/resolv/res_libc.c -@@ -22,6 +22,7 @@ - #include - #include - #include -+#include - - - /* The following bit is copied from res_data.c (where it is #ifdef'ed -@@ -95,6 +96,20 @@ - __res_maybe_init (res_state resp, int preinit) - { - if (resp->options & RES_INIT) { -+ static time_t last_mtime, last_check; -+ time_t now; -+ struct stat statbuf; -+ -+ time (&now); -+ if (now != last_check) { -+ last_check = now; -+ if (stat (_PATH_RESCONF, &statbuf) == 0 && last_mtime != statbuf.st_mtime) { -+ last_mtime = statbuf.st_mtime; -+ atomicinclock (lock); -+ atomicinc (__res_initstamp); -+ atomicincunlock (lock); -+ } -+ } - if (__res_initstamp != resp->_u._ext.initstamp) { - if (resp->nscount > 0) - __res_iclose (resp, true); diff --git a/packages/glibc/2.13/0013-localedef-mmap.patch b/packages/glibc/2.13/0013-localedef-mmap.patch deleted file mode 100644 index 74e586e..0000000 --- a/packages/glibc/2.13/0013-localedef-mmap.patch +++ /dev/null @@ -1,42 +0,0 @@ -sniped from Debian -http://bugs.gentoo.org/289615 - -2009-10-27 Aurelien Jarno - - * locale/programs/locarchive.c: use MMAP_SHARED to reserve memory - used later with MMAP_FIXED | MMAP_SHARED to cope with different - alignment restrictions. - ---- - locale/programs/locarchive.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/locale/programs/locarchive.c -+++ b/locale/programs/locarchive.c -@@ -134,7 +134,7 @@ - size_t reserved = RESERVE_MMAP_SIZE; - int xflags = 0; - if (total < reserved -- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON, -+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON, - -1, 0)) != MAP_FAILED)) - xflags = MAP_FIXED; - else -@@ -396,7 +396,7 @@ - size_t reserved = RESERVE_MMAP_SIZE; - int xflags = 0; - if (total < reserved -- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON, -+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON, - -1, 0)) != MAP_FAILED)) - xflags = MAP_FIXED; - else -@@ -614,7 +614,7 @@ - int xflags = 0; - void *p; - if (st.st_size < reserved -- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON, -+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON, - -1, 0)) != MAP_FAILED)) - xflags = MAP_FIXED; - else diff --git a/packages/glibc/2.13/0014-fadvise64_64.patch b/packages/glibc/2.13/0014-fadvise64_64.patch deleted file mode 100644 index 191d833..0000000 --- a/packages/glibc/2.13/0014-fadvise64_64.patch +++ /dev/null @@ -1,27 +0,0 @@ -ripped from Debian - - sysdeps/unix/sysv/linux/posix_fadvise.c | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - ---- a/sysdeps/unix/sysv/linux/posix_fadvise.c -+++ b/sysdeps/unix/sysv/linux/posix_fadvise.c -@@ -35,6 +35,19 @@ - return INTERNAL_SYSCALL_ERRNO (ret, err); - return 0; - #else -+# ifdef __NR_fadvise64_64 -+ INTERNAL_SYSCALL_DECL (err); -+ int ret = INTERNAL_SYSCALL (fadvise64_64, err, 6, fd, -+ __LONG_LONG_PAIR ((long) (offset >> 31), -+ (long) offset), -+ __LONG_LONG_PAIR ((long) (len >> 31), -+ (long) len), -+ advise); -+ if (INTERNAL_SYSCALL_ERROR_P (ret, err)) -+ return INTERNAL_SYSCALL_ERRNO (ret, err); -+ return 0; -+# else - return ENOSYS; -+# endif - #endif - } diff --git a/packages/glibc/2.13/0015-section-comments.patch b/packages/glibc/2.13/0015-section-comments.patch deleted file mode 100644 index 5960ed0..0000000 --- a/packages/glibc/2.13/0015-section-comments.patch +++ /dev/null @@ -1,27 +0,0 @@ -http://sources.redhat.com/ml/binutils/2004-04/msg00665.html - -fixes building on some architectures (like m68k/arm/cris/etc...) because -it does the right thing - ---- - include/libc-symbols.h | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/include/libc-symbols.h -+++ b/include/libc-symbols.h -@@ -239,12 +239,12 @@ - # define __make_section_unallocated(section_string) - # endif - --/* Tacking on "\n\t#" to the section name makes gcc put it's bogus -+/* Tacking on "\n#APP\n\t#" to the section name makes gcc put it's bogus - section attributes on what looks like a comment to the assembler. */ - # ifdef HAVE_SECTION_QUOTES --# define __sec_comment "\"\n\t#\"" -+# define __sec_comment "\"\n#APP\n\t#\"" - # else --# define __sec_comment "\n\t#" -+# define __sec_comment "\n#APP\n\t#" - # endif - # define link_warning(symbol, msg) \ - __make_section_unallocated (".gnu.warning." #symbol) \ diff --git a/packages/glibc/2.13/0016-no-inline-gmon.patch b/packages/glibc/2.13/0016-no-inline-gmon.patch deleted file mode 100644 index ed02704..0000000 --- a/packages/glibc/2.13/0016-no-inline-gmon.patch +++ /dev/null @@ -1,36 +0,0 @@ -http://bugs.gentoo.org/196245 -http://sourceware.org/ml/libc-alpha/2006-05/msg00017.html - -Attached is a patch to add __attribute__ ((noinline)) to -call_gmon_start. - -Without this patch, the sec script that processed initfini.s removes a -part of inlined call_gmon_start, causing undefined label errors. - -This patch solves the problem by forcing gcc not to inline -call_gmon_start with __attribute__ ((noinline)). - -Tested by building for arm-none-lixux-gnueabi. OK to apply? - -Kazu Hirata - -2006-05-07 Kazu Hirata <kazu@codesourcery.com> - - * sysdeps/generic/initfini.c (call_gmon_start): Add - __attribute__ ((noinline)). - ---- - sysdeps/generic/initfini.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sysdeps/generic/initfini.c -+++ b/sysdeps/generic/initfini.c -@@ -70,7 +70,7 @@ - /* The beginning of _init: */ - asm ("\n/*@_init_PROLOG_BEGINS*/"); - --static void -+static void __attribute__ ((noinline)) - call_gmon_start(void) - { - extern void __gmon_start__ (void) __attribute__ ((weak)); /*weak_extern (__gmon_start__);*/ diff --git a/packages/glibc/2.13/0017-check_native-headers.patch b/packages/glibc/2.13/0017-check_native-headers.patch deleted file mode 100644 index 2b1b619..0000000 --- a/packages/glibc/2.13/0017-check_native-headers.patch +++ /dev/null @@ -1,20 +0,0 @@ -many ports hit this warning: -../sysdeps/unix/sysv/linux/check_native.c:46: warning: implicit declaration of function 'memset' -../sysdeps/unix/sysv/linux/check_native.c:46: warning: implicit declaration of function 'memset' - -snipped from suse - ---- - sysdeps/unix/sysv/linux/check_native.c | 1 + - 1 file changed, 1 insertion(+) - ---- a/sysdeps/unix/sysv/linux/check_native.c -+++ b/sysdeps/unix/sysv/linux/check_native.c -@@ -23,6 +23,7 @@ - #include - #include - #include -+#include - #include - #include - #include diff --git a/packages/glibc/2.13/0018-fix-pr631.patch b/packages/glibc/2.13/0018-fix-pr631.patch deleted file mode 100644 index 636c45d..0000000 --- a/packages/glibc/2.13/0018-fix-pr631.patch +++ /dev/null @@ -1,48 +0,0 @@ -From dank@kegel.com -Wed Jun 15 09:12:43 PDT 2005 - -Fixes - -build-glibc/libc.a(nsswitch.o)(.data+0x64): undefined reference to `_nss_files_getaliasent_r' -build-glibc/libc.a(nsswitch.o)(.data+0x6c): undefined reference to `_nss_files_endaliasent' -... 53 lines deleted ... -build-glibc/libc.a(nsswitch.o)(.data+0x21c): undefined reference to `_nss_files_getspnam_r' -collect2: ld returned 1 exit status -make[2]: *** [/build/gcc-3.4.3-glibc-2.3.5-hdrs-2.6.11.2/i686-unknown-linux-gnu/build-glibc/elf/ldconfig] Error 1 - -when building glibc with --enable-static-nss. - -See http://sources.redhat.com/bugzilla/show_bug.cgi?id=631 - ---- - Makeconfig | 2 +- - elf/Makefile | 7 +++++++ - 2 files changed, 8 insertions(+), 1 deletion(-) - ---- a/Makeconfig -+++ b/Makeconfig -@@ -531,7 +531,7 @@ - - # The static libraries. - ifeq (yes,$(build-static)) --link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(common-objpfx)libc.a -+link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(otherlibs) $(common-objpfx)libc.a - else - ifeq (yes,$(build-shared)) - # We can try to link the programs with lib*_pic.a... ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -146,6 +146,13 @@ - install-bin-script = ldd - endif - -+ifeq (yes,$(build-static-nss)) -+nssobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)nss) -+resolvobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)resolv) -+otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \ -+ $(resolvobjdir)/libresolv.a -+endif -+ - others = sprof sln - install-bin = sprof - others-static = sln diff --git a/packages/glibc/2.13/0019-assume-pipe2.patch b/packages/glibc/2.13/0019-assume-pipe2.patch deleted file mode 100644 index 0074ea6..0000000 --- a/packages/glibc/2.13/0019-assume-pipe2.patch +++ /dev/null @@ -1,43 +0,0 @@ -http://bugs.gentoo.org/250342 -http://sources.redhat.com/bugzilla/show_bug.cgi?id=9685 - -we cant assume sock_cloexec and pipe2 are bound together as the former defines -are found in glibc only while the latter are a combo of kernel headers and -glibc. so if we do a runtime detection of SOCK_CLOEXEC, but pipe2() is a stub -inside of glibc, we hit a problem. for example: - -#include -#include -main() -{ - getgrnam("portage"); - if (!popen("ls", "r")) - perror("popen()"); -} - -getgrnam() will detect that the kernel supports SOCK_CLOEXEC and then set both -__have_sock_cloexec and __have_pipe2 to true. but if glibc was built against -older kernel headers where __NR_pipe2 does not exist, glibc will have a ENOSYS -stub for it. so popen() will always fail as glibc assumes pipe2() works. - ---- - socket/have_sock_cloexec.c | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/socket/have_sock_cloexec.c -+++ b/socket/have_sock_cloexec.c -@@ -16,9 +16,14 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -+#include - #include - #include - - #if defined SOCK_CLOEXEC && !defined __ASSUME_SOCK_CLOEXEC - int __have_sock_cloexec; - #endif -+ -+#if defined O_CLOEXEC && !defined __ASSUME_PIPE2 -+int __have_pipe2; -+#endif diff --git a/packages/glibc/2.13/0020-china.patch b/packages/glibc/2.13/0020-china.patch deleted file mode 100644 index b323cf6..0000000 --- a/packages/glibc/2.13/0020-china.patch +++ /dev/null @@ -1,35 +0,0 @@ - - ---- - localedata/locales/zh_TW | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/localedata/locales/zh_TW -+++ b/localedata/locales/zh_TW -@@ -1,7 +1,7 @@ - comment_char % - escape_char / - % --% Chinese language locale for Taiwan R.O.C. -+% Chinese language locale for Taiwan - % charmap: BIG5-CP950 - % - % Original Author: -@@ -17,7 +17,7 @@ - % Reference: http://wwwold.dkuug.dk/JTC1/SC22/WG20/docs/n690.pdf - - LC_IDENTIFICATION --title "Chinese locale for Taiwan R.O.C." -+title "Chinese locale for Taiwan" - source "" - address "" - contact "" -@@ -25,7 +25,7 @@ - tel "" - fax "" - language "Chinese" --territory "Taiwan R.O.C." -+territory "Taiwan" - revision "0.2" - date "2000-08-02" - % diff --git a/packages/glibc/2.13/0021-new-valencian-locale.patch b/packages/glibc/2.13/0021-new-valencian-locale.patch deleted file mode 100644 index bddc4c7..0000000 --- a/packages/glibc/2.13/0021-new-valencian-locale.patch +++ /dev/null @@ -1,118 +0,0 @@ -http://bugs.gentoo.org/show_bug.cgi?id=131815 -http://sourceware.org/bugzilla/show_bug.cgi?id=2522 - ---- - localedata/SUPPORTED | 2 - localedata/locales/ca_ES@valencia | 96 ++++++++++++++++++++++++++++++++++++++ - 2 files changed, 98 insertions(+) - ---- a/localedata/SUPPORTED -+++ b/localedata/SUPPORTED -@@ -72,6 +72,8 @@ - ca_ES.UTF-8/UTF-8 \ - ca_ES/ISO-8859-1 \ - ca_ES@euro/ISO-8859-15 \ -+ca_ES.UTF-8@valencia/UTF-8 \ -+ca_ES@valencia/ISO-8859-15 \ - ca_FR.UTF-8/UTF-8 \ - ca_FR/ISO-8859-15 \ - ca_IT.UTF-8/UTF-8 \ ---- /dev/null -+++ b/localedata/locales/ca_ES@valencia -@@ -0,0 +1,96 @@ -+comment_char % -+escape_char / -+% -+% Valencian (southern Catalan) locale for Spain with Euro -+% -+% Note that this locale is almost the same as ca_ES@euro. The point of having -+% a separate locale is only for PO translations, which have a lot of social -+% support and are very appreciated by the Valencian-speaking community. -+% -+% Contact: Jordi Mallach -+% Email: jordi@gnu.org -+% Tel: -+% Fax: -+% Language: ca -+% Territory: ES -+% Option: euro -+% Revision: 1.0 -+% Date: 2006-04-06 -+% Application: general -+% Users: general -+% Repertoiremap: mnemonic,ds -+% Charset: ISO-8859-15 -+% Distribution and use is free, also -+% for commercial purposes. -+ -+LC_IDENTIFICATION -+title "Valencian (southern Catalan) locale for Spain with Euro" -+source "" -+address "" -+contact "Jordi Mallach" -+email "jordi@gnu.org" -+tel "" -+fax "" -+language "Catalan" -+territory "Spain" -+revision "1.0" -+date "2006-04-06" -+% -+category "ca_ES@valencia:2006";LC_IDENTIFICATION -+category "ca_ES@valencia:2006";LC_CTYPE -+category "ca_ES@valencia:2006";LC_COLLATE -+category "ca_ES@valencia:2006";LC_MONETARY -+category "ca_ES@valencia:2006";LC_NUMERIC -+category "ca_ES@valencia:2006";LC_TIME -+category "ca_ES@valencia:2006";LC_MESSAGES -+category "ca_ES@valencia:2006";LC_PAPER -+category "ca_ES@valencia:2006";LC_NAME -+category "ca_ES@valencia:2006";LC_ADDRESS -+category "ca_ES@valencia:2006";LC_TELEPHONE -+category "ca_ES@valencia:2006";LC_MEASUREMENT -+ -+END LC_IDENTIFICATION -+ -+LC_CTYPE -+copy "i18n" -+END LC_CTYPE -+ -+LC_COLLATE -+copy "ca_ES" -+END LC_COLLATE -+ -+LC_MONETARY -+copy "ca_ES" -+END LC_MONETARY -+ -+LC_NUMERIC -+copy "ca_ES" -+END LC_NUMERIC -+ -+LC_TIME -+copy "ca_ES" -+END LC_TIME -+ -+LC_MESSAGES -+copy "ca_ES" -+END LC_MESSAGES -+ -+LC_PAPER -+copy "ca_ES" -+END LC_PAPER -+ -+LC_NAME -+copy "ca_ES" -+END LC_NAME -+ -+LC_ADDRESS -+copy "ca_ES" -+END LC_ADDRESS -+ -+LC_TELEPHONE -+copy "ca_ES" -+END LC_TELEPHONE -+ -+LC_MEASUREMENT -+copy "ca_ES" -+END LC_MEASUREMENT diff --git a/packages/glibc/2.13/0022-macos-cross-rpcgen.patch b/packages/glibc/2.13/0022-macos-cross-rpcgen.patch deleted file mode 100644 index b439b0f..0000000 --- a/packages/glibc/2.13/0022-macos-cross-rpcgen.patch +++ /dev/null @@ -1,34 +0,0 @@ -commit ae7080d30c68cfa0c81ce3422dca948f64a94f50 -Author: Jia Liu -Date: Sat Sep 7 00:01:08 2013 +0800 - - sunrpc/rpc/types.h: fix OS X and FreeBSD build problems - - When I build arm-linux-gcc on OS X, I find glibc will get a build error - in sunrpc/rpc/types.h, so I add __APPLE_CC__ to make OS X build OK. - For FreeBSD, Add __FreeBSD__ to make it build OK, too. - - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00155.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00217.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00240.html - Signed-off-by: Jia Liu - Signed-off-by: Mike Frysinger - ---- - sunrpc/rpc/types.h | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/sunrpc/rpc/types.h -+++ b/sunrpc/rpc/types.h -@@ -69,6 +69,11 @@ - #include - #endif - -+#if defined __APPLE_CC__ || defined __FreeBSD__ -+# define __u_char_defined -+# define __daddr_t_defined -+#endif -+ - #ifndef __u_char_defined - typedef __u_char u_char; - typedef __u_short u_short; diff --git a/packages/glibc/2.13/0023-nscd-one-fork.patch b/packages/glibc/2.13/0023-nscd-one-fork.patch deleted file mode 100644 index 47217b3..0000000 --- a/packages/glibc/2.13/0023-nscd-one-fork.patch +++ /dev/null @@ -1,43 +0,0 @@ -only fork one to assist in stop-start-daemon assumptions about daemon behavior - -http://bugs.gentoo.org/190785 - ---- - nscd/nscd.c | 12 +++--------- - 1 file changed, 3 insertions(+), 9 deletions(-) - ---- a/nscd/nscd.c -+++ b/nscd/nscd.c -@@ -182,6 +182,9 @@ - if (pid != 0) - exit (0); - -+ if (write_pid (_PATH_NSCDPID) < 0) -+ dbg_log ("%s: %s", _PATH_NSCDPID, strerror (errno)); -+ - int nullfd = open (_PATH_DEVNULL, O_RDWR); - if (nullfd != -1) - { -@@ -231,12 +234,6 @@ - for (i = min_close_fd; i < getdtablesize (); i++) - close (i); - -- pid = fork (); -- if (pid == -1) -- error (EXIT_FAILURE, errno, _("cannot fork")); -- if (pid != 0) -- exit (0); -- - setsid (); - - if (chdir ("/") != 0) -@@ -245,9 +242,6 @@ - - openlog ("nscd", LOG_CONS | LOG_ODELAY, LOG_DAEMON); - -- if (write_pid (_PATH_NSCDPID) < 0) -- dbg_log ("%s: %s", _PATH_NSCDPID, strerror (errno)); -- - if (!init_logfile ()) - dbg_log (_("Could not create log file")); - diff --git a/packages/glibc/2.13/0024-hppa-nptl-carlos.patch b/packages/glibc/2.13/0024-hppa-nptl-carlos.patch deleted file mode 100644 index 43c4b68..0000000 --- a/packages/glibc/2.13/0024-hppa-nptl-carlos.patch +++ /dev/null @@ -1,249 +0,0 @@ - - ---- - elf/rtld.c | 10 +++++----- - include/atomic.h | 26 +++++++++++++------------- - nptl/Makefile | 35 ++++++++++++++++++++++++++++++++--- - nptl/pthread_barrier_wait.c | 2 +- - nptl/sysdeps/pthread/Makefile | 2 ++ - stdio-common/Makefile | 2 +- - sunrpc/clnt_udp.c | 2 +- - 7 files changed, 55 insertions(+), 24 deletions(-) - ---- a/elf/rtld.c -+++ b/elf/rtld.c -@@ -392,14 +392,14 @@ - know it is available. We do not have to clear the memory if we - do not have to use the temporary bootstrap_map. Global variables - are initialized to zero by default. */ --#ifndef DONT_USE_BOOTSTRAP_MAP -+#if !defined DONT_USE_BOOTSTRAP_MAP - # ifdef HAVE_BUILTIN_MEMSET - __builtin_memset (bootstrap_map.l_info, '\0', sizeof (bootstrap_map.l_info)); - # else -- for (size_t cnt = 0; -- cnt < sizeof (bootstrap_map.l_info) / sizeof (bootstrap_map.l_info[0]); -- ++cnt) -- bootstrap_map.l_info[cnt] = 0; -+ /* Clear the whole bootstrap_map structure */ -+ for (char *cnt = (char *)&(bootstrap_map); -+ cnt < ((char *)&(bootstrap_map) + sizeof (bootstrap_map)); -+ *cnt++ = '\0'); - # endif - # if USE___THREAD - bootstrap_map.l_tls_modid = 0; ---- a/include/atomic.h -+++ b/include/atomic.h -@@ -185,7 +185,7 @@ - __typeof (*(mem)) __atg5_value = (newvalue); \ - \ - do \ -- __atg5_oldval = *__atg5_memp; \ -+ __atg5_oldval = *(volatile __typeof (mem))__atg5_memp; \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg5_memp, __atg5_value, \ - __atg5_oldval), 0)); \ -@@ -206,7 +206,7 @@ - __typeof (*(mem)) __atg6_value = (value); \ - \ - do \ -- __atg6_oldval = *__atg6_memp; \ -+ __atg6_oldval = *(volatile __typeof (mem))__atg6_memp; \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg6_memp, \ - __atg6_oldval \ -@@ -224,7 +224,7 @@ - __typeof (*(mem)) __atg7_value = (value); \ - \ - do \ -- __atg7_oldv = *__atg7_memp; \ -+ __atg7_oldv = *(volatile __typeof (mem))__atg7_memp; \ - while (__builtin_expect \ - (catomic_compare_and_exchange_bool_acq (__atg7_memp, \ - __atg7_oldv \ -@@ -242,7 +242,7 @@ - __typeof (mem) __atg8_memp = (mem); \ - __typeof (*(mem)) __atg8_value = (value); \ - do { \ -- __atg8_oldval = *__atg8_memp; \ -+ __atg8_oldval = *(volatile __typeof (mem))__atg8_memp; \ - if (__atg8_oldval >= __atg8_value) \ - break; \ - } while (__builtin_expect \ -@@ -259,7 +259,7 @@ - __typeof (mem) __atg9_memp = (mem); \ - __typeof (*(mem)) __atg9_value = (value); \ - do { \ -- __atg9_oldv = *__atg9_memp; \ -+ __atg9_oldv = *(volatile __typeof (mem))__atg9_memp; \ - if (__atg9_oldv >= __atg9_value) \ - break; \ - } while (__builtin_expect \ -@@ -277,7 +277,7 @@ - __typeof (mem) __atg10_memp = (mem); \ - __typeof (*(mem)) __atg10_value = (value); \ - do { \ -- __atg10_oldval = *__atg10_memp; \ -+ __atg10_oldval = *(volatile __typeof (mem))__atg10_memp; \ - if (__atg10_oldval <= __atg10_value) \ - break; \ - } while (__builtin_expect \ -@@ -361,7 +361,7 @@ - \ - do \ - { \ -- __atg11_oldval = *__atg11_memp; \ -+ __atg11_oldval = *(volatile __typeof (mem))__atg11_memp; \ - if (__builtin_expect (__atg11_oldval <= 0, 0)) \ - break; \ - } \ -@@ -400,7 +400,7 @@ - __typeof (*(mem)) __atg14_mask = ((__typeof (*(mem))) 1 << (bit)); \ - \ - do \ -- __atg14_old = (*__atg14_memp); \ -+ __atg14_old = (*(volatile __typeof (mem))__atg14_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg14_memp, \ - __atg14_old | __atg14_mask,\ -@@ -418,7 +418,7 @@ - __typeof (*(mem)) __atg15_mask = (mask); \ - \ - do \ -- __atg15_old = (*__atg15_memp); \ -+ __atg15_old = (*(volatile __typeof (mem))__atg15_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg15_memp, \ - __atg15_old & __atg15_mask, \ -@@ -450,7 +450,7 @@ - __typeof (*(mem)) __atg16_mask = (mask); \ - \ - do \ -- __atg16_old = (*__atg16_memp); \ -+ __atg16_old = (*(volatile __typeof (mem))__atg16_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg16_memp, \ - __atg16_old & __atg16_mask,\ -@@ -468,7 +468,7 @@ - __typeof (*(mem)) __atg17_mask = (mask); \ - \ - do \ -- __atg17_old = (*__atg17_memp); \ -+ __atg17_old = (*(volatile __typeof (mem))__atg17_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg17_memp, \ - __atg17_old | __atg17_mask, \ -@@ -484,7 +484,7 @@ - __typeof (*(mem)) __atg18_mask = (mask); \ - \ - do \ -- __atg18_old = (*__atg18_memp); \ -+ __atg18_old = (*(volatile __typeof (mem))__atg18_memp); \ - while (__builtin_expect \ - (catomic_compare_and_exchange_bool_acq (__atg18_memp, \ - __atg18_old | __atg18_mask,\ -@@ -500,7 +500,7 @@ - __typeof (*(mem)) __atg19_mask = (mask); \ - \ - do \ -- __atg19_old = (*__atg19_memp); \ -+ __atg19_old = (*(volatile __typeof (mem))__atg19_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg19_memp, \ - __atg19_old | __atg19_mask,\ ---- a/nptl/Makefile -+++ b/nptl/Makefile -@@ -265,9 +265,9 @@ - # Files which must not be linked with libpthread. - tests-nolibpthread = tst-unload - --# This sets the stack resource limit to 1023kb, which is not a multiple --# of the page size since every architecture's page size is > 1k. --tst-oddstacklimit-ENV = ; ulimit -s 1023; -+# This sets the stack resource limit to 8193kb, which is not a multiple -+# of the page size since every architecture's page size is 4096 bytes. -+tst-oddstacklimit-ENV = ; ulimit -s 8193; - - distribute = eintr.c tst-cleanup4aux.c - -@@ -426,6 +426,35 @@ - CFLAGS-tst-cleanupx4.c += -fexceptions - CFLAGS-tst-oncex3.c += -fexceptions - CFLAGS-tst-oncex4.c += -fexceptions -+ -+ldflags-libgcc_s = --as-needed -lgcc_s --no-as-needed -+LDFLAGS-tst-cancelx2 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx4 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx5 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx6 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx7 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx8 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx9 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx10 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx11 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx12 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx13 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx14 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx15 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx16 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx17 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx18 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx20 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx21 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx0 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx1 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx2 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx4 += $(ldflags-libgcc_s) -+LDFLAGS-tst-oncex3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-oncex4 += $(ldflags-libgcc_s) -+ - CFLAGS-tst-align.c += $(stack-align-test-flags) - CFLAGS-tst-align3.c += $(stack-align-test-flags) - CFLAGS-tst-initializers1.c = -W -Wall -Werror ---- a/nptl/pthread_barrier_wait.c -+++ b/nptl/pthread_barrier_wait.c -@@ -64,7 +64,7 @@ - do - lll_futex_wait (&ibarrier->curr_event, event, - ibarrier->private ^ FUTEX_PRIVATE_FLAG); -- while (event == ibarrier->curr_event); -+ while (event == *(volatile unsigned int *)&ibarrier->curr_event); - } - - /* Make sure the init_count is stored locally or in a register. */ ---- a/nptl/sysdeps/pthread/Makefile -+++ b/nptl/sysdeps/pthread/Makefile -@@ -33,7 +33,9 @@ - - ifeq ($(have-forced-unwind),yes) - tests += tst-mqueue8x -+ldflags-libgcc_s = --as-needed -lgcc_s --no-as-needed - CFLAGS-tst-mqueue8x.c += -fexceptions -+LDFLAGS-tst-mqueue8x += $(ldflags-libgcc_s) - endif - endif - ---- a/stdio-common/Makefile -+++ b/stdio-common/Makefile -@@ -82,7 +82,7 @@ - $(SHELL) -e tst-printf.sh $(common-objpfx) '$(run-program-prefix)' - endif - --CFLAGS-vfprintf.c = -Wno-uninitialized -+CFLAGS-vfprintf.c = -Wno-uninitialized -fno-delayed-branch - CFLAGS-vfwprintf.c = -Wno-uninitialized - CFLAGS-tst-printf.c = -Wno-format - CFLAGS-tstdiomisc.c = -Wno-format ---- a/sunrpc/clnt_udp.c -+++ b/sunrpc/clnt_udp.c -@@ -456,7 +456,7 @@ - while (inlen < 0 && errno == EINTR); - if (inlen < 0) - { -- if (errno == EWOULDBLOCK) -+ if (errno == EWOULDBLOCK || errno == EAGAIN) - continue; - cu->cu_error.re_errno = errno; - return (cu->cu_error.re_status = RPC_CANTRECV); diff --git a/packages/glibc/2.13/0025-dl_execstack-PaX-support.patch b/packages/glibc/2.13/0025-dl_execstack-PaX-support.patch deleted file mode 100644 index bfd7557..0000000 --- a/packages/glibc/2.13/0025-dl_execstack-PaX-support.patch +++ /dev/null @@ -1,69 +0,0 @@ - With latest versions of glibc, a lot of apps failed on a PaX enabled - system with: - cannot enable executable stack as shared object requires: Permission denied - - This is due to PaX 'exec-protecting' the stack, and ld.so then trying - to make the stack executable due to some libraries not containing the - PT_GNU_STACK section. Bug #32960. (12 Nov 2003). - - Patch also NPTL. Bug #116086. (20 Dec 2005). - ---- - nptl/allocatestack.c | 3 ++- - sysdeps/unix/sysv/linux/dl-execstack.c | 19 ++++++++++++++++--- - 2 files changed, 18 insertions(+), 4 deletions(-) - ---- a/nptl/allocatestack.c -+++ b/nptl/allocatestack.c -@@ -329,7 +329,8 @@ - # error "Define either _STACK_GROWS_DOWN or _STACK_GROWS_UP" - #endif - if (mprotect (stack, len, PROT_READ | PROT_WRITE | PROT_EXEC) != 0) -- return errno; -+ if (errno != EACCES) /* PAX is enabled */ -+ return errno; - - return 0; - } ---- a/sysdeps/unix/sysv/linux/dl-execstack.c -+++ b/sysdeps/unix/sysv/linux/dl-execstack.c -@@ -63,7 +63,10 @@ - else - # endif - { -- result = errno; -+ if (errno == EACCES) /* PAX is enabled */ -+ result = 0; -+ else -+ result = errno; - goto out; - } - } -@@ -89,7 +92,12 @@ - page -= size; - else - { -- if (errno != ENOMEM) /* Unexpected failure mode. */ -+ if (errno == EACCES) /* PAX is enabled */ -+ { -+ result = 0; -+ goto out; -+ } -+ else if (errno != ENOMEM) /* Unexpected failure mode. */ - { - result = errno; - goto out; -@@ -115,7 +123,12 @@ - page += size; - else - { -- if (errno != ENOMEM) /* Unexpected failure mode. */ -+ if (errno == EACCES) /* PAX is enabled */ -+ { -+ result = 0; -+ goto out; -+ } -+ else if (errno != ENOMEM) /* Unexpected failure mode. */ - { - result = errno; - goto out; diff --git a/packages/glibc/2.13/0026-pre20040117-pt_pax.patch b/packages/glibc/2.13/0026-pre20040117-pt_pax.patch deleted file mode 100644 index ec17d24..0000000 --- a/packages/glibc/2.13/0026-pre20040117-pt_pax.patch +++ /dev/null @@ -1,35 +0,0 @@ - - ---- - elf/elf.h | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - ---- a/elf/elf.h -+++ b/elf/elf.h -@@ -580,6 +580,7 @@ - #define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */ - #define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */ - #define PT_GNU_RELRO 0x6474e552 /* Read-only after relocation */ -+#define PT_PAX_FLAGS 0x65041580 /* Indicates PaX flag markings */ - #define PT_LOSUNW 0x6ffffffa - #define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */ - #define PT_SUNWSTACK 0x6ffffffb /* Stack segment */ -@@ -593,6 +594,18 @@ - #define PF_X (1 << 0) /* Segment is executable */ - #define PF_W (1 << 1) /* Segment is writable */ - #define PF_R (1 << 2) /* Segment is readable */ -+#define PF_PAGEEXEC (1 << 4) /* Enable PAGEEXEC */ -+#define PF_NOPAGEEXEC (1 << 5) /* Disable PAGEEXEC */ -+#define PF_SEGMEXEC (1 << 6) /* Enable SEGMEXEC */ -+#define PF_NOSEGMEXEC (1 << 7) /* Disable SEGMEXEC */ -+#define PF_MPROTECT (1 << 8) /* Enable MPROTECT */ -+#define PF_NOMPROTECT (1 << 9) /* Disable MPROTECT */ -+#define PF_RANDEXEC (1 << 10) /* Enable RANDEXEC */ -+#define PF_NORANDEXEC (1 << 11) /* Disable RANDEXEC */ -+#define PF_EMUTRAMP (1 << 12) /* Enable EMUTRAMP */ -+#define PF_NOEMUTRAMP (1 << 13) /* Disable EMUTRAMP */ -+#define PF_RANDMMAP (1 << 14) /* Enable RANDMMAP */ -+#define PF_NORANDMMAP (1 << 15) /* Disable RANDMMAP */ - #define PF_MASKOS 0x0ff00000 /* OS-specific */ - #define PF_MASKPROC 0xf0000000 /* Processor-specific */ - diff --git a/packages/glibc/2.13/0027-tests-sandbox-libdl-paths.patch b/packages/glibc/2.13/0027-tests-sandbox-libdl-paths.patch deleted file mode 100644 index 1c4ee59..0000000 --- a/packages/glibc/2.13/0027-tests-sandbox-libdl-paths.patch +++ /dev/null @@ -1,196 +0,0 @@ -when glibc runs its tests, it does so by invoking the local library loader. -in Gentoo, we build/run inside of our "sandbox" which itself is linked against -libdl (so that it can load libraries and pull out symbols). the trouble -is that when you upgrade from an older glibc to the new one, often times -internal symbols change name or abi. this is normally OK as you cannot use -libc.so from say version 2.3.6 but libpthread.so from say version 2.5, so -we always say "keep all of the glibc libraries from the same build". but -when glibc runs its tests, it uses dynamic paths to point to its new local -copies of libraries. if the test doesnt use libdl, then glibc doesnt add -its path, and when sandbox triggers the loading of libdl, glibc does so -from the host system system. this gets us into the case of all libraries -are from the locally compiled version of glibc except for libdl.so. - -Fix by Wormo - -http://bugs.gentoo.org/56898 - ---- - grp/tst_fgetgrent.sh | 3 ++- - iconvdata/run-iconv-test.sh | 2 +- - iconvdata/tst-table.sh | 5 ++++- - intl/tst-codeset.sh | 3 +++ - intl/tst-gettext.sh | 5 ++++- - intl/tst-gettext2.sh | 5 ++++- - intl/tst-translit.sh | 5 ++++- - malloc/tst-mtrace.sh | 5 ++++- - nptl/tst-tls6.sh | 4 ++-- - posix/globtest.sh | 2 +- - posix/tst-getconf.sh | 5 ++++- - posix/wordexp-tst.sh | 5 ++++- - 12 files changed, 37 insertions(+), 12 deletions(-) - ---- a/grp/tst_fgetgrent.sh -+++ b/grp/tst_fgetgrent.sh -@@ -24,7 +24,8 @@ - rtld_installed_name=$1; shift - - testout=${common_objpfx}/grp/tst_fgetgrent.out --library_path=${common_objpfx} -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn - - result=0 - ---- a/iconvdata/run-iconv-test.sh -+++ b/iconvdata/run-iconv-test.sh -@@ -34,7 +34,7 @@ - export GCONV_PATH - - # We have to have some directories in the library path. --LIBPATH=$codir:$codir/iconvdata -+LIBPATH=$codir:$codir/iconvdata:$codir/dlfcn - - # How the start the iconv(1) program. - ICONV='$codir/elf/ld.so --library-path $LIBPATH --inhibit-rpath ${from}.so \ ---- a/iconvdata/tst-table.sh -+++ b/iconvdata/tst-table.sh -@@ -59,8 +59,11 @@ - irreversible=${charset}.irreversible - fi - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # iconv in one direction. --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-table-from ${charset} \ - > ${objpfx}tst-${charset}.table - ---- a/intl/tst-codeset.sh -+++ b/intl/tst-codeset.sh -@@ -37,6 +37,9 @@ - LOCPATH=${common_objpfx}localedata - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - ${common_objpfx}elf/ld.so --library-path $common_objpfx \ - ${objpfx}tst-codeset > ${objpfx}tst-codeset.out - ---- a/intl/tst-gettext.sh -+++ b/intl/tst-gettext.sh -@@ -51,9 +51,12 @@ - LOCPATH=${common_objpfx}localedata - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # Now run the test. - MALLOC_TRACE=$malloc_trace LOCPATH=${objpfx}localedir:$LOCPATH \ --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-gettext > ${objpfx}tst-gettext.out ${objpfx}domaindir - - exit $? ---- a/intl/tst-gettext2.sh -+++ b/intl/tst-gettext2.sh -@@ -65,8 +65,11 @@ - LOCPATH=${objpfx}domaindir - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # Now run the test. --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-gettext2 > ${objpfx}tst-gettext2.out ${objpfx}domaindir && - cmp ${objpfx}tst-gettext2.out - < ${objpfx}tst-translit.out ${objpfx}domaindir - - exit $? ---- a/malloc/tst-mtrace.sh -+++ b/malloc/tst-mtrace.sh -@@ -24,9 +24,12 @@ - status=0 - trap "rm -f ${common_objpfx}malloc/tst-mtrace.leak; exit 1" 1 2 15 - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - MALLOC_TRACE=${common_objpfx}malloc/tst-mtrace.leak \ - LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${common_objpfx}malloc/tst-mtrace || status=1 - - if test $status -eq 0 && test -f ${common_objpfx}malloc/mtrace; then ---- a/nptl/tst-tls6.sh -+++ b/nptl/tst-tls6.sh -@@ -5,8 +5,8 @@ - rtld_installed_name=$1; shift - logfile=$common_objpfx/nptl/tst-tls6.out - --# We have to find libc and nptl --library_path=${common_objpfx}:${common_objpfx}nptl -+# We have to find libc and nptl (also libdl in case sandbox is in use) -+library_path=${common_objpfx}:${common_objpfx}nptl:${common_objpfx}/dlfcn - tst_tls5="${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \ - ${common_objpfx}/nptl/tst-tls5" - ---- a/posix/globtest.sh -+++ b/posix/globtest.sh -@@ -18,7 +18,7 @@ - esac - - # We have to find the libc and the NSS modules. --library_path=${common_objpfx}:${common_objpfx}nss:${common_objpfx}nis:${common_objpfx}db2:${common_objpfx}hesiod -+library_path=${common_objpfx}:${common_objpfx}nss:${common_objpfx}nis:${common_objpfx}db2:${common_objpfx}hesiod:${common_objpfx}/dlfcn - - # Since we use `sort' we must make sure to use the same locale everywhere. - LC_ALL=C ---- a/posix/tst-getconf.sh -+++ b/posix/tst-getconf.sh -@@ -10,7 +10,10 @@ - else - rtld_installed_name=$1; shift - runit() { -- ${elf_objpfx}${rtld_installed_name} --library-path ${common_objpfx} "$@" -+ -+ # make sure libdl is also in path in case sandbox is in use -+ library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ ${elf_objpfx}${rtld_installed_name} --library-path ${library_path} "$@" - } - fi - ---- a/posix/wordexp-tst.sh -+++ b/posix/wordexp-tst.sh -@@ -19,8 +19,11 @@ - " - export IFS - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - failed=0 --${elf_objpfx}${rtld_installed_name} --library-path ${common_objpfx} \ -+${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \ - ${common_objpfx}posix/wordexp-test '$*' > ${testout}1 - cat <<"EOF" | cmp - ${testout}1 >> $logfile || failed=1 - wordexp returned 0 diff --git a/packages/glibc/2.13/0028-dont-build-timezone.patch b/packages/glibc/2.13/0028-dont-build-timezone.patch deleted file mode 100644 index b0fb8fc..0000000 --- a/packages/glibc/2.13/0028-dont-build-timezone.patch +++ /dev/null @@ -1,17 +0,0 @@ -timezone data has been split into the package sys-libs/timezone-data - ---- - Makeconfig | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/Makeconfig -+++ b/Makeconfig -@@ -944,7 +944,7 @@ - stdlib stdio-common libio malloc string wcsmbs time dirent \ - grp pwd posix io termios resource misc socket sysvipc gmon \ - gnulib iconv iconvdata wctype manual shadow gshadow po argp \ -- crypt nss localedata timezone rt conform debug \ -+ crypt nss localedata rt conform debug \ - $(add-on-subdirs) $(dlfcn) $(binfmt-subdir) - - ifndef avoid-generated diff --git a/packages/glibc/2.13/0029-alpha-xstat.patch b/packages/glibc/2.13/0029-alpha-xstat.patch deleted file mode 100644 index 4fa9517..0000000 --- a/packages/glibc/2.13/0029-alpha-xstat.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- - sysdeps/unix/sysv/linux/kernel-features.h | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -386,6 +386,11 @@ - # define __ASSUME_GETDENTS32_D_TYPE 1 - #endif - -+/* Starting with version 2.6.4, alpha stat64 syscalls are available. */ -+#if __LINUX_KERNEL_VERSION >= 0x020604 && defined __alpha__ -+# define __ASSUME_STAT64_SYSCALL 1 -+#endif -+ - /* Starting with version 2.5.3, the initial location returned by `brk' - after exec is always rounded up to the next page. */ - #if __LINUX_KERNEL_VERSION >= 132355 diff --git a/packages/glibc/2.13/0030-alpha-creat.patch b/packages/glibc/2.13/0030-alpha-creat.patch deleted file mode 100644 index 6ef5278..0000000 --- a/packages/glibc/2.13/0030-alpha-creat.patch +++ /dev/null @@ -1,17 +0,0 @@ -alpha does not have a __NR_creat - -http://bugs.gentoo.org/227275 -http://sourceware.org/bugzilla/show_bug.cgi?id=6650 - ---- - sysdeps/unix/sysv/linux/wordsize-64/creat64.c | 4 ++++ - 1 file changed, 4 insertions(+) - ---- a/sysdeps/unix/sysv/linux/wordsize-64/creat64.c -+++ b/sysdeps/unix/sysv/linux/wordsize-64/creat64.c -@@ -1 +1,5 @@ - /* Defined as alias for the syscall. */ -+#include -+#ifndef __NR_creat -+#include "../../../../../io/creat64.c" -+#endif diff --git a/packages/glibc/2.13/0031-alpha_alpha-add-fdatasync-support.patch b/packages/glibc/2.13/0031-alpha_alpha-add-fdatasync-support.patch deleted file mode 100644 index b248cc6..0000000 --- a/packages/glibc/2.13/0031-alpha_alpha-add-fdatasync-support.patch +++ /dev/null @@ -1,122 +0,0 @@ -2009-07-25 Aurelien Jarno - - * sysdeps/unix/sysv/linux/kernel-features.h: define - __ASSUME_FDATASYNC. - * sysdeps/unix/sysv/linux/fdatasync.c: New file. - * sysdeps/unix/sysv/linux/Makefile: compile fdatasync.c with - -fexceptions. - * sysdeps/unix/sysv/linux/syscalls.list: Remove fdatasync. - - sysdeps/unix/sysv/linux/Makefile | 1 - sysdeps/unix/sysv/linux/fdatasync.c | 69 ++++++++++++++++++++++++++++++ - sysdeps/unix/sysv/linux/kernel-features.h | 6 ++ - sysdeps/unix/sysv/linux/syscalls.list | 1 - 4 files changed, 76 insertions(+), 1 deletion(-) - ---- a/sysdeps/unix/sysv/linux/Makefile -+++ b/sysdeps/unix/sysv/linux/Makefile -@@ -20,6 +20,7 @@ - setfsuid setfsgid makedev epoll_pwait signalfd \ - eventfd eventfd_read eventfd_write prlimit - -+CFLAGS-fdatasync.c = -fexceptions - CFLAGS-gethostid.c = -fexceptions - - sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h \ ---- /dev/null -+++ b/sysdeps/unix/sysv/linux/fdatasync.c -@@ -0,0 +1,69 @@ -+/* fdatasync -- synchronize at least the data part of a file with -+ the underlying media. Linux version. -+ -+ Copyright (C) 2007 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 -+ 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 -+ -+#if defined __NR_fdatasync && !defined __ASSUME_FDATASYNC -+static int __have_no_fdatasync; -+#endif -+ -+static int -+do_fdatasync (int fd) -+{ -+#ifdef __ASSUME_FDATASYNC -+ return INLINE_SYSCALL (fdatasync, 1, fd); -+#elif defined __NR_fdatasync -+ if (!__builtin_expect (__have_no_fdatasync, 0)) -+ { -+ int result = INLINE_SYSCALL (fdatasync, 1, fd); -+ if (__builtin_expect (result, 0) != -1 || errno != ENOSYS) -+ return result; -+ -+ __have_no_fdatasync = 1; -+ } -+#endif -+ return INLINE_SYSCALL (fsync, 1, fd); -+} -+ -+int -+__fdatasync (int fd) -+{ -+ if (SINGLE_THREAD_P) -+ return do_fdatasync (fd); -+ -+ int oldtype = LIBC_CANCEL_ASYNC (); -+ -+ int result = do_fdatasync (fd); -+ -+ LIBC_CANCEL_RESET (oldtype); -+ -+ return result; -+} -+ -+weak_alias (__fdatasync, fdatasync) -+ ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -459,6 +459,12 @@ - # define __ASSUME_FUTEX_LOCK_PI 1 - #endif - -+/* Support for fsyncdata syscall was added in 2.6.22 on alpha, but it -+ was already present in 2.0 kernels on other architectures. */ -+#if (!defined __alpha || __LINUX_KERNEL_VERSION >= 0x020616) -+# define __ASSUME_FDATASYNC 1 -+#endif -+ - /* Support for utimensat syscall was added in 2.6.22, on SH - only after 2.6.22-rc1. */ - #if __LINUX_KERNEL_VERSION >= 0x020616 \ ---- a/sysdeps/unix/sysv/linux/syscalls.list -+++ b/sysdeps/unix/sysv/linux/syscalls.list -@@ -11,7 +11,6 @@ - epoll_create1 EXTRA epoll_create1 i:i epoll_create1 - epoll_ctl EXTRA epoll_ctl i:iiip epoll_ctl - epoll_wait EXTRA epoll_wait Ci:ipii epoll_wait --fdatasync - fdatasync Ci:i fdatasync - flock - flock i:ii __flock flock - fork - fork i: __libc_fork __fork fork - get_kernel_syms EXTRA get_kernel_syms i:p get_kernel_syms diff --git a/packages/glibc/2.13/0032-ppc-atomic.patch b/packages/glibc/2.13/0032-ppc-atomic.patch deleted file mode 100644 index a38c1c5..0000000 --- a/packages/glibc/2.13/0032-ppc-atomic.patch +++ /dev/null @@ -1,412 +0,0 @@ -sniped from suse - ---- - sysdeps/powerpc/bits/atomic.h | 66 ++++++++++----------- - sysdeps/powerpc/powerpc32/bits/atomic.h | 16 ++--- - sysdeps/powerpc/powerpc64/bits/atomic.h | 98 ++++++++++++++++---------------- - 3 files changed, 90 insertions(+), 90 deletions(-) - ---- a/sysdeps/powerpc/bits/atomic.h -+++ b/sysdeps/powerpc/bits/atomic.h -@@ -85,14 +85,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile ( \ -- "1: lwarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " cmpw %0,%2\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -102,14 +102,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ - " cmpw %0,%2\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -118,12 +118,12 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile ( \ -- "1: lwarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -- " stwcx. %3,0,%2\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ -+ " stwcx. %2,%y1\n" \ - " bne- 1b\n" \ - " " __ARCH_ACQ_INSTR \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -132,11 +132,11 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_REL "\n" \ -- " stwcx. %3,0,%2\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ -+ " stwcx. %2,%y1\n" \ - " bne- 1b" \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -144,12 +144,12 @@ - #define __arch_atomic_exchange_and_add_32(mem, value) \ - ({ \ - __typeof (*mem) __val, __tmp; \ -- __asm __volatile ("1: lwarx %0,0,%3\n" \ -- " add %1,%0,%4\n" \ -- " stwcx. %1,0,%3\n" \ -+ __asm __volatile ("1: lwarx %0,%y2\n" \ -+ " add %1,%0,%3\n" \ -+ " stwcx. %1,%y2\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -157,12 +157,12 @@ - #define __arch_atomic_increment_val_32(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: lwarx %0,0,%2\n" \ -+ __asm __volatile ("1: lwarx %0,%y1\n" \ - " addi %0,%0,1\n" \ -- " stwcx. %0,0,%2\n" \ -+ " stwcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -170,27 +170,27 @@ - #define __arch_atomic_decrement_val_32(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: lwarx %0,0,%2\n" \ -+ __asm __volatile ("1: lwarx %0,%y1\n" \ - " subi %0,%0,1\n" \ -- " stwcx. %0,0,%2\n" \ -+ " stwcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) - - #define __arch_atomic_decrement_if_positive_32(mem) \ - ({ int __val, __tmp; \ -- __asm __volatile ("1: lwarx %0,0,%3\n" \ -+ __asm __volatile ("1: lwarx %0,%y2\n" \ - " cmpwi 0,%0,0\n" \ - " addi %1,%0,-1\n" \ - " ble 2f\n" \ -- " stwcx. %1,0,%3\n" \ -+ " stwcx. %1,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) ---- a/sysdeps/powerpc/powerpc32/bits/atomic.h -+++ b/sysdeps/powerpc/powerpc32/bits/atomic.h -@@ -44,14 +44,14 @@ - ({ \ - unsigned int __tmp; \ - __asm __volatile ( \ -- "1: lwarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -60,14 +60,14 @@ - ({ \ - unsigned int __tmp; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) ---- a/sysdeps/powerpc/powerpc64/bits/atomic.h -+++ b/sysdeps/powerpc/powerpc64/bits/atomic.h -@@ -44,14 +44,14 @@ - ({ \ - unsigned int __tmp, __tmp2; \ - __asm __volatile (" clrldi %1,%1,32\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y2" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%1,%0\n" \ - " bne 2f\n" \ -- " stwcx. %4,0,%2\n" \ -+ " stwcx. %4,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp), "=r" (__tmp2) \ -- : "b" (mem), "1" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "=r" (__tmp2), "+Z" (*(mem)) \ -+ : "1" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -61,14 +61,14 @@ - unsigned int __tmp, __tmp2; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ - " clrldi %1,%1,32\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y2" MUTEX_HINT_REL "\n" \ - " subf. %0,%1,%0\n" \ - " bne 2f\n" \ -- " stwcx. %4,0,%2\n" \ -+ " stwcx. %4,%y2\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp), "=r" (__tmp2) \ -- : "b" (mem), "1" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "=r" (__tmp2), "+Z" (*(mem)) \ -+ : "1" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -82,14 +82,14 @@ - ({ \ - unsigned long __tmp; \ - __asm __volatile ( \ -- "1: ldarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -98,14 +98,14 @@ - ({ \ - unsigned long __tmp; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_REL "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -115,14 +115,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile ( \ -- "1: ldarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " cmpd %0,%2\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -132,14 +132,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ - " cmpd %0,%2\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -148,12 +148,12 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -- " stdcx. %3,0,%2\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ -+ " stdcx. %2,%y1\n" \ - " bne- 1b\n" \ - " " __ARCH_ACQ_INSTR \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -162,11 +162,11 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_REL "\n" \ -- " stdcx. %3,0,%2\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ -+ " stdcx. %2,%y1\n" \ - " bne- 1b" \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -174,12 +174,12 @@ - #define __arch_atomic_exchange_and_add_64(mem, value) \ - ({ \ - __typeof (*mem) __val, __tmp; \ -- __asm __volatile ("1: ldarx %0,0,%3\n" \ -- " add %1,%0,%4\n" \ -- " stdcx. %1,0,%3\n" \ -+ __asm __volatile ("1: ldarx %0,%y2\n" \ -+ " add %1,%0,%3\n" \ -+ " stdcx. %1,%y2\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -187,12 +187,12 @@ - #define __arch_atomic_increment_val_64(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: ldarx %0,0,%2\n" \ -+ __asm __volatile ("1: ldarx %0,%y1\n" \ - " addi %0,%0,1\n" \ -- " stdcx. %0,0,%2\n" \ -+ " stdcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -200,27 +200,27 @@ - #define __arch_atomic_decrement_val_64(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: ldarx %0,0,%2\n" \ -+ __asm __volatile ("1: ldarx %0,%y1\n" \ - " subi %0,%0,1\n" \ -- " stdcx. %0,0,%2\n" \ -+ " stdcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) - - #define __arch_atomic_decrement_if_positive_64(mem) \ - ({ int __val, __tmp; \ -- __asm __volatile ("1: ldarx %0,0,%3\n" \ -+ __asm __volatile ("1: ldarx %0,%y2\n" \ - " cmpdi 0,%0,0\n" \ - " addi %1,%0,-1\n" \ - " ble 2f\n" \ -- " stdcx. %1,0,%3\n" \ -+ " stdcx. %1,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) diff --git a/packages/glibc/2.13/0033-mips_shn_undef-hack.patch b/packages/glibc/2.13/0033-mips_shn_undef-hack.patch deleted file mode 100644 index 2f9d656..0000000 --- a/packages/glibc/2.13/0033-mips_shn_undef-hack.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- - elf/dl-lookup.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/elf/dl-lookup.c -+++ b/elf/dl-lookup.c -@@ -301,6 +301,12 @@ - /* FALLTHROUGH */ - case STB_GLOBAL: - success: -+#ifdef __mips__ -+ /* HACK: MIPS marks its lazy evaluation stubs with SHN_UNDEF -+ symbols, we skip them. */ -+ if (sym->st_shndx == SHN_UNDEF) -+ break; -+#endif - /* Global definition. Just what we need. */ - result->s = sym; - result->m = (struct link_map *) map; diff --git a/packages/glibc/2.13/0034-alpha-atfcts.patch b/packages/glibc/2.13/0034-alpha-atfcts.patch deleted file mode 100644 index 2eff918..0000000 --- a/packages/glibc/2.13/0034-alpha-atfcts.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- - sysdeps/unix/sysv/linux/kernel-features.h | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -437,7 +437,8 @@ - the code. On PPC they were introduced in 2.6.17-rc1, - on SH in 2.6.19-rc1. */ - #if __LINUX_KERNEL_VERSION >= 0x020611 \ -- && (!defined __sh__ || __LINUX_KERNEL_VERSION >= 0x020613) -+ && (!defined __sh__ || __LINUX_KERNEL_VERSION >= 0x020613) \ -+ && (!defined __alpha__) - # define __ASSUME_ATFCTS 1 - #endif - diff --git a/packages/glibc/2.13/0035-syslog.patch b/packages/glibc/2.13/0035-syslog.patch deleted file mode 100644 index a2d9722..0000000 --- a/packages/glibc/2.13/0035-syslog.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- - misc/syslog.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/misc/syslog.c -+++ b/misc/syslog.c -@@ -152,7 +152,7 @@ - #define INTERNALLOG LOG_ERR|LOG_CONS|LOG_PERROR|LOG_PID - /* Check for invalid bits. */ - if (pri & ~(LOG_PRIMASK|LOG_FACMASK)) { -- syslog(INTERNALLOG, -+ __syslog(INTERNALLOG, - "syslog: unknown facility/priority: %x", pri); - pri &= LOG_PRIMASK|LOG_FACMASK; - } diff --git a/packages/glibc/2.13/0036-debug-readlink_chk-readklinkat_chk.patch b/packages/glibc/2.13/0036-debug-readlink_chk-readklinkat_chk.patch deleted file mode 100644 index 0b930f3..0000000 --- a/packages/glibc/2.13/0036-debug-readlink_chk-readklinkat_chk.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- - debug/readlink_chk.c | 2 +- - debug/readlinkat_chk.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/debug/readlink_chk.c -+++ b/debug/readlink_chk.c -@@ -25,7 +25,7 @@ - - - ssize_t --__readlink_chk (const char *path, void *buf, size_t len, size_t buflen) -+__readlink_chk (const char *path, char *buf, size_t len, size_t buflen) - { - if (len > buflen) - __chk_fail (); ---- a/debug/readlinkat_chk.c -+++ b/debug/readlinkat_chk.c -@@ -21,7 +21,7 @@ - - - ssize_t --__readlinkat_chk (int fd, const char *path, void *buf, size_t len, -+__readlinkat_chk (int fd, const char *path, char *buf, size_t len, - size_t buflen) - { - if (len > buflen) diff --git a/packages/glibc/2.13/0037-march-i686.patch b/packages/glibc/2.13/0037-march-i686.patch deleted file mode 100644 index e5ad2e0..0000000 --- a/packages/glibc/2.13/0037-march-i686.patch +++ /dev/null @@ -1,37 +0,0 @@ -2007-02-15 Khem Raj - - * sysdeps/unix/sysv/linux/i386/sysdep.h: Re-define __i686. - * nptl/sysdeps/pthread/pt-initfini.c: Ditto. - ---- - nptl/sysdeps/pthread/pt-initfini.c | 5 +++++ - sysdeps/unix/sysv/linux/i386/sysdep.h | 4 ++++ - 2 files changed, 9 insertions(+) - ---- a/nptl/sysdeps/pthread/pt-initfini.c -+++ b/nptl/sysdeps/pthread/pt-initfini.c -@@ -45,6 +45,11 @@ - /* Embed an #include to pull in the alignment and .end directives. */ - asm ("\n#include \"defs.h\""); - -+asm ("\n#if defined __i686 && defined __ASSEMBLER__"); -+asm ("\n#undef __i686"); -+asm ("\n#define __i686 __i686"); -+asm ("\n#endif"); -+ - /* The initial common code ends here. */ - asm ("\n/*@HEADER_ENDS*/"); - ---- a/sysdeps/unix/sysv/linux/i386/sysdep.h -+++ b/sysdeps/unix/sysv/linux/i386/sysdep.h -@@ -29,6 +29,10 @@ - #include - #include - -+#if defined __i686 && defined __ASSEMBLER__ -+#undef __i686 -+#define __i686 __i686 -+#endif - - /* For Linux we can use the system call table in the header file - /usr/include/asm/unistd.h diff --git a/packages/glibc/2.13/0038-typedef-caddr.patch b/packages/glibc/2.13/0038-typedef-caddr.patch deleted file mode 100644 index 384338a..0000000 --- a/packages/glibc/2.13/0038-typedef-caddr.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- - posix/sys/types.h | 3 +++ - sunrpc/rpc/types.h | 3 +++ - 2 files changed, 6 insertions(+) - ---- a/posix/sys/types.h -+++ b/posix/sys/types.h -@@ -114,7 +114,10 @@ - #ifdef __USE_BSD - # ifndef __daddr_t_defined - typedef __daddr_t daddr_t; -+# if ! defined(caddr_t) && ! defined(__caddr_t_defined) - typedef __caddr_t caddr_t; -+# define __caddr_t_defined -+# endif - # define __daddr_t_defined - # endif - #endif ---- a/sunrpc/rpc/types.h -+++ b/sunrpc/rpc/types.h -@@ -86,7 +86,10 @@ - #endif - #ifndef __daddr_t_defined - typedef __daddr_t daddr_t; -+# if ! defined(caddr_t) && ! defined(__caddr_t_defined) - typedef __caddr_t caddr_t; -+# define __caddr_t_defined -+# endif - # define __daddr_t_defined - #endif - diff --git a/packages/glibc/2.13/0039-fix-rpc_parse-format.patch b/packages/glibc/2.13/0039-fix-rpc_parse-format.patch deleted file mode 100644 index 341d541..0000000 --- a/packages/glibc/2.13/0039-fix-rpc_parse-format.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 5874510faaf3cbd0bb112aaacab9f225002beed1 -Author: Joseph Myers -Date: Tue Nov 8 23:44:51 2016 +0000 - - Fix rpcgen buffer overrun (bug 20790). - - Building with GCC 7 produces an error building rpcgen: - - rpc_parse.c: In function 'get_prog_declaration': - rpc_parse.c:543:25: error: may write a terminating nul past the end of the destination [-Werror=format-length=] - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ~~~~^ - rpc_parse.c:543:5: note: format output between 5 and 14 bytes into a destination of size 10 - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - That buffer overrun is for the case where the .x file declares a - program with a million arguments. The strcpy two lines above can - generate a buffer overrun much more simply for a long argument name. - - The limit on length of line read by rpcgen (MAXLINESIZE == 1024) - provides a bound on the buffer size needed, so this patch just changes - the buffer size to MAXLINESIZE to avoid both possible buffer - overruns. A testcase is added that rpcgen does not crash with a - 500-character argument name, where it previously crashed. - - It would not at all surprise me if there are many other ways of - crashing rpcgen with either valid or invalid input; fuzz testing would - likely find various such bugs, though I don't think they are that - important to fix (rpcgen is not that likely to be used with untrusted - .x files as input). (As well as fuzz-findable bugs there are probably - also issues when various int variables get overflowed on very large - input.) The test infrastructure for rpcgen-not-crashing tests would - need extending if tests are to be added for cases where rpcgen should - produce an error, as opposed to cases where it should succeed. - - Tested for x86_64 and x86. - - [BZ #20790] - * sunrpc/rpc_parse.c (get_prog_declaration): Increase buffer size - to MAXLINESIZE. - * sunrpc/bug20790.x: New file. - * sunrpc/Makefile [$(run-built-tests) = yes] (rpcgen-tests): New - variable. - [$(run-built-tests) = yes] (tests-special): Add $(rpcgen-tests). - [$(run-built-tests) = yes] ($(rpcgen-tests)): New rule. - ---- - sunrpc/rpc_parse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sunrpc/rpc_parse.c -+++ b/sunrpc/rpc_parse.c -@@ -521,7 +521,7 @@ - get_prog_declaration (declaration * dec, defkind dkind, int num /* arg number */ ) - { - token tok; -- char name[10]; /* argument name */ -+ char name[MAXLINESIZE]; /* argument name */ - - if (dkind == DEF_PROGRAM) - { diff --git a/packages/glibc/2.13/0040-nis-bogus-conditional.patch b/packages/glibc/2.13/0040-nis-bogus-conditional.patch deleted file mode 100644 index 732b859..0000000 --- a/packages/glibc/2.13/0040-nis-bogus-conditional.patch +++ /dev/null @@ -1,64 +0,0 @@ -commit f88759ea9bd3c8d8fef28f123ba9767cb0e421a3 -Author: Joseph Myers -Date: Wed Dec 21 23:44:01 2016 +0000 - - Fix nss_nisplus build with mainline GCC (bug 20978). - - glibc build with current mainline GCC fails because - nis/nss_nisplus/nisplus-alias.c contains code - - if (name != NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; - } - - char buf[strlen (name) + 9 + tablename_len]; - - producing an error about strlen being called on a pointer that is - always NULL (and a subsequent use of that pointer with a %s format in - snprintf). - - As Andreas noted, the bogus conditional comes from a 1997 change: - - - if (name == NULL || strlen(name) > 8) - - return NSS_STATUS_NOTFOUND; - - else - + if (name != NULL || strlen(name) <= 8) - - So the intention is clearly to return an error for NULL name. - - This patch duly inverts the sense of the conditional. It fixes the - build with GCC mainline, and passes usual glibc testsuite testing for - x86_64. However, I have not tried any actual substantive nisplus - testing, do not have an environment for such testing, and do not know - whether it is possible that strlen (name) or tablename_len might be - large so that the VLA for buf is actually a security issue. However, - if it is a security issue, there are plenty of other similar instances - in the nisplus code (that haven't been hidden by a bogus comparison - with NULL) - and nis_table.c:__create_ib_request uses strdupa on the - string passed to nis_list, so a local fix in the caller wouldn't - suffice anyway (see bug 20987). (Calls to strdupa and other such - macros that use alloca must be considered equally questionable - regarding stack overflow issues as direct calls to alloca and VLA - declarations.) - - [BZ #20978] - * nis/nss_nisplus/nisplus-alias.c (_nss_nisplus_getaliasbyname_r): - Compare name == NULL, not name != NULL. - ---- - nis/nss_nisplus/nisplus-alias.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/nis/nss_nisplus/nisplus-alias.c -+++ b/nis/nss_nisplus/nisplus-alias.c -@@ -293,7 +293,7 @@ - return status; - } - -- if (name != NULL) -+ if (name == NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; diff --git a/packages/glibc/2.13/0041-initfini-ppc64.patch b/packages/glibc/2.13/0041-initfini-ppc64.patch deleted file mode 100644 index c63c654..0000000 --- a/packages/glibc/2.13/0041-initfini-ppc64.patch +++ /dev/null @@ -1,24 +0,0 @@ -Prevent erroneous inline optimization of initfini.s on PowerPC64. - -The problem and the fix was reported there: -http://sourceware.org/ml/libc-alpha/2012-01/msg00195.html -Git commit: -commit 1fe05ea95e1460e5e1cf1568a8ce3982f0f02de6 -Author: Ryan S. Arnold -Date: Tue May 3 17:26:17 2011 -0500 - ---- - sysdeps/powerpc/powerpc64/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sysdeps/powerpc/powerpc64/Makefile -+++ b/sysdeps/powerpc/powerpc64/Makefile -@@ -28,7 +28,7 @@ - ifneq ($(elf),no) - # The initfini generation code doesn't work in the presence of -fPIC, so - # we use -fpic instead which is much better. --CFLAGS-initfini.s += -fpic -O1 -+CFLAGS-initfini.s += -fpic -O1 -fno-inline - endif - endif - diff --git a/packages/glibc/2.13/0042-obstack-common.patch b/packages/glibc/2.13/0042-obstack-common.patch deleted file mode 100644 index 1993be2..0000000 --- a/packages/glibc/2.13/0042-obstack-common.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit 39b1f6172a2f9ddc74a8f82d6e84dd13b22dbaf2 -Author: Peter Collingbourne -Date: Wed May 15 20:28:08 2013 +0200 - - Move _obstack_compat out of common - - it is impossible to create an alias of a common symbol (as - compat_symbol does), because common symbols do not have a section or - an offset until linked. GNU as tolerates aliases of common symbols by - simply creating another common symbol, but other assemblers (notably - LLVM's integrated assembler) are less tolerant. - - 2013-05-15 Peter Collingbourne - - * malloc/obstack.c (_obstack_compat): Add initializer. - - - ---- - malloc/obstack.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/malloc/obstack.c -+++ b/malloc/obstack.c -@@ -117,7 +117,7 @@ - /* A looong time ago (before 1994, anyway; we're not sure) this global variable - was used by non-GNU-C macros to avoid multiple evaluation. The GNU C - library still exports it because somebody might use it. */ --struct obstack *_obstack_compat; -+struct obstack *_obstack_compat = 0; - compat_symbol (libc, _obstack_compat, _obstack, GLIBC_2_0); - # endif - # endif diff --git a/packages/glibc/2.13/0043-new-tools.patch b/packages/glibc/2.13/0043-new-tools.patch deleted file mode 100644 index 9f71001..0000000 --- a/packages/glibc/2.13/0043-new-tools.patch +++ /dev/null @@ -1,72 +0,0 @@ ---- - configure | 8 ++++---- - configure.in | 8 ++++---- - 2 files changed, 8 insertions(+), 8 deletions(-) - ---- a/configure -+++ b/configure -@@ -5041,7 +5041,7 @@ - ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.4* | 4.[0-9]* ) -+ 3.4* | [4-9].* | [1-9][0-9]* ) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5104,7 +5104,7 @@ - ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.79* | 3.[89]*) -+ 3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5231,7 +5231,7 @@ - ac_prog_version=`$MAKEINFO --version 2>&1 | sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 4.*) -+ [4-9].*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5291,7 +5291,7 @@ - # Found it, now check the version. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking version of $SED" >&5 - $as_echo_n "checking version of $SED... " >&6; } -- ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed version \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed[^0-9]* \([0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; - 3.0[2-9]*|3.[1-9]*|[4-9]*) ---- a/configure.in -+++ b/configure.in -@@ -1026,11 +1026,11 @@ - # These programs are version sensitive. - AC_CHECK_TOOL_PREFIX - AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v, -- [version \([egcygnustpi-]*[0-9.]*\)], [3.4* | 4.[0-9]* ], -+ [version \([egcygnustpi-]*[0-9.]*\)], [3.4* | [4-9].* | [1-9][0-9].* ], - critic_missing="$critic_missing gcc") - AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version, - [GNU Make[^0-9]*\([0-9][0-9.]*\)], -- [3.79* | 3.[89]*], critic_missing="$critic_missing make") -+ [3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*], critic_missing="$critic_missing make") - - AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version, - [GNU gettext.* \([0-9]*\.[0-9.]*\)], -@@ -1038,10 +1038,10 @@ - MSGFMT=: aux_missing="$aux_missing msgfmt") - AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version, - [GNU texinfo.* \([0-9][0-9.]*\)], -- [4.*], -+ [[4-9].*], - MAKEINFO=: aux_missing="$aux_missing makeinfo") - AC_CHECK_PROG_VER(SED, sed, --version, -- [GNU sed version \([0-9]*\.[0-9.]*\)], -+ [GNU sed[^0-9]* \([0-9]*\.[0-9.]*\)], - [3.0[2-9]*|3.[1-9]*|[4-9]*], - SED=: aux_missing="$aux_missing sed") - diff --git a/packages/glibc/2.13/0044-strftime-multiple-stmts.patch b/packages/glibc/2.13/0044-strftime-multiple-stmts.patch deleted file mode 100644 index e544b33..0000000 --- a/packages/glibc/2.13/0044-strftime-multiple-stmts.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb -Author: Joseph Myers -Date: Tue Jun 27 17:12:13 2017 +0000 - - Fix strftime build with GCC 8. - - Building with current GCC mainline fails with: - - strftime_l.c: In function '__strftime_internal': - strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros] - digits = d > width ? d : width; \ - ^ - strftime_l.c:1260:6: note: in expansion of macro 'DO_NUMBER' - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - ^~~~~~~~~ - strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this 'else' clause - else - ^~~~ - - In fact this particular instance is harmless; the code looks like: - - if (modifier == L_('O')) - goto bad_format; - else - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - - and because of the goto, it doesn't matter that part of the expansion - isn't under the "else" conditional. But it's also clearly bad style - to rely on that. This patch changes DO_NUMBER and DO_NUMBER_SPACEPAD - to use do { } while (0) to avoid such problems. - - Tested (full testsuite) for x86_64 (GCC 6), and with - build-many-glibcs.py with GCC mainline, in conjunction with my libgcc - patch . - - * time/strftime_l.c (DO_NUMBER): Define using do { } while (0). - (DO_NUMBER_SPACEPAD): Likewise. - ---- - time/strftime_l.c | 22 ++++++++++++++++------ - 1 file changed, 16 insertions(+), 6 deletions(-) - ---- a/time/strftime_l.c -+++ b/time/strftime_l.c -@@ -742,12 +742,22 @@ - format_char = *f; - switch (format_char) - { --#define DO_NUMBER(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number --#define DO_NUMBER_SPACEPAD(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number_spacepad -+#define DO_NUMBER(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number; \ -+ } \ -+ while (0) -+#define DO_NUMBER_SPACEPAD(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number_spacepad; \ -+ } \ -+ while (0) - - case L_('%'): - if (modifier != 0) diff --git a/packages/glibc/2.13/0045-if_nametoindex-size-check.patch b/packages/glibc/2.13/0045-if_nametoindex-size-check.patch deleted file mode 100644 index 5803db5..0000000 --- a/packages/glibc/2.13/0045-if_nametoindex-size-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 2180fee114b778515b3f560e5ff1e795282e60b0 -Author: Steve Ellcey -Date: Wed Nov 15 08:58:48 2017 -0800 - - Check length of ifname before copying it into to ifreq structure. - - [BZ #22442] - * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): - Check if ifname is too long. - ---- - sysdeps/unix/sysv/linux/if_index.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/sysdeps/unix/sysv/linux/if_index.c -+++ b/sysdeps/unix/sysv/linux/if_index.c -@@ -54,6 +54,12 @@ - if (fd < 0) - return 0; - -+ if (strlen (ifname) >= IFNAMSIZ) -+ { -+ __set_errno (ENODEV); -+ return 0; -+ } -+ - strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name)); - if (__ioctl (fd, SIOCGIFINDEX, &ifr) < 0) - { diff --git a/packages/glibc/2.13/0046-utmp-nonstring.patch b/packages/glibc/2.13/0046-utmp-nonstring.patch deleted file mode 100644 index b789724..0000000 --- a/packages/glibc/2.13/0046-utmp-nonstring.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit 7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c -Author: Martin Sebor -Date: Wed Nov 15 17:39:59 2017 -0700 - - The -Wstringop-truncation option new in GCC 8 detects common misuses - of the strncat and strncpy function that may result in truncating - the copied string before the terminating NUL. To avoid false positive - warnings for correct code that intentionally creates sequences of - characters that aren't guaranteed to be NUL-terminated, arrays that - are intended to store such sequences should be decorated with a new - nonstring attribute. This change add this attribute to Glibc and - uses it to suppress such false positives. - - ChangeLog: - * misc/sys/cdefs.h (__attribute_nonstring__): New macro. - * sysdeps/gnu/bits/utmp.h (struct utmp): Use it. - * sysdeps/unix/sysv/linux/s390/bits/utmp.h (struct utmp): Same. - ---- - misc/sys/cdefs.h | 9 +++++++++ - sysdeps/gnu/bits/utmp.h | 9 ++++++--- - sysdeps/unix/sysv/linux/s390/bits/utmp.h | 9 ++++++--- - 3 files changed, 21 insertions(+), 6 deletions(-) - ---- a/misc/sys/cdefs.h -+++ b/misc/sys/cdefs.h -@@ -350,6 +350,15 @@ - # endif - #endif - -+#if __GNUC_PREREQ (8, 0) -+/* Describes a char array whose address can safely be passed as the first -+ argument to strncpy and strncat, as the char array is not necessarily -+ a NUL-terminated string. */ -+# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -+#else -+# define __attribute_nonstring__ -+#endif -+ - #include - - #if defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH ---- a/sysdeps/gnu/bits/utmp.h -+++ b/sysdeps/gnu/bits/utmp.h -@@ -61,10 +61,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled ---- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h -+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h -@@ -61,10 +61,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled diff --git a/packages/glibc/2.13/0047-getlogin_r-use-strnlen.patch b/packages/glibc/2.13/0047-getlogin_r-use-strnlen.patch deleted file mode 100644 index 15a16bd..0000000 --- a/packages/glibc/2.13/0047-getlogin_r-use-strnlen.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 4bae615022cb5a5da79ccda83cc6c9ba9f2d479c -Author: Joseph Myers -Date: Wed Nov 22 18:44:23 2017 +0000 - - Avoid use of strlen in getlogin_r (bug 22447). - - Building glibc with current mainline GCC fails, among other reasons, - because of an error for use of strlen on the nonstring ut_user field. - This patch changes the problem code in getlogin_r to use __strnlen - instead. It also needs to set the trailing NUL byte of the result - explicitly, because of the case where ut_user does not have such a - trailing NUL byte (but the result should always have one). - - Tested for x86_64. Also tested that, in conjunction with - , it fixes - the build for arm with mainline GCC. - - [BZ #22447] - * sysdeps/unix/getlogin_r.c (__getlogin_r): Use __strnlen not - strlen to compute length of ut_user and set trailing NUL byte of - result explicitly. - ---- - sysdeps/unix/getlogin_r.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - ---- a/sysdeps/unix/getlogin_r.c -+++ b/sysdeps/unix/getlogin_r.c -@@ -83,7 +83,7 @@ - - if (result == 0) - { -- size_t needed = strlen (ut->ut_user) + 1; -+ size_t needed = __strnlen (ut->ut_user, UT_NAMESIZE) + 1; - - if (needed > name_len) - { -@@ -92,7 +92,8 @@ - } - else - { -- memcpy (name, ut->ut_user, needed); -+ memcpy (name, ut->ut_user, needed - 1); -+ name[needed - 1] = 0; - result = 0; - } - } diff --git a/packages/glibc/2.13/0048-zic.c-use-memcpy.patch b/packages/glibc/2.13/0048-zic.c-use-memcpy.patch deleted file mode 100644 index 4c89446..0000000 --- a/packages/glibc/2.13/0048-zic.c-use-memcpy.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit e69897bf202e18034cbef26f363bae64de70a196 -Author: Paul Eggert -Date: Sun Nov 12 22:00:28 2017 -0800 - - timezone: pacify GCC -Wstringop-truncation - - Problem reported by Martin Sebor in: - https://sourceware.org/ml/libc-alpha/2017-11/msg00336.html - * timezone/zic.c (writezone): Use memcpy, not strncpy. - ---- - timezone/zic.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/timezone/zic.c -+++ b/timezone/zic.c -@@ -1648,7 +1648,7 @@ - #define DO(field) (void) fwrite((void *) tzh.field, \ - (size_t) sizeof tzh.field, (size_t) 1, fp) - tzh = tzh0; -- (void) strncpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); -+ memcpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); - tzh.tzh_version[0] = ZIC_VERSION; - convert(eitol(thistypecnt), tzh.tzh_ttisgmtcnt); - convert(eitol(thistypecnt), tzh.tzh_ttisstdcnt); diff --git a/packages/glibc/2.13/chksum b/packages/glibc/2.13/chksum deleted file mode 100644 index 55c5c6c..0000000 --- a/packages/glibc/2.13/chksum +++ /dev/null @@ -1,12 +0,0 @@ -md5 glibc-2.13.tar.xz cc5d8b1b994fb3b870222565c79853ca -sha1 glibc-2.13.tar.xz 38e7d510b41a2c36eb392c79eb5c80e0ec35a7f2 -sha256 glibc-2.13.tar.xz 98ee47fc77b01d5805e2cad3ed8e5515220ff32626a049dff3d5529b8f8bdcc1 -sha512 glibc-2.13.tar.xz e956eb9f9644bd6639e2259cc5ddf90689dffcf9cce85de8b7e1ff0df0c333c13bbf9d2b409ca6b0ba5b53dbb921a84e6a07f763adceb745845c9d0cf0777216 -md5 glibc-2.13.tar.bz2 38808215a7c40aa0bb47a5e6d3d12475 -sha1 glibc-2.13.tar.bz2 14d83dced873a21a3da6a0bfa0926f40d82ef980 -sha256 glibc-2.13.tar.bz2 0173c92a0545e6d99a46a4fbed2da00ba26556f5c6198e2f9f1631ed5318dbb2 -sha512 glibc-2.13.tar.bz2 7fdae9acdbe8cbfda008f107ffd1559c0163ff70730a5bc618f1f15b64096a813a3495e0b2d2be7b7206bef3ed9ca67a68fd2004c8275ffeffa38b70c80887e0 -md5 glibc-2.13.tar.gz fafabe01cb9748acb0a11a6879ebaa7e -sha1 glibc-2.13.tar.gz 99510a8b19aa822a05d8323d1bb25241579bc006 -sha256 glibc-2.13.tar.gz bd90d6119bcc2898befd6e1bbb2cb1ed3bb1c2997d5eaa6fdbca4ee16191a906 -sha512 glibc-2.13.tar.gz 8b94a42a243f728c5ae58e5197e850241f11aafdd09ecc1df63bceb9df3f769e018cbcf3af3b3a09da68fd238d52e3026434a8dc825fd8fdc6ecc16962cf8d32 diff --git a/packages/glibc/2.13/version.desc b/packages/glibc/2.13/version.desc deleted file mode 100644 index fcfe389..0000000 --- a/packages/glibc/2.13/version.desc +++ /dev/null @@ -1 +0,0 @@ -obsolete='yes' diff --git a/packages/glibc/2.14.1/0000-respect-env-CPPFLAGS.patch b/packages/glibc/2.14.1/0000-respect-env-CPPFLAGS.patch deleted file mode 100644 index 8bb8679..0000000 --- a/packages/glibc/2.14.1/0000-respect-env-CPPFLAGS.patch +++ /dev/null @@ -1,17 +0,0 @@ -Respect environment CPPFLAGS when we run ./configure so we can inject -random -D things without having to set CFLAGS/ASFLAGS - ---- - Makeconfig | 1 + - 1 file changed, 1 insertion(+) - ---- a/Makeconfig -+++ b/Makeconfig -@@ -699,6 +699,7 @@ - $(foreach lib,$(libof-$(basename $(@F))) \ - $(libof-$( -Date: Fri, 15 Apr 2016 13:29:26 +0200 -Subject: [PATCH] Suppress GCC 6 warning about ambiguous 'else' with - -Wparentheses - ---- - nis/nis_call.c | 20 +++++++++++--------- - stdlib/setenv.c | 24 +++++++++++++----------- - 2 files changed, 24 insertions(+), 20 deletions(-) - ---- a/nis/nis_call.c -+++ b/nis/nis_call.c -@@ -682,16 +682,18 @@ - /* Choose which entry should be evicted from the cache. */ - loc = &nis_server_cache[0]; - if (*loc != NULL) -- for (i = 1; i < 16; ++i) -- if (nis_server_cache[i] == NULL) -- { -+ { -+ for (i = 1; i < 16; ++i) -+ if (nis_server_cache[i] == NULL) -+ { -+ loc = &nis_server_cache[i]; -+ break; -+ } -+ else if ((*loc)->uses > nis_server_cache[i]->uses -+ || ((*loc)->uses == nis_server_cache[i]->uses -+ && (*loc)->expires > nis_server_cache[i]->expires)) - loc = &nis_server_cache[i]; -- break; -- } -- else if ((*loc)->uses > nis_server_cache[i]->uses -- || ((*loc)->uses == nis_server_cache[i]->uses -- && (*loc)->expires > nis_server_cache[i]->expires)) -- loc = &nis_server_cache[i]; -+ } - old = *loc; - *loc = new; - ---- a/stdlib/setenv.c -+++ b/stdlib/setenv.c -@@ -328,18 +328,20 @@ - ep = __environ; - if (ep != NULL) - while (*ep != NULL) -- if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -- { -- /* Found it. Remove this pointer by moving later ones back. */ -- char **dp = ep; -+ { -+ if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -+ { -+ /* Found it. Remove this pointer by moving later ones back. */ -+ char **dp = ep; - -- do -- dp[0] = dp[1]; -- while (*dp++); -- /* Continue the loop in case NAME appears again. */ -- } -- else -- ++ep; -+ do -+ dp[0] = dp[1]; -+ while (*dp++); -+ /* Continue the loop in case NAME appears again. */ -+ } -+ else -+ ++ep; -+ } - - UNLOCK; - diff --git a/packages/glibc/2.14.1/0002-fix-signed-shift-overlow.patch b/packages/glibc/2.14.1/0002-fix-signed-shift-overlow.patch deleted file mode 100644 index 5f76afe..0000000 --- a/packages/glibc/2.14.1/0002-fix-signed-shift-overlow.patch +++ /dev/null @@ -1,97 +0,0 @@ -commit 5542236837c5c41435f8282ec92799f480c36f18 -Author: Paul Eggert -Date: Tue Jul 21 22:50:29 2015 -0700 - - Port the 0x7efe...feff pattern to GCC 6. - - See Steve Ellcey's bug report in: - https://sourceware.org/ml/libc-alpha/2015-07/msg00673.html - * string/memrchr.c (MEMRCHR): - * string/rawmemchr.c (RAWMEMCHR): - * string/strchr.c (strchr): - * string/strchrnul.c (STRCHRNUL): - Rewrite code to avoid issues with signed shift overflow. - ---- - string/memrchr.c | 11 ++--------- - string/rawmemchr.c | 11 ++--------- - string/strchr.c | 9 ++------- - string/strchrnul.c | 9 ++------- - 4 files changed, 8 insertions(+), 32 deletions(-) - ---- a/string/memrchr.c -+++ b/string/memrchr.c -@@ -98,15 +98,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/rawmemchr.c -+++ b/string/rawmemchr.c -@@ -90,15 +90,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchr.c -+++ b/string/strchr.c -@@ -65,13 +65,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchrnul.c -+++ b/string/strchrnul.c -@@ -63,13 +63,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); diff --git a/packages/glibc/2.14.1/0003-dl-openat64-variadic.patch b/packages/glibc/2.14.1/0003-dl-openat64-variadic.patch deleted file mode 100644 index e69bb17..0000000 --- a/packages/glibc/2.14.1/0003-dl-openat64-variadic.patch +++ /dev/null @@ -1,197 +0,0 @@ -commit 9dd346ff431fc761f1b748bd4da8bb59f7652094 -Author: Joseph Myers -Date: Tue Oct 20 11:54:09 2015 +0000 - - Convert 113 more function definitions to prototype style (files with assertions). - - This mostly automatically-generated patch converts 113 function - definitions in glibc from old-style K&R to prototype-style. Following - my other recent such patches, this one deals with the case of function - definitions in files that either contain assertions or where grep - suggested they might contain assertions - and thus where it isn't - possible to use a simple object code comparison as a sanity check on - the correctness of the patch, because line numbers are changed. - - A few such automatically-generated changes needed to be supplemented - by manual changes for the result to compile. openat64 had a prototype - declaration with "..." but an old-style definition in - sysdeps/unix/sysv/linux/dl-openat64.c, and "..." needed adding to the - generated prototype in the definition (I've filed - for diagnosing - such cases in GCC; the old state was undefined behavior not requiring - a diagnostic, but one seems a good idea). In addition, as Florian has - noted regparm attribute mismatches between declaration and definition - are only diagnosed for prototype definitions, and five functions - needed internal_function added to their definitions (in the case of - __pthread_mutex_cond_lock, via the macro definition of - __pthread_mutex_lock) to compile on i386. - - After this patch is in, remaining old-style definitions are probably - most readily fixed manually before we can turn on - -Wold-style-definition for all builds. - - Tested for x86_64 and x86 (testsuite). - - * crypt/md5-crypt.c (__md5_crypt_r): Convert to prototype-style - function definition. - * crypt/sha256-crypt.c (__sha256_crypt_r): Likewise. - * crypt/sha512-crypt.c (__sha512_crypt_r): Likewise. - * debug/backtracesyms.c (__backtrace_symbols): Likewise. - * elf/dl-minimal.c (_itoa): Likewise. - * hurd/hurdmalloc.c (malloc): Likewise. - (free): Likewise. - (realloc): Likewise. - * inet/inet6_option.c (inet6_option_space): Likewise. - (inet6_option_init): Likewise. - (inet6_option_append): Likewise. - (inet6_option_alloc): Likewise. - (inet6_option_next): Likewise. - (inet6_option_find): Likewise. - * io/ftw.c (FTW_NAME): Likewise. - (NFTW_NAME): Likewise. - (NFTW_NEW_NAME): Likewise. - (NFTW_OLD_NAME): Likewise. - * libio/iofwide.c (_IO_fwide): Likewise. - * libio/strops.c (_IO_str_init_static_internal): Likewise. - (_IO_str_init_static): Likewise. - (_IO_str_init_readonly): Likewise. - (_IO_str_overflow): Likewise. - (_IO_str_underflow): Likewise. - (_IO_str_count): Likewise. - (_IO_str_seekoff): Likewise. - (_IO_str_pbackfail): Likewise. - (_IO_str_finish): Likewise. - * libio/wstrops.c (_IO_wstr_init_static): Likewise. - (_IO_wstr_overflow): Likewise. - (_IO_wstr_underflow): Likewise. - (_IO_wstr_count): Likewise. - (_IO_wstr_seekoff): Likewise. - (_IO_wstr_pbackfail): Likewise. - (_IO_wstr_finish): Likewise. - * locale/programs/localedef.c (normalize_codeset): Likewise. - * locale/programs/locarchive.c (add_locale_to_archive): Likewise. - (add_locales_to_archive): Likewise. - (delete_locales_from_archive): Likewise. - * malloc/malloc.c (__libc_mallinfo): Likewise. - * math/gen-auto-libm-tests.c (init_fp_formats): Likewise. - * misc/tsearch.c (__tfind): Likewise. - * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Likewise. - * nptl/pthread_attr_getdetachstate.c - (__pthread_attr_getdetachstate): Likewise. - * nptl/pthread_attr_getguardsize.c (pthread_attr_getguardsize): - Likewise. - * nptl/pthread_attr_getinheritsched.c - (__pthread_attr_getinheritsched): Likewise. - * nptl/pthread_attr_getschedparam.c - (__pthread_attr_getschedparam): Likewise. - * nptl/pthread_attr_getschedpolicy.c - (__pthread_attr_getschedpolicy): Likewise. - * nptl/pthread_attr_getscope.c (__pthread_attr_getscope): - Likewise. - * nptl/pthread_attr_getstack.c (__pthread_attr_getstack): - Likewise. - * nptl/pthread_attr_getstackaddr.c (__pthread_attr_getstackaddr): - Likewise. - * nptl/pthread_attr_getstacksize.c (__pthread_attr_getstacksize): - Likewise. - * nptl/pthread_attr_init.c (__pthread_attr_init_2_1): Likewise. - (__pthread_attr_init_2_0): Likewise. - * nptl/pthread_attr_setdetachstate.c - (__pthread_attr_setdetachstate): Likewise. - * nptl/pthread_attr_setguardsize.c (pthread_attr_setguardsize): - Likewise. - * nptl/pthread_attr_setinheritsched.c - (__pthread_attr_setinheritsched): Likewise. - * nptl/pthread_attr_setschedparam.c - (__pthread_attr_setschedparam): Likewise. - * nptl/pthread_attr_setschedpolicy.c - (__pthread_attr_setschedpolicy): Likewise. - * nptl/pthread_attr_setscope.c (__pthread_attr_setscope): - Likewise. - * nptl/pthread_attr_setstack.c (__pthread_attr_setstack): - Likewise. - * nptl/pthread_attr_setstackaddr.c (__pthread_attr_setstackaddr): - Likewise. - * nptl/pthread_attr_setstacksize.c (__pthread_attr_setstacksize): - Likewise. - * nptl/pthread_condattr_setclock.c (pthread_condattr_setclock): - Likewise. - * nptl/pthread_create.c (__find_in_stack_list): Likewise. - * nptl/pthread_getattr_np.c (pthread_getattr_np): Likewise. - * nptl/pthread_mutex_cond_lock.c (__pthread_mutex_lock): Define to - use internal_function. - * nptl/pthread_mutex_init.c (__pthread_mutex_init): Convert to - prototype-style function definition. - * nptl/pthread_mutex_lock.c (__pthread_mutex_lock): Likewise. - (__pthread_mutex_cond_lock_adjust): Likewise. Use - internal_function. - * nptl/pthread_mutex_timedlock.c (pthread_mutex_timedlock): - Convert to prototype-style function definition. - * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): - Likewise. - * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_usercnt): - Likewise. - (__pthread_mutex_unlock): Likewise. - * nptl_db/td_ta_clear_event.c (td_ta_clear_event): Likewise. - * nptl_db/td_ta_set_event.c (td_ta_set_event): Likewise. - * nptl_db/td_thr_clear_event.c (td_thr_clear_event): Likewise. - * nptl_db/td_thr_event_enable.c (td_thr_event_enable): Likewise. - * nptl_db/td_thr_set_event.c (td_thr_set_event): Likewise. - * nss/makedb.c (process_input): Likewise. - * posix/fnmatch.c (__strchrnul): Likewise. - (__wcschrnul): Likewise. - (fnmatch): Likewise. - * posix/fnmatch_loop.c (FCT): Likewise. - * posix/glob.c (globfree): Likewise. - (__glob_pattern_type): Likewise. - (__glob_pattern_p): Likewise. - * posix/regcomp.c (re_compile_pattern): Likewise. - (re_set_syntax): Likewise. - (re_compile_fastmap): Likewise. - (regcomp): Likewise. - (regerror): Likewise. - (regfree): Likewise. - * posix/regexec.c (regexec): Likewise. - (re_match): Likewise. - (re_search): Likewise. - (re_match_2): Likewise. - (re_search_2): Likewise. - (re_search_stub): Likewise. Use internal_function - (re_copy_regs): Likewise. - (re_set_registers): Convert to prototype-style function - definition. - (prune_impossible_nodes): Likewise. Use internal_function. - * resolv/inet_net_pton.c (inet_net_pton): Convert to - prototype-style function definition. - (inet_net_pton_ipv4): Likewise. - * stdlib/strtod_l.c (____STRTOF_INTERNAL): Likewise. - * sysdeps/pthread/aio_cancel.c (aio_cancel): Likewise. - * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise. - * sysdeps/pthread/timer_delete.c (timer_delete): Likewise. - * sysdeps/unix/sysv/linux/dl-openat64.c (openat64): Likewise. - Make variadic. - * time/strptime_l.c (localtime_r): Convert to prototype-style - function definition. - * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Likewise. - * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Likewise. - * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Likewise. - * wcsmbs/wcsrtombs.c (__wcsrtombs): Likewise. - ---- - sysdeps/unix/sysv/linux/dl-openat64.c | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - ---- a/sysdeps/unix/sysv/linux/dl-openat64.c -+++ b/sysdeps/unix/sysv/linux/dl-openat64.c -@@ -24,10 +24,7 @@ - - - int --openat64 (dfd, file, oflag) -- int dfd; -- const char *file; -- int oflag; -+openat64 (int dfd, const char *file, int oflag, ...) - { - assert ((oflag & O_CREAT) == 0); - diff --git a/packages/glibc/2.14.1/0004-unused-variables.patch b/packages/glibc/2.14.1/0004-unused-variables.patch deleted file mode 100644 index 18adb17..0000000 --- a/packages/glibc/2.14.1/0004-unused-variables.patch +++ /dev/null @@ -1,159 +0,0 @@ -commit 6565fcb6e189d67b5a3f321453daebb805056d73 -Author: Wilco Dijkstra -Date: Fri Sep 18 20:27:20 2015 +0100 - - Fix several build failures with GCC6 due to unused static variables. - - 2015-09-18 Wilco Dijkstra - - * resolv/base64.c (rcsid): Remove unused static. - * sysdeps/ieee754/dbl-64/atnat2.h (qpi1): Remove unused - static. (tqpi1): Likewise. - * sysdeps/ieee754/dbl-64/uexp.h (one): Likewise. - * sysdeps/ieee754/dbl-64/upow.h (sqrt_2): Likewise. - * sysdeps/ieee754/flt-32/e_log10f.c (one): Likewise. - * sysdeps/ieee754/flt-32/s_cosf.c (one): Likewise. - * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (zero): Likewise. - * sysdeps/ieee754/ldbl-128/s_erfl.c (half): Likewise. - * sysdeps/ieee754/ldbl-128/s_log1pl.c (maxlog): Likewise. - * timezone/private.h (time_t_min): Likewise. (time_t_max): - Likewise. - ---- - resolv/base64.c | 4 ---- - sysdeps/ieee754/dbl-64/atnat2.h | 4 ---- - sysdeps/ieee754/dbl-64/uexp.h | 2 +- - sysdeps/ieee754/dbl-64/upow.h | 2 -- - sysdeps/ieee754/flt-32/e_log10f.c | 6 ------ - sysdeps/ieee754/flt-32/s_cosf.c | 6 ------ - sysdeps/ieee754/ldbl-128/e_lgammal_r.c | 1 - - sysdeps/ieee754/ldbl-128/s_erfl.c | 1 - - sysdeps/ieee754/ldbl-128/s_log1pl.c | 1 - - 9 files changed, 1 insertion(+), 26 deletions(-) - ---- a/resolv/base64.c -+++ b/resolv/base64.c -@@ -40,10 +40,6 @@ - * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. - */ - --#if !defined(LINT) && !defined(CODECENTER) --static const char rcsid[] = "$BINDId: base64.c,v 8.7 1999/10/13 16:39:33 vixie Exp $"; --#endif /* not lint */ -- - #include - #include - #include ---- a/sysdeps/ieee754/dbl-64/atnat2.h -+++ b/sysdeps/ieee754/dbl-64/atnat2.h -@@ -69,10 +69,8 @@ - /**/ hpi1 = {{0x3c91a626, 0x33145c07} }, /* pi/2-hpi */ - /**/ mhpi = {{0xbff921fb, 0x54442d18} }, /* -pi/2 */ - /**/ qpi = {{0x3fe921fb, 0x54442d18} }, /* pi/4 */ --/**/ qpi1 = {{0x3c81a626, 0x33145c07} }, /* pi/4-qpi */ - /**/ mqpi = {{0xbfe921fb, 0x54442d18} }, /* -pi/4 */ - /**/ tqpi = {{0x4002d97c, 0x7f3321d2} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x3c9a7939, 0x4c9e8a0a} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0xc002d97c, 0x7f3321d2} }, /* -3pi/4 */ - /**/ u1 = {{0x3c314c2a, 0x00000000} }, /* 9.377e-19 */ - /**/ u2 = {{0x3bf955e4, 0x00000000} }, /* 8.584e-20 */ -@@ -139,10 +137,8 @@ - /**/ hpi1 = {{0x33145c07, 0x3c91a626} }, /* pi/2-hpi */ - /**/ mhpi = {{0x54442d18, 0xbff921fb} }, /* -pi/2 */ - /**/ qpi = {{0x54442d18, 0x3fe921fb} }, /* pi/4 */ --/**/ qpi1 = {{0x33145c07, 0x3c81a626} }, /* pi/4-qpi */ - /**/ mqpi = {{0x54442d18, 0xbfe921fb} }, /* -pi/4 */ - /**/ tqpi = {{0x7f3321d2, 0x4002d97c} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x4c9e8a0a, 0x3c9a7939} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0x7f3321d2, 0xc002d97c} }, /* -3pi/4 */ - /**/ u1 = {{0x00000000, 0x3c314c2a} }, /* 9.377e-19 */ - /**/ u2 = {{0x00000000, 0x3bf955e4} }, /* 8.584e-20 */ ---- a/sysdeps/ieee754/dbl-64/uexp.h -+++ b/sysdeps/ieee754/dbl-64/uexp.h -@@ -30,7 +30,7 @@ - - #include "mydefs.h" - --const static double one = 1.0, zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, -+const static double zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, - err_0 = 1.000014, err_1 = 0.000016; - const static int4 bigint = 0x40862002, - badint = 0x40876000,smallint = 0x3C8fffff; ---- a/sysdeps/ieee754/dbl-64/upow.h -+++ b/sysdeps/ieee754/dbl-64/upow.h -@@ -36,7 +36,6 @@ - /**/ INF = {{0x7ff00000, 0x00000000}}, /* INF */ - /**/ nINF = {{0xfff00000, 0x00000000}}, /* -INF */ - /**/ NaNQ = {{0x7ff80000, 0x00000000}}, /* NaNQ */ --/**/ sqrt_2 = {{0x3ff6a09e, 0x667f3bcc}}, /* sqrt(2) */ - /**/ ln2a = {{0x3fe62e42, 0xfefa3800}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x3d2ef357, 0x93c76730}}, /* ln(2)-ln2a */ - /**/ bigu = {{0x4297ffff, 0xfffffd2c}}, /* 1.5*2**42 -724*2**-10 */ -@@ -51,7 +50,6 @@ - /**/ INF = {{0x00000000, 0x7ff00000}}, /* INF */ - /**/ nINF = {{0x00000000, 0xfff00000}}, /* -INF */ - /**/ NaNQ = {{0x00000000, 0x7ff80000}}, /* NaNQ */ --/**/ sqrt_2 = {{0x667f3bcc, 0x3ff6a09e}}, /* sqrt(2) */ - /**/ ln2a = {{0xfefa3800, 0x3fe62e42}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x93c76730, 0x3d2ef357}}, /* ln(2)-ln2a */ - /**/ bigu = {{0xfffffd2c, 0x4297ffff}}, /* 1.5*2**42 -724*2**-10 */ ---- a/sysdeps/ieee754/flt-32/e_log10f.c -+++ b/sysdeps/ieee754/flt-32/e_log10f.c -@@ -31,12 +31,6 @@ - log10_2lo = 7.9034151668e-07; /* 0x355427db */ - - #ifdef __STDC__ --static const float zero = 0.0; --#else --static float zero = 0.0; --#endif -- --#ifdef __STDC__ - float __ieee754_log10f(float x) - #else - float __ieee754_log10f(x) ---- a/sysdeps/ieee754/flt-32/s_cosf.c -+++ b/sysdeps/ieee754/flt-32/s_cosf.c -@@ -22,12 +22,6 @@ - #include "math_private.h" - - #ifdef __STDC__ --static const float one=1.0; --#else --static float one=1.0; --#endif -- --#ifdef __STDC__ - float __cosf(float x) - #else - float __cosf(x) ---- a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -+++ b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -@@ -74,7 +74,6 @@ - static const long double PIL = 3.1415926535897932384626433832795028841972E0L; - static const long double MAXLGM = 1.0485738685148938358098967157129705071571E4928L; - static const long double one = 1.0L; --static const long double zero = 0.0L; - static const long double huge = 1.0e4000L; - - /* log gamma(x) = ( x - 0.5 ) * log(x) - x + LS2PI + 1/x P(1/x^2) ---- a/sysdeps/ieee754/ldbl-128/s_erfl.c -+++ b/sysdeps/ieee754/ldbl-128/s_erfl.c -@@ -142,7 +142,6 @@ - static long double - #endif - tiny = 1e-4931L, -- half = 0.5L, - one = 1.0L, - two = 2.0L, - /* 2/sqrt(pi) - 1 */ ---- a/sysdeps/ieee754/ldbl-128/s_log1pl.c -+++ b/sysdeps/ieee754/ldbl-128/s_log1pl.c -@@ -116,7 +116,6 @@ - - static const long double sqrth = 0.7071067811865475244008443621048490392848L; - /* ln (2^16384 * (1 - 2^-113)) */ --static const long double maxlog = 1.1356523406294143949491931077970764891253E4L; - static const long double zero = 0.0L; - - long double diff --git a/packages/glibc/2.14.1/0005-misleading-indentation.patch b/packages/glibc/2.14.1/0005-misleading-indentation.patch deleted file mode 100644 index 35bcb1b..0000000 --- a/packages/glibc/2.14.1/0005-misleading-indentation.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 976ef870542580cf5fed896c2c652b3e1a95f9da -Author: Steve Ellcey -Date: Fri Dec 11 09:19:37 2015 -0800 - - Fix indentation. - - * sysdeps/ieee754/flt-32/k_rem_pio2f.c (__kernel_rem_pio2f): - Fix indentation. - ---- - sysdeps/ieee754/flt-32/k_rem_pio2f.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - ---- a/sysdeps/ieee754/flt-32/k_rem_pio2f.c -+++ b/sysdeps/ieee754/flt-32/k_rem_pio2f.c -@@ -82,7 +82,9 @@ - - /* compute q[0],q[1],...q[jk] */ - for (i=0;i<=jk;i++) { -- for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; q[i] = fw; -+ for(j=0,fw=0.0;j<=jx;j++) -+ fw += x[j]*f[jx+i-j]; -+ q[i] = fw; - } - - jz = jk; diff --git a/packages/glibc/2.14.1/0006-dl-open-array-bounds.patch b/packages/glibc/2.14.1/0006-dl-open-array-bounds.patch deleted file mode 100644 index a61f1a5..0000000 --- a/packages/glibc/2.14.1/0006-dl-open-array-bounds.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 328c44c3670ebf6c1bd790acddce65a12998cd6c -Author: Roland McGrath -Date: Fri Apr 17 12:11:58 2015 -0700 - - Fuller check for invalid NSID in _dl_open. - ---- - elf/dl-open.c | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - ---- a/elf/dl-open.c -+++ b/elf/dl-open.c -@@ -540,8 +540,14 @@ - /* Never allow loading a DSO in a namespace which is empty. Such - direct placements is only causing problems. Also don't allow - loading into a namespace used for auditing. */ -- else if (__builtin_expect (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER, 0) -- && (GL(dl_ns)[nsid]._ns_nloaded == 0 -+ else if ((nsid != LM_ID_BASE && nsid != __LM_ID_CALLER) -+ && ((nsid < 0 || nsid >= GL(dl_nns)) -+ /* This prevents the [NSID] index expressions from being -+ evaluated, so the compiler won't think that we are -+ accessing an invalid index here in the !SHARED case where -+ DL_NNS is 1 and so any NSID != 0 is invalid. */ -+ || DL_NNS == 1 -+ || GL(dl_ns)[nsid]._ns_nloaded == 0 - || GL(dl_ns)[nsid]._ns_loaded->l_auditing)) - _dl_signal_error (EINVAL, file, NULL, - N_("invalid target namespace in dlmopen()")); diff --git a/packages/glibc/2.14.1/0007-i386-x86_64-revert-clone-cfi.patch b/packages/glibc/2.14.1/0007-i386-x86_64-revert-clone-cfi.patch deleted file mode 100644 index f872bac..0000000 --- a/packages/glibc/2.14.1/0007-i386-x86_64-revert-clone-cfi.patch +++ /dev/null @@ -1,51 +0,0 @@ -revert cfi additions to clone on i386/x86_64 to workaround problems in -gcc's unwinder code. this is not a bug in glibc, it triggers problems -elsewhere. this cfi code does not gain us a whole lot anyways. - -http://gcc.gnu.org/ml/gcc/2006-12/msg00293.html - ---- - sysdeps/unix/sysv/linux/i386/clone.S | 4 ---- - sysdeps/unix/sysv/linux/x86_64/clone.S | 4 ---- - 2 files changed, 8 deletions(-) - ---- a/sysdeps/unix/sysv/linux/i386/clone.S -+++ b/sysdeps/unix/sysv/linux/i386/clone.S -@@ -120,9 +120,6 @@ - ret - - L(thread_start): -- cfi_startproc; -- /* Clearing frame pointer is insufficient, use CFI. */ -- cfi_undefined (eip); - /* Note: %esi is zero. */ - movl %esi,%ebp /* terminate the stack frame */ - #ifdef RESET_PID -@@ -155,7 +152,6 @@ - jmp L(haspid) - .previous - #endif -- cfi_endproc; - - cfi_startproc - PSEUDO_END (BP_SYM (__clone)) ---- a/sysdeps/unix/sysv/linux/x86_64/clone.S -+++ b/sysdeps/unix/sysv/linux/x86_64/clone.S -@@ -89,9 +89,6 @@ - ret - - L(thread_start): -- cfi_startproc; -- /* Clearing frame pointer is insufficient, use CFI. */ -- cfi_undefined (rip); - /* Clear the frame pointer. The ABI suggests this be done, to mark - the outermost frame obviously. */ - xorl %ebp, %ebp -@@ -116,7 +113,6 @@ - /* Call exit with return value from function call. */ - movq %rax, %rdi - call HIDDEN_JUMPTARGET (_exit) -- cfi_endproc; - - cfi_startproc; - PSEUDO_END (BP_SYM (__clone)) diff --git a/packages/glibc/2.14.1/0008-disable-ldconfig.patch b/packages/glibc/2.14.1/0008-disable-ldconfig.patch deleted file mode 100644 index d60cb40..0000000 --- a/packages/glibc/2.14.1/0008-disable-ldconfig.patch +++ /dev/null @@ -1,19 +0,0 @@ -do not bother running ldconfig on DESTDIR. it wants to write the temp cache -file outside of the chroot. doesnt matter anyways as we wont use the cache -results (portage will rebuild cache), so running ldconfig is simply a waste -of time. - ---- - Makefile | 1 + - 1 file changed, 1 insertion(+) - ---- a/Makefile -+++ b/Makefile -@@ -116,6 +116,7 @@ - rm -f $(symbolic-link-list) - - install: -+dont-bother-with-destdir: - -test ! -x $(common-objpfx)elf/ldconfig || LC_ALL=C LANGUAGE=C \ - $(common-objpfx)elf/ldconfig $(addprefix -r ,$(install_root)) \ - $(slibdir) $(libdir) diff --git a/packages/glibc/2.14.1/0009-Fix-combreloc-test-BSD-grep.patch b/packages/glibc/2.14.1/0009-Fix-combreloc-test-BSD-grep.patch deleted file mode 100644 index 5e68aa3..0000000 --- a/packages/glibc/2.14.1/0009-Fix-combreloc-test-BSD-grep.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 61d5f9c09b3157db76bd1a393e248c262a8d9dd4 Mon Sep 17 00:00:00 2001 -From: Alexey Neyman -Date: Wed, 8 Mar 2017 14:31:10 -0800 -Subject: [PATCH] Fix combreloc test with BSD grep - -The test for "-z combreloc" fails when cross-compiling on a machine -that uses BSD grep (e.g. on macos). grep complains about empty -subexpression and exits with non-zero status, which is interpreted -by configure as "not found". As a result, support for "-z combreloc" -(HAVE_Z_COMBRELOC) is not detected, leading to link failure on SPARC. - - * configure.ac: Avoid empty subexpression in grep. - -Signed-off-by: Alexey Neyman ---- - configure | 2 +- - configure.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/configure -+++ b/configure -@@ -6377,7 +6377,7 @@ - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } - then -- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if readelf -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no ---- a/configure.in -+++ b/configure.in -@@ -1655,7 +1655,7 @@ - dnl introducing new options this is not easily doable. Instead use a tool - dnl which always is cross-platform: readelf. To detect whether -z combreloc - dnl look for a section named .rel.dyn. -- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if readelf -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/packages/glibc/2.14.1/0010-queue-header-updates.patch b/packages/glibc/2.14.1/0010-queue-header-updates.patch deleted file mode 100644 index f6515e2..0000000 --- a/packages/glibc/2.14.1/0010-queue-header-updates.patch +++ /dev/null @@ -1,86 +0,0 @@ -grab some updates from FreeBSD - -http://bugs.gentoo.org/201979 - ---- - misc/sys/queue.h | 36 ++++++++++++++++++++++++++++++++++++ - 1 file changed, 36 insertions(+) - ---- a/misc/sys/queue.h -+++ b/misc/sys/queue.h -@@ -136,6 +136,11 @@ - (var); \ - (var) = ((var)->field.le_next)) - -+#define LIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = LIST_FIRST((head)); \ -+ (var) && ((tvar) = LIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - /* - * List access methods. - */ -@@ -197,6 +202,16 @@ - #define SLIST_FOREACH(var, head, field) \ - for((var) = (head)->slh_first; (var); (var) = (var)->field.sle_next) - -+#define SLIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = SLIST_FIRST((head)); \ -+ (var) && ((tvar) = SLIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ -+#define SLIST_FOREACH_PREVPTR(var, varp, head, field) \ -+ for ((varp) = &SLIST_FIRST((head)); \ -+ ((var) = *(varp)) != NULL; \ -+ (varp) = &SLIST_NEXT((var), field)) -+ - /* - * Singly-linked List access methods. - */ -@@ -242,6 +257,12 @@ - (head)->stqh_last = &(elm)->field.stqe_next; \ - } while (/*CONSTCOND*/0) - -+#define STAILQ_LAST(head, type, field) \ -+ (STAILQ_EMPTY((head)) ? \ -+ NULL : \ -+ ((struct type *)(void *) \ -+ ((char *)((head)->stqh_last) - __offsetof(struct type, field)))) -+ - #define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ - if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\ - (head)->stqh_last = &(elm)->field.stqe_next; \ -@@ -271,6 +292,11 @@ - (var); \ - (var) = ((var)->field.stqe_next)) - -+#define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = STAILQ_FIRST((head)); \ -+ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - #define STAILQ_CONCAT(head1, head2) do { \ - if (!STAILQ_EMPTY((head2))) { \ - *(head1)->stqh_last = (head2)->stqh_first; \ -@@ -437,11 +463,21 @@ - (var); \ - (var) = ((var)->field.tqe_next)) - -+#define TAILQ_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = TAILQ_FIRST((head)); \ -+ (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - #define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ - for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last)); \ - (var); \ - (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last))) - -+#define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar) \ -+ for ((var) = TAILQ_LAST((head), headname); \ -+ (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \ -+ (var) = (tvar)) -+ - #define TAILQ_CONCAT(head1, head2, field) do { \ - if (!TAILQ_EMPTY(head2)) { \ - *(head1)->tqh_last = (head2)->tqh_first; \ diff --git a/packages/glibc/2.14.1/0011-manual-no-perl.patch b/packages/glibc/2.14.1/0011-manual-no-perl.patch deleted file mode 100644 index 7e232aa..0000000 --- a/packages/glibc/2.14.1/0011-manual-no-perl.patch +++ /dev/null @@ -1,27 +0,0 @@ -If we're using a cvs snapshot which updates the source files, and -perl isn't installed yet, then we can't regen the docs. Not a big -deal, so just whine a little and continue on our merry way. - -http://bugs.gentoo.org/60132 - ---- - manual/Makefile | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/manual/Makefile -+++ b/manual/Makefile -@@ -106,9 +106,14 @@ - libm-err.texi: stamp-libm-err - stamp-libm-err: libm-err-tab.pl $(wildcard $(foreach dir,$(sysdirs),\ - $(dir)/libm-test-ulps)) -+ifneq ($(PERL),no) - pwd=`pwd`; \ - $(PERL) $< $$pwd/.. > libm-err-tmp - $(move-if-change) libm-err-tmp libm-err.texi -+else -+ echo "Unable to rebuild math docs, no perl installed" -+ touch libm-err.texi -+endif - touch $@ - - # Generate Texinfo files from the C source for the example programs. diff --git a/packages/glibc/2.14.1/0012-localedef-fix-trampoline.patch b/packages/glibc/2.14.1/0012-localedef-fix-trampoline.patch deleted file mode 100644 index 3b8fd6e..0000000 --- a/packages/glibc/2.14.1/0012-localedef-fix-trampoline.patch +++ /dev/null @@ -1,56 +0,0 @@ -# DP: Description: Fix localedef segfault when run under exec-shield, -# PaX or similar. (#231438, #198099) -# DP: Dpatch Author: James Troup -# DP: Patch Author: (probably) Jakub Jelinek -# DP: Upstream status: Unknown -# DP: Status Details: Unknown -# DP: Date: 2004-03-16 ---- -# locale/programs/3level.h | 36 ++++++++++++++++++++++++++++++++++++ -# 1 file changed, 36 insertions(+) -# ---- a/locale/programs/3level.h -+++ b/locale/programs/3level.h -@@ -203,6 +203,42 @@ - } - } - } -+ -+/* GCC ATM seems to do a poor job with pointers to nested functions passed -+ to inlined functions. Help it a little bit with this hack. */ -+#define wchead_table_iterate(tp, fn) \ -+do \ -+ { \ -+ struct wchead_table *t = (tp); \ -+ uint32_t index1; \ -+ for (index1 = 0; index1 < t->level1_size; index1++) \ -+ { \ -+ uint32_t lookup1 = t->level1[index1]; \ -+ if (lookup1 != ((uint32_t) ~0)) \ -+ { \ -+ uint32_t lookup1_shifted = lookup1 << t->q; \ -+ uint32_t index2; \ -+ for (index2 = 0; index2 < (1 << t->q); index2++) \ -+ { \ -+ uint32_t lookup2 = t->level2[index2 + lookup1_shifted]; \ -+ if (lookup2 != ((uint32_t) ~0)) \ -+ { \ -+ uint32_t lookup2_shifted = lookup2 << t->p; \ -+ uint32_t index3; \ -+ for (index3 = 0; index3 < (1 << t->p); index3++) \ -+ { \ -+ struct element_t *lookup3 \ -+ = t->level3[index3 + lookup2_shifted]; \ -+ if (lookup3 != NULL) \ -+ fn ((((index1 << t->q) + index2) << t->p) + index3, \ -+ lookup3); \ -+ } \ -+ } \ -+ } \ -+ } \ -+ } \ -+ } while (0) -+ - #endif - - #ifndef NO_FINALIZE diff --git a/packages/glibc/2.14.1/0013-resolv-dynamic.patch b/packages/glibc/2.14.1/0013-resolv-dynamic.patch deleted file mode 100644 index fcc2f80..0000000 --- a/packages/glibc/2.14.1/0013-resolv-dynamic.patch +++ /dev/null @@ -1,42 +0,0 @@ -ripped from SuSE - -if /etc/resolv.conf is updated, then make sure applications -already running get the updated information. - -http://bugs.gentoo.org/177416 - ---- - resolv/res_libc.c | 15 +++++++++++++++ - 1 file changed, 15 insertions(+) - ---- a/resolv/res_libc.c -+++ b/resolv/res_libc.c -@@ -22,6 +22,7 @@ - #include - #include - #include -+#include - - - /* The following bit is copied from res_data.c (where it is #ifdef'ed -@@ -95,6 +96,20 @@ - __res_maybe_init (res_state resp, int preinit) - { - if (resp->options & RES_INIT) { -+ static time_t last_mtime, last_check; -+ time_t now; -+ struct stat statbuf; -+ -+ time (&now); -+ if (now != last_check) { -+ last_check = now; -+ if (stat (_PATH_RESCONF, &statbuf) == 0 && last_mtime != statbuf.st_mtime) { -+ last_mtime = statbuf.st_mtime; -+ atomicinclock (lock); -+ atomicinc (__res_initstamp); -+ atomicincunlock (lock); -+ } -+ } - if (__res_initstamp != resp->_u._ext.initstamp) { - if (resp->nscount > 0) - __res_iclose (resp, true); diff --git a/packages/glibc/2.14.1/0014-localedef-mmap.patch b/packages/glibc/2.14.1/0014-localedef-mmap.patch deleted file mode 100644 index 74e586e..0000000 --- a/packages/glibc/2.14.1/0014-localedef-mmap.patch +++ /dev/null @@ -1,42 +0,0 @@ -sniped from Debian -http://bugs.gentoo.org/289615 - -2009-10-27 Aurelien Jarno - - * locale/programs/locarchive.c: use MMAP_SHARED to reserve memory - used later with MMAP_FIXED | MMAP_SHARED to cope with different - alignment restrictions. - ---- - locale/programs/locarchive.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/locale/programs/locarchive.c -+++ b/locale/programs/locarchive.c -@@ -134,7 +134,7 @@ - size_t reserved = RESERVE_MMAP_SIZE; - int xflags = 0; - if (total < reserved -- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON, -+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON, - -1, 0)) != MAP_FAILED)) - xflags = MAP_FIXED; - else -@@ -396,7 +396,7 @@ - size_t reserved = RESERVE_MMAP_SIZE; - int xflags = 0; - if (total < reserved -- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON, -+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON, - -1, 0)) != MAP_FAILED)) - xflags = MAP_FIXED; - else -@@ -614,7 +614,7 @@ - int xflags = 0; - void *p; - if (st.st_size < reserved -- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON, -+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON, - -1, 0)) != MAP_FAILED)) - xflags = MAP_FIXED; - else diff --git a/packages/glibc/2.14.1/0015-fadvise64_64.patch b/packages/glibc/2.14.1/0015-fadvise64_64.patch deleted file mode 100644 index 191d833..0000000 --- a/packages/glibc/2.14.1/0015-fadvise64_64.patch +++ /dev/null @@ -1,27 +0,0 @@ -ripped from Debian - - sysdeps/unix/sysv/linux/posix_fadvise.c | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - ---- a/sysdeps/unix/sysv/linux/posix_fadvise.c -+++ b/sysdeps/unix/sysv/linux/posix_fadvise.c -@@ -35,6 +35,19 @@ - return INTERNAL_SYSCALL_ERRNO (ret, err); - return 0; - #else -+# ifdef __NR_fadvise64_64 -+ INTERNAL_SYSCALL_DECL (err); -+ int ret = INTERNAL_SYSCALL (fadvise64_64, err, 6, fd, -+ __LONG_LONG_PAIR ((long) (offset >> 31), -+ (long) offset), -+ __LONG_LONG_PAIR ((long) (len >> 31), -+ (long) len), -+ advise); -+ if (INTERNAL_SYSCALL_ERROR_P (ret, err)) -+ return INTERNAL_SYSCALL_ERRNO (ret, err); -+ return 0; -+# else - return ENOSYS; -+# endif - #endif - } diff --git a/packages/glibc/2.14.1/0016-section-comments.patch b/packages/glibc/2.14.1/0016-section-comments.patch deleted file mode 100644 index 4718f22..0000000 --- a/packages/glibc/2.14.1/0016-section-comments.patch +++ /dev/null @@ -1,27 +0,0 @@ -http://sources.redhat.com/ml/binutils/2004-04/msg00665.html - -fixes building on some architectures (like m68k/arm/cris/etc...) because -it does the right thing - ---- - include/libc-symbols.h | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/include/libc-symbols.h -+++ b/include/libc-symbols.h -@@ -240,12 +240,12 @@ - # define __make_section_unallocated(section_string) - # endif - --/* Tacking on "\n\t#" to the section name makes gcc put it's bogus -+/* Tacking on "\n#APP\n\t#" to the section name makes gcc put it's bogus - section attributes on what looks like a comment to the assembler. */ - # ifdef HAVE_SECTION_QUOTES --# define __sec_comment "\"\n\t#\"" -+# define __sec_comment "\"\n#APP\n\t#\"" - # else --# define __sec_comment "\n\t#" -+# define __sec_comment "\n#APP\n\t#" - # endif - # define link_warning(symbol, msg) \ - __make_section_unallocated (".gnu.warning." #symbol) \ diff --git a/packages/glibc/2.14.1/0017-no-inline-gmon.patch b/packages/glibc/2.14.1/0017-no-inline-gmon.patch deleted file mode 100644 index ed02704..0000000 --- a/packages/glibc/2.14.1/0017-no-inline-gmon.patch +++ /dev/null @@ -1,36 +0,0 @@ -http://bugs.gentoo.org/196245 -http://sourceware.org/ml/libc-alpha/2006-05/msg00017.html - -Attached is a patch to add __attribute__ ((noinline)) to -call_gmon_start. - -Without this patch, the sec script that processed initfini.s removes a -part of inlined call_gmon_start, causing undefined label errors. - -This patch solves the problem by forcing gcc not to inline -call_gmon_start with __attribute__ ((noinline)). - -Tested by building for arm-none-lixux-gnueabi. OK to apply? - -Kazu Hirata - -2006-05-07 Kazu Hirata <kazu@codesourcery.com> - - * sysdeps/generic/initfini.c (call_gmon_start): Add - __attribute__ ((noinline)). - ---- - sysdeps/generic/initfini.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sysdeps/generic/initfini.c -+++ b/sysdeps/generic/initfini.c -@@ -70,7 +70,7 @@ - /* The beginning of _init: */ - asm ("\n/*@_init_PROLOG_BEGINS*/"); - --static void -+static void __attribute__ ((noinline)) - call_gmon_start(void) - { - extern void __gmon_start__ (void) __attribute__ ((weak)); /*weak_extern (__gmon_start__);*/ diff --git a/packages/glibc/2.14.1/0018-assume-pipe2.patch b/packages/glibc/2.14.1/0018-assume-pipe2.patch deleted file mode 100644 index 0074ea6..0000000 --- a/packages/glibc/2.14.1/0018-assume-pipe2.patch +++ /dev/null @@ -1,43 +0,0 @@ -http://bugs.gentoo.org/250342 -http://sources.redhat.com/bugzilla/show_bug.cgi?id=9685 - -we cant assume sock_cloexec and pipe2 are bound together as the former defines -are found in glibc only while the latter are a combo of kernel headers and -glibc. so if we do a runtime detection of SOCK_CLOEXEC, but pipe2() is a stub -inside of glibc, we hit a problem. for example: - -#include -#include -main() -{ - getgrnam("portage"); - if (!popen("ls", "r")) - perror("popen()"); -} - -getgrnam() will detect that the kernel supports SOCK_CLOEXEC and then set both -__have_sock_cloexec and __have_pipe2 to true. but if glibc was built against -older kernel headers where __NR_pipe2 does not exist, glibc will have a ENOSYS -stub for it. so popen() will always fail as glibc assumes pipe2() works. - ---- - socket/have_sock_cloexec.c | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/socket/have_sock_cloexec.c -+++ b/socket/have_sock_cloexec.c -@@ -16,9 +16,14 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -+#include - #include - #include - - #if defined SOCK_CLOEXEC && !defined __ASSUME_SOCK_CLOEXEC - int __have_sock_cloexec; - #endif -+ -+#if defined O_CLOEXEC && !defined __ASSUME_PIPE2 -+int __have_pipe2; -+#endif diff --git a/packages/glibc/2.14.1/0019-china.patch b/packages/glibc/2.14.1/0019-china.patch deleted file mode 100644 index b323cf6..0000000 --- a/packages/glibc/2.14.1/0019-china.patch +++ /dev/null @@ -1,35 +0,0 @@ - - ---- - localedata/locales/zh_TW | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/localedata/locales/zh_TW -+++ b/localedata/locales/zh_TW -@@ -1,7 +1,7 @@ - comment_char % - escape_char / - % --% Chinese language locale for Taiwan R.O.C. -+% Chinese language locale for Taiwan - % charmap: BIG5-CP950 - % - % Original Author: -@@ -17,7 +17,7 @@ - % Reference: http://wwwold.dkuug.dk/JTC1/SC22/WG20/docs/n690.pdf - - LC_IDENTIFICATION --title "Chinese locale for Taiwan R.O.C." -+title "Chinese locale for Taiwan" - source "" - address "" - contact "" -@@ -25,7 +25,7 @@ - tel "" - fax "" - language "Chinese" --territory "Taiwan R.O.C." -+territory "Taiwan" - revision "0.2" - date "2000-08-02" - % diff --git a/packages/glibc/2.14.1/0020-new-valencian-locale.patch b/packages/glibc/2.14.1/0020-new-valencian-locale.patch deleted file mode 100644 index fab1ee3..0000000 --- a/packages/glibc/2.14.1/0020-new-valencian-locale.patch +++ /dev/null @@ -1,118 +0,0 @@ -http://bugs.gentoo.org/show_bug.cgi?id=131815 -http://sourceware.org/bugzilla/show_bug.cgi?id=2522 - ---- - localedata/SUPPORTED | 2 - localedata/locales/ca_ES@valencia | 96 ++++++++++++++++++++++++++++++++++++++ - 2 files changed, 98 insertions(+) - ---- a/localedata/SUPPORTED -+++ b/localedata/SUPPORTED -@@ -73,6 +73,8 @@ - ca_ES.UTF-8/UTF-8 \ - ca_ES/ISO-8859-1 \ - ca_ES@euro/ISO-8859-15 \ -+ca_ES.UTF-8@valencia/UTF-8 \ -+ca_ES@valencia/ISO-8859-15 \ - ca_FR.UTF-8/UTF-8 \ - ca_FR/ISO-8859-15 \ - ca_IT.UTF-8/UTF-8 \ ---- /dev/null -+++ b/localedata/locales/ca_ES@valencia -@@ -0,0 +1,96 @@ -+comment_char % -+escape_char / -+% -+% Valencian (southern Catalan) locale for Spain with Euro -+% -+% Note that this locale is almost the same as ca_ES@euro. The point of having -+% a separate locale is only for PO translations, which have a lot of social -+% support and are very appreciated by the Valencian-speaking community. -+% -+% Contact: Jordi Mallach -+% Email: jordi@gnu.org -+% Tel: -+% Fax: -+% Language: ca -+% Territory: ES -+% Option: euro -+% Revision: 1.0 -+% Date: 2006-04-06 -+% Application: general -+% Users: general -+% Repertoiremap: mnemonic,ds -+% Charset: ISO-8859-15 -+% Distribution and use is free, also -+% for commercial purposes. -+ -+LC_IDENTIFICATION -+title "Valencian (southern Catalan) locale for Spain with Euro" -+source "" -+address "" -+contact "Jordi Mallach" -+email "jordi@gnu.org" -+tel "" -+fax "" -+language "Catalan" -+territory "Spain" -+revision "1.0" -+date "2006-04-06" -+% -+category "ca_ES@valencia:2006";LC_IDENTIFICATION -+category "ca_ES@valencia:2006";LC_CTYPE -+category "ca_ES@valencia:2006";LC_COLLATE -+category "ca_ES@valencia:2006";LC_MONETARY -+category "ca_ES@valencia:2006";LC_NUMERIC -+category "ca_ES@valencia:2006";LC_TIME -+category "ca_ES@valencia:2006";LC_MESSAGES -+category "ca_ES@valencia:2006";LC_PAPER -+category "ca_ES@valencia:2006";LC_NAME -+category "ca_ES@valencia:2006";LC_ADDRESS -+category "ca_ES@valencia:2006";LC_TELEPHONE -+category "ca_ES@valencia:2006";LC_MEASUREMENT -+ -+END LC_IDENTIFICATION -+ -+LC_CTYPE -+copy "i18n" -+END LC_CTYPE -+ -+LC_COLLATE -+copy "ca_ES" -+END LC_COLLATE -+ -+LC_MONETARY -+copy "ca_ES" -+END LC_MONETARY -+ -+LC_NUMERIC -+copy "ca_ES" -+END LC_NUMERIC -+ -+LC_TIME -+copy "ca_ES" -+END LC_TIME -+ -+LC_MESSAGES -+copy "ca_ES" -+END LC_MESSAGES -+ -+LC_PAPER -+copy "ca_ES" -+END LC_PAPER -+ -+LC_NAME -+copy "ca_ES" -+END LC_NAME -+ -+LC_ADDRESS -+copy "ca_ES" -+END LC_ADDRESS -+ -+LC_TELEPHONE -+copy "ca_ES" -+END LC_TELEPHONE -+ -+LC_MEASUREMENT -+copy "ca_ES" -+END LC_MEASUREMENT diff --git a/packages/glibc/2.14.1/0021-macos-cross-rpcgen.patch b/packages/glibc/2.14.1/0021-macos-cross-rpcgen.patch deleted file mode 100644 index b439b0f..0000000 --- a/packages/glibc/2.14.1/0021-macos-cross-rpcgen.patch +++ /dev/null @@ -1,34 +0,0 @@ -commit ae7080d30c68cfa0c81ce3422dca948f64a94f50 -Author: Jia Liu -Date: Sat Sep 7 00:01:08 2013 +0800 - - sunrpc/rpc/types.h: fix OS X and FreeBSD build problems - - When I build arm-linux-gcc on OS X, I find glibc will get a build error - in sunrpc/rpc/types.h, so I add __APPLE_CC__ to make OS X build OK. - For FreeBSD, Add __FreeBSD__ to make it build OK, too. - - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00155.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00217.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00240.html - Signed-off-by: Jia Liu - Signed-off-by: Mike Frysinger - ---- - sunrpc/rpc/types.h | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/sunrpc/rpc/types.h -+++ b/sunrpc/rpc/types.h -@@ -69,6 +69,11 @@ - #include - #endif - -+#if defined __APPLE_CC__ || defined __FreeBSD__ -+# define __u_char_defined -+# define __daddr_t_defined -+#endif -+ - #ifndef __u_char_defined - typedef __u_char u_char; - typedef __u_short u_short; diff --git a/packages/glibc/2.14.1/0022-nscd-one-fork.patch b/packages/glibc/2.14.1/0022-nscd-one-fork.patch deleted file mode 100644 index 47217b3..0000000 --- a/packages/glibc/2.14.1/0022-nscd-one-fork.patch +++ /dev/null @@ -1,43 +0,0 @@ -only fork one to assist in stop-start-daemon assumptions about daemon behavior - -http://bugs.gentoo.org/190785 - ---- - nscd/nscd.c | 12 +++--------- - 1 file changed, 3 insertions(+), 9 deletions(-) - ---- a/nscd/nscd.c -+++ b/nscd/nscd.c -@@ -182,6 +182,9 @@ - if (pid != 0) - exit (0); - -+ if (write_pid (_PATH_NSCDPID) < 0) -+ dbg_log ("%s: %s", _PATH_NSCDPID, strerror (errno)); -+ - int nullfd = open (_PATH_DEVNULL, O_RDWR); - if (nullfd != -1) - { -@@ -231,12 +234,6 @@ - for (i = min_close_fd; i < getdtablesize (); i++) - close (i); - -- pid = fork (); -- if (pid == -1) -- error (EXIT_FAILURE, errno, _("cannot fork")); -- if (pid != 0) -- exit (0); -- - setsid (); - - if (chdir ("/") != 0) -@@ -245,9 +242,6 @@ - - openlog ("nscd", LOG_CONS | LOG_ODELAY, LOG_DAEMON); - -- if (write_pid (_PATH_NSCDPID) < 0) -- dbg_log ("%s: %s", _PATH_NSCDPID, strerror (errno)); -- - if (!init_logfile ()) - dbg_log (_("Could not create log file")); - diff --git a/packages/glibc/2.14.1/0023-hppa-nptl-carlos.patch b/packages/glibc/2.14.1/0023-hppa-nptl-carlos.patch deleted file mode 100644 index a385a6b..0000000 --- a/packages/glibc/2.14.1/0023-hppa-nptl-carlos.patch +++ /dev/null @@ -1,249 +0,0 @@ - - ---- - elf/rtld.c | 10 +++++----- - include/atomic.h | 26 +++++++++++++------------- - nptl/Makefile | 35 ++++++++++++++++++++++++++++++++--- - nptl/pthread_barrier_wait.c | 2 +- - nptl/sysdeps/pthread/Makefile | 2 ++ - stdio-common/Makefile | 2 +- - sunrpc/clnt_udp.c | 2 +- - 7 files changed, 55 insertions(+), 24 deletions(-) - ---- a/elf/rtld.c -+++ b/elf/rtld.c -@@ -392,14 +392,14 @@ - know it is available. We do not have to clear the memory if we - do not have to use the temporary bootstrap_map. Global variables - are initialized to zero by default. */ --#ifndef DONT_USE_BOOTSTRAP_MAP -+#if !defined DONT_USE_BOOTSTRAP_MAP - # ifdef HAVE_BUILTIN_MEMSET - __builtin_memset (bootstrap_map.l_info, '\0', sizeof (bootstrap_map.l_info)); - # else -- for (size_t cnt = 0; -- cnt < sizeof (bootstrap_map.l_info) / sizeof (bootstrap_map.l_info[0]); -- ++cnt) -- bootstrap_map.l_info[cnt] = 0; -+ /* Clear the whole bootstrap_map structure */ -+ for (char *cnt = (char *)&(bootstrap_map); -+ cnt < ((char *)&(bootstrap_map) + sizeof (bootstrap_map)); -+ *cnt++ = '\0'); - # endif - # if USE___THREAD - bootstrap_map.l_tls_modid = 0; ---- a/include/atomic.h -+++ b/include/atomic.h -@@ -185,7 +185,7 @@ - __typeof (*(mem)) __atg5_value = (newvalue); \ - \ - do \ -- __atg5_oldval = *__atg5_memp; \ -+ __atg5_oldval = *(volatile __typeof (mem))__atg5_memp; \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg5_memp, __atg5_value, \ - __atg5_oldval), 0)); \ -@@ -206,7 +206,7 @@ - __typeof (*(mem)) __atg6_value = (value); \ - \ - do \ -- __atg6_oldval = *__atg6_memp; \ -+ __atg6_oldval = *(volatile __typeof (mem))__atg6_memp; \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg6_memp, \ - __atg6_oldval \ -@@ -224,7 +224,7 @@ - __typeof (*(mem)) __atg7_value = (value); \ - \ - do \ -- __atg7_oldv = *__atg7_memp; \ -+ __atg7_oldv = *(volatile __typeof (mem))__atg7_memp; \ - while (__builtin_expect \ - (catomic_compare_and_exchange_bool_acq (__atg7_memp, \ - __atg7_oldv \ -@@ -242,7 +242,7 @@ - __typeof (mem) __atg8_memp = (mem); \ - __typeof (*(mem)) __atg8_value = (value); \ - do { \ -- __atg8_oldval = *__atg8_memp; \ -+ __atg8_oldval = *(volatile __typeof (mem))__atg8_memp; \ - if (__atg8_oldval >= __atg8_value) \ - break; \ - } while (__builtin_expect \ -@@ -259,7 +259,7 @@ - __typeof (mem) __atg9_memp = (mem); \ - __typeof (*(mem)) __atg9_value = (value); \ - do { \ -- __atg9_oldv = *__atg9_memp; \ -+ __atg9_oldv = *(volatile __typeof (mem))__atg9_memp; \ - if (__atg9_oldv >= __atg9_value) \ - break; \ - } while (__builtin_expect \ -@@ -277,7 +277,7 @@ - __typeof (mem) __atg10_memp = (mem); \ - __typeof (*(mem)) __atg10_value = (value); \ - do { \ -- __atg10_oldval = *__atg10_memp; \ -+ __atg10_oldval = *(volatile __typeof (mem))__atg10_memp; \ - if (__atg10_oldval <= __atg10_value) \ - break; \ - } while (__builtin_expect \ -@@ -361,7 +361,7 @@ - \ - do \ - { \ -- __atg11_oldval = *__atg11_memp; \ -+ __atg11_oldval = *(volatile __typeof (mem))__atg11_memp; \ - if (__builtin_expect (__atg11_oldval <= 0, 0)) \ - break; \ - } \ -@@ -400,7 +400,7 @@ - __typeof (*(mem)) __atg14_mask = ((__typeof (*(mem))) 1 << (bit)); \ - \ - do \ -- __atg14_old = (*__atg14_memp); \ -+ __atg14_old = (*(volatile __typeof (mem))__atg14_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg14_memp, \ - __atg14_old | __atg14_mask,\ -@@ -418,7 +418,7 @@ - __typeof (*(mem)) __atg15_mask = (mask); \ - \ - do \ -- __atg15_old = (*__atg15_memp); \ -+ __atg15_old = (*(volatile __typeof (mem))__atg15_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg15_memp, \ - __atg15_old & __atg15_mask, \ -@@ -450,7 +450,7 @@ - __typeof (*(mem)) __atg16_mask = (mask); \ - \ - do \ -- __atg16_old = (*__atg16_memp); \ -+ __atg16_old = (*(volatile __typeof (mem))__atg16_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg16_memp, \ - __atg16_old & __atg16_mask,\ -@@ -468,7 +468,7 @@ - __typeof (*(mem)) __atg17_mask = (mask); \ - \ - do \ -- __atg17_old = (*__atg17_memp); \ -+ __atg17_old = (*(volatile __typeof (mem))__atg17_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg17_memp, \ - __atg17_old | __atg17_mask, \ -@@ -484,7 +484,7 @@ - __typeof (*(mem)) __atg18_mask = (mask); \ - \ - do \ -- __atg18_old = (*__atg18_memp); \ -+ __atg18_old = (*(volatile __typeof (mem))__atg18_memp); \ - while (__builtin_expect \ - (catomic_compare_and_exchange_bool_acq (__atg18_memp, \ - __atg18_old | __atg18_mask,\ -@@ -500,7 +500,7 @@ - __typeof (*(mem)) __atg19_mask = (mask); \ - \ - do \ -- __atg19_old = (*__atg19_memp); \ -+ __atg19_old = (*(volatile __typeof (mem))__atg19_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg19_memp, \ - __atg19_old | __atg19_mask,\ ---- a/nptl/Makefile -+++ b/nptl/Makefile -@@ -265,9 +265,9 @@ - # Files which must not be linked with libpthread. - tests-nolibpthread = tst-unload - --# This sets the stack resource limit to 1023kb, which is not a multiple --# of the page size since every architecture's page size is > 1k. --tst-oddstacklimit-ENV = ; ulimit -s 1023; -+# This sets the stack resource limit to 8193kb, which is not a multiple -+# of the page size since every architecture's page size is 4096 bytes. -+tst-oddstacklimit-ENV = ; ulimit -s 8193; - - distribute = eintr.c tst-cleanup4aux.c - -@@ -426,6 +426,35 @@ - CFLAGS-tst-cleanupx4.c += -fexceptions - CFLAGS-tst-oncex3.c += -fexceptions - CFLAGS-tst-oncex4.c += -fexceptions -+ -+ldflags-libgcc_s = --as-needed -lgcc_s --no-as-needed -+LDFLAGS-tst-cancelx2 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx4 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx5 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx6 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx7 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx8 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx9 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx10 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx11 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx12 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx13 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx14 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx15 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx16 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx17 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx18 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx20 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx21 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx0 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx1 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx2 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx4 += $(ldflags-libgcc_s) -+LDFLAGS-tst-oncex3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-oncex4 += $(ldflags-libgcc_s) -+ - CFLAGS-tst-align.c += $(stack-align-test-flags) - CFLAGS-tst-align3.c += $(stack-align-test-flags) - CFLAGS-tst-initializers1.c = -W -Wall -Werror ---- a/nptl/pthread_barrier_wait.c -+++ b/nptl/pthread_barrier_wait.c -@@ -64,7 +64,7 @@ - do - lll_futex_wait (&ibarrier->curr_event, event, - ibarrier->private ^ FUTEX_PRIVATE_FLAG); -- while (event == ibarrier->curr_event); -+ while (event == *(volatile unsigned int *)&ibarrier->curr_event); - } - - /* Make sure the init_count is stored locally or in a register. */ ---- a/nptl/sysdeps/pthread/Makefile -+++ b/nptl/sysdeps/pthread/Makefile -@@ -33,7 +33,9 @@ - - ifeq ($(have-forced-unwind),yes) - tests += tst-mqueue8x -+ldflags-libgcc_s = --as-needed -lgcc_s --no-as-needed - CFLAGS-tst-mqueue8x.c += -fexceptions -+LDFLAGS-tst-mqueue8x += $(ldflags-libgcc_s) - endif - endif - ---- a/stdio-common/Makefile -+++ b/stdio-common/Makefile -@@ -82,7 +82,7 @@ - $(SHELL) -e tst-printf.sh $(common-objpfx) '$(run-program-prefix)' - endif - --CFLAGS-vfprintf.c = -Wno-uninitialized -+CFLAGS-vfprintf.c = -Wno-uninitialized -fno-delayed-branch - CFLAGS-vfwprintf.c = -Wno-uninitialized - CFLAGS-tst-printf.c = -Wno-format - CFLAGS-tstdiomisc.c = -Wno-format ---- a/sunrpc/clnt_udp.c -+++ b/sunrpc/clnt_udp.c -@@ -463,7 +463,7 @@ - while (inlen < 0 && errno == EINTR); - if (inlen < 0) - { -- if (errno == EWOULDBLOCK) -+ if (errno == EWOULDBLOCK || errno == EAGAIN) - continue; - cu->cu_error.re_errno = errno; - return (cu->cu_error.re_status = RPC_CANTRECV); diff --git a/packages/glibc/2.14.1/0024-dl_execstack-PaX-support.patch b/packages/glibc/2.14.1/0024-dl_execstack-PaX-support.patch deleted file mode 100644 index 7b56549..0000000 --- a/packages/glibc/2.14.1/0024-dl_execstack-PaX-support.patch +++ /dev/null @@ -1,69 +0,0 @@ - With latest versions of glibc, a lot of apps failed on a PaX enabled - system with: - cannot enable executable stack as shared object requires: Permission denied - - This is due to PaX 'exec-protecting' the stack, and ld.so then trying - to make the stack executable due to some libraries not containing the - PT_GNU_STACK section. Bug #32960. (12 Nov 2003). - - Patch also NPTL. Bug #116086. (20 Dec 2005). - ---- - nptl/allocatestack.c | 3 ++- - sysdeps/unix/sysv/linux/dl-execstack.c | 19 ++++++++++++++++--- - 2 files changed, 18 insertions(+), 4 deletions(-) - ---- a/nptl/allocatestack.c -+++ b/nptl/allocatestack.c -@@ -335,7 +335,8 @@ - # error "Define either _STACK_GROWS_DOWN or _STACK_GROWS_UP" - #endif - if (mprotect (stack, len, PROT_READ | PROT_WRITE | PROT_EXEC) != 0) -- return errno; -+ if (errno != EACCES) /* PAX is enabled */ -+ return errno; - - return 0; - } ---- a/sysdeps/unix/sysv/linux/dl-execstack.c -+++ b/sysdeps/unix/sysv/linux/dl-execstack.c -@@ -63,7 +63,10 @@ - else - # endif - { -- result = errno; -+ if (errno == EACCES) /* PAX is enabled */ -+ result = 0; -+ else -+ result = errno; - goto out; - } - } -@@ -89,7 +92,12 @@ - page -= size; - else - { -- if (errno != ENOMEM) /* Unexpected failure mode. */ -+ if (errno == EACCES) /* PAX is enabled */ -+ { -+ result = 0; -+ goto out; -+ } -+ else if (errno != ENOMEM) /* Unexpected failure mode. */ - { - result = errno; - goto out; -@@ -115,7 +123,12 @@ - page += size; - else - { -- if (errno != ENOMEM) /* Unexpected failure mode. */ -+ if (errno == EACCES) /* PAX is enabled */ -+ { -+ result = 0; -+ goto out; -+ } -+ else if (errno != ENOMEM) /* Unexpected failure mode. */ - { - result = errno; - goto out; diff --git a/packages/glibc/2.14.1/0025-pre20040117-pt_pax.patch b/packages/glibc/2.14.1/0025-pre20040117-pt_pax.patch deleted file mode 100644 index ec17d24..0000000 --- a/packages/glibc/2.14.1/0025-pre20040117-pt_pax.patch +++ /dev/null @@ -1,35 +0,0 @@ - - ---- - elf/elf.h | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - ---- a/elf/elf.h -+++ b/elf/elf.h -@@ -580,6 +580,7 @@ - #define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */ - #define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */ - #define PT_GNU_RELRO 0x6474e552 /* Read-only after relocation */ -+#define PT_PAX_FLAGS 0x65041580 /* Indicates PaX flag markings */ - #define PT_LOSUNW 0x6ffffffa - #define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */ - #define PT_SUNWSTACK 0x6ffffffb /* Stack segment */ -@@ -593,6 +594,18 @@ - #define PF_X (1 << 0) /* Segment is executable */ - #define PF_W (1 << 1) /* Segment is writable */ - #define PF_R (1 << 2) /* Segment is readable */ -+#define PF_PAGEEXEC (1 << 4) /* Enable PAGEEXEC */ -+#define PF_NOPAGEEXEC (1 << 5) /* Disable PAGEEXEC */ -+#define PF_SEGMEXEC (1 << 6) /* Enable SEGMEXEC */ -+#define PF_NOSEGMEXEC (1 << 7) /* Disable SEGMEXEC */ -+#define PF_MPROTECT (1 << 8) /* Enable MPROTECT */ -+#define PF_NOMPROTECT (1 << 9) /* Disable MPROTECT */ -+#define PF_RANDEXEC (1 << 10) /* Enable RANDEXEC */ -+#define PF_NORANDEXEC (1 << 11) /* Disable RANDEXEC */ -+#define PF_EMUTRAMP (1 << 12) /* Enable EMUTRAMP */ -+#define PF_NOEMUTRAMP (1 << 13) /* Disable EMUTRAMP */ -+#define PF_RANDMMAP (1 << 14) /* Enable RANDMMAP */ -+#define PF_NORANDMMAP (1 << 15) /* Disable RANDMMAP */ - #define PF_MASKOS 0x0ff00000 /* OS-specific */ - #define PF_MASKPROC 0xf0000000 /* Processor-specific */ - diff --git a/packages/glibc/2.14.1/0026-tests-sandbox-libdl-paths.patch b/packages/glibc/2.14.1/0026-tests-sandbox-libdl-paths.patch deleted file mode 100644 index 1c4ee59..0000000 --- a/packages/glibc/2.14.1/0026-tests-sandbox-libdl-paths.patch +++ /dev/null @@ -1,196 +0,0 @@ -when glibc runs its tests, it does so by invoking the local library loader. -in Gentoo, we build/run inside of our "sandbox" which itself is linked against -libdl (so that it can load libraries and pull out symbols). the trouble -is that when you upgrade from an older glibc to the new one, often times -internal symbols change name or abi. this is normally OK as you cannot use -libc.so from say version 2.3.6 but libpthread.so from say version 2.5, so -we always say "keep all of the glibc libraries from the same build". but -when glibc runs its tests, it uses dynamic paths to point to its new local -copies of libraries. if the test doesnt use libdl, then glibc doesnt add -its path, and when sandbox triggers the loading of libdl, glibc does so -from the host system system. this gets us into the case of all libraries -are from the locally compiled version of glibc except for libdl.so. - -Fix by Wormo - -http://bugs.gentoo.org/56898 - ---- - grp/tst_fgetgrent.sh | 3 ++- - iconvdata/run-iconv-test.sh | 2 +- - iconvdata/tst-table.sh | 5 ++++- - intl/tst-codeset.sh | 3 +++ - intl/tst-gettext.sh | 5 ++++- - intl/tst-gettext2.sh | 5 ++++- - intl/tst-translit.sh | 5 ++++- - malloc/tst-mtrace.sh | 5 ++++- - nptl/tst-tls6.sh | 4 ++-- - posix/globtest.sh | 2 +- - posix/tst-getconf.sh | 5 ++++- - posix/wordexp-tst.sh | 5 ++++- - 12 files changed, 37 insertions(+), 12 deletions(-) - ---- a/grp/tst_fgetgrent.sh -+++ b/grp/tst_fgetgrent.sh -@@ -24,7 +24,8 @@ - rtld_installed_name=$1; shift - - testout=${common_objpfx}/grp/tst_fgetgrent.out --library_path=${common_objpfx} -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn - - result=0 - ---- a/iconvdata/run-iconv-test.sh -+++ b/iconvdata/run-iconv-test.sh -@@ -34,7 +34,7 @@ - export GCONV_PATH - - # We have to have some directories in the library path. --LIBPATH=$codir:$codir/iconvdata -+LIBPATH=$codir:$codir/iconvdata:$codir/dlfcn - - # How the start the iconv(1) program. - ICONV='$codir/elf/ld.so --library-path $LIBPATH --inhibit-rpath ${from}.so \ ---- a/iconvdata/tst-table.sh -+++ b/iconvdata/tst-table.sh -@@ -59,8 +59,11 @@ - irreversible=${charset}.irreversible - fi - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # iconv in one direction. --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-table-from ${charset} \ - > ${objpfx}tst-${charset}.table - ---- a/intl/tst-codeset.sh -+++ b/intl/tst-codeset.sh -@@ -37,6 +37,9 @@ - LOCPATH=${common_objpfx}localedata - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - ${common_objpfx}elf/ld.so --library-path $common_objpfx \ - ${objpfx}tst-codeset > ${objpfx}tst-codeset.out - ---- a/intl/tst-gettext.sh -+++ b/intl/tst-gettext.sh -@@ -51,9 +51,12 @@ - LOCPATH=${common_objpfx}localedata - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # Now run the test. - MALLOC_TRACE=$malloc_trace LOCPATH=${objpfx}localedir:$LOCPATH \ --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-gettext > ${objpfx}tst-gettext.out ${objpfx}domaindir - - exit $? ---- a/intl/tst-gettext2.sh -+++ b/intl/tst-gettext2.sh -@@ -65,8 +65,11 @@ - LOCPATH=${objpfx}domaindir - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # Now run the test. --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-gettext2 > ${objpfx}tst-gettext2.out ${objpfx}domaindir && - cmp ${objpfx}tst-gettext2.out - < ${objpfx}tst-translit.out ${objpfx}domaindir - - exit $? ---- a/malloc/tst-mtrace.sh -+++ b/malloc/tst-mtrace.sh -@@ -24,9 +24,12 @@ - status=0 - trap "rm -f ${common_objpfx}malloc/tst-mtrace.leak; exit 1" 1 2 15 - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - MALLOC_TRACE=${common_objpfx}malloc/tst-mtrace.leak \ - LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${common_objpfx}malloc/tst-mtrace || status=1 - - if test $status -eq 0 && test -f ${common_objpfx}malloc/mtrace; then ---- a/nptl/tst-tls6.sh -+++ b/nptl/tst-tls6.sh -@@ -5,8 +5,8 @@ - rtld_installed_name=$1; shift - logfile=$common_objpfx/nptl/tst-tls6.out - --# We have to find libc and nptl --library_path=${common_objpfx}:${common_objpfx}nptl -+# We have to find libc and nptl (also libdl in case sandbox is in use) -+library_path=${common_objpfx}:${common_objpfx}nptl:${common_objpfx}/dlfcn - tst_tls5="${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \ - ${common_objpfx}/nptl/tst-tls5" - ---- a/posix/globtest.sh -+++ b/posix/globtest.sh -@@ -18,7 +18,7 @@ - esac - - # We have to find the libc and the NSS modules. --library_path=${common_objpfx}:${common_objpfx}nss:${common_objpfx}nis:${common_objpfx}db2:${common_objpfx}hesiod -+library_path=${common_objpfx}:${common_objpfx}nss:${common_objpfx}nis:${common_objpfx}db2:${common_objpfx}hesiod:${common_objpfx}/dlfcn - - # Since we use `sort' we must make sure to use the same locale everywhere. - LC_ALL=C ---- a/posix/tst-getconf.sh -+++ b/posix/tst-getconf.sh -@@ -10,7 +10,10 @@ - else - rtld_installed_name=$1; shift - runit() { -- ${elf_objpfx}${rtld_installed_name} --library-path ${common_objpfx} "$@" -+ -+ # make sure libdl is also in path in case sandbox is in use -+ library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ ${elf_objpfx}${rtld_installed_name} --library-path ${library_path} "$@" - } - fi - ---- a/posix/wordexp-tst.sh -+++ b/posix/wordexp-tst.sh -@@ -19,8 +19,11 @@ - " - export IFS - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - failed=0 --${elf_objpfx}${rtld_installed_name} --library-path ${common_objpfx} \ -+${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \ - ${common_objpfx}posix/wordexp-test '$*' > ${testout}1 - cat <<"EOF" | cmp - ${testout}1 >> $logfile || failed=1 - wordexp returned 0 diff --git a/packages/glibc/2.14.1/0027-dont-build-timezone.patch b/packages/glibc/2.14.1/0027-dont-build-timezone.patch deleted file mode 100644 index 9bbcde3..0000000 --- a/packages/glibc/2.14.1/0027-dont-build-timezone.patch +++ /dev/null @@ -1,17 +0,0 @@ -timezone data has been split into the package sys-libs/timezone-data - ---- - Makeconfig | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/Makeconfig -+++ b/Makeconfig -@@ -946,7 +946,7 @@ - stdlib stdio-common libio malloc string wcsmbs time dirent \ - grp pwd posix io termios resource misc socket sysvipc gmon \ - gnulib iconv iconvdata wctype manual shadow gshadow po argp \ -- crypt nss localedata timezone rt conform debug \ -+ crypt nss localedata rt conform debug \ - $(add-on-subdirs) $(dlfcn) $(binfmt-subdir) - - ifndef avoid-generated diff --git a/packages/glibc/2.14.1/0028-alpha-xstat.patch b/packages/glibc/2.14.1/0028-alpha-xstat.patch deleted file mode 100644 index 4fa9517..0000000 --- a/packages/glibc/2.14.1/0028-alpha-xstat.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- - sysdeps/unix/sysv/linux/kernel-features.h | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -386,6 +386,11 @@ - # define __ASSUME_GETDENTS32_D_TYPE 1 - #endif - -+/* Starting with version 2.6.4, alpha stat64 syscalls are available. */ -+#if __LINUX_KERNEL_VERSION >= 0x020604 && defined __alpha__ -+# define __ASSUME_STAT64_SYSCALL 1 -+#endif -+ - /* Starting with version 2.5.3, the initial location returned by `brk' - after exec is always rounded up to the next page. */ - #if __LINUX_KERNEL_VERSION >= 132355 diff --git a/packages/glibc/2.14.1/0029-alpha-creat.patch b/packages/glibc/2.14.1/0029-alpha-creat.patch deleted file mode 100644 index 6ef5278..0000000 --- a/packages/glibc/2.14.1/0029-alpha-creat.patch +++ /dev/null @@ -1,17 +0,0 @@ -alpha does not have a __NR_creat - -http://bugs.gentoo.org/227275 -http://sourceware.org/bugzilla/show_bug.cgi?id=6650 - ---- - sysdeps/unix/sysv/linux/wordsize-64/creat64.c | 4 ++++ - 1 file changed, 4 insertions(+) - ---- a/sysdeps/unix/sysv/linux/wordsize-64/creat64.c -+++ b/sysdeps/unix/sysv/linux/wordsize-64/creat64.c -@@ -1 +1,5 @@ - /* Defined as alias for the syscall. */ -+#include -+#ifndef __NR_creat -+#include "../../../../../io/creat64.c" -+#endif diff --git a/packages/glibc/2.14.1/0030-alpha_alpha-add-fdatasync-support.patch b/packages/glibc/2.14.1/0030-alpha_alpha-add-fdatasync-support.patch deleted file mode 100644 index eeef22a..0000000 --- a/packages/glibc/2.14.1/0030-alpha_alpha-add-fdatasync-support.patch +++ /dev/null @@ -1,122 +0,0 @@ -2009-07-25 Aurelien Jarno - - * sysdeps/unix/sysv/linux/kernel-features.h: define - __ASSUME_FDATASYNC. - * sysdeps/unix/sysv/linux/fdatasync.c: New file. - * sysdeps/unix/sysv/linux/Makefile: compile fdatasync.c with - -fexceptions. - * sysdeps/unix/sysv/linux/syscalls.list: Remove fdatasync. - - sysdeps/unix/sysv/linux/Makefile | 1 - sysdeps/unix/sysv/linux/fdatasync.c | 69 ++++++++++++++++++++++++++++++ - sysdeps/unix/sysv/linux/kernel-features.h | 6 ++ - sysdeps/unix/sysv/linux/syscalls.list | 1 - 4 files changed, 76 insertions(+), 1 deletion(-) - ---- a/sysdeps/unix/sysv/linux/Makefile -+++ b/sysdeps/unix/sysv/linux/Makefile -@@ -21,6 +21,7 @@ - setfsuid setfsgid makedev epoll_pwait signalfd \ - eventfd eventfd_read eventfd_write prlimit - -+CFLAGS-fdatasync.c = -fexceptions - CFLAGS-gethostid.c = -fexceptions - - sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h \ ---- /dev/null -+++ b/sysdeps/unix/sysv/linux/fdatasync.c -@@ -0,0 +1,69 @@ -+/* fdatasync -- synchronize at least the data part of a file with -+ the underlying media. Linux version. -+ -+ Copyright (C) 2007 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 -+ 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 -+ -+#if defined __NR_fdatasync && !defined __ASSUME_FDATASYNC -+static int __have_no_fdatasync; -+#endif -+ -+static int -+do_fdatasync (int fd) -+{ -+#ifdef __ASSUME_FDATASYNC -+ return INLINE_SYSCALL (fdatasync, 1, fd); -+#elif defined __NR_fdatasync -+ if (!__builtin_expect (__have_no_fdatasync, 0)) -+ { -+ int result = INLINE_SYSCALL (fdatasync, 1, fd); -+ if (__builtin_expect (result, 0) != -1 || errno != ENOSYS) -+ return result; -+ -+ __have_no_fdatasync = 1; -+ } -+#endif -+ return INLINE_SYSCALL (fsync, 1, fd); -+} -+ -+int -+__fdatasync (int fd) -+{ -+ if (SINGLE_THREAD_P) -+ return do_fdatasync (fd); -+ -+ int oldtype = LIBC_CANCEL_ASYNC (); -+ -+ int result = do_fdatasync (fd); -+ -+ LIBC_CANCEL_RESET (oldtype); -+ -+ return result; -+} -+ -+weak_alias (__fdatasync, fdatasync) -+ ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -459,6 +459,12 @@ - # define __ASSUME_FUTEX_LOCK_PI 1 - #endif - -+/* Support for fsyncdata syscall was added in 2.6.22 on alpha, but it -+ was already present in 2.0 kernels on other architectures. */ -+#if (!defined __alpha || __LINUX_KERNEL_VERSION >= 0x020616) -+# define __ASSUME_FDATASYNC 1 -+#endif -+ - /* Support for utimensat syscall was added in 2.6.22, on SH - only after 2.6.22-rc1. */ - #if __LINUX_KERNEL_VERSION >= 0x020616 \ ---- a/sysdeps/unix/sysv/linux/syscalls.list -+++ b/sysdeps/unix/sysv/linux/syscalls.list -@@ -12,7 +12,6 @@ - epoll_create1 EXTRA epoll_create1 i:i epoll_create1 - epoll_ctl EXTRA epoll_ctl i:iiip epoll_ctl - epoll_wait EXTRA epoll_wait Ci:ipii epoll_wait --fdatasync - fdatasync Ci:i fdatasync - flock - flock i:ii __flock flock - fork - fork i: __libc_fork __fork fork - get_kernel_syms EXTRA get_kernel_syms i:p get_kernel_syms diff --git a/packages/glibc/2.14.1/0031-ppc-atomic.patch b/packages/glibc/2.14.1/0031-ppc-atomic.patch deleted file mode 100644 index a38c1c5..0000000 --- a/packages/glibc/2.14.1/0031-ppc-atomic.patch +++ /dev/null @@ -1,412 +0,0 @@ -sniped from suse - ---- - sysdeps/powerpc/bits/atomic.h | 66 ++++++++++----------- - sysdeps/powerpc/powerpc32/bits/atomic.h | 16 ++--- - sysdeps/powerpc/powerpc64/bits/atomic.h | 98 ++++++++++++++++---------------- - 3 files changed, 90 insertions(+), 90 deletions(-) - ---- a/sysdeps/powerpc/bits/atomic.h -+++ b/sysdeps/powerpc/bits/atomic.h -@@ -85,14 +85,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile ( \ -- "1: lwarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " cmpw %0,%2\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -102,14 +102,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ - " cmpw %0,%2\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -118,12 +118,12 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile ( \ -- "1: lwarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -- " stwcx. %3,0,%2\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ -+ " stwcx. %2,%y1\n" \ - " bne- 1b\n" \ - " " __ARCH_ACQ_INSTR \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -132,11 +132,11 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_REL "\n" \ -- " stwcx. %3,0,%2\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ -+ " stwcx. %2,%y1\n" \ - " bne- 1b" \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -144,12 +144,12 @@ - #define __arch_atomic_exchange_and_add_32(mem, value) \ - ({ \ - __typeof (*mem) __val, __tmp; \ -- __asm __volatile ("1: lwarx %0,0,%3\n" \ -- " add %1,%0,%4\n" \ -- " stwcx. %1,0,%3\n" \ -+ __asm __volatile ("1: lwarx %0,%y2\n" \ -+ " add %1,%0,%3\n" \ -+ " stwcx. %1,%y2\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -157,12 +157,12 @@ - #define __arch_atomic_increment_val_32(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: lwarx %0,0,%2\n" \ -+ __asm __volatile ("1: lwarx %0,%y1\n" \ - " addi %0,%0,1\n" \ -- " stwcx. %0,0,%2\n" \ -+ " stwcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -170,27 +170,27 @@ - #define __arch_atomic_decrement_val_32(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: lwarx %0,0,%2\n" \ -+ __asm __volatile ("1: lwarx %0,%y1\n" \ - " subi %0,%0,1\n" \ -- " stwcx. %0,0,%2\n" \ -+ " stwcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) - - #define __arch_atomic_decrement_if_positive_32(mem) \ - ({ int __val, __tmp; \ -- __asm __volatile ("1: lwarx %0,0,%3\n" \ -+ __asm __volatile ("1: lwarx %0,%y2\n" \ - " cmpwi 0,%0,0\n" \ - " addi %1,%0,-1\n" \ - " ble 2f\n" \ -- " stwcx. %1,0,%3\n" \ -+ " stwcx. %1,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) ---- a/sysdeps/powerpc/powerpc32/bits/atomic.h -+++ b/sysdeps/powerpc/powerpc32/bits/atomic.h -@@ -44,14 +44,14 @@ - ({ \ - unsigned int __tmp; \ - __asm __volatile ( \ -- "1: lwarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -60,14 +60,14 @@ - ({ \ - unsigned int __tmp; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) ---- a/sysdeps/powerpc/powerpc64/bits/atomic.h -+++ b/sysdeps/powerpc/powerpc64/bits/atomic.h -@@ -44,14 +44,14 @@ - ({ \ - unsigned int __tmp, __tmp2; \ - __asm __volatile (" clrldi %1,%1,32\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y2" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%1,%0\n" \ - " bne 2f\n" \ -- " stwcx. %4,0,%2\n" \ -+ " stwcx. %4,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp), "=r" (__tmp2) \ -- : "b" (mem), "1" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "=r" (__tmp2), "+Z" (*(mem)) \ -+ : "1" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -61,14 +61,14 @@ - unsigned int __tmp, __tmp2; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ - " clrldi %1,%1,32\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y2" MUTEX_HINT_REL "\n" \ - " subf. %0,%1,%0\n" \ - " bne 2f\n" \ -- " stwcx. %4,0,%2\n" \ -+ " stwcx. %4,%y2\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp), "=r" (__tmp2) \ -- : "b" (mem), "1" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "=r" (__tmp2), "+Z" (*(mem)) \ -+ : "1" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -82,14 +82,14 @@ - ({ \ - unsigned long __tmp; \ - __asm __volatile ( \ -- "1: ldarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -98,14 +98,14 @@ - ({ \ - unsigned long __tmp; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_REL "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -115,14 +115,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile ( \ -- "1: ldarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " cmpd %0,%2\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -132,14 +132,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ - " cmpd %0,%2\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -148,12 +148,12 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -- " stdcx. %3,0,%2\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ -+ " stdcx. %2,%y1\n" \ - " bne- 1b\n" \ - " " __ARCH_ACQ_INSTR \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -162,11 +162,11 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_REL "\n" \ -- " stdcx. %3,0,%2\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ -+ " stdcx. %2,%y1\n" \ - " bne- 1b" \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -174,12 +174,12 @@ - #define __arch_atomic_exchange_and_add_64(mem, value) \ - ({ \ - __typeof (*mem) __val, __tmp; \ -- __asm __volatile ("1: ldarx %0,0,%3\n" \ -- " add %1,%0,%4\n" \ -- " stdcx. %1,0,%3\n" \ -+ __asm __volatile ("1: ldarx %0,%y2\n" \ -+ " add %1,%0,%3\n" \ -+ " stdcx. %1,%y2\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -187,12 +187,12 @@ - #define __arch_atomic_increment_val_64(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: ldarx %0,0,%2\n" \ -+ __asm __volatile ("1: ldarx %0,%y1\n" \ - " addi %0,%0,1\n" \ -- " stdcx. %0,0,%2\n" \ -+ " stdcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -200,27 +200,27 @@ - #define __arch_atomic_decrement_val_64(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: ldarx %0,0,%2\n" \ -+ __asm __volatile ("1: ldarx %0,%y1\n" \ - " subi %0,%0,1\n" \ -- " stdcx. %0,0,%2\n" \ -+ " stdcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) - - #define __arch_atomic_decrement_if_positive_64(mem) \ - ({ int __val, __tmp; \ -- __asm __volatile ("1: ldarx %0,0,%3\n" \ -+ __asm __volatile ("1: ldarx %0,%y2\n" \ - " cmpdi 0,%0,0\n" \ - " addi %1,%0,-1\n" \ - " ble 2f\n" \ -- " stdcx. %1,0,%3\n" \ -+ " stdcx. %1,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) diff --git a/packages/glibc/2.14.1/0032-mips_shn_undef-hack.patch b/packages/glibc/2.14.1/0032-mips_shn_undef-hack.patch deleted file mode 100644 index a12c977..0000000 --- a/packages/glibc/2.14.1/0032-mips_shn_undef-hack.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- - elf/dl-lookup.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/elf/dl-lookup.c -+++ b/elf/dl-lookup.c -@@ -300,6 +300,12 @@ - /* FALLTHROUGH */ - case STB_GLOBAL: - success: -+#ifdef __mips__ -+ /* HACK: MIPS marks its lazy evaluation stubs with SHN_UNDEF -+ symbols, we skip them. */ -+ if (sym->st_shndx == SHN_UNDEF) -+ break; -+#endif - /* Global definition. Just what we need. */ - result->s = sym; - result->m = (struct link_map *) map; diff --git a/packages/glibc/2.14.1/0033-alpha-atfcts.patch b/packages/glibc/2.14.1/0033-alpha-atfcts.patch deleted file mode 100644 index 2eff918..0000000 --- a/packages/glibc/2.14.1/0033-alpha-atfcts.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- - sysdeps/unix/sysv/linux/kernel-features.h | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -437,7 +437,8 @@ - the code. On PPC they were introduced in 2.6.17-rc1, - on SH in 2.6.19-rc1. */ - #if __LINUX_KERNEL_VERSION >= 0x020611 \ -- && (!defined __sh__ || __LINUX_KERNEL_VERSION >= 0x020613) -+ && (!defined __sh__ || __LINUX_KERNEL_VERSION >= 0x020613) \ -+ && (!defined __alpha__) - # define __ASSUME_ATFCTS 1 - #endif - diff --git a/packages/glibc/2.14.1/0034-syslog.patch b/packages/glibc/2.14.1/0034-syslog.patch deleted file mode 100644 index a2d9722..0000000 --- a/packages/glibc/2.14.1/0034-syslog.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- - misc/syslog.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/misc/syslog.c -+++ b/misc/syslog.c -@@ -152,7 +152,7 @@ - #define INTERNALLOG LOG_ERR|LOG_CONS|LOG_PERROR|LOG_PID - /* Check for invalid bits. */ - if (pri & ~(LOG_PRIMASK|LOG_FACMASK)) { -- syslog(INTERNALLOG, -+ __syslog(INTERNALLOG, - "syslog: unknown facility/priority: %x", pri); - pri &= LOG_PRIMASK|LOG_FACMASK; - } diff --git a/packages/glibc/2.14.1/0035-debug-readlink_chk-readklinkat_chk.patch b/packages/glibc/2.14.1/0035-debug-readlink_chk-readklinkat_chk.patch deleted file mode 100644 index 0b930f3..0000000 --- a/packages/glibc/2.14.1/0035-debug-readlink_chk-readklinkat_chk.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- - debug/readlink_chk.c | 2 +- - debug/readlinkat_chk.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/debug/readlink_chk.c -+++ b/debug/readlink_chk.c -@@ -25,7 +25,7 @@ - - - ssize_t --__readlink_chk (const char *path, void *buf, size_t len, size_t buflen) -+__readlink_chk (const char *path, char *buf, size_t len, size_t buflen) - { - if (len > buflen) - __chk_fail (); ---- a/debug/readlinkat_chk.c -+++ b/debug/readlinkat_chk.c -@@ -21,7 +21,7 @@ - - - ssize_t --__readlinkat_chk (int fd, const char *path, void *buf, size_t len, -+__readlinkat_chk (int fd, const char *path, char *buf, size_t len, - size_t buflen) - { - if (len > buflen) diff --git a/packages/glibc/2.14.1/0036-cpuid-include.patch b/packages/glibc/2.14.1/0036-cpuid-include.patch deleted file mode 100644 index ac5c153..0000000 --- a/packages/glibc/2.14.1/0036-cpuid-include.patch +++ /dev/null @@ -1,630 +0,0 @@ -This patch fixes another configure test issue when bootstrapping. -sysdeps/i386/configure.in uses the obsolete AC_HEADER_CHECK macro to -test for cpuid.h, and that macro tries to include various other -standard headers (which come from the library, unlike cpuid.h which -comes from the compiler, so aren't available when bootstrapping) in -the test code it compiles. This patch changes the code to use -AC_CHECK_HEADER, with the fourth argument used to prevent any default -includes being used in the test. - -Tested x86_64 (native). - -2012-03-07 Joseph Myers - - * sysdeps/i386/configure.in (cpuid.h): Use AC_CHECK_HEADER with no - default includes instead of AC_HEADER_CHECK. - * sysdeps/i386/configure: Regenerated. - -Origin: http://sourceware.org/ml/libc-alpha/2012-03/msg00177.html - ---- - sysdeps/i386/configure | 502 +--------------------------------------------- - sysdeps/i386/configure.in | 5 - 2 files changed, 17 insertions(+), 490 deletions(-) - ---- a/sysdeps/i386/configure -+++ b/sysdeps/i386/configure -@@ -16,23 +16,6 @@ - as_fn_set_status $1 - exit $1 - } # as_fn_exit --# as_fn_arith ARG... --# ------------------ --# Perform arithmetic evaluation on the ARGs, and store the result in the --# global $as_val. Take advantage of shells that can avoid forks. The arguments --# must be portable across $(()) and expr. --if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : -- eval 'as_fn_arith () -- { -- as_val=$(( $* )) -- }' --else -- as_fn_arith () -- { -- as_val=`expr "$@" || test $? -eq 1` -- } --fi # as_fn_arith -- - if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -@@ -89,6 +72,10 @@ - chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } - -+ # If we had to re-execute with $CONFIG_SHELL, we're ensured to have -+ # already done that, so ensure we don't try to do so again and fall -+ # in an infinite loop. This has already happened in practice. -+ _as_can_reexec=no; export _as_can_reexec - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). -@@ -97,42 +84,6 @@ - exit - } - --# Factoring default headers for most tests. --ac_includes_default="\ --#include --#ifdef HAVE_SYS_TYPES_H --# include --#endif --#ifdef HAVE_SYS_STAT_H --# include --#endif --#ifdef STDC_HEADERS --# include --# include --#else --# ifdef HAVE_STDLIB_H --# include --# endif --#endif --#ifdef HAVE_STRING_H --# if !defined STDC_HEADERS && defined HAVE_MEMORY_H --# include --# endif --# include --#endif --#ifdef HAVE_STRINGS_H --# include --#endif --#ifdef HAVE_INTTYPES_H --# include --#endif --#ifdef HAVE_STDINT_H --# include --#endif --#ifdef HAVE_UNISTD_H --# include --#endif" -- - - # ac_fn_c_try_compile LINENO - # -------------------------- -@@ -167,177 +118,11 @@ - - ac_retval=1 - fi -- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} -+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - - } # ac_fn_c_try_compile - --# ac_fn_c_try_cpp LINENO --# ---------------------- --# Try to preprocess conftest.$ac_ext, and return whether this succeeded. --ac_fn_c_try_cpp () --{ -- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack -- if { { ac_try="$ac_cpp conftest.$ac_ext" --case "(($ac_try" in -- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; -- *) ac_try_echo=$ac_try;; --esac --eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" --$as_echo "$ac_try_echo"; } >&5 -- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err -- ac_status=$? -- if test -s conftest.err; then -- grep -v '^ *+' conftest.err >conftest.er1 -- cat conftest.er1 >&5 -- mv -f conftest.er1 conftest.err -- fi -- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; } >/dev/null && { -- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || -- test ! -s conftest.err -- }; then : -- ac_retval=0 --else -- $as_echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -- ac_retval=1 --fi -- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} -- as_fn_set_status $ac_retval -- --} # ac_fn_c_try_cpp -- --# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES --# ------------------------------------------------------- --# Tests whether HEADER exists, giving a warning if it cannot be compiled using --# the include files in INCLUDES and setting the cache variable VAR --# accordingly. --ac_fn_c_check_header_mongrel () --{ -- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack -- if eval "test \"\${$3+set}\"" = set; then : -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 --$as_echo_n "checking for $2... " >&6; } --if eval "test \"\${$3+set}\"" = set; then : -- $as_echo_n "(cached) " >&6 --fi --eval ac_res=\$$3 -- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 --$as_echo "$ac_res" >&6; } --else -- # Is the header compilable? --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 --$as_echo_n "checking $2 usability... " >&6; } --cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --$4 --#include <$2> --_ACEOF --if ac_fn_c_try_compile "$LINENO"; then : -- ac_header_compiler=yes --else -- ac_header_compiler=no --fi --rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 --$as_echo "$ac_header_compiler" >&6; } -- --# Is the header present? --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 --$as_echo_n "checking $2 presence... " >&6; } --cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --#include <$2> --_ACEOF --if ac_fn_c_try_cpp "$LINENO"; then : -- ac_header_preproc=yes --else -- ac_header_preproc=no --fi --rm -f conftest.err conftest.$ac_ext --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 --$as_echo "$ac_header_preproc" >&6; } -- --# So? What about this header? --case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( -- yes:no: ) -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 --$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 --$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} -- ;; -- no:yes:* ) -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 --$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 --$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 --$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 --$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 --$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} -- ;; --esac -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 --$as_echo_n "checking for $2... " >&6; } --if eval "test \"\${$3+set}\"" = set; then : -- $as_echo_n "(cached) " >&6 --else -- eval "$3=\$ac_header_compiler" --fi --eval ac_res=\$$3 -- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 --$as_echo "$ac_res" >&6; } --fi -- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} -- --} # ac_fn_c_check_header_mongrel -- --# ac_fn_c_try_run LINENO --# ---------------------- --# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes --# that executables *can* be run. --ac_fn_c_try_run () --{ -- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack -- if { { ac_try="$ac_link" --case "(($ac_try" in -- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; -- *) ac_try_echo=$ac_try;; --esac --eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" --$as_echo "$ac_try_echo"; } >&5 -- (eval "$ac_link") 2>&5 -- ac_status=$? -- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' -- { { case "(($ac_try" in -- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; -- *) ac_try_echo=$ac_try;; --esac --eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" --$as_echo "$ac_try_echo"; } >&5 -- (eval "$ac_try") 2>&5 -- ac_status=$? -- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; }; }; then : -- ac_retval=0 --else -- $as_echo "$as_me: program exited with status $ac_status" >&5 -- $as_echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -- ac_retval=$ac_status --fi -- rm -rf conftest.dSYM conftest_ipa8_conftest.oo -- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} -- as_fn_set_status $ac_retval -- --} # ac_fn_c_try_run -- - # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES - # ------------------------------------------------------- - # Tests whether HEADER exists and can be compiled using the include files in -@@ -347,7 +132,7 @@ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 - $as_echo_n "checking for $2... " >&6; } --if eval "test \"\${$3+set}\"" = set; then : -+if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 - else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -@@ -365,275 +150,16 @@ - eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 - $as_echo "$ac_res" >&6; } -- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} -+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - - } # ac_fn_c_check_header_compile - # This file is generated from configure.in by Autoconf. DO NOT EDIT! - # Local configure fragment for sysdeps/i386. - - -- --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 --$as_echo_n "checking for grep that handles long lines and -e... " >&6; } --if test "${ac_cv_path_GREP+set}" = set; then : -- $as_echo_n "(cached) " >&6 --else -- if test -z "$GREP"; then -- ac_path_GREP_found=false -- # Loop through the user's path and test for each of PROGNAME-LIST -- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_prog in grep ggrep; do -- for ac_exec_ext in '' $ac_executable_extensions; do -- ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" -- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue --# Check for GNU ac_path_GREP and select it if it is found. -- # Check for GNU $ac_path_GREP --case `"$ac_path_GREP" --version 2>&1` in --*GNU*) -- ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; --*) -- ac_count=0 -- $as_echo_n 0123456789 >"conftest.in" -- while : -- do -- cat "conftest.in" "conftest.in" >"conftest.tmp" -- mv "conftest.tmp" "conftest.in" -- cp "conftest.in" "conftest.nl" -- $as_echo 'GREP' >> "conftest.nl" -- "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break -- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break -- as_fn_arith $ac_count + 1 && ac_count=$as_val -- if test $ac_count -gt ${ac_path_GREP_max-0}; then -- # Best one so far, save it but keep looking for a better one -- ac_cv_path_GREP="$ac_path_GREP" -- ac_path_GREP_max=$ac_count -- fi -- # 10*(2^10) chars as input seems more than enough -- test $ac_count -gt 10 && break -- done -- rm -f conftest.in conftest.tmp conftest.nl conftest.out;; --esac -- -- $ac_path_GREP_found && break 3 -- done -- done -- done --IFS=$as_save_IFS -- if test -z "$ac_cv_path_GREP"; then -- as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 -- fi --else -- ac_cv_path_GREP=$GREP --fi -- --fi --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 --$as_echo "$ac_cv_path_GREP" >&6; } -- GREP="$ac_cv_path_GREP" -- -- --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 --$as_echo_n "checking for egrep... " >&6; } --if test "${ac_cv_path_EGREP+set}" = set; then : -- $as_echo_n "(cached) " >&6 --else -- if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 -- then ac_cv_path_EGREP="$GREP -E" -- else -- if test -z "$EGREP"; then -- ac_path_EGREP_found=false -- # Loop through the user's path and test for each of PROGNAME-LIST -- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_prog in egrep; do -- for ac_exec_ext in '' $ac_executable_extensions; do -- ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" -- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue --# Check for GNU ac_path_EGREP and select it if it is found. -- # Check for GNU $ac_path_EGREP --case `"$ac_path_EGREP" --version 2>&1` in --*GNU*) -- ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; --*) -- ac_count=0 -- $as_echo_n 0123456789 >"conftest.in" -- while : -- do -- cat "conftest.in" "conftest.in" >"conftest.tmp" -- mv "conftest.tmp" "conftest.in" -- cp "conftest.in" "conftest.nl" -- $as_echo 'EGREP' >> "conftest.nl" -- "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break -- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break -- as_fn_arith $ac_count + 1 && ac_count=$as_val -- if test $ac_count -gt ${ac_path_EGREP_max-0}; then -- # Best one so far, save it but keep looking for a better one -- ac_cv_path_EGREP="$ac_path_EGREP" -- ac_path_EGREP_max=$ac_count -- fi -- # 10*(2^10) chars as input seems more than enough -- test $ac_count -gt 10 && break -- done -- rm -f conftest.in conftest.tmp conftest.nl conftest.out;; --esac -- -- $ac_path_EGREP_found && break 3 -- done -- done -- done --IFS=$as_save_IFS -- if test -z "$ac_cv_path_EGREP"; then -- as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 -- fi --else -- ac_cv_path_EGREP=$EGREP --fi -- -- fi --fi --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 --$as_echo "$ac_cv_path_EGREP" >&6; } -- EGREP="$ac_cv_path_EGREP" -- -- --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 --$as_echo_n "checking for ANSI C header files... " >&6; } --if test "${ac_cv_header_stdc+set}" = set; then : -- $as_echo_n "(cached) " >&6 --else -- cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --#include --#include --#include --#include -- --int --main () --{ -- -- ; -- return 0; --} --_ACEOF --if ac_fn_c_try_compile "$LINENO"; then : -- ac_cv_header_stdc=yes --else -- ac_cv_header_stdc=no --fi --rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -- --if test $ac_cv_header_stdc = yes; then -- # SunOS 4.x string.h does not declare mem*, contrary to ANSI. -- cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --#include -- --_ACEOF --if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -- $EGREP "memchr" >/dev/null 2>&1; then : -- --else -- ac_cv_header_stdc=no --fi --rm -f conftest* -- --fi -- --if test $ac_cv_header_stdc = yes; then -- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. -- cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --#include -- --_ACEOF --if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -- $EGREP "free" >/dev/null 2>&1; then : -- --else -- ac_cv_header_stdc=no --fi --rm -f conftest* -- --fi -- --if test $ac_cv_header_stdc = yes; then -- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. -- if test "$cross_compiling" = yes; then : -- : --else -- cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --#include --#include --#if ((' ' & 0x0FF) == 0x020) --# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') --# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) --#else --# define ISLOWER(c) \ -- (('a' <= (c) && (c) <= 'i') \ -- || ('j' <= (c) && (c) <= 'r') \ -- || ('s' <= (c) && (c) <= 'z')) --# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) --#endif -- --#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) --int --main () --{ -- int i; -- for (i = 0; i < 256; i++) -- if (XOR (islower (i), ISLOWER (i)) -- || toupper (i) != TOUPPER (i)) -- return 2; -- return 0; --} --_ACEOF --if ac_fn_c_try_run "$LINENO"; then : -- --else -- ac_cv_header_stdc=no --fi --rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ -- conftest.$ac_objext conftest.beam conftest.$ac_ext --fi -- --fi --fi --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 --$as_echo "$ac_cv_header_stdc" >&6; } --if test $ac_cv_header_stdc = yes; then -- --$as_echo "#define STDC_HEADERS 1" >>confdefs.h -- --fi -- --# On IRIX 5.3, sys/types and inttypes.h are conflicting. --for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ -- inttypes.h stdint.h unistd.h --do : -- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` --ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default -+ac_fn_c_check_header_compile "$LINENO" "cpuid.h" "ac_cv_header_cpuid_h" "/* No default includes. */ - " --if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : -- cat >>confdefs.h <<_ACEOF --#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 --_ACEOF -- --fi -- --done -- -- --ac_fn_c_check_header_mongrel "$LINENO" "cpuid.h" "ac_cv_header_cpuid_h" "$ac_includes_default" --if test "x$ac_cv_header_cpuid_h" = x""yes; then : -+if test "x$ac_cv_header_cpuid_h" = xyes; then : - - else - as_fn_error $? "gcc must provide the header" "$LINENO" 5 -@@ -643,7 +169,7 @@ - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if -g produces usable source locations for assembler-with-cpp" >&5 - $as_echo_n "checking if -g produces usable source locations for assembler-with-cpp... " >&6; } --if test "${libc_cv_cpp_asm_debuginfo+set}" = set; then : -+if ${libc_cv_cpp_asm_debuginfo+:} false; then : - $as_echo_n "(cached) " >&6 - else - cat > conftest.S <&5 - $as_echo_n "checking for SSE4 support... " >&6; } --if test "${libc_cv_cc_sse4+set}" = set; then : -+if ${libc_cv_cc_sse4+:} false; then : - $as_echo_n "(cached) " >&6 - else - if { ac_try='${CC-cc} -msse4 -xc /dev/null -S -o /dev/null' -@@ -716,7 +242,7 @@ - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for assembler -mtune=i686 support" >&5 - $as_echo_n "checking for assembler -mtune=i686 support... " >&6; } --if test "${libc_cv_as_i686+set}" = set; then : -+if ${libc_cv_as_i686+:} false; then : - $as_echo_n "(cached) " >&6 - else - if { ac_try='${CC-cc} -Wa,-mtune=i686 -xc /dev/null -S -o /dev/null' -@@ -735,7 +261,7 @@ - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for AVX support" >&5 - $as_echo_n "checking for AVX support... " >&6; } --if test "${libc_cv_cc_avx+set}" = set; then : -+if ${libc_cv_cc_avx+:} false; then : - $as_echo_n "(cached) " >&6 - else - if { ac_try='${CC-cc} -mavx -xc /dev/null -S -o /dev/null' -@@ -758,7 +284,7 @@ - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -mno-vzeroupper support" >&5 - $as_echo_n "checking for -mno-vzeroupper support... " >&6; } --if test "${libc_cv_cc_novzeroupper+set}" = set; then : -+if ${libc_cv_cc_novzeroupper+:} false; then : - $as_echo_n "(cached) " >&6 - else - if { ac_try='${CC-cc} -mno-vzeroupper -xc /dev/null -S -o /dev/null' ---- a/sysdeps/i386/configure.in -+++ b/sysdeps/i386/configure.in -@@ -1,8 +1,9 @@ - GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. - # Local configure fragment for sysdeps/i386. - --AC_HEADER_CHECK([cpuid.h], , -- [AC_MSG_ERROR([gcc must provide the header])]) -+AC_CHECK_HEADER([cpuid.h], , -+ [AC_MSG_ERROR([gcc must provide the header])], -+ [/* No default includes. */]) - - AC_CACHE_CHECK(if -g produces usable source locations for assembler-with-cpp, - libc_cv_cpp_asm_debuginfo, [dnl diff --git a/packages/glibc/2.14.1/0037-asm-i686.patch b/packages/glibc/2.14.1/0037-asm-i686.patch deleted file mode 100644 index ea3c88a..0000000 --- a/packages/glibc/2.14.1/0037-asm-i686.patch +++ /dev/null @@ -1,52 +0,0 @@ -Submitted By: Matt Burgess -Date: 2010-04-18 -Initial Package Version: 2.11.1 -Upstream Status: Not Submitted -Origin: http://www.eglibc.org/archives/patches/msg00073.html -Description: Fixes the following build problem with GCC-4.5.0: - -/mnt/lfs/sources/libc-build/math/s_frexp.os.dt -MT /mnt/lfs/sources/libc-build/math/s_frexp.os -./sysdeps/i386/fpu/s_frexp.S: Assembler messages: -./sysdeps/i386/fpu/s_frexp.S:66: Error: invalid identifier for ".ifdef" -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1' -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1' -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1' -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `.' -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1' -./sysdeps/i386/fpu/s_frexp.S:66: Error: expected comma after name `' in .size directive -./sysdeps/i386/fpu/s_frexp.S:66: Error: ".endif" without ".if" -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk `.get_pc_thunk.dx' after expression -make[2]: *** [/mnt/lfs/sources/libc-build/math/s_frexp.os] Error 1 - ---- - nptl/sysdeps/pthread/pt-initfini.c | 5 +++++ - sysdeps/unix/sysv/linux/i386/sysdep.h | 4 ++++ - 2 files changed, 9 insertions(+) - ---- a/nptl/sysdeps/pthread/pt-initfini.c -+++ b/nptl/sysdeps/pthread/pt-initfini.c -@@ -45,6 +45,11 @@ - /* Embed an #include to pull in the alignment and .end directives. */ - asm ("\n#include \"defs.h\""); - -+asm ("\n#if defined __i686 && defined __ASSEMBLER__"); -+asm ("\n#undef __i686"); -+asm ("\n#define __i686 __i686"); -+asm ("\n#endif"); -+ - /* The initial common code ends here. */ - asm ("\n/*@HEADER_ENDS*/"); - ---- a/sysdeps/unix/sysv/linux/i386/sysdep.h -+++ b/sysdeps/unix/sysv/linux/i386/sysdep.h -@@ -29,6 +29,10 @@ - #include - #include - -+#if defined __i686 && defined __ASSEMBLER__ -+#undef __i686 -+#define __i686 __i686 -+#endif - - /* For Linux we can use the system call table in the header file - /usr/include/asm/unistd.h diff --git a/packages/glibc/2.14.1/0038-fix-rpc_parse-format.patch b/packages/glibc/2.14.1/0038-fix-rpc_parse-format.patch deleted file mode 100644 index 341d541..0000000 --- a/packages/glibc/2.14.1/0038-fix-rpc_parse-format.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 5874510faaf3cbd0bb112aaacab9f225002beed1 -Author: Joseph Myers -Date: Tue Nov 8 23:44:51 2016 +0000 - - Fix rpcgen buffer overrun (bug 20790). - - Building with GCC 7 produces an error building rpcgen: - - rpc_parse.c: In function 'get_prog_declaration': - rpc_parse.c:543:25: error: may write a terminating nul past the end of the destination [-Werror=format-length=] - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ~~~~^ - rpc_parse.c:543:5: note: format output between 5 and 14 bytes into a destination of size 10 - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - That buffer overrun is for the case where the .x file declares a - program with a million arguments. The strcpy two lines above can - generate a buffer overrun much more simply for a long argument name. - - The limit on length of line read by rpcgen (MAXLINESIZE == 1024) - provides a bound on the buffer size needed, so this patch just changes - the buffer size to MAXLINESIZE to avoid both possible buffer - overruns. A testcase is added that rpcgen does not crash with a - 500-character argument name, where it previously crashed. - - It would not at all surprise me if there are many other ways of - crashing rpcgen with either valid or invalid input; fuzz testing would - likely find various such bugs, though I don't think they are that - important to fix (rpcgen is not that likely to be used with untrusted - .x files as input). (As well as fuzz-findable bugs there are probably - also issues when various int variables get overflowed on very large - input.) The test infrastructure for rpcgen-not-crashing tests would - need extending if tests are to be added for cases where rpcgen should - produce an error, as opposed to cases where it should succeed. - - Tested for x86_64 and x86. - - [BZ #20790] - * sunrpc/rpc_parse.c (get_prog_declaration): Increase buffer size - to MAXLINESIZE. - * sunrpc/bug20790.x: New file. - * sunrpc/Makefile [$(run-built-tests) = yes] (rpcgen-tests): New - variable. - [$(run-built-tests) = yes] (tests-special): Add $(rpcgen-tests). - [$(run-built-tests) = yes] ($(rpcgen-tests)): New rule. - ---- - sunrpc/rpc_parse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sunrpc/rpc_parse.c -+++ b/sunrpc/rpc_parse.c -@@ -521,7 +521,7 @@ - get_prog_declaration (declaration * dec, defkind dkind, int num /* arg number */ ) - { - token tok; -- char name[10]; /* argument name */ -+ char name[MAXLINESIZE]; /* argument name */ - - if (dkind == DEF_PROGRAM) - { diff --git a/packages/glibc/2.14.1/0039-nis-bogus-conditional.patch b/packages/glibc/2.14.1/0039-nis-bogus-conditional.patch deleted file mode 100644 index 732b859..0000000 --- a/packages/glibc/2.14.1/0039-nis-bogus-conditional.patch +++ /dev/null @@ -1,64 +0,0 @@ -commit f88759ea9bd3c8d8fef28f123ba9767cb0e421a3 -Author: Joseph Myers -Date: Wed Dec 21 23:44:01 2016 +0000 - - Fix nss_nisplus build with mainline GCC (bug 20978). - - glibc build with current mainline GCC fails because - nis/nss_nisplus/nisplus-alias.c contains code - - if (name != NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; - } - - char buf[strlen (name) + 9 + tablename_len]; - - producing an error about strlen being called on a pointer that is - always NULL (and a subsequent use of that pointer with a %s format in - snprintf). - - As Andreas noted, the bogus conditional comes from a 1997 change: - - - if (name == NULL || strlen(name) > 8) - - return NSS_STATUS_NOTFOUND; - - else - + if (name != NULL || strlen(name) <= 8) - - So the intention is clearly to return an error for NULL name. - - This patch duly inverts the sense of the conditional. It fixes the - build with GCC mainline, and passes usual glibc testsuite testing for - x86_64. However, I have not tried any actual substantive nisplus - testing, do not have an environment for such testing, and do not know - whether it is possible that strlen (name) or tablename_len might be - large so that the VLA for buf is actually a security issue. However, - if it is a security issue, there are plenty of other similar instances - in the nisplus code (that haven't been hidden by a bogus comparison - with NULL) - and nis_table.c:__create_ib_request uses strdupa on the - string passed to nis_list, so a local fix in the caller wouldn't - suffice anyway (see bug 20987). (Calls to strdupa and other such - macros that use alloca must be considered equally questionable - regarding stack overflow issues as direct calls to alloca and VLA - declarations.) - - [BZ #20978] - * nis/nss_nisplus/nisplus-alias.c (_nss_nisplus_getaliasbyname_r): - Compare name == NULL, not name != NULL. - ---- - nis/nss_nisplus/nisplus-alias.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/nis/nss_nisplus/nisplus-alias.c -+++ b/nis/nss_nisplus/nisplus-alias.c -@@ -293,7 +293,7 @@ - return status; - } - -- if (name != NULL) -+ if (name == NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; diff --git a/packages/glibc/2.14.1/0040-initfini-ppc64.patch b/packages/glibc/2.14.1/0040-initfini-ppc64.patch deleted file mode 100644 index 247c103..0000000 --- a/packages/glibc/2.14.1/0040-initfini-ppc64.patch +++ /dev/null @@ -1,24 +0,0 @@ -Prevent erroneous inline optimization of initfini.s on PowerPC64. - -The problem and the fix was reported there: -http://sourceware.org/ml/libc-alpha/2012-01/msg00195.html -Git commit: -commit 1fe05ea95e1460e5e1cf1568a8ce3982f0f02de6 -Author: Ryan S. Arnold -Date: Tue May 3 17:26:17 2011 -0500 - ---- - sysdeps/powerpc/powerpc64/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sysdeps/powerpc/powerpc64/Makefile -+++ b/sysdeps/powerpc/powerpc64/Makefile -@@ -31,7 +31,7 @@ - ifneq ($(elf),no) - # The initfini generation code doesn't work in the presence of -fPIC, so - # we use -fpic instead which is much better. --CFLAGS-initfini.s += -fpic -O1 -+CFLAGS-initfini.s += -fpic -O1 -fno-inline - endif - endif - diff --git a/packages/glibc/2.14.1/0041-obsolete-rpc.patch b/packages/glibc/2.14.1/0041-obsolete-rpc.patch deleted file mode 100644 index eef16c7..0000000 --- a/packages/glibc/2.14.1/0041-obsolete-rpc.patch +++ /dev/null @@ -1,1607 +0,0 @@ -commit 021db4be6f1f4189f66feee066a495d49e92b93e -Author: Andreas Jaeger -Date: Thu May 10 20:16:53 2012 +0200 - - Make sunrpc code usable again - - New configure option --enable-obsolete-rpc makes the deprecated RPC - headers and functions available at compile time as they were before - version 2.14. This option will be removed at some time in the future - after the TI-RPC library becomes fully sufficient for the needs of - existing applications. - ---- - config.h.in | 3 +++ - config.make.in | 1 + - configure | 18 ++++++++++++++++++ - configure.in | 11 +++++++++++ - include/libc-symbols.h | 7 ++++++- - nis/Makefile | 6 ++++++ - sunrpc/Makefile | 6 ++++++ - sunrpc/auth_des.c | 4 ++-- - sunrpc/auth_none.c | 2 +- - sunrpc/auth_unix.c | 4 ++-- - sunrpc/authdes_prot.c | 4 ++-- - sunrpc/authuxprot.c | 2 +- - sunrpc/clnt_gen.c | 2 +- - sunrpc/clnt_perr.c | 10 +++++----- - sunrpc/clnt_raw.c | 2 +- - sunrpc/clnt_simp.c | 2 +- - sunrpc/clnt_tcp.c | 2 +- - sunrpc/clnt_udp.c | 6 +++--- - sunrpc/clnt_unix.c | 2 +- - sunrpc/des_crypt.c | 4 ++-- - sunrpc/des_soft.c | 2 +- - sunrpc/get_myaddr.c | 2 +- - sunrpc/key_call.c | 18 +++++++++--------- - sunrpc/key_prot.c | 20 ++++++++++---------- - sunrpc/netname.c | 10 +++++----- - sunrpc/pm_getmaps.c | 2 +- - sunrpc/pm_getport.c | 4 ++-- - sunrpc/pmap_clnt.c | 4 ++-- - sunrpc/pmap_prot.c | 2 +- - sunrpc/pmap_prot2.c | 2 +- - sunrpc/pmap_rmt.c | 8 ++++---- - sunrpc/publickey.c | 4 ++-- - sunrpc/rpc_cmsg.c | 2 +- - sunrpc/rpc_common.c | 2 +- - sunrpc/rpc_dtable.c | 2 +- - sunrpc/rpc_prot.c | 14 +++++++------- - sunrpc/rpc_thread.c | 8 ++++---- - sunrpc/rtime.c | 2 +- - sunrpc/svc.c | 32 ++++++++++++++++---------------- - sunrpc/svc_auth.c | 2 +- - sunrpc/svc_raw.c | 2 +- - sunrpc/svc_run.c | 4 ++-- - sunrpc/svc_tcp.c | 4 ++-- - sunrpc/svc_udp.c | 6 +++--- - sunrpc/svc_unix.c | 4 ++-- - sunrpc/svcauth_des.c | 2 +- - sunrpc/xcrypt.c | 4 ++-- - sunrpc/xdr.c | 44 ++++++++++++++++++++++---------------------- - sunrpc/xdr_array.c | 4 ++-- - sunrpc/xdr_float.c | 4 ++-- - sunrpc/xdr_intXX_t.c | 20 ++++++++++---------- - sunrpc/xdr_mem.c | 2 +- - sunrpc/xdr_rec.c | 8 ++++---- - sunrpc/xdr_ref.c | 4 ++-- - sunrpc/xdr_sizeof.c | 2 +- - sunrpc/xdr_stdio.c | 2 +- - 56 files changed, 203 insertions(+), 153 deletions(-) - ---- a/config.h.in -+++ b/config.h.in -@@ -204,6 +204,9 @@ - /* Define if `.ctors' and `.dtors' sections shouldn't be used. */ - #undef NO_CTORS_DTORS_SECTIONS - -+/* Define if obsolete RPC code should be made available for user-level code -+ to link against. */ -+#undef LINK_OBSOLETE_RPC - /* - */ - ---- a/config.make.in -+++ b/config.make.in -@@ -102,6 +102,7 @@ - sysdeps-add-ons = @sysdeps_add_ons@ - cross-compiling = @cross_compiling@ - force-install = @force_install@ -+link-obsolete-rpc = @link_obsolete_rpc@ - - # Build tools. - CC = @CC@ ---- a/configure -+++ b/configure -@@ -682,6 +682,7 @@ - base_machine - add_on_subdirs - add_ons -+link_obsolete_rpc - libc_cv_nss_crypt - experimental_malloc - all_warnings -@@ -784,6 +785,7 @@ - enable_multi_arch - enable_experimental_malloc - enable_nss_crypt -+enable_obsolete_rpc - with_cpu - ' - ac_precious_vars='build_alias -@@ -1444,6 +1446,8 @@ - --enable-experimental-malloc - enable experimental malloc features - --enable-nss-crypt enable libcrypt to use nss -+ --enable-obsolete-rpc build and install the obsolete RPC code for -+ link-time usage - - Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] -@@ -3823,6 +3827,20 @@ - fi - - -+# Check whether --enable-obsolete-rpc was given. -+if test "${enable_obsolete_rpc+set}" = set; then : -+ enableval=$enable_obsolete_rpc; link_obsolete_rpc=$enableval -+else -+ link_obsolete_rpc=no -+fi -+ -+ -+ -+if test "$link_obsolete_rpc" = yes; then -+ $as_echo "#define LINK_OBSOLETE_RPC 1" >>confdefs.h -+ -+fi -+ - # The way shlib-versions is used to generate soversions.mk uses a - # fairly simplistic model for name recognition that can't distinguish - # i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os ---- a/configure.in -+++ b/configure.in -@@ -316,6 +316,17 @@ - fi - AC_SUBST(libc_cv_nss_crypt) - -+AC_ARG_ENABLE([obsolete-rpc], -+ AC_HELP_STRING([--enable-obsolete-rpc], -+ [build and install the obsolete RPC code for link-time usage]), -+ [link_obsolete_rpc=$enableval], -+ [link_obsolete_rpc=no]) -+AC_SUBST(link_obsolete_rpc) -+ -+if test "$link_obsolete_rpc" = yes; then -+ AC_DEFINE(LINK_OBSOLETE_RPC) -+fi -+ - # The way shlib-versions is used to generate soversions.mk uses a - # fairly simplistic model for name recognition that can't distinguish - # i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os ---- a/include/libc-symbols.h -+++ b/include/libc-symbols.h -@@ -635,7 +635,12 @@ - # 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) -+# ifdef LINK_OBSOLETE_RPC -+ /* libc_hidden_nolink_sunrpc should only get used in sunrpc code. */ -+# define libc_hidden_nolink_sunrpc(name, version) hidden_def (name) -+# else -+# define libc_hidden_nolink_sunrpc(name, version) hidden_nolink (name, libc, version) -+# endif - # 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) ---- a/nis/Makefile -+++ b/nis/Makefile -@@ -23,6 +23,12 @@ - - aux := nis_hash - -+include ../Makeconfig -+ -+ifeq ($(link-obsolete-rpc),yes) -+headers := $(wildcard rpcsvc/*.[hx]) -+endif -+ - distribute := nss-nis.h nss-nisplus.h nis_intern.h Banner \ - nisplus-parser.h nis_xdr.h nss \ - $(wildcard rpcsvc/*.[hx]) ---- a/sunrpc/Makefile -+++ b/sunrpc/Makefile -@@ -61,6 +61,10 @@ - - include ../Makeconfig - -+ifeq ($(link-obsolete-rpc),yes) -+headers += $(headers-in-tirpc) $(headers-not-in-tirpc) -+endif -+ - ifeq ($(versioning),yes) - need-export-routines := auth_des auth_unix clnt_gen clnt_perr clnt_tcp \ - clnt_udp get_myaddr key_call netname pm_getport \ -@@ -74,9 +78,11 @@ - svc_simple xdr_float xdr_rec publickey authdes_prot \ - des_crypt des_impl des_soft key_prot openchild rtime svcauth_des \ - clnt_unix svc_unix create_xid $(need-export-routines) -+ifneq ($(link-obsolete-rpc),yes) - # We only add the RPC for compatibility to libc.so. - shared-only-routines = $(routines) - endif -+endif - - # We do not build rpcinfo anymore. It is not needed for a bootstrap - # and not wanted on complete systems. ---- a/sunrpc/auth_des.c -+++ b/sunrpc/auth_des.c -@@ -117,7 +117,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (authdes_create) - #else --libc_hidden_nolink (authdes_create, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (authdes_create, GLIBC_2_1) - #endif - - AUTH * -@@ -211,7 +211,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (authdes_pk_create) - #else --libc_hidden_nolink (authdes_pk_create, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (authdes_pk_create, GLIBC_2_1) - #endif - - /* ---- a/sunrpc/auth_none.c -+++ b/sunrpc/auth_none.c -@@ -95,7 +95,7 @@ - __libc_once (authnone_private_guard, authnone_create_once); - return &authnone_private.no_client; - } --libc_hidden_nolink (authnone_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (authnone_create, GLIBC_2_0) - - static bool_t - authnone_marshal (AUTH *client, XDR *xdrs) ---- a/sunrpc/auth_unix.c -+++ b/sunrpc/auth_unix.c -@@ -151,7 +151,7 @@ - marshal_new_auth (auth); - return auth; - } --libc_hidden_nolink (authunix_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (authunix_create, GLIBC_2_0) - - /* - * Returns an auth handle with parameters determined by doing lots of -@@ -218,7 +218,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (authunix_create_default) - #else --libc_hidden_nolink (authunix_create_default, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (authunix_create_default, GLIBC_2_0) - #endif - - /* ---- a/sunrpc/authdes_prot.c -+++ b/sunrpc/authdes_prot.c -@@ -63,7 +63,7 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_authdes_cred, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_authdes_cred, GLIBC_2_1) - - - bool_t -@@ -78,4 +78,4 @@ - sizeof (verf->adv_int_u))); - return TRUE; - } --libc_hidden_nolink (xdr_authdes_verf, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_authdes_verf, GLIBC_2_1) ---- a/sunrpc/authuxprot.c -+++ b/sunrpc/authuxprot.c -@@ -63,4 +63,4 @@ - } - return FALSE; - } --libc_hidden_nolink (xdr_authunix_parms, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_authunix_parms, GLIBC_2_0) ---- a/sunrpc/clnt_gen.c -+++ b/sunrpc/clnt_gen.c -@@ -175,5 +175,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clnt_create) - #else --libc_hidden_nolink (clnt_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_create, GLIBC_2_0) - #endif ---- a/sunrpc/clnt_perr.c -+++ b/sunrpc/clnt_perr.c -@@ -130,7 +130,7 @@ - - return str; - } --libc_hidden_nolink (clnt_sperror, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_sperror, GLIBC_2_0) - - void - clnt_perror (CLIENT * rpch, const char *msg) -@@ -140,7 +140,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clnt_perror) - #else --libc_hidden_nolink (clnt_perror, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_perror, GLIBC_2_0) - #endif - - -@@ -273,7 +273,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clnt_perrno) - #else --libc_hidden_nolink (clnt_perrno, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_perrno, GLIBC_2_0) - #endif - - char * -@@ -311,7 +311,7 @@ - - return str; - } --libc_hidden_nolink (clnt_spcreateerror, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_spcreateerror, GLIBC_2_0) - - void - clnt_pcreateerror (const char *msg) -@@ -321,7 +321,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clnt_pcreateerror) - #else --libc_hidden_nolink (clnt_pcreateerror, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_pcreateerror, GLIBC_2_0) - #endif - - struct auth_errtab ---- a/sunrpc/clnt_raw.c -+++ b/sunrpc/clnt_raw.c -@@ -129,7 +129,7 @@ - client->cl_auth = authnone_create (); - return client; - } --libc_hidden_nolink (clntraw_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clntraw_create, GLIBC_2_0) - - static enum clnt_stat - clntraw_call (h, proc, xargs, argsp, xresults, resultsp, timeout) ---- a/sunrpc/clnt_simp.c -+++ b/sunrpc/clnt_simp.c -@@ -139,7 +139,7 @@ - crp->valid = 0; - return (int) clnt_stat; - } --libc_hidden_nolink (callrpc, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (callrpc, GLIBC_2_0) - - #ifdef _RPC_THREAD_SAFE_ - void ---- a/sunrpc/clnt_tcp.c -+++ b/sunrpc/clnt_tcp.c -@@ -222,7 +222,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clnttcp_create) - #else --libc_hidden_nolink (clnttcp_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnttcp_create, GLIBC_2_0) - #endif - - static enum clnt_stat ---- a/sunrpc/clnt_udp.c -+++ b/sunrpc/clnt_udp.c -@@ -240,7 +240,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (__libc_clntudp_bufcreate) - #else --libc_hidden_nolink (__libc_clntudp_bufcreate, GLIBC_PRIVATE) -+libc_hidden_nolink_sunrpc (__libc_clntudp_bufcreate, GLIBC_PRIVATE) - #endif - - CLIENT * -@@ -251,7 +251,7 @@ - return __libc_clntudp_bufcreate (raddr, program, version, wait, - sockp, sendsz, recvsz, 0); - } --libc_hidden_nolink (clntudp_bufcreate, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clntudp_bufcreate, GLIBC_2_0) - - CLIENT * - clntudp_create (raddr, program, version, wait, sockp) -@@ -267,7 +267,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clntudp_create) - #else --libc_hidden_nolink (clntudp_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clntudp_create, GLIBC_2_0) - #endif - - static int ---- a/sunrpc/clnt_unix.c -+++ b/sunrpc/clnt_unix.c -@@ -202,7 +202,7 @@ - mem_free ((caddr_t) h, sizeof (CLIENT)); - return (CLIENT *) NULL; - } --libc_hidden_nolink (clntunix_create, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (clntunix_create, GLIBC_2_1) - - static enum clnt_stat - clntunix_call (h, proc, xdr_args, args_ptr, xdr_results, results_ptr, timeout) ---- a/sunrpc/des_crypt.c -+++ b/sunrpc/des_crypt.c -@@ -102,7 +102,7 @@ - COPY8 (dp.des_ivec, ivec); - return err; - } --libc_hidden_nolink (cbc_crypt, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (cbc_crypt, GLIBC_2_1) - - /* - * ECB mode encryption -@@ -115,4 +115,4 @@ - dp.des_mode = ECB; - return common_crypt (key, buf, len, mode, &dp); - } --libc_hidden_nolink (ecb_crypt, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (ecb_crypt, GLIBC_2_1) ---- a/sunrpc/des_soft.c -+++ b/sunrpc/des_soft.c -@@ -70,4 +70,4 @@ - p++; - } - } --libc_hidden_nolink (des_setparity, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (des_setparity, GLIBC_2_1) ---- a/sunrpc/get_myaddr.c -+++ b/sunrpc/get_myaddr.c -@@ -99,5 +99,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (get_myaddress) - #else --libc_hidden_nolink (get_myaddress, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (get_myaddress, GLIBC_2_0) - #endif ---- a/sunrpc/key_call.c -+++ b/sunrpc/key_call.c -@@ -80,7 +80,7 @@ - } - return 0; - } --libc_hidden_nolink (key_setsecret, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_setsecret, GLIBC_2_1) - - /* key_secretkey_is_set() returns 1 if the keyserver has a secret key - * stored for the caller's effective uid; it returns 0 otherwise -@@ -109,7 +109,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (key_secretkey_is_set) - #else --libc_hidden_nolink (key_secretkey_is_set, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_secretkey_is_set, GLIBC_2_1) - #endif - - int -@@ -133,7 +133,7 @@ - *deskey = res.cryptkeyres_u.deskey; - return 0; - } --libc_hidden_nolink (key_encryptsession, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_encryptsession, GLIBC_2_1) - - int - key_decryptsession (char *remotename, des_block *deskey) -@@ -155,7 +155,7 @@ - *deskey = res.cryptkeyres_u.deskey; - return 0; - } --libc_hidden_nolink (key_decryptsession, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_decryptsession, GLIBC_2_1) - - int - key_encryptsession_pk (char *remotename, netobj *remotekey, -@@ -180,7 +180,7 @@ - *deskey = res.cryptkeyres_u.deskey; - return 0; - } --libc_hidden_nolink (key_encryptsession_pk, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_encryptsession_pk, GLIBC_2_1) - - int - key_decryptsession_pk (char *remotename, netobj *remotekey, -@@ -205,7 +205,7 @@ - *deskey = res.cryptkeyres_u.deskey; - return 0; - } --libc_hidden_nolink (key_decryptsession_pk, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_decryptsession_pk, GLIBC_2_1) - - int - key_gendes (des_block *key) -@@ -239,7 +239,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (key_gendes) - #else --libc_hidden_nolink (key_gendes, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_gendes, GLIBC_2_1) - #endif - - int -@@ -259,7 +259,7 @@ - } - return 1; - } --libc_hidden_nolink (key_setnet, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_setnet, GLIBC_2_1) - - int - key_get_conv (char *pkey, des_block *deskey) -@@ -278,7 +278,7 @@ - *deskey = res.cryptkeyres_u.deskey; - return 0; - } --libc_hidden_nolink (key_get_conv, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_get_conv, GLIBC_2_1) - - /* - * Hack to allow the keyserver to use AUTH_DES (for authenticated ---- a/sunrpc/key_prot.c -+++ b/sunrpc/key_prot.c -@@ -38,7 +38,7 @@ - - return TRUE; - } --libc_hidden_nolink (xdr_keystatus, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_keystatus, GLIBC_2_0) - - bool_t - xdr_keybuf (XDR * xdrs, keybuf objp) -@@ -48,7 +48,7 @@ - - return TRUE; - } --libc_hidden_nolink (xdr_keybuf, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_keybuf, GLIBC_2_0) - - bool_t - xdr_netnamestr (XDR * xdrs, netnamestr * objp) -@@ -58,7 +58,7 @@ - - return TRUE; - } --libc_hidden_nolink (xdr_netnamestr, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_netnamestr, GLIBC_2_1) - - bool_t - xdr_cryptkeyarg (XDR * xdrs, cryptkeyarg * objp) -@@ -71,7 +71,7 @@ - - return TRUE; - } --libc_hidden_nolink (xdr_cryptkeyarg, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_cryptkeyarg, GLIBC_2_0) - - bool_t - xdr_cryptkeyarg2 (XDR * xdrs, cryptkeyarg2 * objp) -@@ -84,7 +84,7 @@ - return FALSE; - return TRUE; - } --libc_hidden_nolink (xdr_cryptkeyarg2, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_cryptkeyarg2, GLIBC_2_0) - - bool_t - xdr_cryptkeyres (XDR * xdrs, cryptkeyres * objp) -@@ -102,7 +102,7 @@ - } - return TRUE; - } --libc_hidden_nolink (xdr_cryptkeyres, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_cryptkeyres, GLIBC_2_0) - - bool_t - xdr_unixcred (XDR * xdrs, unixcred * objp) -@@ -117,7 +117,7 @@ - return FALSE; - return TRUE; - } --libc_hidden_nolink (xdr_unixcred, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_unixcred, GLIBC_2_1) - - bool_t - xdr_getcredres (XDR * xdrs, getcredres * objp) -@@ -135,7 +135,7 @@ - } - return TRUE; - } --libc_hidden_nolink (xdr_getcredres, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_getcredres, GLIBC_2_1) - - bool_t - xdr_key_netstarg (XDR * xdrs, key_netstarg * objp) -@@ -148,7 +148,7 @@ - return FALSE; - return TRUE; - } --libc_hidden_nolink (xdr_key_netstarg, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_key_netstarg, GLIBC_2_0) - - bool_t - xdr_key_netstres (XDR * xdrs, key_netstres * objp) -@@ -166,4 +166,4 @@ - } - return TRUE; - } --libc_hidden_nolink (xdr_key_netstres, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_key_netstres, GLIBC_2_0) ---- a/sunrpc/netname.c -+++ b/sunrpc/netname.c -@@ -55,7 +55,7 @@ - netname[i - 1] = '\0'; - return 1; - } --libc_hidden_nolink (user2netname, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (user2netname, GLIBC_2_1) - - int - host2netname (char netname[MAXNETNAMELEN + 1], const char *host, -@@ -119,7 +119,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (host2netname) - #else --libc_hidden_nolink (host2netname, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (host2netname, GLIBC_2_1) - #endif - - int -@@ -135,7 +135,7 @@ - dummy = user2netname (name, uid, NULL); - return (dummy); - } --libc_hidden_nolink (getnetname, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (getnetname, GLIBC_2_1) - - /* Type of the lookup function for netname2user. */ - typedef int (*netname2user_function) (const char netname[MAXNETNAMELEN + 1], -@@ -188,7 +188,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (netname2user) - #else --libc_hidden_nolink (netname2user, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (netname2user, GLIBC_2_1) - #endif - - int -@@ -216,4 +216,4 @@ - - return 1; - } --libc_hidden_nolink (netname2host, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (netname2host, GLIBC_2_1) ---- a/sunrpc/pm_getmaps.c -+++ b/sunrpc/pm_getmaps.c -@@ -84,4 +84,4 @@ - address->sin_port = 0; - return head; - } --libc_hidden_nolink (pmap_getmaps, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (pmap_getmaps, GLIBC_2_0) ---- a/sunrpc/pm_getport.c -+++ b/sunrpc/pm_getport.c -@@ -142,7 +142,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (__libc_rpc_getport) - #else --libc_hidden_nolink (__libc_rpc_getport, GLIBC_PRIVATE) -+libc_hidden_nolink_sunrpc (__libc_rpc_getport, GLIBC_PRIVATE) - #endif - - -@@ -160,4 +160,4 @@ - { - return __libc_rpc_getport (address, program, version, protocol, 5, 60); - } --libc_hidden_nolink (pmap_getport, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (pmap_getport, GLIBC_2_0) ---- a/sunrpc/pmap_clnt.c -+++ b/sunrpc/pmap_clnt.c -@@ -131,7 +131,7 @@ - /* (void)close(socket); CLNT_DESTROY closes it */ - return rslt; - } --libc_hidden_nolink (pmap_set, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (pmap_set, GLIBC_2_0) - - /* - * Remove the mapping between program,version and port. -@@ -162,4 +162,4 @@ - /* (void)close(socket); CLNT_DESTROY already closed it */ - return rslt; - } --libc_hidden_nolink (pmap_unset, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (pmap_unset, GLIBC_2_0) ---- a/sunrpc/pmap_prot.c -+++ b/sunrpc/pmap_prot.c -@@ -49,4 +49,4 @@ - return xdr_u_long (xdrs, ®s->pm_port); - return FALSE; - } --libc_hidden_nolink (xdr_pmap, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_pmap, GLIBC_2_0) ---- a/sunrpc/pmap_prot2.c -+++ b/sunrpc/pmap_prot2.c -@@ -110,4 +110,4 @@ - rp = freeing ? &next : &((*rp)->pml_next); - } - } --libc_hidden_nolink (xdr_pmaplist, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_pmaplist, GLIBC_2_0) ---- a/sunrpc/pmap_rmt.c -+++ b/sunrpc/pmap_rmt.c -@@ -104,7 +104,7 @@ - addr->sin_port = 0; - return stat; - } --libc_hidden_nolink (pmap_rmtcall, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (pmap_rmtcall, GLIBC_2_0) - - - /* -@@ -137,7 +137,7 @@ - } - return FALSE; - } --libc_hidden_nolink (xdr_rmtcall_args, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_rmtcall_args, GLIBC_2_0) - - /* - * XDR remote call results -@@ -160,7 +160,7 @@ - } - return FALSE; - } --libc_hidden_nolink (xdr_rmtcallres, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_rmtcallres, GLIBC_2_0) - - - /* -@@ -388,4 +388,4 @@ - AUTH_DESTROY (unix_auth); - return stat; - } --libc_hidden_nolink (clnt_broadcast, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_broadcast, GLIBC_2_0) ---- a/sunrpc/publickey.c -+++ b/sunrpc/publickey.c -@@ -76,7 +76,7 @@ - - return status == NSS_STATUS_SUCCESS; - } --libc_hidden_nolink (getpublickey, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (getpublickey, GLIBC_2_0) - - - int -@@ -119,4 +119,4 @@ - - return status == NSS_STATUS_SUCCESS; - } --libc_hidden_nolink (getsecretkey, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (getsecretkey, GLIBC_2_0) ---- a/sunrpc/rpc_cmsg.c -+++ b/sunrpc/rpc_cmsg.c -@@ -194,4 +194,4 @@ - return xdr_opaque_auth (xdrs, &(cmsg->rm_call.cb_verf)); - return FALSE; - } --libc_hidden_nolink (xdr_callmsg, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_callmsg, GLIBC_2_0) ---- a/sunrpc/rpc_common.c -+++ b/sunrpc/rpc_common.c -@@ -45,7 +45,7 @@ - section but we cannot add const to the type because this isn't how - the variable is declared. So we use the section attribute. */ - struct opaque_auth _null_auth __attribute__ ((nocommon)); --libc_hidden_nolink (_null_auth, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (_null_auth, GLIBC_2_0) - fd_set svc_fdset; - struct rpc_createerr rpc_createerr; - struct pollfd *svc_pollfd; ---- a/sunrpc/rpc_dtable.c -+++ b/sunrpc/rpc_dtable.c -@@ -46,4 +46,4 @@ - - return size; - } --libc_hidden_nolink (_rpc_dtablesize, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (_rpc_dtablesize, GLIBC_2_0) ---- a/sunrpc/rpc_prot.c -+++ b/sunrpc/rpc_prot.c -@@ -57,7 +57,7 @@ - &ap->oa_length, MAX_AUTH_BYTES); - return FALSE; - } --libc_hidden_nolink (xdr_opaque_auth, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_opaque_auth, GLIBC_2_0) - - /* - * XDR a DES block -@@ -67,7 +67,7 @@ - { - return xdr_opaque (xdrs, (caddr_t) blkp, sizeof (des_block)); - } --libc_hidden_nolink (xdr_des_block, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_des_block, GLIBC_2_0) - - /* * * * * * * * * * * * * * XDR RPC MESSAGE * * * * * * * * * * * * * * * */ - -@@ -95,7 +95,7 @@ - } - return TRUE; /* TRUE => open ended set of problems */ - } --libc_hidden_nolink (xdr_accepted_reply, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_accepted_reply, GLIBC_2_0) - - /* - * XDR the MSG_DENIED part of a reply message union -@@ -118,7 +118,7 @@ - } - return FALSE; - } --libc_hidden_nolink (xdr_rejected_reply, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_rejected_reply, GLIBC_2_0) - - static const struct xdr_discrim reply_dscrm[3] = - { -@@ -142,7 +142,7 @@ - NULL_xdrproc_t); - return FALSE; - } --libc_hidden_nolink (xdr_replymsg, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_replymsg, GLIBC_2_0) - - - /* -@@ -167,7 +167,7 @@ - return xdr_u_long (xdrs, &(cmsg->rm_call.cb_vers)); - return FALSE; - } --libc_hidden_nolink (xdr_callhdr, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_callhdr, GLIBC_2_0) - - /* ************************** Client utility routine ************* */ - -@@ -277,4 +277,4 @@ - break; - } - } --libc_hidden_nolink (_seterr_reply, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (_seterr_reply, GLIBC_2_0) ---- a/sunrpc/rpc_thread.c -+++ b/sunrpc/rpc_thread.c -@@ -97,7 +97,7 @@ - return &svc_fdset; - return &tvp->svc_fdset_s; - } --libc_hidden_nolink (__rpc_thread_svc_fdset, GLIBC_2_2_3) -+libc_hidden_nolink_sunrpc (__rpc_thread_svc_fdset, GLIBC_2_2_3) - - struct rpc_createerr * - __rpc_thread_createerr (void) -@@ -109,7 +109,7 @@ - return &rpc_createerr; - return &tvp->rpc_createerr_s; - } --libc_hidden_nolink (__rpc_thread_createerr, GLIBC_2_2_3) -+libc_hidden_nolink_sunrpc (__rpc_thread_createerr, GLIBC_2_2_3) - - struct pollfd ** - __rpc_thread_svc_pollfd (void) -@@ -124,7 +124,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (__rpc_thread_svc_pollfd) - #else --libc_hidden_nolink (__rpc_thread_svc_pollfd, GLIBC_2_2_3) -+libc_hidden_nolink_sunrpc (__rpc_thread_svc_pollfd, GLIBC_2_2_3) - #endif - - int * -@@ -140,7 +140,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (__rpc_thread_svc_max_pollfd) - #else --libc_hidden_nolink (__rpc_thread_svc_max_pollfd, GLIBC_2_2_3) -+libc_hidden_nolink_sunrpc (__rpc_thread_svc_max_pollfd, GLIBC_2_2_3) - #endif - - #endif /* _RPC_THREAD_SAFE_ */ ---- a/sunrpc/rtime.c -+++ b/sunrpc/rtime.c -@@ -140,4 +140,4 @@ - timep->tv_usec = 0; - return 0; - } --libc_hidden_nolink (rtime, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (rtime, GLIBC_2_1) ---- a/sunrpc/svc.c -+++ b/sunrpc/svc.c -@@ -115,7 +115,7 @@ - POLLRDNORM | POLLRDBAND); - } - } --libc_hidden_nolink (xprt_register, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xprt_register, GLIBC_2_0) - - /* De-activate a transport handle. */ - void -@@ -139,7 +139,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xprt_unregister) - #else --libc_hidden_nolink (xprt_unregister, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xprt_unregister, GLIBC_2_0) - #endif - - -@@ -218,7 +218,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svc_register) - #else --libc_hidden_nolink (svc_register, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_register, GLIBC_2_0) - #endif - - /* Remove a service program from the callout list. */ -@@ -242,7 +242,7 @@ - if (! svc_is_mapped (prog, vers)) - pmap_unset (prog, vers); - } --libc_hidden_nolink (svc_unregister, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_unregister, GLIBC_2_0) - - /* ******************* REPLY GENERATION ROUTINES ************ */ - -@@ -264,7 +264,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svc_sendreply) - #else --libc_hidden_nolink (svc_sendreply, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_sendreply, GLIBC_2_0) - #endif - - /* No procedure error reply */ -@@ -282,7 +282,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svcerr_noproc) - #else --libc_hidden_nolink (svcerr_noproc, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_noproc, GLIBC_2_0) - #endif - - /* Can't decode args error reply */ -@@ -300,7 +300,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svcerr_decode) - #else --libc_hidden_nolink (svcerr_decode, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_decode, GLIBC_2_0) - #endif - - /* Some system error */ -@@ -318,7 +318,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svcerr_systemerr) - #else --libc_hidden_nolink (svcerr_systemerr, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_systemerr, GLIBC_2_0) - #endif - - /* Authentication error reply */ -@@ -333,7 +333,7 @@ - rply.rjcted_rply.rj_why = why; - SVC_REPLY (xprt, &rply); - } --libc_hidden_nolink (svcerr_auth, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_auth, GLIBC_2_0) - - /* Auth too weak error reply */ - void -@@ -341,7 +341,7 @@ - { - svcerr_auth (xprt, AUTH_TOOWEAK); - } --libc_hidden_nolink (svcerr_weakauth, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_weakauth, GLIBC_2_0) - - /* Program unavailable error reply */ - void -@@ -355,7 +355,7 @@ - rply.acpted_rply.ar_stat = PROG_UNAVAIL; - SVC_REPLY (xprt, &rply); - } --libc_hidden_nolink (svcerr_noprog, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_noprog, GLIBC_2_0) - - /* Program version mismatch error reply */ - void -@@ -372,7 +372,7 @@ - rply.acpted_rply.ar_vers.high = high_vers; - SVC_REPLY (xprt, &rply); - } --libc_hidden_nolink (svcerr_progvers, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_progvers, GLIBC_2_0) - - /* ******************* SERVER INPUT STUFF ******************* */ - -@@ -401,7 +401,7 @@ - readfds.fds_bits[0] = rdfds; - svc_getreqset (&readfds); - } --libc_hidden_nolink (svc_getreq, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_getreq, GLIBC_2_0) - - void - svc_getreqset (fd_set *readfds) -@@ -420,7 +420,7 @@ - for (mask = *maskp++; (bit = ffsl (mask)); mask ^= (1L << (bit - 1))) - svc_getreq_common (sock + bit - 1); - } --libc_hidden_nolink (svc_getreqset, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_getreqset, GLIBC_2_0) - - void - svc_getreq_poll (struct pollfd *pfdp, int pollretval) -@@ -449,7 +449,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svc_getreq_poll) - #else --libc_hidden_nolink (svc_getreq_poll, GLIBC_2_2) -+libc_hidden_nolink_sunrpc (svc_getreq_poll, GLIBC_2_2) - #endif - - -@@ -542,7 +542,7 @@ - } - while (stat == XPRT_MOREREQS); - } --libc_hidden_nolink (svc_getreq_common, GLIBC_2_2) -+libc_hidden_nolink_sunrpc (svc_getreq_common, GLIBC_2_2) - - #ifdef _RPC_THREAD_SAFE_ - ---- a/sunrpc/svc_auth.c -+++ b/sunrpc/svc_auth.c -@@ -105,7 +105,7 @@ - - return AUTH_REJECTEDCRED; - } --libc_hidden_nolink (_authenticate, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (_authenticate, GLIBC_2_1) - - static enum auth_stat - _svcauth_null (struct svc_req *rqst, struct rpc_msg *msg) ---- a/sunrpc/svc_raw.c -+++ b/sunrpc/svc_raw.c -@@ -88,7 +88,7 @@ - xdrmem_create (&srp->xdr_stream, srp->_raw_buf, UDPMSGSIZE, XDR_FREE); - return &srp->server; - } --libc_hidden_nolink (svcraw_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcraw_create, GLIBC_2_0) - - static enum xprt_stat - svcraw_stat (SVCXPRT *xprt) ---- a/sunrpc/svc_run.c -+++ b/sunrpc/svc_run.c -@@ -46,7 +46,7 @@ - svc_pollfd = NULL; - svc_max_pollfd = 0; - } --libc_hidden_nolink (svc_exit, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_exit, GLIBC_2_0) - - void - svc_run (void) -@@ -104,5 +104,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svc_run) - #else --libc_hidden_nolink (svc_run, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_run, GLIBC_2_0) - #endif ---- a/sunrpc/svc_tcp.c -+++ b/sunrpc/svc_tcp.c -@@ -189,7 +189,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svctcp_create) - #else --libc_hidden_nolink (svctcp_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svctcp_create, GLIBC_2_0) - #endif - - /* -@@ -201,7 +201,7 @@ - { - return makefd_xprt (fd, sendsize, recvsize); - } --libc_hidden_nolink (svcfd_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcfd_create, GLIBC_2_0) - - static SVCXPRT * - internal_function ---- a/sunrpc/svc_udp.c -+++ b/sunrpc/svc_udp.c -@@ -186,7 +186,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svcudp_bufcreate) - #else --libc_hidden_nolink (svcudp_bufcreate, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcudp_bufcreate, GLIBC_2_0) - #endif - - SVCXPRT * -@@ -198,7 +198,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svcudp_create) - #else --libc_hidden_nolink (svcudp_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcudp_create, GLIBC_2_0) - #endif - - static enum xprt_stat -@@ -502,7 +502,7 @@ - su->su_cache = (char *) uc; - return 1; - } --libc_hidden_nolink (svcudp_enablecache, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcudp_enablecache, GLIBC_2_0) - - - /* ---- a/sunrpc/svc_unix.c -+++ b/sunrpc/svc_unix.c -@@ -187,7 +187,7 @@ - xprt_register (xprt); - return xprt; - } --libc_hidden_nolink (svcunix_create, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (svcunix_create, GLIBC_2_1) - - /* - * Like svunix_create(), except the routine takes any *open* UNIX file -@@ -198,7 +198,7 @@ - { - return makefd_xprt (fd, sendsize, recvsize); - } --libc_hidden_nolink (svcunixfd_create, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (svcunixfd_create, GLIBC_2_1) - - static SVCXPRT * - internal_function ---- a/sunrpc/svcauth_des.c -+++ b/sunrpc/svcauth_des.c -@@ -583,7 +583,7 @@ - groups[i] = cred->groups[i]; - return 1; - } --libc_hidden_nolink (authdes_getucred, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (authdes_getucred, GLIBC_2_1) - - static void - internal_function ---- a/sunrpc/xcrypt.c -+++ b/sunrpc/xcrypt.c -@@ -127,7 +127,7 @@ - free (buf); - return 1; - } --libc_hidden_nolink (xencrypt, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xencrypt, GLIBC_2_0) - - /* - * Decrypt secret key using passwd -@@ -163,7 +163,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdecrypt) - #else --libc_hidden_nolink (xdecrypt, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdecrypt, GLIBC_2_1) - #endif - - /* ---- a/sunrpc/xdr.c -+++ b/sunrpc/xdr.c -@@ -74,7 +74,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_free) - #else --libc_hidden_nolink (xdr_free, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_free, GLIBC_2_0) - #endif - - /* -@@ -88,7 +88,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_void) - #else --libc_hidden_nolink (xdr_void, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_void, GLIBC_2_0) - #endif - - /* -@@ -128,7 +128,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_int) - #else --libc_hidden_nolink (xdr_int, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_int, GLIBC_2_0) - #endif - - /* -@@ -167,7 +167,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_int) - #else --libc_hidden_nolink (xdr_u_int, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_u_int, GLIBC_2_0) - #endif - - /* -@@ -195,7 +195,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_long) - #else --libc_hidden_nolink (xdr_long, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_long, GLIBC_2_0) - #endif - - /* -@@ -234,7 +234,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_long) - #else --libc_hidden_nolink (xdr_u_long, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_u_long, GLIBC_2_0) - #endif - - /* -@@ -270,7 +270,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_hyper) - #else --libc_hidden_nolink (xdr_hyper, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_hyper, GLIBC_2_1_1) - #endif - - /* -@@ -306,7 +306,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_hyper) - #else --libc_hidden_nolink (xdr_u_hyper, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_u_hyper, GLIBC_2_1_1) - #endif - - bool_t -@@ -317,7 +317,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_longlong_t) - #else --libc_hidden_nolink (xdr_longlong_t, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_longlong_t, GLIBC_2_1_1) - #endif - - bool_t -@@ -328,7 +328,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_longlong_t) - #else --libc_hidden_nolink (xdr_u_longlong_t, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_u_longlong_t, GLIBC_2_1_1) - #endif - - /* -@@ -361,7 +361,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_short) - #else --libc_hidden_nolink (xdr_short, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_short, GLIBC_2_0) - #endif - - /* -@@ -394,7 +394,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_short) - #else --libc_hidden_nolink (xdr_u_short, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_u_short, GLIBC_2_0) - #endif - - -@@ -417,7 +417,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_char) - #else --libc_hidden_nolink (xdr_char, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_char, GLIBC_2_0) - #endif - - /* -@@ -439,7 +439,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_char) - #else --libc_hidden_nolink (xdr_u_char, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_u_char, GLIBC_2_0) - #endif - - /* -@@ -472,7 +472,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_bool) - #else --libc_hidden_nolink (xdr_bool, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_bool, GLIBC_2_0) - #endif - - /* -@@ -527,7 +527,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_enum) - #else --libc_hidden_nolink (xdr_enum, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_enum, GLIBC_2_0) - #endif - - /* -@@ -582,7 +582,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_opaque) - #else --libc_hidden_nolink (xdr_opaque, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_opaque, GLIBC_2_0) - #endif - - /* -@@ -650,7 +650,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_bytes) - #else --libc_hidden_nolink (xdr_bytes, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_bytes, GLIBC_2_0) - #endif - - /* -@@ -667,7 +667,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_netobj) - #else --libc_hidden_nolink (xdr_netobj, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_netobj, GLIBC_2_0) - #endif - - /* -@@ -716,7 +716,7 @@ - return ((dfault == NULL_xdrproc_t) ? FALSE : - (*dfault) (xdrs, unp, LASTUNSIGNED)); - } --libc_hidden_nolink (xdr_union, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_union, GLIBC_2_0) - - - /* -@@ -808,7 +808,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_string) - #else --libc_hidden_nolink (xdr_string, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_string, GLIBC_2_0) - #endif - - /* -@@ -829,5 +829,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_wrapstring) - #else --libc_hidden_nolink (xdr_wrapstring, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_wrapstring, GLIBC_2_0) - #endif ---- a/sunrpc/xdr_array.c -+++ b/sunrpc/xdr_array.c -@@ -130,7 +130,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_array) - #else --libc_hidden_nolink (xdr_array, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_array, GLIBC_2_0) - #endif - - /* -@@ -165,4 +165,4 @@ - } - return TRUE; - } --libc_hidden_nolink (xdr_vector, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_vector, GLIBC_2_0) ---- a/sunrpc/xdr_float.c -+++ b/sunrpc/xdr_float.c -@@ -158,7 +158,7 @@ - } - return (FALSE); - } --libc_hidden_nolink (xdr_float, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_float, GLIBC_2_0) - - /* - * This routine works on Suns (Sky / 68000's) and Vaxen. -@@ -300,4 +300,4 @@ - } - return (FALSE); - } --libc_hidden_nolink (xdr_double, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_double, GLIBC_2_0) ---- a/sunrpc/xdr_intXX_t.c -+++ b/sunrpc/xdr_intXX_t.c -@@ -47,14 +47,14 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_int64_t, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_int64_t, GLIBC_2_1_1) - - bool_t - xdr_quad_t (XDR *xdrs, quad_t *ip) - { - return xdr_int64_t (xdrs, (int64_t *) ip); - } --libc_hidden_nolink (xdr_quad_t, GLIBC_2_3_4) -+libc_hidden_nolink_sunrpc (xdr_quad_t, GLIBC_2_3_4) - - /* XDR 64bit unsigned integers */ - bool_t -@@ -83,14 +83,14 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_uint64_t, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_uint64_t, GLIBC_2_1_1) - - bool_t - xdr_u_quad_t (XDR *xdrs, u_quad_t *ip) - { - return xdr_uint64_t (xdrs, (uint64_t *) ip); - } --libc_hidden_nolink (xdr_u_quad_t, GLIBC_2_3_4) -+libc_hidden_nolink_sunrpc (xdr_u_quad_t, GLIBC_2_3_4) - - /* XDR 32bit integers */ - bool_t -@@ -108,7 +108,7 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_int32_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_int32_t, GLIBC_2_1) - - /* XDR 32bit unsigned integers */ - bool_t -@@ -129,7 +129,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_uint32_t) - #else --libc_hidden_nolink (xdr_uint32_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_uint32_t, GLIBC_2_1) - #endif - - /* XDR 16bit integers */ -@@ -154,7 +154,7 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_int16_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_int16_t, GLIBC_2_1) - - /* XDR 16bit unsigned integers */ - bool_t -@@ -178,7 +178,7 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_uint16_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_uint16_t, GLIBC_2_1) - - /* XDR 8bit integers */ - bool_t -@@ -202,7 +202,7 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_int8_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_int8_t, GLIBC_2_1) - - /* XDR 8bit unsigned integers */ - bool_t -@@ -226,4 +226,4 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_uint8_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_uint8_t, GLIBC_2_1) ---- a/sunrpc/xdr_mem.c -+++ b/sunrpc/xdr_mem.c -@@ -81,7 +81,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdrmem_create) - #else --libc_hidden_nolink (xdrmem_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrmem_create, GLIBC_2_0) - #endif - - /* ---- a/sunrpc/xdr_rec.c -+++ b/sunrpc/xdr_rec.c -@@ -192,7 +192,7 @@ - rstrm->fbtbc = 0; - rstrm->last_frag = TRUE; - } --libc_hidden_nolink (xdrrec_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrrec_create, GLIBC_2_0) - - - /* -@@ -480,7 +480,7 @@ - rstrm->last_frag = FALSE; - return TRUE; - } --libc_hidden_nolink (xdrrec_skiprecord, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrrec_skiprecord, GLIBC_2_0) - - /* - * Lookahead function. -@@ -504,7 +504,7 @@ - return TRUE; - return FALSE; - } --libc_hidden_nolink (xdrrec_eof, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrrec_eof, GLIBC_2_0) - - /* - * The client must tell the package when an end-of-record has occurred. -@@ -531,7 +531,7 @@ - rstrm->out_finger += BYTES_PER_XDR_UNIT; - return TRUE; - } --libc_hidden_nolink (xdrrec_endofrecord, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrrec_endofrecord, GLIBC_2_0) - - - /* ---- a/sunrpc/xdr_ref.c -+++ b/sunrpc/xdr_ref.c -@@ -93,7 +93,7 @@ - } - return stat; - } --libc_hidden_nolink (xdr_reference, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_reference, GLIBC_2_0) - - - /* -@@ -140,5 +140,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_pointer) - #else --libc_hidden_nolink (xdr_pointer, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_pointer, GLIBC_2_0) - #endif ---- a/sunrpc/xdr_sizeof.c -+++ b/sunrpc/xdr_sizeof.c -@@ -161,5 +161,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_sizeof) - #else --libc_hidden_nolink (xdr_sizeof, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_sizeof, GLIBC_2_1) - #endif ---- a/sunrpc/xdr_stdio.c -+++ b/sunrpc/xdr_stdio.c -@@ -193,5 +193,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdrstdio_create) - #else --libc_hidden_nolink (xdrstdio_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrstdio_create, GLIBC_2_0) - #endif diff --git a/packages/glibc/2.14.1/0042-obstack-common.patch b/packages/glibc/2.14.1/0042-obstack-common.patch deleted file mode 100644 index 1993be2..0000000 --- a/packages/glibc/2.14.1/0042-obstack-common.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit 39b1f6172a2f9ddc74a8f82d6e84dd13b22dbaf2 -Author: Peter Collingbourne -Date: Wed May 15 20:28:08 2013 +0200 - - Move _obstack_compat out of common - - it is impossible to create an alias of a common symbol (as - compat_symbol does), because common symbols do not have a section or - an offset until linked. GNU as tolerates aliases of common symbols by - simply creating another common symbol, but other assemblers (notably - LLVM's integrated assembler) are less tolerant. - - 2013-05-15 Peter Collingbourne - - * malloc/obstack.c (_obstack_compat): Add initializer. - - - ---- - malloc/obstack.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/malloc/obstack.c -+++ b/malloc/obstack.c -@@ -117,7 +117,7 @@ - /* A looong time ago (before 1994, anyway; we're not sure) this global variable - was used by non-GNU-C macros to avoid multiple evaluation. The GNU C - library still exports it because somebody might use it. */ --struct obstack *_obstack_compat; -+struct obstack *_obstack_compat = 0; - compat_symbol (libc, _obstack_compat, _obstack, GLIBC_2_0); - # endif - # endif diff --git a/packages/glibc/2.14.1/0043-new-tools.patch b/packages/glibc/2.14.1/0043-new-tools.patch deleted file mode 100644 index 38dcdc8..0000000 --- a/packages/glibc/2.14.1/0043-new-tools.patch +++ /dev/null @@ -1,72 +0,0 @@ ---- - configure | 8 ++++---- - configure.in | 8 ++++---- - 2 files changed, 8 insertions(+), 8 deletions(-) - ---- a/configure -+++ b/configure -@@ -4957,7 +4957,7 @@ - ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.4* | 4.[0-9]* ) -+ 3.4* | [4-9].* | [1-9][0-9]* ) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5020,7 +5020,7 @@ - ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.79* | 3.[89]*) -+ 3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5147,7 +5147,7 @@ - ac_prog_version=`$MAKEINFO --version 2>&1 | sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 4.*) -+ [4-9].*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5207,7 +5207,7 @@ - # Found it, now check the version. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking version of $SED" >&5 - $as_echo_n "checking version of $SED... " >&6; } -- ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed version \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed[^0-9]* \([0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; - 3.0[2-9]*|3.[1-9]*|[4-9]*) ---- a/configure.in -+++ b/configure.in -@@ -1037,11 +1037,11 @@ - # These programs are version sensitive. - AC_CHECK_TOOL_PREFIX - AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v, -- [version \([egcygnustpi-]*[0-9.]*\)], [3.4* | 4.[0-9]* ], -+ [version \([egcygnustpi-]*[0-9.]*\)], [3.4* | [4-9].* | [1-9][0-9].* ], - critic_missing="$critic_missing gcc") - AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version, - [GNU Make[^0-9]*\([0-9][0-9.]*\)], -- [3.79* | 3.[89]*], critic_missing="$critic_missing make") -+ [3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*], critic_missing="$critic_missing make") - - AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version, - [GNU gettext.* \([0-9]*\.[0-9.]*\)], -@@ -1049,10 +1049,10 @@ - MSGFMT=: aux_missing="$aux_missing msgfmt") - AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version, - [GNU texinfo.* \([0-9][0-9.]*\)], -- [4.*], -+ [[4-9].*], - MAKEINFO=: aux_missing="$aux_missing makeinfo") - AC_CHECK_PROG_VER(SED, sed, --version, -- [GNU sed version \([0-9]*\.[0-9.]*\)], -+ [GNU sed[^0-9]* \([0-9]*\.[0-9.]*\)], - [3.0[2-9]*|3.[1-9]*|[4-9]*], - SED=: aux_missing="$aux_missing sed") - diff --git a/packages/glibc/2.14.1/0044-strftime-multiple-stmts.patch b/packages/glibc/2.14.1/0044-strftime-multiple-stmts.patch deleted file mode 100644 index e544b33..0000000 --- a/packages/glibc/2.14.1/0044-strftime-multiple-stmts.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb -Author: Joseph Myers -Date: Tue Jun 27 17:12:13 2017 +0000 - - Fix strftime build with GCC 8. - - Building with current GCC mainline fails with: - - strftime_l.c: In function '__strftime_internal': - strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros] - digits = d > width ? d : width; \ - ^ - strftime_l.c:1260:6: note: in expansion of macro 'DO_NUMBER' - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - ^~~~~~~~~ - strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this 'else' clause - else - ^~~~ - - In fact this particular instance is harmless; the code looks like: - - if (modifier == L_('O')) - goto bad_format; - else - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - - and because of the goto, it doesn't matter that part of the expansion - isn't under the "else" conditional. But it's also clearly bad style - to rely on that. This patch changes DO_NUMBER and DO_NUMBER_SPACEPAD - to use do { } while (0) to avoid such problems. - - Tested (full testsuite) for x86_64 (GCC 6), and with - build-many-glibcs.py with GCC mainline, in conjunction with my libgcc - patch . - - * time/strftime_l.c (DO_NUMBER): Define using do { } while (0). - (DO_NUMBER_SPACEPAD): Likewise. - ---- - time/strftime_l.c | 22 ++++++++++++++++------ - 1 file changed, 16 insertions(+), 6 deletions(-) - ---- a/time/strftime_l.c -+++ b/time/strftime_l.c -@@ -742,12 +742,22 @@ - format_char = *f; - switch (format_char) - { --#define DO_NUMBER(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number --#define DO_NUMBER_SPACEPAD(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number_spacepad -+#define DO_NUMBER(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number; \ -+ } \ -+ while (0) -+#define DO_NUMBER_SPACEPAD(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number_spacepad; \ -+ } \ -+ while (0) - - case L_('%'): - if (modifier != 0) diff --git a/packages/glibc/2.14.1/0045-if_nametoindex-size-check.patch b/packages/glibc/2.14.1/0045-if_nametoindex-size-check.patch deleted file mode 100644 index 5803db5..0000000 --- a/packages/glibc/2.14.1/0045-if_nametoindex-size-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 2180fee114b778515b3f560e5ff1e795282e60b0 -Author: Steve Ellcey -Date: Wed Nov 15 08:58:48 2017 -0800 - - Check length of ifname before copying it into to ifreq structure. - - [BZ #22442] - * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): - Check if ifname is too long. - ---- - sysdeps/unix/sysv/linux/if_index.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/sysdeps/unix/sysv/linux/if_index.c -+++ b/sysdeps/unix/sysv/linux/if_index.c -@@ -54,6 +54,12 @@ - if (fd < 0) - return 0; - -+ if (strlen (ifname) >= IFNAMSIZ) -+ { -+ __set_errno (ENODEV); -+ return 0; -+ } -+ - strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name)); - if (__ioctl (fd, SIOCGIFINDEX, &ifr) < 0) - { diff --git a/packages/glibc/2.14.1/0046-utmp-nonstring.patch b/packages/glibc/2.14.1/0046-utmp-nonstring.patch deleted file mode 100644 index b789724..0000000 --- a/packages/glibc/2.14.1/0046-utmp-nonstring.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit 7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c -Author: Martin Sebor -Date: Wed Nov 15 17:39:59 2017 -0700 - - The -Wstringop-truncation option new in GCC 8 detects common misuses - of the strncat and strncpy function that may result in truncating - the copied string before the terminating NUL. To avoid false positive - warnings for correct code that intentionally creates sequences of - characters that aren't guaranteed to be NUL-terminated, arrays that - are intended to store such sequences should be decorated with a new - nonstring attribute. This change add this attribute to Glibc and - uses it to suppress such false positives. - - ChangeLog: - * misc/sys/cdefs.h (__attribute_nonstring__): New macro. - * sysdeps/gnu/bits/utmp.h (struct utmp): Use it. - * sysdeps/unix/sysv/linux/s390/bits/utmp.h (struct utmp): Same. - ---- - misc/sys/cdefs.h | 9 +++++++++ - sysdeps/gnu/bits/utmp.h | 9 ++++++--- - sysdeps/unix/sysv/linux/s390/bits/utmp.h | 9 ++++++--- - 3 files changed, 21 insertions(+), 6 deletions(-) - ---- a/misc/sys/cdefs.h -+++ b/misc/sys/cdefs.h -@@ -350,6 +350,15 @@ - # endif - #endif - -+#if __GNUC_PREREQ (8, 0) -+/* Describes a char array whose address can safely be passed as the first -+ argument to strncpy and strncat, as the char array is not necessarily -+ a NUL-terminated string. */ -+# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -+#else -+# define __attribute_nonstring__ -+#endif -+ - #include - - #if defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH ---- a/sysdeps/gnu/bits/utmp.h -+++ b/sysdeps/gnu/bits/utmp.h -@@ -61,10 +61,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled ---- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h -+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h -@@ -61,10 +61,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled diff --git a/packages/glibc/2.14.1/0047-getlogin_r-use-strnlen.patch b/packages/glibc/2.14.1/0047-getlogin_r-use-strnlen.patch deleted file mode 100644 index 15a16bd..0000000 --- a/packages/glibc/2.14.1/0047-getlogin_r-use-strnlen.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 4bae615022cb5a5da79ccda83cc6c9ba9f2d479c -Author: Joseph Myers -Date: Wed Nov 22 18:44:23 2017 +0000 - - Avoid use of strlen in getlogin_r (bug 22447). - - Building glibc with current mainline GCC fails, among other reasons, - because of an error for use of strlen on the nonstring ut_user field. - This patch changes the problem code in getlogin_r to use __strnlen - instead. It also needs to set the trailing NUL byte of the result - explicitly, because of the case where ut_user does not have such a - trailing NUL byte (but the result should always have one). - - Tested for x86_64. Also tested that, in conjunction with - , it fixes - the build for arm with mainline GCC. - - [BZ #22447] - * sysdeps/unix/getlogin_r.c (__getlogin_r): Use __strnlen not - strlen to compute length of ut_user and set trailing NUL byte of - result explicitly. - ---- - sysdeps/unix/getlogin_r.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - ---- a/sysdeps/unix/getlogin_r.c -+++ b/sysdeps/unix/getlogin_r.c -@@ -83,7 +83,7 @@ - - if (result == 0) - { -- size_t needed = strlen (ut->ut_user) + 1; -+ size_t needed = __strnlen (ut->ut_user, UT_NAMESIZE) + 1; - - if (needed > name_len) - { -@@ -92,7 +92,8 @@ - } - else - { -- memcpy (name, ut->ut_user, needed); -+ memcpy (name, ut->ut_user, needed - 1); -+ name[needed - 1] = 0; - result = 0; - } - } diff --git a/packages/glibc/2.14.1/0048-zic.c-use-memcpy.patch b/packages/glibc/2.14.1/0048-zic.c-use-memcpy.patch deleted file mode 100644 index 4c89446..0000000 --- a/packages/glibc/2.14.1/0048-zic.c-use-memcpy.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit e69897bf202e18034cbef26f363bae64de70a196 -Author: Paul Eggert -Date: Sun Nov 12 22:00:28 2017 -0800 - - timezone: pacify GCC -Wstringop-truncation - - Problem reported by Martin Sebor in: - https://sourceware.org/ml/libc-alpha/2017-11/msg00336.html - * timezone/zic.c (writezone): Use memcpy, not strncpy. - ---- - timezone/zic.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/timezone/zic.c -+++ b/timezone/zic.c -@@ -1648,7 +1648,7 @@ - #define DO(field) (void) fwrite((void *) tzh.field, \ - (size_t) sizeof tzh.field, (size_t) 1, fp) - tzh = tzh0; -- (void) strncpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); -+ memcpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); - tzh.tzh_version[0] = ZIC_VERSION; - convert(eitol(thistypecnt), tzh.tzh_ttisgmtcnt); - convert(eitol(thistypecnt), tzh.tzh_ttisstdcnt); diff --git a/packages/glibc/2.14.1/chksum b/packages/glibc/2.14.1/chksum deleted file mode 100644 index a744898..0000000 --- a/packages/glibc/2.14.1/chksum +++ /dev/null @@ -1,12 +0,0 @@ -md5 glibc-2.14.1.tar.xz 55501b8d037a4f1d330312b30fd6d4bc -sha1 glibc-2.14.1.tar.xz 41ead3cdc99a40a17d5830672c36b49b1d7b79f7 -sha256 glibc-2.14.1.tar.xz 984dcfcf2621494b56be3c2f625fa418231c1cb2eb07143ca4a587a6b250b468 -sha512 glibc-2.14.1.tar.xz cfce2490c96bc79cd7ec1132ee33ce387c64cd32dbbb9792de133b2d812e0958e61598763cf58bee04b7c9ed959fb3da6efd572ecd89ed3340c3cc1992d9cbee -md5 glibc-2.14.1.tar.bz2 5869a2620c6917dd392289864c6ce595 -sha1 glibc-2.14.1.tar.bz2 f1945eea78bb30563d33c9e6a5f6f97f374135b4 -sha256 glibc-2.14.1.tar.bz2 6e85a2fa3ebe6b28103361f09d27eeda37a021f24dab73f34064456d5a715b3b -sha512 glibc-2.14.1.tar.bz2 c83c9d6dae0091b7b6d3c8fb2b9376e58d2574a8016ce1b4d6e870afca3b892e8da2482ddf95d07ae7407a7f4cc84c1f52cb2f975a18c734529ec019204f65b7 -md5 glibc-2.14.1.tar.gz f3841fd7812db4713115ff4447b29207 -sha1 glibc-2.14.1.tar.gz d1e787f1f55eba4544e4847668cc1edb782622f7 -sha256 glibc-2.14.1.tar.gz f80c40897df49c463a6d5a45f734acbfe1bf42ef209a92a5c217aeb383631bdb -sha512 glibc-2.14.1.tar.gz 49e3d8ff672f6912e0a55df9f171ef2b0c5de0e08f84501332adc21de6ddd20ad328a97268d3bfc2e520b8d642b70a7bb1b2a1ab7ac52f52cf1a1e5cc3314f8f diff --git a/packages/glibc/2.14.1/version.desc b/packages/glibc/2.14.1/version.desc deleted file mode 100644 index fcfe389..0000000 --- a/packages/glibc/2.14.1/version.desc +++ /dev/null @@ -1 +0,0 @@ -obsolete='yes' diff --git a/packages/glibc/2.15/0000-respect-env-CPPFLAGS.patch b/packages/glibc/2.15/0000-respect-env-CPPFLAGS.patch deleted file mode 100644 index 4e08fd6..0000000 --- a/packages/glibc/2.15/0000-respect-env-CPPFLAGS.patch +++ /dev/null @@ -1,17 +0,0 @@ -Respect environment CPPFLAGS when we run ./configure so we can inject -random -D things without having to set CFLAGS/ASFLAGS - ---- - Makeconfig | 1 + - 1 file changed, 1 insertion(+) - ---- a/Makeconfig -+++ b/Makeconfig -@@ -709,6 +709,7 @@ - $(foreach lib,$(libof-$(basename $(@F))) \ - $(libof-$( -Date: Fri, 15 Apr 2016 13:29:26 +0200 -Subject: [PATCH] Suppress GCC 6 warning about ambiguous 'else' with - -Wparentheses - ---- - nis/nis_call.c | 20 +++++++++++--------- - stdlib/setenv.c | 24 +++++++++++++----------- - 2 files changed, 24 insertions(+), 20 deletions(-) - ---- a/nis/nis_call.c -+++ b/nis/nis_call.c -@@ -682,16 +682,18 @@ - /* Choose which entry should be evicted from the cache. */ - loc = &nis_server_cache[0]; - if (*loc != NULL) -- for (i = 1; i < 16; ++i) -- if (nis_server_cache[i] == NULL) -- { -+ { -+ for (i = 1; i < 16; ++i) -+ if (nis_server_cache[i] == NULL) -+ { -+ loc = &nis_server_cache[i]; -+ break; -+ } -+ else if ((*loc)->uses > nis_server_cache[i]->uses -+ || ((*loc)->uses == nis_server_cache[i]->uses -+ && (*loc)->expires > nis_server_cache[i]->expires)) - loc = &nis_server_cache[i]; -- break; -- } -- else if ((*loc)->uses > nis_server_cache[i]->uses -- || ((*loc)->uses == nis_server_cache[i]->uses -- && (*loc)->expires > nis_server_cache[i]->expires)) -- loc = &nis_server_cache[i]; -+ } - old = *loc; - *loc = new; - ---- a/stdlib/setenv.c -+++ b/stdlib/setenv.c -@@ -328,18 +328,20 @@ - ep = __environ; - if (ep != NULL) - while (*ep != NULL) -- if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -- { -- /* Found it. Remove this pointer by moving later ones back. */ -- char **dp = ep; -+ { -+ if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -+ { -+ /* Found it. Remove this pointer by moving later ones back. */ -+ char **dp = ep; - -- do -- dp[0] = dp[1]; -- while (*dp++); -- /* Continue the loop in case NAME appears again. */ -- } -- else -- ++ep; -+ do -+ dp[0] = dp[1]; -+ while (*dp++); -+ /* Continue the loop in case NAME appears again. */ -+ } -+ else -+ ++ep; -+ } - - UNLOCK; - diff --git a/packages/glibc/2.15/0002-fix-signed-shift-overlow.patch b/packages/glibc/2.15/0002-fix-signed-shift-overlow.patch deleted file mode 100644 index 437818b..0000000 --- a/packages/glibc/2.15/0002-fix-signed-shift-overlow.patch +++ /dev/null @@ -1,97 +0,0 @@ -commit 5542236837c5c41435f8282ec92799f480c36f18 -Author: Paul Eggert -Date: Tue Jul 21 22:50:29 2015 -0700 - - Port the 0x7efe...feff pattern to GCC 6. - - See Steve Ellcey's bug report in: - https://sourceware.org/ml/libc-alpha/2015-07/msg00673.html - * string/memrchr.c (MEMRCHR): - * string/rawmemchr.c (RAWMEMCHR): - * string/strchr.c (strchr): - * string/strchrnul.c (STRCHRNUL): - Rewrite code to avoid issues with signed shift overflow. - ---- - string/memrchr.c | 11 ++--------- - string/rawmemchr.c | 11 ++--------- - string/strchr.c | 9 ++------- - string/strchrnul.c | 9 ++------- - 4 files changed, 8 insertions(+), 32 deletions(-) - ---- a/string/memrchr.c -+++ b/string/memrchr.c -@@ -103,15 +103,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/rawmemchr.c -+++ b/string/rawmemchr.c -@@ -90,15 +90,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchr.c -+++ b/string/strchr.c -@@ -65,13 +65,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchrnul.c -+++ b/string/strchrnul.c -@@ -63,13 +63,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); diff --git a/packages/glibc/2.15/0003-dl-openat64-variadic.patch b/packages/glibc/2.15/0003-dl-openat64-variadic.patch deleted file mode 100644 index e69bb17..0000000 --- a/packages/glibc/2.15/0003-dl-openat64-variadic.patch +++ /dev/null @@ -1,197 +0,0 @@ -commit 9dd346ff431fc761f1b748bd4da8bb59f7652094 -Author: Joseph Myers -Date: Tue Oct 20 11:54:09 2015 +0000 - - Convert 113 more function definitions to prototype style (files with assertions). - - This mostly automatically-generated patch converts 113 function - definitions in glibc from old-style K&R to prototype-style. Following - my other recent such patches, this one deals with the case of function - definitions in files that either contain assertions or where grep - suggested they might contain assertions - and thus where it isn't - possible to use a simple object code comparison as a sanity check on - the correctness of the patch, because line numbers are changed. - - A few such automatically-generated changes needed to be supplemented - by manual changes for the result to compile. openat64 had a prototype - declaration with "..." but an old-style definition in - sysdeps/unix/sysv/linux/dl-openat64.c, and "..." needed adding to the - generated prototype in the definition (I've filed - for diagnosing - such cases in GCC; the old state was undefined behavior not requiring - a diagnostic, but one seems a good idea). In addition, as Florian has - noted regparm attribute mismatches between declaration and definition - are only diagnosed for prototype definitions, and five functions - needed internal_function added to their definitions (in the case of - __pthread_mutex_cond_lock, via the macro definition of - __pthread_mutex_lock) to compile on i386. - - After this patch is in, remaining old-style definitions are probably - most readily fixed manually before we can turn on - -Wold-style-definition for all builds. - - Tested for x86_64 and x86 (testsuite). - - * crypt/md5-crypt.c (__md5_crypt_r): Convert to prototype-style - function definition. - * crypt/sha256-crypt.c (__sha256_crypt_r): Likewise. - * crypt/sha512-crypt.c (__sha512_crypt_r): Likewise. - * debug/backtracesyms.c (__backtrace_symbols): Likewise. - * elf/dl-minimal.c (_itoa): Likewise. - * hurd/hurdmalloc.c (malloc): Likewise. - (free): Likewise. - (realloc): Likewise. - * inet/inet6_option.c (inet6_option_space): Likewise. - (inet6_option_init): Likewise. - (inet6_option_append): Likewise. - (inet6_option_alloc): Likewise. - (inet6_option_next): Likewise. - (inet6_option_find): Likewise. - * io/ftw.c (FTW_NAME): Likewise. - (NFTW_NAME): Likewise. - (NFTW_NEW_NAME): Likewise. - (NFTW_OLD_NAME): Likewise. - * libio/iofwide.c (_IO_fwide): Likewise. - * libio/strops.c (_IO_str_init_static_internal): Likewise. - (_IO_str_init_static): Likewise. - (_IO_str_init_readonly): Likewise. - (_IO_str_overflow): Likewise. - (_IO_str_underflow): Likewise. - (_IO_str_count): Likewise. - (_IO_str_seekoff): Likewise. - (_IO_str_pbackfail): Likewise. - (_IO_str_finish): Likewise. - * libio/wstrops.c (_IO_wstr_init_static): Likewise. - (_IO_wstr_overflow): Likewise. - (_IO_wstr_underflow): Likewise. - (_IO_wstr_count): Likewise. - (_IO_wstr_seekoff): Likewise. - (_IO_wstr_pbackfail): Likewise. - (_IO_wstr_finish): Likewise. - * locale/programs/localedef.c (normalize_codeset): Likewise. - * locale/programs/locarchive.c (add_locale_to_archive): Likewise. - (add_locales_to_archive): Likewise. - (delete_locales_from_archive): Likewise. - * malloc/malloc.c (__libc_mallinfo): Likewise. - * math/gen-auto-libm-tests.c (init_fp_formats): Likewise. - * misc/tsearch.c (__tfind): Likewise. - * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Likewise. - * nptl/pthread_attr_getdetachstate.c - (__pthread_attr_getdetachstate): Likewise. - * nptl/pthread_attr_getguardsize.c (pthread_attr_getguardsize): - Likewise. - * nptl/pthread_attr_getinheritsched.c - (__pthread_attr_getinheritsched): Likewise. - * nptl/pthread_attr_getschedparam.c - (__pthread_attr_getschedparam): Likewise. - * nptl/pthread_attr_getschedpolicy.c - (__pthread_attr_getschedpolicy): Likewise. - * nptl/pthread_attr_getscope.c (__pthread_attr_getscope): - Likewise. - * nptl/pthread_attr_getstack.c (__pthread_attr_getstack): - Likewise. - * nptl/pthread_attr_getstackaddr.c (__pthread_attr_getstackaddr): - Likewise. - * nptl/pthread_attr_getstacksize.c (__pthread_attr_getstacksize): - Likewise. - * nptl/pthread_attr_init.c (__pthread_attr_init_2_1): Likewise. - (__pthread_attr_init_2_0): Likewise. - * nptl/pthread_attr_setdetachstate.c - (__pthread_attr_setdetachstate): Likewise. - * nptl/pthread_attr_setguardsize.c (pthread_attr_setguardsize): - Likewise. - * nptl/pthread_attr_setinheritsched.c - (__pthread_attr_setinheritsched): Likewise. - * nptl/pthread_attr_setschedparam.c - (__pthread_attr_setschedparam): Likewise. - * nptl/pthread_attr_setschedpolicy.c - (__pthread_attr_setschedpolicy): Likewise. - * nptl/pthread_attr_setscope.c (__pthread_attr_setscope): - Likewise. - * nptl/pthread_attr_setstack.c (__pthread_attr_setstack): - Likewise. - * nptl/pthread_attr_setstackaddr.c (__pthread_attr_setstackaddr): - Likewise. - * nptl/pthread_attr_setstacksize.c (__pthread_attr_setstacksize): - Likewise. - * nptl/pthread_condattr_setclock.c (pthread_condattr_setclock): - Likewise. - * nptl/pthread_create.c (__find_in_stack_list): Likewise. - * nptl/pthread_getattr_np.c (pthread_getattr_np): Likewise. - * nptl/pthread_mutex_cond_lock.c (__pthread_mutex_lock): Define to - use internal_function. - * nptl/pthread_mutex_init.c (__pthread_mutex_init): Convert to - prototype-style function definition. - * nptl/pthread_mutex_lock.c (__pthread_mutex_lock): Likewise. - (__pthread_mutex_cond_lock_adjust): Likewise. Use - internal_function. - * nptl/pthread_mutex_timedlock.c (pthread_mutex_timedlock): - Convert to prototype-style function definition. - * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): - Likewise. - * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_usercnt): - Likewise. - (__pthread_mutex_unlock): Likewise. - * nptl_db/td_ta_clear_event.c (td_ta_clear_event): Likewise. - * nptl_db/td_ta_set_event.c (td_ta_set_event): Likewise. - * nptl_db/td_thr_clear_event.c (td_thr_clear_event): Likewise. - * nptl_db/td_thr_event_enable.c (td_thr_event_enable): Likewise. - * nptl_db/td_thr_set_event.c (td_thr_set_event): Likewise. - * nss/makedb.c (process_input): Likewise. - * posix/fnmatch.c (__strchrnul): Likewise. - (__wcschrnul): Likewise. - (fnmatch): Likewise. - * posix/fnmatch_loop.c (FCT): Likewise. - * posix/glob.c (globfree): Likewise. - (__glob_pattern_type): Likewise. - (__glob_pattern_p): Likewise. - * posix/regcomp.c (re_compile_pattern): Likewise. - (re_set_syntax): Likewise. - (re_compile_fastmap): Likewise. - (regcomp): Likewise. - (regerror): Likewise. - (regfree): Likewise. - * posix/regexec.c (regexec): Likewise. - (re_match): Likewise. - (re_search): Likewise. - (re_match_2): Likewise. - (re_search_2): Likewise. - (re_search_stub): Likewise. Use internal_function - (re_copy_regs): Likewise. - (re_set_registers): Convert to prototype-style function - definition. - (prune_impossible_nodes): Likewise. Use internal_function. - * resolv/inet_net_pton.c (inet_net_pton): Convert to - prototype-style function definition. - (inet_net_pton_ipv4): Likewise. - * stdlib/strtod_l.c (____STRTOF_INTERNAL): Likewise. - * sysdeps/pthread/aio_cancel.c (aio_cancel): Likewise. - * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise. - * sysdeps/pthread/timer_delete.c (timer_delete): Likewise. - * sysdeps/unix/sysv/linux/dl-openat64.c (openat64): Likewise. - Make variadic. - * time/strptime_l.c (localtime_r): Convert to prototype-style - function definition. - * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Likewise. - * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Likewise. - * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Likewise. - * wcsmbs/wcsrtombs.c (__wcsrtombs): Likewise. - ---- - sysdeps/unix/sysv/linux/dl-openat64.c | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - ---- a/sysdeps/unix/sysv/linux/dl-openat64.c -+++ b/sysdeps/unix/sysv/linux/dl-openat64.c -@@ -24,10 +24,7 @@ - - - int --openat64 (dfd, file, oflag) -- int dfd; -- const char *file; -- int oflag; -+openat64 (int dfd, const char *file, int oflag, ...) - { - assert ((oflag & O_CREAT) == 0); - diff --git a/packages/glibc/2.15/0004-unused-variables.patch b/packages/glibc/2.15/0004-unused-variables.patch deleted file mode 100644 index 65f9f58..0000000 --- a/packages/glibc/2.15/0004-unused-variables.patch +++ /dev/null @@ -1,155 +0,0 @@ -commit 6565fcb6e189d67b5a3f321453daebb805056d73 -Author: Wilco Dijkstra -Date: Fri Sep 18 20:27:20 2015 +0100 - - Fix several build failures with GCC6 due to unused static variables. - - 2015-09-18 Wilco Dijkstra - - * resolv/base64.c (rcsid): Remove unused static. - * sysdeps/ieee754/dbl-64/atnat2.h (qpi1): Remove unused - static. (tqpi1): Likewise. - * sysdeps/ieee754/dbl-64/uexp.h (one): Likewise. - * sysdeps/ieee754/dbl-64/upow.h (sqrt_2): Likewise. - * sysdeps/ieee754/flt-32/e_log10f.c (one): Likewise. - * sysdeps/ieee754/flt-32/s_cosf.c (one): Likewise. - * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (zero): Likewise. - * sysdeps/ieee754/ldbl-128/s_erfl.c (half): Likewise. - * sysdeps/ieee754/ldbl-128/s_log1pl.c (maxlog): Likewise. - * timezone/private.h (time_t_min): Likewise. (time_t_max): - Likewise. - ---- - resolv/base64.c | 4 ---- - sysdeps/ieee754/dbl-64/atnat2.h | 4 ---- - sysdeps/ieee754/dbl-64/uexp.h | 2 +- - sysdeps/ieee754/dbl-64/upow.h | 2 -- - sysdeps/ieee754/flt-32/e_log10f.c | 2 -- - sysdeps/ieee754/flt-32/s_cosf.c | 6 ------ - sysdeps/ieee754/ldbl-128/e_lgammal_r.c | 1 - - sysdeps/ieee754/ldbl-128/s_erfl.c | 1 - - sysdeps/ieee754/ldbl-128/s_log1pl.c | 1 - - 9 files changed, 1 insertion(+), 22 deletions(-) - ---- a/resolv/base64.c -+++ b/resolv/base64.c -@@ -40,10 +40,6 @@ - * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. - */ - --#if !defined(LINT) && !defined(CODECENTER) --static const char rcsid[] = "$BINDId: base64.c,v 8.7 1999/10/13 16:39:33 vixie Exp $"; --#endif /* not lint */ -- - #include - #include - #include ---- a/sysdeps/ieee754/dbl-64/atnat2.h -+++ b/sysdeps/ieee754/dbl-64/atnat2.h -@@ -69,10 +69,8 @@ - /**/ hpi1 = {{0x3c91a626, 0x33145c07} }, /* pi/2-hpi */ - /**/ mhpi = {{0xbff921fb, 0x54442d18} }, /* -pi/2 */ - /**/ qpi = {{0x3fe921fb, 0x54442d18} }, /* pi/4 */ --/**/ qpi1 = {{0x3c81a626, 0x33145c07} }, /* pi/4-qpi */ - /**/ mqpi = {{0xbfe921fb, 0x54442d18} }, /* -pi/4 */ - /**/ tqpi = {{0x4002d97c, 0x7f3321d2} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x3c9a7939, 0x4c9e8a0a} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0xc002d97c, 0x7f3321d2} }, /* -3pi/4 */ - /**/ u1 = {{0x3c314c2a, 0x00000000} }, /* 9.377e-19 */ - /**/ u2 = {{0x3bf955e4, 0x00000000} }, /* 8.584e-20 */ -@@ -139,10 +137,8 @@ - /**/ hpi1 = {{0x33145c07, 0x3c91a626} }, /* pi/2-hpi */ - /**/ mhpi = {{0x54442d18, 0xbff921fb} }, /* -pi/2 */ - /**/ qpi = {{0x54442d18, 0x3fe921fb} }, /* pi/4 */ --/**/ qpi1 = {{0x33145c07, 0x3c81a626} }, /* pi/4-qpi */ - /**/ mqpi = {{0x54442d18, 0xbfe921fb} }, /* -pi/4 */ - /**/ tqpi = {{0x7f3321d2, 0x4002d97c} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x4c9e8a0a, 0x3c9a7939} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0x7f3321d2, 0xc002d97c} }, /* -3pi/4 */ - /**/ u1 = {{0x00000000, 0x3c314c2a} }, /* 9.377e-19 */ - /**/ u2 = {{0x00000000, 0x3bf955e4} }, /* 8.584e-20 */ ---- a/sysdeps/ieee754/dbl-64/uexp.h -+++ b/sysdeps/ieee754/dbl-64/uexp.h -@@ -30,7 +30,7 @@ - - #include "mydefs.h" - --const static double one = 1.0, zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, -+const static double zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, - err_0 = 1.000014, err_1 = 0.000016; - const static int4 bigint = 0x40862002, - badint = 0x40876000,smallint = 0x3C8fffff; ---- a/sysdeps/ieee754/dbl-64/upow.h -+++ b/sysdeps/ieee754/dbl-64/upow.h -@@ -36,7 +36,6 @@ - /**/ INF = {{0x7ff00000, 0x00000000}}, /* INF */ - /**/ nINF = {{0xfff00000, 0x00000000}}, /* -INF */ - /**/ NaNQ = {{0x7ff80000, 0x00000000}}, /* NaNQ */ --/**/ sqrt_2 = {{0x3ff6a09e, 0x667f3bcc}}, /* sqrt(2) */ - /**/ ln2a = {{0x3fe62e42, 0xfefa3800}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x3d2ef357, 0x93c76730}}, /* ln(2)-ln2a */ - /**/ bigu = {{0x4297ffff, 0xfffffd2c}}, /* 1.5*2**42 -724*2**-10 */ -@@ -51,7 +50,6 @@ - /**/ INF = {{0x00000000, 0x7ff00000}}, /* INF */ - /**/ nINF = {{0x00000000, 0xfff00000}}, /* -INF */ - /**/ NaNQ = {{0x00000000, 0x7ff80000}}, /* NaNQ */ --/**/ sqrt_2 = {{0x667f3bcc, 0x3ff6a09e}}, /* sqrt(2) */ - /**/ ln2a = {{0xfefa3800, 0x3fe62e42}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x93c76730, 0x3d2ef357}}, /* ln(2)-ln2a */ - /**/ bigu = {{0xfffffd2c, 0x4297ffff}}, /* 1.5*2**42 -724*2**-10 */ ---- a/sysdeps/ieee754/flt-32/e_log10f.c -+++ b/sysdeps/ieee754/flt-32/e_log10f.c -@@ -22,8 +22,6 @@ - log10_2hi = 3.0102920532e-01, /* 0x3e9a2080 */ - log10_2lo = 7.9034151668e-07; /* 0x355427db */ - --static const float zero = 0.0; -- - float - __ieee754_log10f(float x) - { ---- a/sysdeps/ieee754/flt-32/s_cosf.c -+++ b/sysdeps/ieee754/flt-32/s_cosf.c -@@ -22,12 +22,6 @@ - #include "math_private.h" - - #ifdef __STDC__ --static const float one=1.0; --#else --static float one=1.0; --#endif -- --#ifdef __STDC__ - float __cosf(float x) - #else - float __cosf(x) ---- a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -+++ b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -@@ -74,7 +74,6 @@ - static const long double PIL = 3.1415926535897932384626433832795028841972E0L; - static const long double MAXLGM = 1.0485738685148938358098967157129705071571E4928L; - static const long double one = 1.0L; --static const long double zero = 0.0L; - static const long double huge = 1.0e4000L; - - /* log gamma(x) = ( x - 0.5 ) * log(x) - x + LS2PI + 1/x P(1/x^2) ---- a/sysdeps/ieee754/ldbl-128/s_erfl.c -+++ b/sysdeps/ieee754/ldbl-128/s_erfl.c -@@ -142,7 +142,6 @@ - static long double - #endif - tiny = 1e-4931L, -- half = 0.5L, - one = 1.0L, - two = 2.0L, - /* 2/sqrt(pi) - 1 */ ---- a/sysdeps/ieee754/ldbl-128/s_log1pl.c -+++ b/sysdeps/ieee754/ldbl-128/s_log1pl.c -@@ -116,7 +116,6 @@ - - static const long double sqrth = 0.7071067811865475244008443621048490392848L; - /* ln (2^16384 * (1 - 2^-113)) */ --static const long double maxlog = 1.1356523406294143949491931077970764891253E4L; - static const long double zero = 0.0L; - - long double diff --git a/packages/glibc/2.15/0005-misleading-indentation.patch b/packages/glibc/2.15/0005-misleading-indentation.patch deleted file mode 100644 index 35bcb1b..0000000 --- a/packages/glibc/2.15/0005-misleading-indentation.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 976ef870542580cf5fed896c2c652b3e1a95f9da -Author: Steve Ellcey -Date: Fri Dec 11 09:19:37 2015 -0800 - - Fix indentation. - - * sysdeps/ieee754/flt-32/k_rem_pio2f.c (__kernel_rem_pio2f): - Fix indentation. - ---- - sysdeps/ieee754/flt-32/k_rem_pio2f.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - ---- a/sysdeps/ieee754/flt-32/k_rem_pio2f.c -+++ b/sysdeps/ieee754/flt-32/k_rem_pio2f.c -@@ -82,7 +82,9 @@ - - /* compute q[0],q[1],...q[jk] */ - for (i=0;i<=jk;i++) { -- for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; q[i] = fw; -+ for(j=0,fw=0.0;j<=jx;j++) -+ fw += x[j]*f[jx+i-j]; -+ q[i] = fw; - } - - jz = jk; diff --git a/packages/glibc/2.15/0006-dl-open-array-bounds.patch b/packages/glibc/2.15/0006-dl-open-array-bounds.patch deleted file mode 100644 index 2ad3817..0000000 --- a/packages/glibc/2.15/0006-dl-open-array-bounds.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 328c44c3670ebf6c1bd790acddce65a12998cd6c -Author: Roland McGrath -Date: Fri Apr 17 12:11:58 2015 -0700 - - Fuller check for invalid NSID in _dl_open. - ---- - elf/dl-open.c | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - ---- a/elf/dl-open.c -+++ b/elf/dl-open.c -@@ -546,8 +546,14 @@ - /* Never allow loading a DSO in a namespace which is empty. Such - direct placements is only causing problems. Also don't allow - loading into a namespace used for auditing. */ -- else if (__builtin_expect (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER, 0) -- && (GL(dl_ns)[nsid]._ns_nloaded == 0 -+ else if ((nsid != LM_ID_BASE && nsid != __LM_ID_CALLER) -+ && ((nsid < 0 || nsid >= GL(dl_nns)) -+ /* This prevents the [NSID] index expressions from being -+ evaluated, so the compiler won't think that we are -+ accessing an invalid index here in the !SHARED case where -+ DL_NNS is 1 and so any NSID != 0 is invalid. */ -+ || DL_NNS == 1 -+ || GL(dl_ns)[nsid]._ns_nloaded == 0 - || GL(dl_ns)[nsid]._ns_loaded->l_auditing)) - _dl_signal_error (EINVAL, file, NULL, - N_("invalid target namespace in dlmopen()")); diff --git a/packages/glibc/2.15/0007-i386-x86_64-revert-clone-cfi.patch b/packages/glibc/2.15/0007-i386-x86_64-revert-clone-cfi.patch deleted file mode 100644 index f872bac..0000000 --- a/packages/glibc/2.15/0007-i386-x86_64-revert-clone-cfi.patch +++ /dev/null @@ -1,51 +0,0 @@ -revert cfi additions to clone on i386/x86_64 to workaround problems in -gcc's unwinder code. this is not a bug in glibc, it triggers problems -elsewhere. this cfi code does not gain us a whole lot anyways. - -http://gcc.gnu.org/ml/gcc/2006-12/msg00293.html - ---- - sysdeps/unix/sysv/linux/i386/clone.S | 4 ---- - sysdeps/unix/sysv/linux/x86_64/clone.S | 4 ---- - 2 files changed, 8 deletions(-) - ---- a/sysdeps/unix/sysv/linux/i386/clone.S -+++ b/sysdeps/unix/sysv/linux/i386/clone.S -@@ -120,9 +120,6 @@ - ret - - L(thread_start): -- cfi_startproc; -- /* Clearing frame pointer is insufficient, use CFI. */ -- cfi_undefined (eip); - /* Note: %esi is zero. */ - movl %esi,%ebp /* terminate the stack frame */ - #ifdef RESET_PID -@@ -155,7 +152,6 @@ - jmp L(haspid) - .previous - #endif -- cfi_endproc; - - cfi_startproc - PSEUDO_END (BP_SYM (__clone)) ---- a/sysdeps/unix/sysv/linux/x86_64/clone.S -+++ b/sysdeps/unix/sysv/linux/x86_64/clone.S -@@ -89,9 +89,6 @@ - ret - - L(thread_start): -- cfi_startproc; -- /* Clearing frame pointer is insufficient, use CFI. */ -- cfi_undefined (rip); - /* Clear the frame pointer. The ABI suggests this be done, to mark - the outermost frame obviously. */ - xorl %ebp, %ebp -@@ -116,7 +113,6 @@ - /* Call exit with return value from function call. */ - movq %rax, %rdi - call HIDDEN_JUMPTARGET (_exit) -- cfi_endproc; - - cfi_startproc; - PSEUDO_END (BP_SYM (__clone)) diff --git a/packages/glibc/2.15/0008-disable-ldconfig.patch b/packages/glibc/2.15/0008-disable-ldconfig.patch deleted file mode 100644 index 4c5615d..0000000 --- a/packages/glibc/2.15/0008-disable-ldconfig.patch +++ /dev/null @@ -1,19 +0,0 @@ -do not bother running ldconfig on DESTDIR. it wants to write the temp cache -file outside of the chroot. doesnt matter anyways as we wont use the cache -results (portage will rebuild cache), so running ldconfig is simply a waste -of time. - ---- - Makefile | 1 + - 1 file changed, 1 insertion(+) - ---- a/Makefile -+++ b/Makefile -@@ -107,6 +107,7 @@ - rm -f $(symbolic-link-list) - - install: -+dont-bother-with-destdir: - -test ! -x $(common-objpfx)elf/ldconfig || LC_ALL=C LANGUAGE=C \ - $(common-objpfx)elf/ldconfig $(addprefix -r ,$(install_root)) \ - $(slibdir) $(libdir) diff --git a/packages/glibc/2.15/0009-Fix-combreloc-test-BSD-grep.patch b/packages/glibc/2.15/0009-Fix-combreloc-test-BSD-grep.patch deleted file mode 100644 index ce16455..0000000 --- a/packages/glibc/2.15/0009-Fix-combreloc-test-BSD-grep.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 61d5f9c09b3157db76bd1a393e248c262a8d9dd4 Mon Sep 17 00:00:00 2001 -From: Alexey Neyman -Date: Wed, 8 Mar 2017 14:31:10 -0800 -Subject: [PATCH] Fix combreloc test with BSD grep - -The test for "-z combreloc" fails when cross-compiling on a machine -that uses BSD grep (e.g. on macos). grep complains about empty -subexpression and exits with non-zero status, which is interpreted -by configure as "not found". As a result, support for "-z combreloc" -(HAVE_Z_COMBRELOC) is not detected, leading to link failure on SPARC. - - * configure.ac: Avoid empty subexpression in grep. - -Signed-off-by: Alexey Neyman ---- - configure | 2 +- - configure.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/configure -+++ b/configure -@@ -6566,7 +6566,7 @@ - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } - then -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no ---- a/configure.in -+++ b/configure.in -@@ -1716,7 +1716,7 @@ - dnl introducing new options this is not easily doable. Instead use a tool - dnl which always is cross-platform: readelf. To detect whether -z combreloc - dnl look for a section named .rel.dyn. -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/packages/glibc/2.15/0010-queue-header-updates.patch b/packages/glibc/2.15/0010-queue-header-updates.patch deleted file mode 100644 index f6515e2..0000000 --- a/packages/glibc/2.15/0010-queue-header-updates.patch +++ /dev/null @@ -1,86 +0,0 @@ -grab some updates from FreeBSD - -http://bugs.gentoo.org/201979 - ---- - misc/sys/queue.h | 36 ++++++++++++++++++++++++++++++++++++ - 1 file changed, 36 insertions(+) - ---- a/misc/sys/queue.h -+++ b/misc/sys/queue.h -@@ -136,6 +136,11 @@ - (var); \ - (var) = ((var)->field.le_next)) - -+#define LIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = LIST_FIRST((head)); \ -+ (var) && ((tvar) = LIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - /* - * List access methods. - */ -@@ -197,6 +202,16 @@ - #define SLIST_FOREACH(var, head, field) \ - for((var) = (head)->slh_first; (var); (var) = (var)->field.sle_next) - -+#define SLIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = SLIST_FIRST((head)); \ -+ (var) && ((tvar) = SLIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ -+#define SLIST_FOREACH_PREVPTR(var, varp, head, field) \ -+ for ((varp) = &SLIST_FIRST((head)); \ -+ ((var) = *(varp)) != NULL; \ -+ (varp) = &SLIST_NEXT((var), field)) -+ - /* - * Singly-linked List access methods. - */ -@@ -242,6 +257,12 @@ - (head)->stqh_last = &(elm)->field.stqe_next; \ - } while (/*CONSTCOND*/0) - -+#define STAILQ_LAST(head, type, field) \ -+ (STAILQ_EMPTY((head)) ? \ -+ NULL : \ -+ ((struct type *)(void *) \ -+ ((char *)((head)->stqh_last) - __offsetof(struct type, field)))) -+ - #define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ - if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\ - (head)->stqh_last = &(elm)->field.stqe_next; \ -@@ -271,6 +292,11 @@ - (var); \ - (var) = ((var)->field.stqe_next)) - -+#define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = STAILQ_FIRST((head)); \ -+ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - #define STAILQ_CONCAT(head1, head2) do { \ - if (!STAILQ_EMPTY((head2))) { \ - *(head1)->stqh_last = (head2)->stqh_first; \ -@@ -437,11 +463,21 @@ - (var); \ - (var) = ((var)->field.tqe_next)) - -+#define TAILQ_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = TAILQ_FIRST((head)); \ -+ (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - #define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ - for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last)); \ - (var); \ - (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last))) - -+#define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar) \ -+ for ((var) = TAILQ_LAST((head), headname); \ -+ (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \ -+ (var) = (tvar)) -+ - #define TAILQ_CONCAT(head1, head2, field) do { \ - if (!TAILQ_EMPTY(head2)) { \ - *(head1)->tqh_last = (head2)->tqh_first; \ diff --git a/packages/glibc/2.15/0011-manual-no-perl.patch b/packages/glibc/2.15/0011-manual-no-perl.patch deleted file mode 100644 index 7e232aa..0000000 --- a/packages/glibc/2.15/0011-manual-no-perl.patch +++ /dev/null @@ -1,27 +0,0 @@ -If we're using a cvs snapshot which updates the source files, and -perl isn't installed yet, then we can't regen the docs. Not a big -deal, so just whine a little and continue on our merry way. - -http://bugs.gentoo.org/60132 - ---- - manual/Makefile | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/manual/Makefile -+++ b/manual/Makefile -@@ -106,9 +106,14 @@ - libm-err.texi: stamp-libm-err - stamp-libm-err: libm-err-tab.pl $(wildcard $(foreach dir,$(sysdirs),\ - $(dir)/libm-test-ulps)) -+ifneq ($(PERL),no) - pwd=`pwd`; \ - $(PERL) $< $$pwd/.. > libm-err-tmp - $(move-if-change) libm-err-tmp libm-err.texi -+else -+ echo "Unable to rebuild math docs, no perl installed" -+ touch libm-err.texi -+endif - touch $@ - - # Generate Texinfo files from the C source for the example programs. diff --git a/packages/glibc/2.15/0012-localedef-fix-trampoline.patch b/packages/glibc/2.15/0012-localedef-fix-trampoline.patch deleted file mode 100644 index 3b8fd6e..0000000 --- a/packages/glibc/2.15/0012-localedef-fix-trampoline.patch +++ /dev/null @@ -1,56 +0,0 @@ -# DP: Description: Fix localedef segfault when run under exec-shield, -# PaX or similar. (#231438, #198099) -# DP: Dpatch Author: James Troup -# DP: Patch Author: (probably) Jakub Jelinek -# DP: Upstream status: Unknown -# DP: Status Details: Unknown -# DP: Date: 2004-03-16 ---- -# locale/programs/3level.h | 36 ++++++++++++++++++++++++++++++++++++ -# 1 file changed, 36 insertions(+) -# ---- a/locale/programs/3level.h -+++ b/locale/programs/3level.h -@@ -203,6 +203,42 @@ - } - } - } -+ -+/* GCC ATM seems to do a poor job with pointers to nested functions passed -+ to inlined functions. Help it a little bit with this hack. */ -+#define wchead_table_iterate(tp, fn) \ -+do \ -+ { \ -+ struct wchead_table *t = (tp); \ -+ uint32_t index1; \ -+ for (index1 = 0; index1 < t->level1_size; index1++) \ -+ { \ -+ uint32_t lookup1 = t->level1[index1]; \ -+ if (lookup1 != ((uint32_t) ~0)) \ -+ { \ -+ uint32_t lookup1_shifted = lookup1 << t->q; \ -+ uint32_t index2; \ -+ for (index2 = 0; index2 < (1 << t->q); index2++) \ -+ { \ -+ uint32_t lookup2 = t->level2[index2 + lookup1_shifted]; \ -+ if (lookup2 != ((uint32_t) ~0)) \ -+ { \ -+ uint32_t lookup2_shifted = lookup2 << t->p; \ -+ uint32_t index3; \ -+ for (index3 = 0; index3 < (1 << t->p); index3++) \ -+ { \ -+ struct element_t *lookup3 \ -+ = t->level3[index3 + lookup2_shifted]; \ -+ if (lookup3 != NULL) \ -+ fn ((((index1 << t->q) + index2) << t->p) + index3, \ -+ lookup3); \ -+ } \ -+ } \ -+ } \ -+ } \ -+ } \ -+ } while (0) -+ - #endif - - #ifndef NO_FINALIZE diff --git a/packages/glibc/2.15/0013-resolv-dynamic.patch b/packages/glibc/2.15/0013-resolv-dynamic.patch deleted file mode 100644 index fcc2f80..0000000 --- a/packages/glibc/2.15/0013-resolv-dynamic.patch +++ /dev/null @@ -1,42 +0,0 @@ -ripped from SuSE - -if /etc/resolv.conf is updated, then make sure applications -already running get the updated information. - -http://bugs.gentoo.org/177416 - ---- - resolv/res_libc.c | 15 +++++++++++++++ - 1 file changed, 15 insertions(+) - ---- a/resolv/res_libc.c -+++ b/resolv/res_libc.c -@@ -22,6 +22,7 @@ - #include - #include - #include -+#include - - - /* The following bit is copied from res_data.c (where it is #ifdef'ed -@@ -95,6 +96,20 @@ - __res_maybe_init (res_state resp, int preinit) - { - if (resp->options & RES_INIT) { -+ static time_t last_mtime, last_check; -+ time_t now; -+ struct stat statbuf; -+ -+ time (&now); -+ if (now != last_check) { -+ last_check = now; -+ if (stat (_PATH_RESCONF, &statbuf) == 0 && last_mtime != statbuf.st_mtime) { -+ last_mtime = statbuf.st_mtime; -+ atomicinclock (lock); -+ atomicinc (__res_initstamp); -+ atomicincunlock (lock); -+ } -+ } - if (__res_initstamp != resp->_u._ext.initstamp) { - if (resp->nscount > 0) - __res_iclose (resp, true); diff --git a/packages/glibc/2.15/0014-fadvise64_64.patch b/packages/glibc/2.15/0014-fadvise64_64.patch deleted file mode 100644 index 191d833..0000000 --- a/packages/glibc/2.15/0014-fadvise64_64.patch +++ /dev/null @@ -1,27 +0,0 @@ -ripped from Debian - - sysdeps/unix/sysv/linux/posix_fadvise.c | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - ---- a/sysdeps/unix/sysv/linux/posix_fadvise.c -+++ b/sysdeps/unix/sysv/linux/posix_fadvise.c -@@ -35,6 +35,19 @@ - return INTERNAL_SYSCALL_ERRNO (ret, err); - return 0; - #else -+# ifdef __NR_fadvise64_64 -+ INTERNAL_SYSCALL_DECL (err); -+ int ret = INTERNAL_SYSCALL (fadvise64_64, err, 6, fd, -+ __LONG_LONG_PAIR ((long) (offset >> 31), -+ (long) offset), -+ __LONG_LONG_PAIR ((long) (len >> 31), -+ (long) len), -+ advise); -+ if (INTERNAL_SYSCALL_ERROR_P (ret, err)) -+ return INTERNAL_SYSCALL_ERRNO (ret, err); -+ return 0; -+# else - return ENOSYS; -+# endif - #endif - } diff --git a/packages/glibc/2.15/0015-section-comments.patch b/packages/glibc/2.15/0015-section-comments.patch deleted file mode 100644 index 75cb527..0000000 --- a/packages/glibc/2.15/0015-section-comments.patch +++ /dev/null @@ -1,27 +0,0 @@ -http://sources.redhat.com/ml/binutils/2004-04/msg00665.html - -fixes building on some architectures (like m68k/arm/cris/etc...) because -it does the right thing - ---- - include/libc-symbols.h | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/include/libc-symbols.h -+++ b/include/libc-symbols.h -@@ -235,12 +235,12 @@ - # define __make_section_unallocated(section_string) - # endif - --/* Tacking on "\n\t#" to the section name makes gcc put it's bogus -+/* Tacking on "\n#APP\n\t#" to the section name makes gcc put it's bogus - section attributes on what looks like a comment to the assembler. */ - # ifdef HAVE_SECTION_QUOTES --# define __sec_comment "\"\n\t#\"" -+# define __sec_comment "\"\n#APP\n\t#\"" - # else --# define __sec_comment "\n\t#" -+# define __sec_comment "\n#APP\n\t#" - # endif - # define link_warning(symbol, msg) \ - __make_section_unallocated (".gnu.warning." #symbol) \ diff --git a/packages/glibc/2.15/0016-no-inline-gmon.patch b/packages/glibc/2.15/0016-no-inline-gmon.patch deleted file mode 100644 index ed02704..0000000 --- a/packages/glibc/2.15/0016-no-inline-gmon.patch +++ /dev/null @@ -1,36 +0,0 @@ -http://bugs.gentoo.org/196245 -http://sourceware.org/ml/libc-alpha/2006-05/msg00017.html - -Attached is a patch to add __attribute__ ((noinline)) to -call_gmon_start. - -Without this patch, the sec script that processed initfini.s removes a -part of inlined call_gmon_start, causing undefined label errors. - -This patch solves the problem by forcing gcc not to inline -call_gmon_start with __attribute__ ((noinline)). - -Tested by building for arm-none-lixux-gnueabi. OK to apply? - -Kazu Hirata - -2006-05-07 Kazu Hirata <kazu@codesourcery.com> - - * sysdeps/generic/initfini.c (call_gmon_start): Add - __attribute__ ((noinline)). - ---- - sysdeps/generic/initfini.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sysdeps/generic/initfini.c -+++ b/sysdeps/generic/initfini.c -@@ -70,7 +70,7 @@ - /* The beginning of _init: */ - asm ("\n/*@_init_PROLOG_BEGINS*/"); - --static void -+static void __attribute__ ((noinline)) - call_gmon_start(void) - { - extern void __gmon_start__ (void) __attribute__ ((weak)); /*weak_extern (__gmon_start__);*/ diff --git a/packages/glibc/2.15/0017-assume-pipe2.patch b/packages/glibc/2.15/0017-assume-pipe2.patch deleted file mode 100644 index 0074ea6..0000000 --- a/packages/glibc/2.15/0017-assume-pipe2.patch +++ /dev/null @@ -1,43 +0,0 @@ -http://bugs.gentoo.org/250342 -http://sources.redhat.com/bugzilla/show_bug.cgi?id=9685 - -we cant assume sock_cloexec and pipe2 are bound together as the former defines -are found in glibc only while the latter are a combo of kernel headers and -glibc. so if we do a runtime detection of SOCK_CLOEXEC, but pipe2() is a stub -inside of glibc, we hit a problem. for example: - -#include -#include -main() -{ - getgrnam("portage"); - if (!popen("ls", "r")) - perror("popen()"); -} - -getgrnam() will detect that the kernel supports SOCK_CLOEXEC and then set both -__have_sock_cloexec and __have_pipe2 to true. but if glibc was built against -older kernel headers where __NR_pipe2 does not exist, glibc will have a ENOSYS -stub for it. so popen() will always fail as glibc assumes pipe2() works. - ---- - socket/have_sock_cloexec.c | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/socket/have_sock_cloexec.c -+++ b/socket/have_sock_cloexec.c -@@ -16,9 +16,14 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -+#include - #include - #include - - #if defined SOCK_CLOEXEC && !defined __ASSUME_SOCK_CLOEXEC - int __have_sock_cloexec; - #endif -+ -+#if defined O_CLOEXEC && !defined __ASSUME_PIPE2 -+int __have_pipe2; -+#endif diff --git a/packages/glibc/2.15/0018-china.patch b/packages/glibc/2.15/0018-china.patch deleted file mode 100644 index b323cf6..0000000 --- a/packages/glibc/2.15/0018-china.patch +++ /dev/null @@ -1,35 +0,0 @@ - - ---- - localedata/locales/zh_TW | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/localedata/locales/zh_TW -+++ b/localedata/locales/zh_TW -@@ -1,7 +1,7 @@ - comment_char % - escape_char / - % --% Chinese language locale for Taiwan R.O.C. -+% Chinese language locale for Taiwan - % charmap: BIG5-CP950 - % - % Original Author: -@@ -17,7 +17,7 @@ - % Reference: http://wwwold.dkuug.dk/JTC1/SC22/WG20/docs/n690.pdf - - LC_IDENTIFICATION --title "Chinese locale for Taiwan R.O.C." -+title "Chinese locale for Taiwan" - source "" - address "" - contact "" -@@ -25,7 +25,7 @@ - tel "" - fax "" - language "Chinese" --territory "Taiwan R.O.C." -+territory "Taiwan" - revision "0.2" - date "2000-08-02" - % diff --git a/packages/glibc/2.15/0019-new-valencian-locale.patch b/packages/glibc/2.15/0019-new-valencian-locale.patch deleted file mode 100644 index 8f67711..0000000 --- a/packages/glibc/2.15/0019-new-valencian-locale.patch +++ /dev/null @@ -1,118 +0,0 @@ -http://bugs.gentoo.org/show_bug.cgi?id=131815 -http://sourceware.org/bugzilla/show_bug.cgi?id=2522 - ---- - localedata/SUPPORTED | 2 - localedata/locales/ca_ES@valencia | 96 ++++++++++++++++++++++++++++++++++++++ - 2 files changed, 98 insertions(+) - ---- a/localedata/SUPPORTED -+++ b/localedata/SUPPORTED -@@ -75,6 +75,8 @@ - ca_ES.UTF-8/UTF-8 \ - ca_ES/ISO-8859-1 \ - ca_ES@euro/ISO-8859-15 \ -+ca_ES.UTF-8@valencia/UTF-8 \ -+ca_ES@valencia/ISO-8859-15 \ - ca_FR.UTF-8/UTF-8 \ - ca_FR/ISO-8859-15 \ - ca_IT.UTF-8/UTF-8 \ ---- /dev/null -+++ b/localedata/locales/ca_ES@valencia -@@ -0,0 +1,96 @@ -+comment_char % -+escape_char / -+% -+% Valencian (southern Catalan) locale for Spain with Euro -+% -+% Note that this locale is almost the same as ca_ES@euro. The point of having -+% a separate locale is only for PO translations, which have a lot of social -+% support and are very appreciated by the Valencian-speaking community. -+% -+% Contact: Jordi Mallach -+% Email: jordi@gnu.org -+% Tel: -+% Fax: -+% Language: ca -+% Territory: ES -+% Option: euro -+% Revision: 1.0 -+% Date: 2006-04-06 -+% Application: general -+% Users: general -+% Repertoiremap: mnemonic,ds -+% Charset: ISO-8859-15 -+% Distribution and use is free, also -+% for commercial purposes. -+ -+LC_IDENTIFICATION -+title "Valencian (southern Catalan) locale for Spain with Euro" -+source "" -+address "" -+contact "Jordi Mallach" -+email "jordi@gnu.org" -+tel "" -+fax "" -+language "Catalan" -+territory "Spain" -+revision "1.0" -+date "2006-04-06" -+% -+category "ca_ES@valencia:2006";LC_IDENTIFICATION -+category "ca_ES@valencia:2006";LC_CTYPE -+category "ca_ES@valencia:2006";LC_COLLATE -+category "ca_ES@valencia:2006";LC_MONETARY -+category "ca_ES@valencia:2006";LC_NUMERIC -+category "ca_ES@valencia:2006";LC_TIME -+category "ca_ES@valencia:2006";LC_MESSAGES -+category "ca_ES@valencia:2006";LC_PAPER -+category "ca_ES@valencia:2006";LC_NAME -+category "ca_ES@valencia:2006";LC_ADDRESS -+category "ca_ES@valencia:2006";LC_TELEPHONE -+category "ca_ES@valencia:2006";LC_MEASUREMENT -+ -+END LC_IDENTIFICATION -+ -+LC_CTYPE -+copy "i18n" -+END LC_CTYPE -+ -+LC_COLLATE -+copy "ca_ES" -+END LC_COLLATE -+ -+LC_MONETARY -+copy "ca_ES" -+END LC_MONETARY -+ -+LC_NUMERIC -+copy "ca_ES" -+END LC_NUMERIC -+ -+LC_TIME -+copy "ca_ES" -+END LC_TIME -+ -+LC_MESSAGES -+copy "ca_ES" -+END LC_MESSAGES -+ -+LC_PAPER -+copy "ca_ES" -+END LC_PAPER -+ -+LC_NAME -+copy "ca_ES" -+END LC_NAME -+ -+LC_ADDRESS -+copy "ca_ES" -+END LC_ADDRESS -+ -+LC_TELEPHONE -+copy "ca_ES" -+END LC_TELEPHONE -+ -+LC_MEASUREMENT -+copy "ca_ES" -+END LC_MEASUREMENT diff --git a/packages/glibc/2.15/0020-macos-cross-rpcgen.patch b/packages/glibc/2.15/0020-macos-cross-rpcgen.patch deleted file mode 100644 index b439b0f..0000000 --- a/packages/glibc/2.15/0020-macos-cross-rpcgen.patch +++ /dev/null @@ -1,34 +0,0 @@ -commit ae7080d30c68cfa0c81ce3422dca948f64a94f50 -Author: Jia Liu -Date: Sat Sep 7 00:01:08 2013 +0800 - - sunrpc/rpc/types.h: fix OS X and FreeBSD build problems - - When I build arm-linux-gcc on OS X, I find glibc will get a build error - in sunrpc/rpc/types.h, so I add __APPLE_CC__ to make OS X build OK. - For FreeBSD, Add __FreeBSD__ to make it build OK, too. - - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00155.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00217.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00240.html - Signed-off-by: Jia Liu - Signed-off-by: Mike Frysinger - ---- - sunrpc/rpc/types.h | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/sunrpc/rpc/types.h -+++ b/sunrpc/rpc/types.h -@@ -69,6 +69,11 @@ - #include - #endif - -+#if defined __APPLE_CC__ || defined __FreeBSD__ -+# define __u_char_defined -+# define __daddr_t_defined -+#endif -+ - #ifndef __u_char_defined - typedef __u_char u_char; - typedef __u_short u_short; diff --git a/packages/glibc/2.15/0021-nscd-one-fork.patch b/packages/glibc/2.15/0021-nscd-one-fork.patch deleted file mode 100644 index 11861f5..0000000 --- a/packages/glibc/2.15/0021-nscd-one-fork.patch +++ /dev/null @@ -1,43 +0,0 @@ -only fork one to assist in stop-start-daemon assumptions about daemon behavior - -http://bugs.gentoo.org/190785 - ---- - nscd/nscd.c | 12 +++--------- - 1 file changed, 3 insertions(+), 9 deletions(-) - ---- a/nscd/nscd.c -+++ b/nscd/nscd.c -@@ -185,6 +185,9 @@ - if (pid != 0) - exit (0); - -+ if (write_pid (_PATH_NSCDPID) < 0) -+ dbg_log ("%s: %s", _PATH_NSCDPID, strerror (errno)); -+ - int nullfd = open (_PATH_DEVNULL, O_RDWR); - if (nullfd != -1) - { -@@ -234,12 +237,6 @@ - for (i = min_close_fd; i < getdtablesize (); i++) - close (i); - -- pid = fork (); -- if (pid == -1) -- error (EXIT_FAILURE, errno, _("cannot fork")); -- if (pid != 0) -- exit (0); -- - setsid (); - - if (chdir ("/") != 0) -@@ -248,9 +245,6 @@ - - openlog ("nscd", LOG_CONS | LOG_ODELAY, LOG_DAEMON); - -- if (write_pid (_PATH_NSCDPID) < 0) -- dbg_log ("%s: %s", _PATH_NSCDPID, strerror (errno)); -- - if (!init_logfile ()) - dbg_log (_("Could not create log file")); - diff --git a/packages/glibc/2.15/0022-hppa-nptl-carlos.patch b/packages/glibc/2.15/0022-hppa-nptl-carlos.patch deleted file mode 100644 index cad5797..0000000 --- a/packages/glibc/2.15/0022-hppa-nptl-carlos.patch +++ /dev/null @@ -1,249 +0,0 @@ - - ---- - elf/rtld.c | 10 +++++----- - include/atomic.h | 26 +++++++++++++------------- - nptl/Makefile | 35 ++++++++++++++++++++++++++++++++--- - nptl/pthread_barrier_wait.c | 2 +- - nptl/sysdeps/pthread/Makefile | 2 ++ - stdio-common/Makefile | 2 +- - sunrpc/clnt_udp.c | 2 +- - 7 files changed, 55 insertions(+), 24 deletions(-) - ---- a/elf/rtld.c -+++ b/elf/rtld.c -@@ -393,14 +393,14 @@ - know it is available. We do not have to clear the memory if we - do not have to use the temporary bootstrap_map. Global variables - are initialized to zero by default. */ --#ifndef DONT_USE_BOOTSTRAP_MAP -+#if !defined DONT_USE_BOOTSTRAP_MAP - # ifdef HAVE_BUILTIN_MEMSET - __builtin_memset (bootstrap_map.l_info, '\0', sizeof (bootstrap_map.l_info)); - # else -- for (size_t cnt = 0; -- cnt < sizeof (bootstrap_map.l_info) / sizeof (bootstrap_map.l_info[0]); -- ++cnt) -- bootstrap_map.l_info[cnt] = 0; -+ /* Clear the whole bootstrap_map structure */ -+ for (char *cnt = (char *)&(bootstrap_map); -+ cnt < ((char *)&(bootstrap_map) + sizeof (bootstrap_map)); -+ *cnt++ = '\0'); - # endif - # if USE___THREAD - bootstrap_map.l_tls_modid = 0; ---- a/include/atomic.h -+++ b/include/atomic.h -@@ -185,7 +185,7 @@ - __typeof (*(mem)) __atg5_value = (newvalue); \ - \ - do \ -- __atg5_oldval = *__atg5_memp; \ -+ __atg5_oldval = *(volatile __typeof (mem))__atg5_memp; \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg5_memp, __atg5_value, \ - __atg5_oldval), 0)); \ -@@ -206,7 +206,7 @@ - __typeof (*(mem)) __atg6_value = (value); \ - \ - do \ -- __atg6_oldval = *__atg6_memp; \ -+ __atg6_oldval = *(volatile __typeof (mem))__atg6_memp; \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg6_memp, \ - __atg6_oldval \ -@@ -224,7 +224,7 @@ - __typeof (*(mem)) __atg7_value = (value); \ - \ - do \ -- __atg7_oldv = *__atg7_memp; \ -+ __atg7_oldv = *(volatile __typeof (mem))__atg7_memp; \ - while (__builtin_expect \ - (catomic_compare_and_exchange_bool_acq (__atg7_memp, \ - __atg7_oldv \ -@@ -242,7 +242,7 @@ - __typeof (mem) __atg8_memp = (mem); \ - __typeof (*(mem)) __atg8_value = (value); \ - do { \ -- __atg8_oldval = *__atg8_memp; \ -+ __atg8_oldval = *(volatile __typeof (mem))__atg8_memp; \ - if (__atg8_oldval >= __atg8_value) \ - break; \ - } while (__builtin_expect \ -@@ -259,7 +259,7 @@ - __typeof (mem) __atg9_memp = (mem); \ - __typeof (*(mem)) __atg9_value = (value); \ - do { \ -- __atg9_oldv = *__atg9_memp; \ -+ __atg9_oldv = *(volatile __typeof (mem))__atg9_memp; \ - if (__atg9_oldv >= __atg9_value) \ - break; \ - } while (__builtin_expect \ -@@ -277,7 +277,7 @@ - __typeof (mem) __atg10_memp = (mem); \ - __typeof (*(mem)) __atg10_value = (value); \ - do { \ -- __atg10_oldval = *__atg10_memp; \ -+ __atg10_oldval = *(volatile __typeof (mem))__atg10_memp; \ - if (__atg10_oldval <= __atg10_value) \ - break; \ - } while (__builtin_expect \ -@@ -361,7 +361,7 @@ - \ - do \ - { \ -- __atg11_oldval = *__atg11_memp; \ -+ __atg11_oldval = *(volatile __typeof (mem))__atg11_memp; \ - if (__builtin_expect (__atg11_oldval <= 0, 0)) \ - break; \ - } \ -@@ -400,7 +400,7 @@ - __typeof (*(mem)) __atg14_mask = ((__typeof (*(mem))) 1 << (bit)); \ - \ - do \ -- __atg14_old = (*__atg14_memp); \ -+ __atg14_old = (*(volatile __typeof (mem))__atg14_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg14_memp, \ - __atg14_old | __atg14_mask,\ -@@ -418,7 +418,7 @@ - __typeof (*(mem)) __atg15_mask = (mask); \ - \ - do \ -- __atg15_old = (*__atg15_memp); \ -+ __atg15_old = (*(volatile __typeof (mem))__atg15_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg15_memp, \ - __atg15_old & __atg15_mask, \ -@@ -450,7 +450,7 @@ - __typeof (*(mem)) __atg16_mask = (mask); \ - \ - do \ -- __atg16_old = (*__atg16_memp); \ -+ __atg16_old = (*(volatile __typeof (mem))__atg16_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg16_memp, \ - __atg16_old & __atg16_mask,\ -@@ -468,7 +468,7 @@ - __typeof (*(mem)) __atg17_mask = (mask); \ - \ - do \ -- __atg17_old = (*__atg17_memp); \ -+ __atg17_old = (*(volatile __typeof (mem))__atg17_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg17_memp, \ - __atg17_old | __atg17_mask, \ -@@ -484,7 +484,7 @@ - __typeof (*(mem)) __atg18_mask = (mask); \ - \ - do \ -- __atg18_old = (*__atg18_memp); \ -+ __atg18_old = (*(volatile __typeof (mem))__atg18_memp); \ - while (__builtin_expect \ - (catomic_compare_and_exchange_bool_acq (__atg18_memp, \ - __atg18_old | __atg18_mask,\ -@@ -500,7 +500,7 @@ - __typeof (*(mem)) __atg19_mask = (mask); \ - \ - do \ -- __atg19_old = (*__atg19_memp); \ -+ __atg19_old = (*(volatile __typeof (mem))__atg19_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg19_memp, \ - __atg19_old | __atg19_mask,\ ---- a/nptl/Makefile -+++ b/nptl/Makefile -@@ -265,9 +265,9 @@ - # Files which must not be linked with libpthread. - tests-nolibpthread = tst-unload - --# This sets the stack resource limit to 1023kb, which is not a multiple --# of the page size since every architecture's page size is > 1k. --tst-oddstacklimit-ENV = ; ulimit -s 1023; -+# This sets the stack resource limit to 8193kb, which is not a multiple -+# of the page size since every architecture's page size is 4096 bytes. -+tst-oddstacklimit-ENV = ; ulimit -s 8193; - - distribute = eintr.c tst-cleanup4aux.c - -@@ -426,6 +426,35 @@ - CFLAGS-tst-cleanupx4.c += -fexceptions - CFLAGS-tst-oncex3.c += -fexceptions - CFLAGS-tst-oncex4.c += -fexceptions -+ -+ldflags-libgcc_s = --as-needed -lgcc_s --no-as-needed -+LDFLAGS-tst-cancelx2 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx4 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx5 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx6 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx7 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx8 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx9 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx10 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx11 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx12 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx13 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx14 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx15 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx16 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx17 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx18 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx20 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx21 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx0 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx1 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx2 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx4 += $(ldflags-libgcc_s) -+LDFLAGS-tst-oncex3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-oncex4 += $(ldflags-libgcc_s) -+ - CFLAGS-tst-align.c += $(stack-align-test-flags) - CFLAGS-tst-align3.c += $(stack-align-test-flags) - CFLAGS-tst-initializers1.c = -W -Wall -Werror ---- a/nptl/pthread_barrier_wait.c -+++ b/nptl/pthread_barrier_wait.c -@@ -64,7 +64,7 @@ - do - lll_futex_wait (&ibarrier->curr_event, event, - ibarrier->private ^ FUTEX_PRIVATE_FLAG); -- while (event == ibarrier->curr_event); -+ while (event == *(volatile unsigned int *)&ibarrier->curr_event); - } - - /* Make sure the init_count is stored locally or in a register. */ ---- a/nptl/sysdeps/pthread/Makefile -+++ b/nptl/sysdeps/pthread/Makefile -@@ -33,7 +33,9 @@ - - ifeq ($(have-forced-unwind),yes) - tests += tst-mqueue8x -+ldflags-libgcc_s = --as-needed -lgcc_s --no-as-needed - CFLAGS-tst-mqueue8x.c += -fexceptions -+LDFLAGS-tst-mqueue8x += $(ldflags-libgcc_s) - endif - endif - ---- a/stdio-common/Makefile -+++ b/stdio-common/Makefile -@@ -82,7 +82,7 @@ - $(SHELL) -e tst-printf.sh $(common-objpfx) '$(run-program-prefix)' - endif - --CFLAGS-vfprintf.c = -Wno-uninitialized -+CFLAGS-vfprintf.c = -Wno-uninitialized -fno-delayed-branch - CFLAGS-vfwprintf.c = -Wno-uninitialized - CFLAGS-tst-printf.c = -Wno-format - CFLAGS-tstdiomisc.c = -Wno-format ---- a/sunrpc/clnt_udp.c -+++ b/sunrpc/clnt_udp.c -@@ -462,7 +462,7 @@ - while (inlen < 0 && errno == EINTR); - if (inlen < 0) - { -- if (errno == EWOULDBLOCK) -+ if (errno == EWOULDBLOCK || errno == EAGAIN) - continue; - cu->cu_error.re_errno = errno; - return (cu->cu_error.re_status = RPC_CANTRECV); diff --git a/packages/glibc/2.15/0023-dl_execstack-PaX-support.patch b/packages/glibc/2.15/0023-dl_execstack-PaX-support.patch deleted file mode 100644 index 7b56549..0000000 --- a/packages/glibc/2.15/0023-dl_execstack-PaX-support.patch +++ /dev/null @@ -1,69 +0,0 @@ - With latest versions of glibc, a lot of apps failed on a PaX enabled - system with: - cannot enable executable stack as shared object requires: Permission denied - - This is due to PaX 'exec-protecting' the stack, and ld.so then trying - to make the stack executable due to some libraries not containing the - PT_GNU_STACK section. Bug #32960. (12 Nov 2003). - - Patch also NPTL. Bug #116086. (20 Dec 2005). - ---- - nptl/allocatestack.c | 3 ++- - sysdeps/unix/sysv/linux/dl-execstack.c | 19 ++++++++++++++++--- - 2 files changed, 18 insertions(+), 4 deletions(-) - ---- a/nptl/allocatestack.c -+++ b/nptl/allocatestack.c -@@ -335,7 +335,8 @@ - # error "Define either _STACK_GROWS_DOWN or _STACK_GROWS_UP" - #endif - if (mprotect (stack, len, PROT_READ | PROT_WRITE | PROT_EXEC) != 0) -- return errno; -+ if (errno != EACCES) /* PAX is enabled */ -+ return errno; - - return 0; - } ---- a/sysdeps/unix/sysv/linux/dl-execstack.c -+++ b/sysdeps/unix/sysv/linux/dl-execstack.c -@@ -63,7 +63,10 @@ - else - # endif - { -- result = errno; -+ if (errno == EACCES) /* PAX is enabled */ -+ result = 0; -+ else -+ result = errno; - goto out; - } - } -@@ -89,7 +92,12 @@ - page -= size; - else - { -- if (errno != ENOMEM) /* Unexpected failure mode. */ -+ if (errno == EACCES) /* PAX is enabled */ -+ { -+ result = 0; -+ goto out; -+ } -+ else if (errno != ENOMEM) /* Unexpected failure mode. */ - { - result = errno; - goto out; -@@ -115,7 +123,12 @@ - page += size; - else - { -- if (errno != ENOMEM) /* Unexpected failure mode. */ -+ if (errno == EACCES) /* PAX is enabled */ -+ { -+ result = 0; -+ goto out; -+ } -+ else if (errno != ENOMEM) /* Unexpected failure mode. */ - { - result = errno; - goto out; diff --git a/packages/glibc/2.15/0024-pre20040117-pt_pax.patch b/packages/glibc/2.15/0024-pre20040117-pt_pax.patch deleted file mode 100644 index 544b3f6..0000000 --- a/packages/glibc/2.15/0024-pre20040117-pt_pax.patch +++ /dev/null @@ -1,35 +0,0 @@ - - ---- - elf/elf.h | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - ---- a/elf/elf.h -+++ b/elf/elf.h -@@ -581,6 +581,7 @@ - #define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */ - #define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */ - #define PT_GNU_RELRO 0x6474e552 /* Read-only after relocation */ -+#define PT_PAX_FLAGS 0x65041580 /* Indicates PaX flag markings */ - #define PT_LOSUNW 0x6ffffffa - #define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */ - #define PT_SUNWSTACK 0x6ffffffb /* Stack segment */ -@@ -594,6 +595,18 @@ - #define PF_X (1 << 0) /* Segment is executable */ - #define PF_W (1 << 1) /* Segment is writable */ - #define PF_R (1 << 2) /* Segment is readable */ -+#define PF_PAGEEXEC (1 << 4) /* Enable PAGEEXEC */ -+#define PF_NOPAGEEXEC (1 << 5) /* Disable PAGEEXEC */ -+#define PF_SEGMEXEC (1 << 6) /* Enable SEGMEXEC */ -+#define PF_NOSEGMEXEC (1 << 7) /* Disable SEGMEXEC */ -+#define PF_MPROTECT (1 << 8) /* Enable MPROTECT */ -+#define PF_NOMPROTECT (1 << 9) /* Disable MPROTECT */ -+#define PF_RANDEXEC (1 << 10) /* Enable RANDEXEC */ -+#define PF_NORANDEXEC (1 << 11) /* Disable RANDEXEC */ -+#define PF_EMUTRAMP (1 << 12) /* Enable EMUTRAMP */ -+#define PF_NOEMUTRAMP (1 << 13) /* Disable EMUTRAMP */ -+#define PF_RANDMMAP (1 << 14) /* Enable RANDMMAP */ -+#define PF_NORANDMMAP (1 << 15) /* Disable RANDMMAP */ - #define PF_MASKOS 0x0ff00000 /* OS-specific */ - #define PF_MASKPROC 0xf0000000 /* Processor-specific */ - diff --git a/packages/glibc/2.15/0025-tests-sandbox-libdl-paths.patch b/packages/glibc/2.15/0025-tests-sandbox-libdl-paths.patch deleted file mode 100644 index 1c4ee59..0000000 --- a/packages/glibc/2.15/0025-tests-sandbox-libdl-paths.patch +++ /dev/null @@ -1,196 +0,0 @@ -when glibc runs its tests, it does so by invoking the local library loader. -in Gentoo, we build/run inside of our "sandbox" which itself is linked against -libdl (so that it can load libraries and pull out symbols). the trouble -is that when you upgrade from an older glibc to the new one, often times -internal symbols change name or abi. this is normally OK as you cannot use -libc.so from say version 2.3.6 but libpthread.so from say version 2.5, so -we always say "keep all of the glibc libraries from the same build". but -when glibc runs its tests, it uses dynamic paths to point to its new local -copies of libraries. if the test doesnt use libdl, then glibc doesnt add -its path, and when sandbox triggers the loading of libdl, glibc does so -from the host system system. this gets us into the case of all libraries -are from the locally compiled version of glibc except for libdl.so. - -Fix by Wormo - -http://bugs.gentoo.org/56898 - ---- - grp/tst_fgetgrent.sh | 3 ++- - iconvdata/run-iconv-test.sh | 2 +- - iconvdata/tst-table.sh | 5 ++++- - intl/tst-codeset.sh | 3 +++ - intl/tst-gettext.sh | 5 ++++- - intl/tst-gettext2.sh | 5 ++++- - intl/tst-translit.sh | 5 ++++- - malloc/tst-mtrace.sh | 5 ++++- - nptl/tst-tls6.sh | 4 ++-- - posix/globtest.sh | 2 +- - posix/tst-getconf.sh | 5 ++++- - posix/wordexp-tst.sh | 5 ++++- - 12 files changed, 37 insertions(+), 12 deletions(-) - ---- a/grp/tst_fgetgrent.sh -+++ b/grp/tst_fgetgrent.sh -@@ -24,7 +24,8 @@ - rtld_installed_name=$1; shift - - testout=${common_objpfx}/grp/tst_fgetgrent.out --library_path=${common_objpfx} -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn - - result=0 - ---- a/iconvdata/run-iconv-test.sh -+++ b/iconvdata/run-iconv-test.sh -@@ -34,7 +34,7 @@ - export GCONV_PATH - - # We have to have some directories in the library path. --LIBPATH=$codir:$codir/iconvdata -+LIBPATH=$codir:$codir/iconvdata:$codir/dlfcn - - # How the start the iconv(1) program. - ICONV='$codir/elf/ld.so --library-path $LIBPATH --inhibit-rpath ${from}.so \ ---- a/iconvdata/tst-table.sh -+++ b/iconvdata/tst-table.sh -@@ -59,8 +59,11 @@ - irreversible=${charset}.irreversible - fi - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # iconv in one direction. --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-table-from ${charset} \ - > ${objpfx}tst-${charset}.table - ---- a/intl/tst-codeset.sh -+++ b/intl/tst-codeset.sh -@@ -37,6 +37,9 @@ - LOCPATH=${common_objpfx}localedata - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - ${common_objpfx}elf/ld.so --library-path $common_objpfx \ - ${objpfx}tst-codeset > ${objpfx}tst-codeset.out - ---- a/intl/tst-gettext.sh -+++ b/intl/tst-gettext.sh -@@ -51,9 +51,12 @@ - LOCPATH=${common_objpfx}localedata - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # Now run the test. - MALLOC_TRACE=$malloc_trace LOCPATH=${objpfx}localedir:$LOCPATH \ --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-gettext > ${objpfx}tst-gettext.out ${objpfx}domaindir - - exit $? ---- a/intl/tst-gettext2.sh -+++ b/intl/tst-gettext2.sh -@@ -65,8 +65,11 @@ - LOCPATH=${objpfx}domaindir - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # Now run the test. --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-gettext2 > ${objpfx}tst-gettext2.out ${objpfx}domaindir && - cmp ${objpfx}tst-gettext2.out - < ${objpfx}tst-translit.out ${objpfx}domaindir - - exit $? ---- a/malloc/tst-mtrace.sh -+++ b/malloc/tst-mtrace.sh -@@ -24,9 +24,12 @@ - status=0 - trap "rm -f ${common_objpfx}malloc/tst-mtrace.leak; exit 1" 1 2 15 - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - MALLOC_TRACE=${common_objpfx}malloc/tst-mtrace.leak \ - LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${common_objpfx}malloc/tst-mtrace || status=1 - - if test $status -eq 0 && test -f ${common_objpfx}malloc/mtrace; then ---- a/nptl/tst-tls6.sh -+++ b/nptl/tst-tls6.sh -@@ -5,8 +5,8 @@ - rtld_installed_name=$1; shift - logfile=$common_objpfx/nptl/tst-tls6.out - --# We have to find libc and nptl --library_path=${common_objpfx}:${common_objpfx}nptl -+# We have to find libc and nptl (also libdl in case sandbox is in use) -+library_path=${common_objpfx}:${common_objpfx}nptl:${common_objpfx}/dlfcn - tst_tls5="${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \ - ${common_objpfx}/nptl/tst-tls5" - ---- a/posix/globtest.sh -+++ b/posix/globtest.sh -@@ -18,7 +18,7 @@ - esac - - # We have to find the libc and the NSS modules. --library_path=${common_objpfx}:${common_objpfx}nss:${common_objpfx}nis:${common_objpfx}db2:${common_objpfx}hesiod -+library_path=${common_objpfx}:${common_objpfx}nss:${common_objpfx}nis:${common_objpfx}db2:${common_objpfx}hesiod:${common_objpfx}/dlfcn - - # Since we use `sort' we must make sure to use the same locale everywhere. - LC_ALL=C ---- a/posix/tst-getconf.sh -+++ b/posix/tst-getconf.sh -@@ -10,7 +10,10 @@ - else - rtld_installed_name=$1; shift - runit() { -- ${elf_objpfx}${rtld_installed_name} --library-path ${common_objpfx} "$@" -+ -+ # make sure libdl is also in path in case sandbox is in use -+ library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ ${elf_objpfx}${rtld_installed_name} --library-path ${library_path} "$@" - } - fi - ---- a/posix/wordexp-tst.sh -+++ b/posix/wordexp-tst.sh -@@ -19,8 +19,11 @@ - " - export IFS - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - failed=0 --${elf_objpfx}${rtld_installed_name} --library-path ${common_objpfx} \ -+${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \ - ${common_objpfx}posix/wordexp-test '$*' > ${testout}1 - cat <<"EOF" | cmp - ${testout}1 >> $logfile || failed=1 - wordexp returned 0 diff --git a/packages/glibc/2.15/0026-dont-build-timezone.patch b/packages/glibc/2.15/0026-dont-build-timezone.patch deleted file mode 100644 index a1442ab..0000000 --- a/packages/glibc/2.15/0026-dont-build-timezone.patch +++ /dev/null @@ -1,17 +0,0 @@ -timezone data has been split into the package sys-libs/timezone-data - ---- - Makeconfig | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/Makeconfig -+++ b/Makeconfig -@@ -958,7 +958,7 @@ - stdlib stdio-common libio malloc string wcsmbs time dirent \ - grp pwd posix io termios resource misc socket sysvipc gmon \ - gnulib iconv iconvdata wctype manual shadow gshadow po argp \ -- crypt nss localedata timezone rt conform debug \ -+ crypt nss localedata rt conform debug \ - $(add-on-subdirs) $(dlfcn) $(binfmt-subdir) - - ifndef avoid-generated diff --git a/packages/glibc/2.15/0027-alpha-xstat.patch b/packages/glibc/2.15/0027-alpha-xstat.patch deleted file mode 100644 index 4fa9517..0000000 --- a/packages/glibc/2.15/0027-alpha-xstat.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- - sysdeps/unix/sysv/linux/kernel-features.h | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -386,6 +386,11 @@ - # define __ASSUME_GETDENTS32_D_TYPE 1 - #endif - -+/* Starting with version 2.6.4, alpha stat64 syscalls are available. */ -+#if __LINUX_KERNEL_VERSION >= 0x020604 && defined __alpha__ -+# define __ASSUME_STAT64_SYSCALL 1 -+#endif -+ - /* Starting with version 2.5.3, the initial location returned by `brk' - after exec is always rounded up to the next page. */ - #if __LINUX_KERNEL_VERSION >= 132355 diff --git a/packages/glibc/2.15/0028-alpha-creat.patch b/packages/glibc/2.15/0028-alpha-creat.patch deleted file mode 100644 index 6ef5278..0000000 --- a/packages/glibc/2.15/0028-alpha-creat.patch +++ /dev/null @@ -1,17 +0,0 @@ -alpha does not have a __NR_creat - -http://bugs.gentoo.org/227275 -http://sourceware.org/bugzilla/show_bug.cgi?id=6650 - ---- - sysdeps/unix/sysv/linux/wordsize-64/creat64.c | 4 ++++ - 1 file changed, 4 insertions(+) - ---- a/sysdeps/unix/sysv/linux/wordsize-64/creat64.c -+++ b/sysdeps/unix/sysv/linux/wordsize-64/creat64.c -@@ -1 +1,5 @@ - /* Defined as alias for the syscall. */ -+#include -+#ifndef __NR_creat -+#include "../../../../../io/creat64.c" -+#endif diff --git a/packages/glibc/2.15/0029-alpha_alpha-add-fdatasync-support.patch b/packages/glibc/2.15/0029-alpha_alpha-add-fdatasync-support.patch deleted file mode 100644 index 9724d4e..0000000 --- a/packages/glibc/2.15/0029-alpha_alpha-add-fdatasync-support.patch +++ /dev/null @@ -1,122 +0,0 @@ -2009-07-25 Aurelien Jarno - - * sysdeps/unix/sysv/linux/kernel-features.h: define - __ASSUME_FDATASYNC. - * sysdeps/unix/sysv/linux/fdatasync.c: New file. - * sysdeps/unix/sysv/linux/Makefile: compile fdatasync.c with - -fexceptions. - * sysdeps/unix/sysv/linux/syscalls.list: Remove fdatasync. - - sysdeps/unix/sysv/linux/Makefile | 1 - sysdeps/unix/sysv/linux/fdatasync.c | 69 ++++++++++++++++++++++++++++++ - sysdeps/unix/sysv/linux/kernel-features.h | 6 ++ - sysdeps/unix/sysv/linux/syscalls.list | 1 - 4 files changed, 76 insertions(+), 1 deletion(-) - ---- a/sysdeps/unix/sysv/linux/Makefile -+++ b/sysdeps/unix/sysv/linux/Makefile -@@ -21,6 +21,7 @@ - setfsuid setfsgid makedev epoll_pwait signalfd \ - eventfd eventfd_read eventfd_write prlimit - -+CFLAGS-fdatasync.c = -fexceptions - CFLAGS-gethostid.c = -fexceptions - CFLAGS-tst-writev.c += "-DARTIFICIAL_LIMIT=0x80000000-__getpagesize()" - ---- /dev/null -+++ b/sysdeps/unix/sysv/linux/fdatasync.c -@@ -0,0 +1,69 @@ -+/* fdatasync -- synchronize at least the data part of a file with -+ the underlying media. Linux version. -+ -+ Copyright (C) 2007 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 -+ 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 -+ -+#if defined __NR_fdatasync && !defined __ASSUME_FDATASYNC -+static int __have_no_fdatasync; -+#endif -+ -+static int -+do_fdatasync (int fd) -+{ -+#ifdef __ASSUME_FDATASYNC -+ return INLINE_SYSCALL (fdatasync, 1, fd); -+#elif defined __NR_fdatasync -+ if (!__builtin_expect (__have_no_fdatasync, 0)) -+ { -+ int result = INLINE_SYSCALL (fdatasync, 1, fd); -+ if (__builtin_expect (result, 0) != -1 || errno != ENOSYS) -+ return result; -+ -+ __have_no_fdatasync = 1; -+ } -+#endif -+ return INLINE_SYSCALL (fsync, 1, fd); -+} -+ -+int -+__fdatasync (int fd) -+{ -+ if (SINGLE_THREAD_P) -+ return do_fdatasync (fd); -+ -+ int oldtype = LIBC_CANCEL_ASYNC (); -+ -+ int result = do_fdatasync (fd); -+ -+ LIBC_CANCEL_RESET (oldtype); -+ -+ return result; -+} -+ -+weak_alias (__fdatasync, fdatasync) -+ ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -459,6 +459,12 @@ - # define __ASSUME_FUTEX_LOCK_PI 1 - #endif - -+/* Support for fsyncdata syscall was added in 2.6.22 on alpha, but it -+ was already present in 2.0 kernels on other architectures. */ -+#if (!defined __alpha || __LINUX_KERNEL_VERSION >= 0x020616) -+# define __ASSUME_FDATASYNC 1 -+#endif -+ - /* Support for utimensat syscall was added in 2.6.22, on SH - only after 2.6.22-rc1. */ - #if __LINUX_KERNEL_VERSION >= 0x020616 \ ---- a/sysdeps/unix/sysv/linux/syscalls.list -+++ b/sysdeps/unix/sysv/linux/syscalls.list -@@ -12,7 +12,6 @@ - epoll_create1 EXTRA epoll_create1 i:i epoll_create1 - epoll_ctl EXTRA epoll_ctl i:iiip epoll_ctl - epoll_wait EXTRA epoll_wait Ci:ipii epoll_wait --fdatasync - fdatasync Ci:i fdatasync - flock - flock i:ii __flock flock - fork - fork i: __libc_fork __fork fork - get_kernel_syms EXTRA get_kernel_syms i:p get_kernel_syms diff --git a/packages/glibc/2.15/0030-ppc-atomic.patch b/packages/glibc/2.15/0030-ppc-atomic.patch deleted file mode 100644 index a38c1c5..0000000 --- a/packages/glibc/2.15/0030-ppc-atomic.patch +++ /dev/null @@ -1,412 +0,0 @@ -sniped from suse - ---- - sysdeps/powerpc/bits/atomic.h | 66 ++++++++++----------- - sysdeps/powerpc/powerpc32/bits/atomic.h | 16 ++--- - sysdeps/powerpc/powerpc64/bits/atomic.h | 98 ++++++++++++++++---------------- - 3 files changed, 90 insertions(+), 90 deletions(-) - ---- a/sysdeps/powerpc/bits/atomic.h -+++ b/sysdeps/powerpc/bits/atomic.h -@@ -85,14 +85,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile ( \ -- "1: lwarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " cmpw %0,%2\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -102,14 +102,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ - " cmpw %0,%2\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -118,12 +118,12 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile ( \ -- "1: lwarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -- " stwcx. %3,0,%2\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ -+ " stwcx. %2,%y1\n" \ - " bne- 1b\n" \ - " " __ARCH_ACQ_INSTR \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -132,11 +132,11 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_REL "\n" \ -- " stwcx. %3,0,%2\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ -+ " stwcx. %2,%y1\n" \ - " bne- 1b" \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -144,12 +144,12 @@ - #define __arch_atomic_exchange_and_add_32(mem, value) \ - ({ \ - __typeof (*mem) __val, __tmp; \ -- __asm __volatile ("1: lwarx %0,0,%3\n" \ -- " add %1,%0,%4\n" \ -- " stwcx. %1,0,%3\n" \ -+ __asm __volatile ("1: lwarx %0,%y2\n" \ -+ " add %1,%0,%3\n" \ -+ " stwcx. %1,%y2\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -157,12 +157,12 @@ - #define __arch_atomic_increment_val_32(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: lwarx %0,0,%2\n" \ -+ __asm __volatile ("1: lwarx %0,%y1\n" \ - " addi %0,%0,1\n" \ -- " stwcx. %0,0,%2\n" \ -+ " stwcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -170,27 +170,27 @@ - #define __arch_atomic_decrement_val_32(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: lwarx %0,0,%2\n" \ -+ __asm __volatile ("1: lwarx %0,%y1\n" \ - " subi %0,%0,1\n" \ -- " stwcx. %0,0,%2\n" \ -+ " stwcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) - - #define __arch_atomic_decrement_if_positive_32(mem) \ - ({ int __val, __tmp; \ -- __asm __volatile ("1: lwarx %0,0,%3\n" \ -+ __asm __volatile ("1: lwarx %0,%y2\n" \ - " cmpwi 0,%0,0\n" \ - " addi %1,%0,-1\n" \ - " ble 2f\n" \ -- " stwcx. %1,0,%3\n" \ -+ " stwcx. %1,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) ---- a/sysdeps/powerpc/powerpc32/bits/atomic.h -+++ b/sysdeps/powerpc/powerpc32/bits/atomic.h -@@ -44,14 +44,14 @@ - ({ \ - unsigned int __tmp; \ - __asm __volatile ( \ -- "1: lwarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -60,14 +60,14 @@ - ({ \ - unsigned int __tmp; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) ---- a/sysdeps/powerpc/powerpc64/bits/atomic.h -+++ b/sysdeps/powerpc/powerpc64/bits/atomic.h -@@ -44,14 +44,14 @@ - ({ \ - unsigned int __tmp, __tmp2; \ - __asm __volatile (" clrldi %1,%1,32\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y2" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%1,%0\n" \ - " bne 2f\n" \ -- " stwcx. %4,0,%2\n" \ -+ " stwcx. %4,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp), "=r" (__tmp2) \ -- : "b" (mem), "1" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "=r" (__tmp2), "+Z" (*(mem)) \ -+ : "1" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -61,14 +61,14 @@ - unsigned int __tmp, __tmp2; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ - " clrldi %1,%1,32\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y2" MUTEX_HINT_REL "\n" \ - " subf. %0,%1,%0\n" \ - " bne 2f\n" \ -- " stwcx. %4,0,%2\n" \ -+ " stwcx. %4,%y2\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp), "=r" (__tmp2) \ -- : "b" (mem), "1" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "=r" (__tmp2), "+Z" (*(mem)) \ -+ : "1" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -82,14 +82,14 @@ - ({ \ - unsigned long __tmp; \ - __asm __volatile ( \ -- "1: ldarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -98,14 +98,14 @@ - ({ \ - unsigned long __tmp; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_REL "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -115,14 +115,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile ( \ -- "1: ldarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " cmpd %0,%2\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -132,14 +132,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ - " cmpd %0,%2\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -148,12 +148,12 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -- " stdcx. %3,0,%2\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ -+ " stdcx. %2,%y1\n" \ - " bne- 1b\n" \ - " " __ARCH_ACQ_INSTR \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -162,11 +162,11 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_REL "\n" \ -- " stdcx. %3,0,%2\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ -+ " stdcx. %2,%y1\n" \ - " bne- 1b" \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -174,12 +174,12 @@ - #define __arch_atomic_exchange_and_add_64(mem, value) \ - ({ \ - __typeof (*mem) __val, __tmp; \ -- __asm __volatile ("1: ldarx %0,0,%3\n" \ -- " add %1,%0,%4\n" \ -- " stdcx. %1,0,%3\n" \ -+ __asm __volatile ("1: ldarx %0,%y2\n" \ -+ " add %1,%0,%3\n" \ -+ " stdcx. %1,%y2\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -187,12 +187,12 @@ - #define __arch_atomic_increment_val_64(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: ldarx %0,0,%2\n" \ -+ __asm __volatile ("1: ldarx %0,%y1\n" \ - " addi %0,%0,1\n" \ -- " stdcx. %0,0,%2\n" \ -+ " stdcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -200,27 +200,27 @@ - #define __arch_atomic_decrement_val_64(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: ldarx %0,0,%2\n" \ -+ __asm __volatile ("1: ldarx %0,%y1\n" \ - " subi %0,%0,1\n" \ -- " stdcx. %0,0,%2\n" \ -+ " stdcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) - - #define __arch_atomic_decrement_if_positive_64(mem) \ - ({ int __val, __tmp; \ -- __asm __volatile ("1: ldarx %0,0,%3\n" \ -+ __asm __volatile ("1: ldarx %0,%y2\n" \ - " cmpdi 0,%0,0\n" \ - " addi %1,%0,-1\n" \ - " ble 2f\n" \ -- " stdcx. %1,0,%3\n" \ -+ " stdcx. %1,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) diff --git a/packages/glibc/2.15/0031-mips_shn_undef-hack.patch b/packages/glibc/2.15/0031-mips_shn_undef-hack.patch deleted file mode 100644 index a12c977..0000000 --- a/packages/glibc/2.15/0031-mips_shn_undef-hack.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- - elf/dl-lookup.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/elf/dl-lookup.c -+++ b/elf/dl-lookup.c -@@ -300,6 +300,12 @@ - /* FALLTHROUGH */ - case STB_GLOBAL: - success: -+#ifdef __mips__ -+ /* HACK: MIPS marks its lazy evaluation stubs with SHN_UNDEF -+ symbols, we skip them. */ -+ if (sym->st_shndx == SHN_UNDEF) -+ break; -+#endif - /* Global definition. Just what we need. */ - result->s = sym; - result->m = (struct link_map *) map; diff --git a/packages/glibc/2.15/0032-alpha-atfcts.patch b/packages/glibc/2.15/0032-alpha-atfcts.patch deleted file mode 100644 index 2eff918..0000000 --- a/packages/glibc/2.15/0032-alpha-atfcts.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- - sysdeps/unix/sysv/linux/kernel-features.h | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -437,7 +437,8 @@ - the code. On PPC they were introduced in 2.6.17-rc1, - on SH in 2.6.19-rc1. */ - #if __LINUX_KERNEL_VERSION >= 0x020611 \ -- && (!defined __sh__ || __LINUX_KERNEL_VERSION >= 0x020613) -+ && (!defined __sh__ || __LINUX_KERNEL_VERSION >= 0x020613) \ -+ && (!defined __alpha__) - # define __ASSUME_ATFCTS 1 - #endif - diff --git a/packages/glibc/2.15/0033-syslog.patch b/packages/glibc/2.15/0033-syslog.patch deleted file mode 100644 index a2d9722..0000000 --- a/packages/glibc/2.15/0033-syslog.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- - misc/syslog.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/misc/syslog.c -+++ b/misc/syslog.c -@@ -152,7 +152,7 @@ - #define INTERNALLOG LOG_ERR|LOG_CONS|LOG_PERROR|LOG_PID - /* Check for invalid bits. */ - if (pri & ~(LOG_PRIMASK|LOG_FACMASK)) { -- syslog(INTERNALLOG, -+ __syslog(INTERNALLOG, - "syslog: unknown facility/priority: %x", pri); - pri &= LOG_PRIMASK|LOG_FACMASK; - } diff --git a/packages/glibc/2.15/0034-debug-readlink_chk-readklinkat_chk.patch b/packages/glibc/2.15/0034-debug-readlink_chk-readklinkat_chk.patch deleted file mode 100644 index 0b930f3..0000000 --- a/packages/glibc/2.15/0034-debug-readlink_chk-readklinkat_chk.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- - debug/readlink_chk.c | 2 +- - debug/readlinkat_chk.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/debug/readlink_chk.c -+++ b/debug/readlink_chk.c -@@ -25,7 +25,7 @@ - - - ssize_t --__readlink_chk (const char *path, void *buf, size_t len, size_t buflen) -+__readlink_chk (const char *path, char *buf, size_t len, size_t buflen) - { - if (len > buflen) - __chk_fail (); ---- a/debug/readlinkat_chk.c -+++ b/debug/readlinkat_chk.c -@@ -21,7 +21,7 @@ - - - ssize_t --__readlinkat_chk (int fd, const char *path, void *buf, size_t len, -+__readlinkat_chk (int fd, const char *path, char *buf, size_t len, - size_t buflen) - { - if (len > buflen) diff --git a/packages/glibc/2.15/0035-cpuid-include.patch b/packages/glibc/2.15/0035-cpuid-include.patch deleted file mode 100644 index e6d656a..0000000 --- a/packages/glibc/2.15/0035-cpuid-include.patch +++ /dev/null @@ -1,551 +0,0 @@ -[As applied to 2.15] - -This patch fixes another configure test issue when bootstrapping. -sysdeps/i386/configure.in uses the obsolete AC_HEADER_CHECK macro to -test for cpuid.h, and that macro tries to include various other -standard headers (which come from the library, unlike cpuid.h which -comes from the compiler, so aren't available when bootstrapping) in -the test code it compiles. This patch changes the code to use -AC_CHECK_HEADER, with the fourth argument used to prevent any default -includes being used in the test. - -Tested x86_64 (native). - -2012-03-07 Joseph Myers - - * sysdeps/i386/configure.in (cpuid.h): Use AC_CHECK_HEADER with no - default includes instead of AC_HEADER_CHECK. - * sysdeps/i386/configure: Regenerated. - -Origin: http://sourceware.org/ml/libc-alpha/2012-03/msg00177.html - ---- - sysdeps/i386/configure | 480 ---------------------------------------------- - sysdeps/i386/configure.in | 5 - 2 files changed, 4 insertions(+), 481 deletions(-) - ---- a/sysdeps/i386/configure -+++ b/sysdeps/i386/configure -@@ -16,23 +16,6 @@ - as_fn_set_status $1 - exit $1 - } # as_fn_exit --# as_fn_arith ARG... --# ------------------ --# Perform arithmetic evaluation on the ARGs, and store the result in the --# global $as_val. Take advantage of shells that can avoid forks. The arguments --# must be portable across $(()) and expr. --if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : -- eval 'as_fn_arith () -- { -- as_val=$(( $* )) -- }' --else -- as_fn_arith () -- { -- as_val=`expr "$@" || test $? -eq 1` -- } --fi # as_fn_arith -- - if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -@@ -97,42 +80,6 @@ - exit - } - --# Factoring default headers for most tests. --ac_includes_default="\ --#include --#ifdef HAVE_SYS_TYPES_H --# include --#endif --#ifdef HAVE_SYS_STAT_H --# include --#endif --#ifdef STDC_HEADERS --# include --# include --#else --# ifdef HAVE_STDLIB_H --# include --# endif --#endif --#ifdef HAVE_STRING_H --# if !defined STDC_HEADERS && defined HAVE_MEMORY_H --# include --# endif --# include --#endif --#ifdef HAVE_STRINGS_H --# include --#endif --#ifdef HAVE_INTTYPES_H --# include --#endif --#ifdef HAVE_STDINT_H --# include --#endif --#ifdef HAVE_UNISTD_H --# include --#endif" -- - - # ac_fn_c_try_compile LINENO - # -------------------------- -@@ -172,172 +119,6 @@ - - } # ac_fn_c_try_compile - --# ac_fn_c_try_cpp LINENO --# ---------------------- --# Try to preprocess conftest.$ac_ext, and return whether this succeeded. --ac_fn_c_try_cpp () --{ -- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack -- if { { ac_try="$ac_cpp conftest.$ac_ext" --case "(($ac_try" in -- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; -- *) ac_try_echo=$ac_try;; --esac --eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" --$as_echo "$ac_try_echo"; } >&5 -- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err -- ac_status=$? -- if test -s conftest.err; then -- grep -v '^ *+' conftest.err >conftest.er1 -- cat conftest.er1 >&5 -- mv -f conftest.er1 conftest.err -- fi -- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; } > conftest.i && { -- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || -- test ! -s conftest.err -- }; then : -- ac_retval=0 --else -- $as_echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -- ac_retval=1 --fi -- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno -- as_fn_set_status $ac_retval -- --} # ac_fn_c_try_cpp -- --# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES --# ------------------------------------------------------- --# Tests whether HEADER exists, giving a warning if it cannot be compiled using --# the include files in INCLUDES and setting the cache variable VAR --# accordingly. --ac_fn_c_check_header_mongrel () --{ -- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack -- if eval \${$3+:} false; then : -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 --$as_echo_n "checking for $2... " >&6; } --if eval \${$3+:} false; then : -- $as_echo_n "(cached) " >&6 --fi --eval ac_res=\$$3 -- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 --$as_echo "$ac_res" >&6; } --else -- # Is the header compilable? --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 --$as_echo_n "checking $2 usability... " >&6; } --cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --$4 --#include <$2> --_ACEOF --if ac_fn_c_try_compile "$LINENO"; then : -- ac_header_compiler=yes --else -- ac_header_compiler=no --fi --rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 --$as_echo "$ac_header_compiler" >&6; } -- --# Is the header present? --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 --$as_echo_n "checking $2 presence... " >&6; } --cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --#include <$2> --_ACEOF --if ac_fn_c_try_cpp "$LINENO"; then : -- ac_header_preproc=yes --else -- ac_header_preproc=no --fi --rm -f conftest.err conftest.i conftest.$ac_ext --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 --$as_echo "$ac_header_preproc" >&6; } -- --# So? What about this header? --case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( -- yes:no: ) -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 --$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 --$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} -- ;; -- no:yes:* ) -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 --$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 --$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 --$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 --$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} -- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 --$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} -- ;; --esac -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 --$as_echo_n "checking for $2... " >&6; } --if eval \${$3+:} false; then : -- $as_echo_n "(cached) " >&6 --else -- eval "$3=\$ac_header_compiler" --fi --eval ac_res=\$$3 -- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 --$as_echo "$ac_res" >&6; } --fi -- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno -- --} # ac_fn_c_check_header_mongrel -- --# ac_fn_c_try_run LINENO --# ---------------------- --# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes --# that executables *can* be run. --ac_fn_c_try_run () --{ -- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack -- if { { ac_try="$ac_link" --case "(($ac_try" in -- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; -- *) ac_try_echo=$ac_try;; --esac --eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" --$as_echo "$ac_try_echo"; } >&5 -- (eval "$ac_link") 2>&5 -- ac_status=$? -- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' -- { { case "(($ac_try" in -- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; -- *) ac_try_echo=$ac_try;; --esac --eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" --$as_echo "$ac_try_echo"; } >&5 -- (eval "$ac_try") 2>&5 -- ac_status=$? -- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; }; }; then : -- ac_retval=0 --else -- $as_echo "$as_me: program exited with status $ac_status" >&5 -- $as_echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -- ac_retval=$ac_status --fi -- rm -rf conftest.dSYM conftest_ipa8_conftest.oo -- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno -- as_fn_set_status $ac_retval -- --} # ac_fn_c_try_run -- - # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES - # ------------------------------------------------------- - # Tests whether HEADER exists and can be compiled using the include files in -@@ -372,267 +153,8 @@ - # Local configure fragment for sysdeps/i386. - - -- --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 --$as_echo_n "checking for grep that handles long lines and -e... " >&6; } --if ${ac_cv_path_GREP+:} false; then : -- $as_echo_n "(cached) " >&6 --else -- if test -z "$GREP"; then -- ac_path_GREP_found=false -- # Loop through the user's path and test for each of PROGNAME-LIST -- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_prog in grep ggrep; do -- for ac_exec_ext in '' $ac_executable_extensions; do -- ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" -- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue --# Check for GNU ac_path_GREP and select it if it is found. -- # Check for GNU $ac_path_GREP --case `"$ac_path_GREP" --version 2>&1` in --*GNU*) -- ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; --*) -- ac_count=0 -- $as_echo_n 0123456789 >"conftest.in" -- while : -- do -- cat "conftest.in" "conftest.in" >"conftest.tmp" -- mv "conftest.tmp" "conftest.in" -- cp "conftest.in" "conftest.nl" -- $as_echo 'GREP' >> "conftest.nl" -- "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break -- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break -- as_fn_arith $ac_count + 1 && ac_count=$as_val -- if test $ac_count -gt ${ac_path_GREP_max-0}; then -- # Best one so far, save it but keep looking for a better one -- ac_cv_path_GREP="$ac_path_GREP" -- ac_path_GREP_max=$ac_count -- fi -- # 10*(2^10) chars as input seems more than enough -- test $ac_count -gt 10 && break -- done -- rm -f conftest.in conftest.tmp conftest.nl conftest.out;; --esac -- -- $ac_path_GREP_found && break 3 -- done -- done -- done --IFS=$as_save_IFS -- if test -z "$ac_cv_path_GREP"; then -- as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 -- fi --else -- ac_cv_path_GREP=$GREP --fi -- --fi --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 --$as_echo "$ac_cv_path_GREP" >&6; } -- GREP="$ac_cv_path_GREP" -- -- --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 --$as_echo_n "checking for egrep... " >&6; } --if ${ac_cv_path_EGREP+:} false; then : -- $as_echo_n "(cached) " >&6 --else -- if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 -- then ac_cv_path_EGREP="$GREP -E" -- else -- if test -z "$EGREP"; then -- ac_path_EGREP_found=false -- # Loop through the user's path and test for each of PROGNAME-LIST -- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_prog in egrep; do -- for ac_exec_ext in '' $ac_executable_extensions; do -- ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" -- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue --# Check for GNU ac_path_EGREP and select it if it is found. -- # Check for GNU $ac_path_EGREP --case `"$ac_path_EGREP" --version 2>&1` in --*GNU*) -- ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; --*) -- ac_count=0 -- $as_echo_n 0123456789 >"conftest.in" -- while : -- do -- cat "conftest.in" "conftest.in" >"conftest.tmp" -- mv "conftest.tmp" "conftest.in" -- cp "conftest.in" "conftest.nl" -- $as_echo 'EGREP' >> "conftest.nl" -- "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break -- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break -- as_fn_arith $ac_count + 1 && ac_count=$as_val -- if test $ac_count -gt ${ac_path_EGREP_max-0}; then -- # Best one so far, save it but keep looking for a better one -- ac_cv_path_EGREP="$ac_path_EGREP" -- ac_path_EGREP_max=$ac_count -- fi -- # 10*(2^10) chars as input seems more than enough -- test $ac_count -gt 10 && break -- done -- rm -f conftest.in conftest.tmp conftest.nl conftest.out;; --esac -- -- $ac_path_EGREP_found && break 3 -- done -- done -- done --IFS=$as_save_IFS -- if test -z "$ac_cv_path_EGREP"; then -- as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 -- fi --else -- ac_cv_path_EGREP=$EGREP --fi -- -- fi --fi --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 --$as_echo "$ac_cv_path_EGREP" >&6; } -- EGREP="$ac_cv_path_EGREP" -- -- --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 --$as_echo_n "checking for ANSI C header files... " >&6; } --if ${ac_cv_header_stdc+:} false; then : -- $as_echo_n "(cached) " >&6 --else -- cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --#include --#include --#include --#include -- --int --main () --{ -- -- ; -- return 0; --} --_ACEOF --if ac_fn_c_try_compile "$LINENO"; then : -- ac_cv_header_stdc=yes --else -- ac_cv_header_stdc=no --fi --rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -- --if test $ac_cv_header_stdc = yes; then -- # SunOS 4.x string.h does not declare mem*, contrary to ANSI. -- cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --#include -- --_ACEOF --if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -- $EGREP "memchr" >/dev/null 2>&1; then : -- --else -- ac_cv_header_stdc=no --fi --rm -f conftest* -- --fi -- --if test $ac_cv_header_stdc = yes; then -- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. -- cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --#include -- --_ACEOF --if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -- $EGREP "free" >/dev/null 2>&1; then : -- --else -- ac_cv_header_stdc=no --fi --rm -f conftest* -- --fi -- --if test $ac_cv_header_stdc = yes; then -- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. -- if test "$cross_compiling" = yes; then : -- : --else -- cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ --#include --#include --#if ((' ' & 0x0FF) == 0x020) --# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') --# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) --#else --# define ISLOWER(c) \ -- (('a' <= (c) && (c) <= 'i') \ -- || ('j' <= (c) && (c) <= 'r') \ -- || ('s' <= (c) && (c) <= 'z')) --# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) --#endif -- --#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) --int --main () --{ -- int i; -- for (i = 0; i < 256; i++) -- if (XOR (islower (i), ISLOWER (i)) -- || toupper (i) != TOUPPER (i)) -- return 2; -- return 0; --} --_ACEOF --if ac_fn_c_try_run "$LINENO"; then : -- --else -- ac_cv_header_stdc=no --fi --rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ -- conftest.$ac_objext conftest.beam conftest.$ac_ext --fi -- --fi --fi --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 --$as_echo "$ac_cv_header_stdc" >&6; } --if test $ac_cv_header_stdc = yes; then -- --$as_echo "#define STDC_HEADERS 1" >>confdefs.h -- --fi -- --# On IRIX 5.3, sys/types and inttypes.h are conflicting. --for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ -- inttypes.h stdint.h unistd.h --do : -- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` --ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default -+ac_fn_c_check_header_compile "$LINENO" "cpuid.h" "ac_cv_header_cpuid_h" "/* No default includes. */ - " --if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : -- cat >>confdefs.h <<_ACEOF --#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 --_ACEOF -- --fi -- --done -- -- --ac_fn_c_check_header_mongrel "$LINENO" "cpuid.h" "ac_cv_header_cpuid_h" "$ac_includes_default" - if test "x$ac_cv_header_cpuid_h" = xyes; then : - - else ---- a/sysdeps/i386/configure.in -+++ b/sysdeps/i386/configure.in -@@ -1,8 +1,9 @@ - GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. - # Local configure fragment for sysdeps/i386. - --AC_HEADER_CHECK([cpuid.h], , -- [AC_MSG_ERROR([gcc must provide the header])]) -+AC_CHECK_HEADER([cpuid.h], , -+ [AC_MSG_ERROR([gcc must provide the header])], -+ [/* No default includes. */]) - - AC_CACHE_CHECK(if -g produces usable source locations for assembler-with-cpp, - libc_cv_cpp_asm_debuginfo, [dnl diff --git a/packages/glibc/2.15/0036-asm-i686.patch b/packages/glibc/2.15/0036-asm-i686.patch deleted file mode 100644 index ea3c88a..0000000 --- a/packages/glibc/2.15/0036-asm-i686.patch +++ /dev/null @@ -1,52 +0,0 @@ -Submitted By: Matt Burgess -Date: 2010-04-18 -Initial Package Version: 2.11.1 -Upstream Status: Not Submitted -Origin: http://www.eglibc.org/archives/patches/msg00073.html -Description: Fixes the following build problem with GCC-4.5.0: - -/mnt/lfs/sources/libc-build/math/s_frexp.os.dt -MT /mnt/lfs/sources/libc-build/math/s_frexp.os -./sysdeps/i386/fpu/s_frexp.S: Assembler messages: -./sysdeps/i386/fpu/s_frexp.S:66: Error: invalid identifier for ".ifdef" -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1' -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1' -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1' -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `.' -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1' -./sysdeps/i386/fpu/s_frexp.S:66: Error: expected comma after name `' in .size directive -./sysdeps/i386/fpu/s_frexp.S:66: Error: ".endif" without ".if" -./sysdeps/i386/fpu/s_frexp.S:66: Error: junk `.get_pc_thunk.dx' after expression -make[2]: *** [/mnt/lfs/sources/libc-build/math/s_frexp.os] Error 1 - ---- - nptl/sysdeps/pthread/pt-initfini.c | 5 +++++ - sysdeps/unix/sysv/linux/i386/sysdep.h | 4 ++++ - 2 files changed, 9 insertions(+) - ---- a/nptl/sysdeps/pthread/pt-initfini.c -+++ b/nptl/sysdeps/pthread/pt-initfini.c -@@ -45,6 +45,11 @@ - /* Embed an #include to pull in the alignment and .end directives. */ - asm ("\n#include \"defs.h\""); - -+asm ("\n#if defined __i686 && defined __ASSEMBLER__"); -+asm ("\n#undef __i686"); -+asm ("\n#define __i686 __i686"); -+asm ("\n#endif"); -+ - /* The initial common code ends here. */ - asm ("\n/*@HEADER_ENDS*/"); - ---- a/sysdeps/unix/sysv/linux/i386/sysdep.h -+++ b/sysdeps/unix/sysv/linux/i386/sysdep.h -@@ -29,6 +29,10 @@ - #include - #include - -+#if defined __i686 && defined __ASSEMBLER__ -+#undef __i686 -+#define __i686 __i686 -+#endif - - /* For Linux we can use the system call table in the header file - /usr/include/asm/unistd.h diff --git a/packages/glibc/2.15/0037-fix-rpc_parse-format.patch b/packages/glibc/2.15/0037-fix-rpc_parse-format.patch deleted file mode 100644 index 341d541..0000000 --- a/packages/glibc/2.15/0037-fix-rpc_parse-format.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 5874510faaf3cbd0bb112aaacab9f225002beed1 -Author: Joseph Myers -Date: Tue Nov 8 23:44:51 2016 +0000 - - Fix rpcgen buffer overrun (bug 20790). - - Building with GCC 7 produces an error building rpcgen: - - rpc_parse.c: In function 'get_prog_declaration': - rpc_parse.c:543:25: error: may write a terminating nul past the end of the destination [-Werror=format-length=] - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ~~~~^ - rpc_parse.c:543:5: note: format output between 5 and 14 bytes into a destination of size 10 - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - That buffer overrun is for the case where the .x file declares a - program with a million arguments. The strcpy two lines above can - generate a buffer overrun much more simply for a long argument name. - - The limit on length of line read by rpcgen (MAXLINESIZE == 1024) - provides a bound on the buffer size needed, so this patch just changes - the buffer size to MAXLINESIZE to avoid both possible buffer - overruns. A testcase is added that rpcgen does not crash with a - 500-character argument name, where it previously crashed. - - It would not at all surprise me if there are many other ways of - crashing rpcgen with either valid or invalid input; fuzz testing would - likely find various such bugs, though I don't think they are that - important to fix (rpcgen is not that likely to be used with untrusted - .x files as input). (As well as fuzz-findable bugs there are probably - also issues when various int variables get overflowed on very large - input.) The test infrastructure for rpcgen-not-crashing tests would - need extending if tests are to be added for cases where rpcgen should - produce an error, as opposed to cases where it should succeed. - - Tested for x86_64 and x86. - - [BZ #20790] - * sunrpc/rpc_parse.c (get_prog_declaration): Increase buffer size - to MAXLINESIZE. - * sunrpc/bug20790.x: New file. - * sunrpc/Makefile [$(run-built-tests) = yes] (rpcgen-tests): New - variable. - [$(run-built-tests) = yes] (tests-special): Add $(rpcgen-tests). - [$(run-built-tests) = yes] ($(rpcgen-tests)): New rule. - ---- - sunrpc/rpc_parse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sunrpc/rpc_parse.c -+++ b/sunrpc/rpc_parse.c -@@ -521,7 +521,7 @@ - get_prog_declaration (declaration * dec, defkind dkind, int num /* arg number */ ) - { - token tok; -- char name[10]; /* argument name */ -+ char name[MAXLINESIZE]; /* argument name */ - - if (dkind == DEF_PROGRAM) - { diff --git a/packages/glibc/2.15/0038-nis-bogus-conditional.patch b/packages/glibc/2.15/0038-nis-bogus-conditional.patch deleted file mode 100644 index 732b859..0000000 --- a/packages/glibc/2.15/0038-nis-bogus-conditional.patch +++ /dev/null @@ -1,64 +0,0 @@ -commit f88759ea9bd3c8d8fef28f123ba9767cb0e421a3 -Author: Joseph Myers -Date: Wed Dec 21 23:44:01 2016 +0000 - - Fix nss_nisplus build with mainline GCC (bug 20978). - - glibc build with current mainline GCC fails because - nis/nss_nisplus/nisplus-alias.c contains code - - if (name != NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; - } - - char buf[strlen (name) + 9 + tablename_len]; - - producing an error about strlen being called on a pointer that is - always NULL (and a subsequent use of that pointer with a %s format in - snprintf). - - As Andreas noted, the bogus conditional comes from a 1997 change: - - - if (name == NULL || strlen(name) > 8) - - return NSS_STATUS_NOTFOUND; - - else - + if (name != NULL || strlen(name) <= 8) - - So the intention is clearly to return an error for NULL name. - - This patch duly inverts the sense of the conditional. It fixes the - build with GCC mainline, and passes usual glibc testsuite testing for - x86_64. However, I have not tried any actual substantive nisplus - testing, do not have an environment for such testing, and do not know - whether it is possible that strlen (name) or tablename_len might be - large so that the VLA for buf is actually a security issue. However, - if it is a security issue, there are plenty of other similar instances - in the nisplus code (that haven't been hidden by a bogus comparison - with NULL) - and nis_table.c:__create_ib_request uses strdupa on the - string passed to nis_list, so a local fix in the caller wouldn't - suffice anyway (see bug 20987). (Calls to strdupa and other such - macros that use alloca must be considered equally questionable - regarding stack overflow issues as direct calls to alloca and VLA - declarations.) - - [BZ #20978] - * nis/nss_nisplus/nisplus-alias.c (_nss_nisplus_getaliasbyname_r): - Compare name == NULL, not name != NULL. - ---- - nis/nss_nisplus/nisplus-alias.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/nis/nss_nisplus/nisplus-alias.c -+++ b/nis/nss_nisplus/nisplus-alias.c -@@ -293,7 +293,7 @@ - return status; - } - -- if (name != NULL) -+ if (name == NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; diff --git a/packages/glibc/2.15/0039-try-link-static.patch b/packages/glibc/2.15/0039-try-link-static.patch deleted file mode 100644 index 15d4d25..0000000 --- a/packages/glibc/2.15/0039-try-link-static.patch +++ /dev/null @@ -1,174 +0,0 @@ -[Patch modified to apply to 2.15] - -commit 07037eeb43ca1e0ac2802e3a1492cecf869c63c6 -Author: Joseph Myers -Date: Thu Mar 8 00:17:27 2012 +0000 - - Fix .ctors/.dtors header configure test for bootstrapping. - ---- - aclocal.m4 | 14 ++++++++++++++ - configure | 57 ++++++++++++++++++++++++++++++--------------------------- - configure.in | 27 ++++++++++----------------- - 3 files changed, 54 insertions(+), 44 deletions(-) - ---- a/aclocal.m4 -+++ b/aclocal.m4 -@@ -114,3 +114,17 @@ - [LIBC_PROG_FOO_GNU($LD, libc_cv_prog_ld_gnu=yes, libc_cv_prog_ld_gnu=no)]) - gnu_ld=$libc_cv_prog_ld_gnu - ]) -+ -+dnl Run a static link test with -nostdlib -nostartfiles. -+dnl LIBC_TRY_LINK_STATIC([code], [action-if-true], [action-if-false]) -+AC_DEFUN([LIBC_TRY_LINK_STATIC], -+[cat > conftest.c <&AS_MESSAGE_LOG_FD])], -+ [$2], [$3]) -+rm -f conftest*]) ---- a/configure -+++ b/configure -@@ -6147,29 +6147,32 @@ - if ${libc_cv_initfini_array+:} false; then : - $as_echo_n "(cached) " >&6 - else -- cat > conftest.c < conftest.c <&5 - (eval $ac_try) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; }; } -- then -- if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then -- libc_cv_initfini_array=yes -- else -- libc_cv_initfini_array=no -- fi -+ test $ac_status = 0; }; }; then : -+ if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then -+ libc_cv_initfini_array=yes - else - libc_cv_initfini_array=no - fi -- rm -f conftest* -+else -+ libc_cv_initfini_array=no -+fi -+rm -f conftest* -+ - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_initfini_array" >&5 - $as_echo "$libc_cv_initfini_array" >&6; } -@@ -6183,21 +6186,22 @@ - $as_echo_n "(cached) " >&6 - else - libc_cv_ctors_header=yes -- cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; }; then : - if $READELF -WS conftest$ac_exeext | $AWK ' - { gsub(/\[ */, "[") } - $2 == ".ctors" || $2 == ".dtors" { -@@ -6219,8 +6223,7 @@ - as_fn_error $? "missing __attribute__ ((constructor)) support??" "$LINENO" 5 - - fi --rm -f core conftest.err conftest.$ac_objext \ -- conftest$ac_exeext conftest.$ac_ext -+rm -f conftest* - - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_ctors_header" >&5 ---- a/configure.in -+++ b/configure.in -@@ -1439,24 +1439,17 @@ - - AC_CACHE_CHECK(for .preinit_array/.init_array/.fini_array support, - libc_cv_initfini_array, [dnl -- cat > conftest.c <&AS_MESSAGE_LOG_FD]) -- then -- if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then -- libc_cv_initfini_array=yes -- else -- libc_cv_initfini_array=no -- fi -+], -+ [if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then -+ libc_cv_initfini_array=yes - else - libc_cv_initfini_array=no -- fi -- rm -f conftest*]) -+ fi], -+ [libc_cv_initfini_array=no]) -+]) - if test $libc_cv_initfini_array != yes; then - AC_MSG_ERROR([Need linker with .init_array/.fini_array support.]) - fi -@@ -1464,9 +1457,9 @@ - AC_CACHE_CHECK(whether to use .ctors/.dtors header and trailer, - libc_cv_ctors_header, [dnl - libc_cv_ctors_header=yes -- AC_TRY_LINK([], [ --__attribute__ ((constructor)) void ctor (void) { puts("ctor"); } --__attribute__ ((destructor)) void dtor (void) { puts("dtor"); } -+ LIBC_TRY_LINK_STATIC([ -+__attribute__ ((constructor)) void ctor (void) { asm (""); } -+__attribute__ ((destructor)) void dtor (void) { asm (""); } - ], - [dnl - AS_IF([$READELF -WS conftest$ac_exeext | $AWK ' diff --git a/packages/glibc/2.15/0040-builtin_expect.patch b/packages/glibc/2.15/0040-builtin_expect.patch deleted file mode 100644 index 4112bb9..0000000 --- a/packages/glibc/2.15/0040-builtin_expect.patch +++ /dev/null @@ -1,85 +0,0 @@ -[As applied to 2.15] - -commit 3857022a761ea7251f8e5c0e45d382ebc3e34cf9 -Author: Ulrich Drepper -Date: Sun Jan 8 09:21:09 2012 -0500 - - No need for test for __builtin_expect - ---- - configure | 32 -------------------------------- - configure.in | 22 ---------------------- - 2 files changed, 54 deletions(-) - ---- a/configure -+++ b/configure -@@ -7185,38 +7185,6 @@ - fi - fi - --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for __builtin_expect" >&5 --$as_echo_n "checking for __builtin_expect... " >&6; } --if ${libc_cv_gcc_builtin_expect+:} false; then : -- $as_echo_n "(cached) " >&6 --else -- cat > conftest.c <&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; }; }; then -- libc_cv_gcc_builtin_expect=yes --else -- libc_cv_gcc_builtin_expect=no --fi --rm -f conftest* --fi --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_gcc_builtin_expect" >&5 --$as_echo "$libc_cv_gcc_builtin_expect" >&6; } --if test "$libc_cv_gcc_builtin_expect" = no; then -- as_fn_error $? "support for __builtin_expect needed" "$LINENO" 5 --fi -- - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __builtin_memset" >&5 - $as_echo_n "checking for __builtin_memset... " >&6; } - if ${libc_cv_gcc_builtin_memset+:} false; then : ---- a/configure.in -+++ b/configure.in -@@ -2098,28 +2098,6 @@ - fi - fi - --dnl Check whether compiler understands __builtin_expect. --AC_CACHE_CHECK(for __builtin_expect, libc_cv_gcc_builtin_expect, --[cat > conftest.c <&AS_MESSAGE_LOG_FD]); then -- libc_cv_gcc_builtin_expect=yes --else -- libc_cv_gcc_builtin_expect=no --fi --rm -f conftest*]) --if test "$libc_cv_gcc_builtin_expect" = no; then -- AC_MSG_ERROR([support for __builtin_expect needed]) --fi -- - AC_CACHE_CHECK(for __builtin_memset, libc_cv_gcc_builtin_memset, [dnl - cat > conftest.c <<\EOF - void zero (void *x) diff --git a/packages/glibc/2.15/0041-gcc_s-suffix.patch b/packages/glibc/2.15/0041-gcc_s-suffix.patch deleted file mode 100644 index 74f29d8..0000000 --- a/packages/glibc/2.15/0041-gcc_s-suffix.patch +++ /dev/null @@ -1,111 +0,0 @@ -[As applied to 2.15] -commit 3a533ca370725b68b516e6b74adf4727d17ed28a -Author: Joseph Myers -Date: Tue Apr 24 10:22:45 2012 +0000 - - Don't handle libgcc_s suffixes. - ---- - Makeconfig | 2 +- - config.make.in | 1 - - configure | 21 +-------------------- - configure.in | 16 +--------------- - 4 files changed, 3 insertions(+), 37 deletions(-) - ---- a/config.make.in -+++ b/config.make.in -@@ -50,7 +50,6 @@ - have-initfini = @libc_cv_have_initfini@ - have-Bgroup = @libc_cv_Bgroup@ - have-as-needed = @libc_cv_as_needed@ --libgcc_s_suffix = @libc_cv_libgcc_s_suffix@ - need-nopic-initfini = @nopic_initfini@ - with-fp = @with_fp@ - old-glibc-headers = @old_glibc_headers@ ---- a/configure -+++ b/configure -@@ -654,7 +654,6 @@ - libc_cv_z_combreloc - ASFLAGS_config - libc_cv_as_needed --libc_cv_libgcc_s_suffix - libc_cv_Bgroup - libc_cv_cc_with_libunwind - VERSIONING -@@ -6465,24 +6464,6 @@ - $as_echo "$libc_cv_Bgroup" >&6; } - - -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libgcc_s suffix" >&5 --$as_echo_n "checking for libgcc_s suffix... " >&6; } --if ${libc_cv_libgcc_s_suffix+:} false; then : -- $as_echo_n "(cached) " >&6 --else -- cat > conftest.c <&1 >/dev/null \ -- | sed -n 's/^.* -lgcc_s\([^ ]*\) .*$/\1/p'` -- rm -f conftest* --fi --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_libgcc_s_suffix" >&5 --$as_echo "$libc_cv_libgcc_s_suffix" >&6; } -- -- - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --as-needed option" >&5 - $as_echo_n "checking for --as-needed option... " >&6; } - if ${libc_cv_as_needed+:} false; then : -@@ -6493,7 +6474,7 @@ - EOF - if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS - -fPIC -shared -o conftest.so conftest.c -- -lgcc_s$libc_cv_libgcc_s_suffix -Wl,--as-needed -+ -lgcc_s -Wl,--as-needed - -nostdlib 1>&5' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 ---- a/configure.in -+++ b/configure.in -@@ -1639,20 +1639,6 @@ - rm -f conftest*]) - AC_SUBST(libc_cv_Bgroup) - -- AC_CACHE_CHECK(for libgcc_s suffix, -- libc_cv_libgcc_s_suffix, [dnl -- cat > conftest.c <&1 >/dev/null \ -- | sed -n 's/^.* -lgcc_s\([^ ]*\) .*$/\1/p'` --changequote([,])dnl -- rm -f conftest*]) -- AC_SUBST(libc_cv_libgcc_s_suffix) -- - AC_CACHE_CHECK(for --as-needed option, - libc_cv_as_needed, [dnl - cat > conftest.c <&AS_MESSAGE_LOG_FD]) - then - libc_cv_as_needed=yes ---- a/Makeconfig -+++ b/Makeconfig -@@ -565,7 +565,7 @@ - ifneq ($(have-as-needed),yes) - libgcc_eh := -lgcc_eh $(libunwind) - else -- libgcc_eh := -Wl,--as-needed -lgcc_s$(libgcc_s_suffix) $(libunwind) -Wl,--no-as-needed -+ libgcc_eh := -Wl,--as-needed -lgcc_s $(libunwind) -Wl,--no-as-needed - endif - gnulib := -lgcc $(libgcc_eh) - static-gnulib := -lgcc -lgcc_eh $(libunwind) diff --git a/packages/glibc/2.15/0042-obsolete-rpc.patch b/packages/glibc/2.15/0042-obsolete-rpc.patch deleted file mode 100644 index 4e0f1cc..0000000 --- a/packages/glibc/2.15/0042-obsolete-rpc.patch +++ /dev/null @@ -1,1607 +0,0 @@ -commit 021db4be6f1f4189f66feee066a495d49e92b93e -Author: Andreas Jaeger -Date: Thu May 10 20:16:53 2012 +0200 - - Make sunrpc code usable again - - New configure option --enable-obsolete-rpc makes the deprecated RPC - headers and functions available at compile time as they were before - version 2.14. This option will be removed at some time in the future - after the TI-RPC library becomes fully sufficient for the needs of - existing applications. - ---- - config.h.in | 3 +++ - config.make.in | 1 + - configure | 18 ++++++++++++++++++ - configure.in | 11 +++++++++++ - include/libc-symbols.h | 7 ++++++- - nis/Makefile | 6 ++++++ - sunrpc/Makefile | 6 ++++++ - sunrpc/auth_des.c | 4 ++-- - sunrpc/auth_none.c | 2 +- - sunrpc/auth_unix.c | 4 ++-- - sunrpc/authdes_prot.c | 4 ++-- - sunrpc/authuxprot.c | 2 +- - sunrpc/clnt_gen.c | 2 +- - sunrpc/clnt_perr.c | 10 +++++----- - sunrpc/clnt_raw.c | 2 +- - sunrpc/clnt_simp.c | 2 +- - sunrpc/clnt_tcp.c | 2 +- - sunrpc/clnt_udp.c | 6 +++--- - sunrpc/clnt_unix.c | 2 +- - sunrpc/des_crypt.c | 4 ++-- - sunrpc/des_soft.c | 2 +- - sunrpc/get_myaddr.c | 2 +- - sunrpc/key_call.c | 18 +++++++++--------- - sunrpc/key_prot.c | 20 ++++++++++---------- - sunrpc/netname.c | 10 +++++----- - sunrpc/pm_getmaps.c | 2 +- - sunrpc/pm_getport.c | 4 ++-- - sunrpc/pmap_clnt.c | 4 ++-- - sunrpc/pmap_prot.c | 2 +- - sunrpc/pmap_prot2.c | 2 +- - sunrpc/pmap_rmt.c | 8 ++++---- - sunrpc/publickey.c | 4 ++-- - sunrpc/rpc_cmsg.c | 2 +- - sunrpc/rpc_common.c | 2 +- - sunrpc/rpc_dtable.c | 2 +- - sunrpc/rpc_prot.c | 14 +++++++------- - sunrpc/rpc_thread.c | 8 ++++---- - sunrpc/rtime.c | 2 +- - sunrpc/svc.c | 32 ++++++++++++++++---------------- - sunrpc/svc_auth.c | 2 +- - sunrpc/svc_raw.c | 2 +- - sunrpc/svc_run.c | 4 ++-- - sunrpc/svc_tcp.c | 4 ++-- - sunrpc/svc_udp.c | 6 +++--- - sunrpc/svc_unix.c | 4 ++-- - sunrpc/svcauth_des.c | 2 +- - sunrpc/xcrypt.c | 4 ++-- - sunrpc/xdr.c | 44 ++++++++++++++++++++++---------------------- - sunrpc/xdr_array.c | 4 ++-- - sunrpc/xdr_float.c | 4 ++-- - sunrpc/xdr_intXX_t.c | 20 ++++++++++---------- - sunrpc/xdr_mem.c | 2 +- - sunrpc/xdr_rec.c | 8 ++++---- - sunrpc/xdr_ref.c | 4 ++-- - sunrpc/xdr_sizeof.c | 2 +- - sunrpc/xdr_stdio.c | 2 +- - 56 files changed, 203 insertions(+), 153 deletions(-) - ---- a/config.h.in -+++ b/config.h.in -@@ -187,6 +187,9 @@ - /* Define if `.ctors' and `.dtors' sections shouldn't be used. */ - #undef NO_CTORS_DTORS_SECTIONS - -+/* Define if obsolete RPC code should be made available for user-level code -+ to link against. */ -+#undef LINK_OBSOLETE_RPC - /* - */ - ---- a/config.make.in -+++ b/config.make.in -@@ -100,6 +100,7 @@ - sysdeps-add-ons = @sysdeps_add_ons@ - cross-compiling = @cross_compiling@ - force-install = @force_install@ -+link-obsolete-rpc = @link_obsolete_rpc@ - - # Build tools. - CC = @CC@ ---- a/configure -+++ b/configure -@@ -692,6 +692,7 @@ - base_machine - add_on_subdirs - add_ons -+link_obsolete_rpc - libc_cv_nss_crypt - all_warnings - force_install -@@ -790,6 +791,7 @@ - enable_all_warnings - enable_multi_arch - enable_nss_crypt -+enable_obsolete_rpc - with_cpu - ' - ac_precious_vars='build_alias -@@ -1449,6 +1451,8 @@ - --enable-multi-arch enable single DSO with optimizations for multiple - architectures - --enable-nss-crypt enable libcrypt to use nss -+ --enable-obsolete-rpc build and install the obsolete RPC code for -+ link-time usage - - Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] -@@ -3803,6 +3807,20 @@ - fi - - -+# Check whether --enable-obsolete-rpc was given. -+if test "${enable_obsolete_rpc+set}" = set; then : -+ enableval=$enable_obsolete_rpc; link_obsolete_rpc=$enableval -+else -+ link_obsolete_rpc=no -+fi -+ -+ -+ -+if test "$link_obsolete_rpc" = yes; then -+ $as_echo "#define LINK_OBSOLETE_RPC 1" >>confdefs.h -+ -+fi -+ - # The way shlib-versions is used to generate soversions.mk uses a - # fairly simplistic model for name recognition that can't distinguish - # i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os ---- a/configure.in -+++ b/configure.in -@@ -290,6 +290,17 @@ - fi - AC_SUBST(libc_cv_nss_crypt) - -+AC_ARG_ENABLE([obsolete-rpc], -+ AC_HELP_STRING([--enable-obsolete-rpc], -+ [build and install the obsolete RPC code for link-time usage]), -+ [link_obsolete_rpc=$enableval], -+ [link_obsolete_rpc=no]) -+AC_SUBST(link_obsolete_rpc) -+ -+if test "$link_obsolete_rpc" = yes; then -+ AC_DEFINE(LINK_OBSOLETE_RPC) -+fi -+ - # The way shlib-versions is used to generate soversions.mk uses a - # fairly simplistic model for name recognition that can't distinguish - # i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os ---- a/include/libc-symbols.h -+++ b/include/libc-symbols.h -@@ -626,7 +626,12 @@ - # 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) -+# ifdef LINK_OBSOLETE_RPC -+ /* libc_hidden_nolink_sunrpc should only get used in sunrpc code. */ -+# define libc_hidden_nolink_sunrpc(name, version) hidden_def (name) -+# else -+# define libc_hidden_nolink_sunrpc(name, version) hidden_nolink (name, libc, version) -+# endif - # 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) ---- a/nis/Makefile -+++ b/nis/Makefile -@@ -23,6 +23,12 @@ - - aux := nis_hash - -+include ../Makeconfig -+ -+ifeq ($(link-obsolete-rpc),yes) -+headers := $(wildcard rpcsvc/*.[hx]) -+endif -+ - distribute := nss-nis.h nss-nisplus.h nis_intern.h Banner \ - nisplus-parser.h nis_xdr.h nss \ - $(wildcard rpcsvc/*.[hx]) ---- a/sunrpc/Makefile -+++ b/sunrpc/Makefile -@@ -61,6 +61,10 @@ - - include ../Makeconfig - -+ifeq ($(link-obsolete-rpc),yes) -+headers += $(headers-in-tirpc) $(headers-not-in-tirpc) -+endif -+ - ifeq ($(versioning),yes) - need-export-routines := auth_des auth_unix clnt_gen clnt_perr clnt_tcp \ - clnt_udp get_myaddr key_call netname pm_getport \ -@@ -74,9 +78,11 @@ - svc_simple xdr_float xdr_rec publickey authdes_prot \ - des_crypt des_impl des_soft key_prot openchild rtime svcauth_des \ - clnt_unix svc_unix create_xid $(need-export-routines) -+ifneq ($(link-obsolete-rpc),yes) - # We only add the RPC for compatibility to libc.so. - shared-only-routines = $(routines) - endif -+endif - - # We do not build rpcinfo anymore. It is not needed for a bootstrap - # and not wanted on complete systems. ---- a/sunrpc/auth_des.c -+++ b/sunrpc/auth_des.c -@@ -117,7 +117,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (authdes_create) - #else --libc_hidden_nolink (authdes_create, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (authdes_create, GLIBC_2_1) - #endif - - AUTH * -@@ -211,7 +211,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (authdes_pk_create) - #else --libc_hidden_nolink (authdes_pk_create, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (authdes_pk_create, GLIBC_2_1) - #endif - - /* ---- a/sunrpc/auth_none.c -+++ b/sunrpc/auth_none.c -@@ -95,7 +95,7 @@ - __libc_once (authnone_private_guard, authnone_create_once); - return &authnone_private.no_client; - } --libc_hidden_nolink (authnone_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (authnone_create, GLIBC_2_0) - - static bool_t - authnone_marshal (AUTH *client, XDR *xdrs) ---- a/sunrpc/auth_unix.c -+++ b/sunrpc/auth_unix.c -@@ -149,7 +149,7 @@ - marshal_new_auth (auth); - return auth; - } --libc_hidden_nolink (authunix_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (authunix_create, GLIBC_2_0) - - /* - * Returns an auth handle with parameters determined by doing lots of -@@ -216,7 +216,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (authunix_create_default) - #else --libc_hidden_nolink (authunix_create_default, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (authunix_create_default, GLIBC_2_0) - #endif - - /* ---- a/sunrpc/authdes_prot.c -+++ b/sunrpc/authdes_prot.c -@@ -63,7 +63,7 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_authdes_cred, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_authdes_cred, GLIBC_2_1) - - - bool_t -@@ -78,4 +78,4 @@ - sizeof (verf->adv_int_u))); - return TRUE; - } --libc_hidden_nolink (xdr_authdes_verf, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_authdes_verf, GLIBC_2_1) ---- a/sunrpc/authuxprot.c -+++ b/sunrpc/authuxprot.c -@@ -63,4 +63,4 @@ - } - return FALSE; - } --libc_hidden_nolink (xdr_authunix_parms, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_authunix_parms, GLIBC_2_0) ---- a/sunrpc/clnt_gen.c -+++ b/sunrpc/clnt_gen.c -@@ -175,5 +175,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clnt_create) - #else --libc_hidden_nolink (clnt_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_create, GLIBC_2_0) - #endif ---- a/sunrpc/clnt_perr.c -+++ b/sunrpc/clnt_perr.c -@@ -127,7 +127,7 @@ - - return str; - } --libc_hidden_nolink (clnt_sperror, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_sperror, GLIBC_2_0) - - void - clnt_perror (CLIENT * rpch, const char *msg) -@@ -137,7 +137,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clnt_perror) - #else --libc_hidden_nolink (clnt_perror, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_perror, GLIBC_2_0) - #endif - - -@@ -270,7 +270,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clnt_perrno) - #else --libc_hidden_nolink (clnt_perrno, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_perrno, GLIBC_2_0) - #endif - - char * -@@ -308,7 +308,7 @@ - - return str; - } --libc_hidden_nolink (clnt_spcreateerror, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_spcreateerror, GLIBC_2_0) - - void - clnt_pcreateerror (const char *msg) -@@ -318,7 +318,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clnt_pcreateerror) - #else --libc_hidden_nolink (clnt_pcreateerror, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_pcreateerror, GLIBC_2_0) - #endif - - struct auth_errtab ---- a/sunrpc/clnt_raw.c -+++ b/sunrpc/clnt_raw.c -@@ -129,7 +129,7 @@ - client->cl_auth = authnone_create (); - return client; - } --libc_hidden_nolink (clntraw_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clntraw_create, GLIBC_2_0) - - static enum clnt_stat - clntraw_call (h, proc, xargs, argsp, xresults, resultsp, timeout) ---- a/sunrpc/clnt_simp.c -+++ b/sunrpc/clnt_simp.c -@@ -139,7 +139,7 @@ - crp->valid = 0; - return (int) clnt_stat; - } --libc_hidden_nolink (callrpc, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (callrpc, GLIBC_2_0) - - #ifdef _RPC_THREAD_SAFE_ - void ---- a/sunrpc/clnt_tcp.c -+++ b/sunrpc/clnt_tcp.c -@@ -220,7 +220,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clnttcp_create) - #else --libc_hidden_nolink (clnttcp_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnttcp_create, GLIBC_2_0) - #endif - - static enum clnt_stat ---- a/sunrpc/clnt_udp.c -+++ b/sunrpc/clnt_udp.c -@@ -239,7 +239,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (__libc_clntudp_bufcreate) - #else --libc_hidden_nolink (__libc_clntudp_bufcreate, GLIBC_PRIVATE) -+libc_hidden_nolink_sunrpc (__libc_clntudp_bufcreate, GLIBC_PRIVATE) - #endif - - CLIENT * -@@ -250,7 +250,7 @@ - return __libc_clntudp_bufcreate (raddr, program, version, wait, - sockp, sendsz, recvsz, 0); - } --libc_hidden_nolink (clntudp_bufcreate, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clntudp_bufcreate, GLIBC_2_0) - - CLIENT * - clntudp_create (raddr, program, version, wait, sockp) -@@ -266,7 +266,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (clntudp_create) - #else --libc_hidden_nolink (clntudp_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clntudp_create, GLIBC_2_0) - #endif - - static int ---- a/sunrpc/clnt_unix.c -+++ b/sunrpc/clnt_unix.c -@@ -200,7 +200,7 @@ - mem_free ((caddr_t) h, sizeof (CLIENT)); - return (CLIENT *) NULL; - } --libc_hidden_nolink (clntunix_create, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (clntunix_create, GLIBC_2_1) - - static enum clnt_stat - clntunix_call (h, proc, xdr_args, args_ptr, xdr_results, results_ptr, timeout) ---- a/sunrpc/des_crypt.c -+++ b/sunrpc/des_crypt.c -@@ -102,7 +102,7 @@ - COPY8 (dp.des_ivec, ivec); - return err; - } --libc_hidden_nolink (cbc_crypt, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (cbc_crypt, GLIBC_2_1) - - /* - * ECB mode encryption -@@ -115,4 +115,4 @@ - dp.des_mode = ECB; - return common_crypt (key, buf, len, mode, &dp); - } --libc_hidden_nolink (ecb_crypt, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (ecb_crypt, GLIBC_2_1) ---- a/sunrpc/des_soft.c -+++ b/sunrpc/des_soft.c -@@ -70,4 +70,4 @@ - p++; - } - } --libc_hidden_nolink (des_setparity, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (des_setparity, GLIBC_2_1) ---- a/sunrpc/get_myaddr.c -+++ b/sunrpc/get_myaddr.c -@@ -99,5 +99,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (get_myaddress) - #else --libc_hidden_nolink (get_myaddress, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (get_myaddress, GLIBC_2_0) - #endif ---- a/sunrpc/key_call.c -+++ b/sunrpc/key_call.c -@@ -80,7 +80,7 @@ - } - return 0; - } --libc_hidden_nolink (key_setsecret, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_setsecret, GLIBC_2_1) - - /* key_secretkey_is_set() returns 1 if the keyserver has a secret key - * stored for the caller's effective uid; it returns 0 otherwise -@@ -109,7 +109,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (key_secretkey_is_set) - #else --libc_hidden_nolink (key_secretkey_is_set, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_secretkey_is_set, GLIBC_2_1) - #endif - - int -@@ -133,7 +133,7 @@ - *deskey = res.cryptkeyres_u.deskey; - return 0; - } --libc_hidden_nolink (key_encryptsession, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_encryptsession, GLIBC_2_1) - - int - key_decryptsession (char *remotename, des_block *deskey) -@@ -155,7 +155,7 @@ - *deskey = res.cryptkeyres_u.deskey; - return 0; - } --libc_hidden_nolink (key_decryptsession, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_decryptsession, GLIBC_2_1) - - int - key_encryptsession_pk (char *remotename, netobj *remotekey, -@@ -180,7 +180,7 @@ - *deskey = res.cryptkeyres_u.deskey; - return 0; - } --libc_hidden_nolink (key_encryptsession_pk, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_encryptsession_pk, GLIBC_2_1) - - int - key_decryptsession_pk (char *remotename, netobj *remotekey, -@@ -205,7 +205,7 @@ - *deskey = res.cryptkeyres_u.deskey; - return 0; - } --libc_hidden_nolink (key_decryptsession_pk, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_decryptsession_pk, GLIBC_2_1) - - int - key_gendes (des_block *key) -@@ -239,7 +239,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (key_gendes) - #else --libc_hidden_nolink (key_gendes, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_gendes, GLIBC_2_1) - #endif - - int -@@ -259,7 +259,7 @@ - } - return 1; - } --libc_hidden_nolink (key_setnet, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_setnet, GLIBC_2_1) - - int - key_get_conv (char *pkey, des_block *deskey) -@@ -278,7 +278,7 @@ - *deskey = res.cryptkeyres_u.deskey; - return 0; - } --libc_hidden_nolink (key_get_conv, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (key_get_conv, GLIBC_2_1) - - /* - * Hack to allow the keyserver to use AUTH_DES (for authenticated ---- a/sunrpc/key_prot.c -+++ b/sunrpc/key_prot.c -@@ -38,7 +38,7 @@ - - return TRUE; - } --libc_hidden_nolink (xdr_keystatus, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_keystatus, GLIBC_2_0) - - bool_t - xdr_keybuf (XDR * xdrs, keybuf objp) -@@ -48,7 +48,7 @@ - - return TRUE; - } --libc_hidden_nolink (xdr_keybuf, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_keybuf, GLIBC_2_0) - - bool_t - xdr_netnamestr (XDR * xdrs, netnamestr * objp) -@@ -58,7 +58,7 @@ - - return TRUE; - } --libc_hidden_nolink (xdr_netnamestr, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_netnamestr, GLIBC_2_1) - - bool_t - xdr_cryptkeyarg (XDR * xdrs, cryptkeyarg * objp) -@@ -71,7 +71,7 @@ - - return TRUE; - } --libc_hidden_nolink (xdr_cryptkeyarg, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_cryptkeyarg, GLIBC_2_0) - - bool_t - xdr_cryptkeyarg2 (XDR * xdrs, cryptkeyarg2 * objp) -@@ -84,7 +84,7 @@ - return FALSE; - return TRUE; - } --libc_hidden_nolink (xdr_cryptkeyarg2, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_cryptkeyarg2, GLIBC_2_0) - - bool_t - xdr_cryptkeyres (XDR * xdrs, cryptkeyres * objp) -@@ -102,7 +102,7 @@ - } - return TRUE; - } --libc_hidden_nolink (xdr_cryptkeyres, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_cryptkeyres, GLIBC_2_0) - - bool_t - xdr_unixcred (XDR * xdrs, unixcred * objp) -@@ -117,7 +117,7 @@ - return FALSE; - return TRUE; - } --libc_hidden_nolink (xdr_unixcred, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_unixcred, GLIBC_2_1) - - bool_t - xdr_getcredres (XDR * xdrs, getcredres * objp) -@@ -135,7 +135,7 @@ - } - return TRUE; - } --libc_hidden_nolink (xdr_getcredres, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_getcredres, GLIBC_2_1) - - bool_t - xdr_key_netstarg (XDR * xdrs, key_netstarg * objp) -@@ -148,7 +148,7 @@ - return FALSE; - return TRUE; - } --libc_hidden_nolink (xdr_key_netstarg, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_key_netstarg, GLIBC_2_0) - - bool_t - xdr_key_netstres (XDR * xdrs, key_netstres * objp) -@@ -166,4 +166,4 @@ - } - return TRUE; - } --libc_hidden_nolink (xdr_key_netstres, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_key_netstres, GLIBC_2_0) ---- a/sunrpc/netname.c -+++ b/sunrpc/netname.c -@@ -55,7 +55,7 @@ - netname[i - 1] = '\0'; - return 1; - } --libc_hidden_nolink (user2netname, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (user2netname, GLIBC_2_1) - - int - host2netname (char netname[MAXNETNAMELEN + 1], const char *host, -@@ -119,7 +119,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (host2netname) - #else --libc_hidden_nolink (host2netname, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (host2netname, GLIBC_2_1) - #endif - - int -@@ -135,7 +135,7 @@ - dummy = user2netname (name, uid, NULL); - return (dummy); - } --libc_hidden_nolink (getnetname, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (getnetname, GLIBC_2_1) - - /* Type of the lookup function for netname2user. */ - typedef int (*netname2user_function) (const char netname[MAXNETNAMELEN + 1], -@@ -188,7 +188,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (netname2user) - #else --libc_hidden_nolink (netname2user, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (netname2user, GLIBC_2_1) - #endif - - int -@@ -215,4 +215,4 @@ - - return 1; - } --libc_hidden_nolink (netname2host, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (netname2host, GLIBC_2_1) ---- a/sunrpc/pm_getmaps.c -+++ b/sunrpc/pm_getmaps.c -@@ -84,4 +84,4 @@ - address->sin_port = 0; - return head; - } --libc_hidden_nolink (pmap_getmaps, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (pmap_getmaps, GLIBC_2_0) ---- a/sunrpc/pm_getport.c -+++ b/sunrpc/pm_getport.c -@@ -142,7 +142,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (__libc_rpc_getport) - #else --libc_hidden_nolink (__libc_rpc_getport, GLIBC_PRIVATE) -+libc_hidden_nolink_sunrpc (__libc_rpc_getport, GLIBC_PRIVATE) - #endif - - -@@ -160,4 +160,4 @@ - { - return __libc_rpc_getport (address, program, version, protocol, 5, 60); - } --libc_hidden_nolink (pmap_getport, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (pmap_getport, GLIBC_2_0) ---- a/sunrpc/pmap_clnt.c -+++ b/sunrpc/pmap_clnt.c -@@ -131,7 +131,7 @@ - /* (void)close(socket); CLNT_DESTROY closes it */ - return rslt; - } --libc_hidden_nolink (pmap_set, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (pmap_set, GLIBC_2_0) - - /* - * Remove the mapping between program,version and port. -@@ -162,4 +162,4 @@ - /* (void)close(socket); CLNT_DESTROY already closed it */ - return rslt; - } --libc_hidden_nolink (pmap_unset, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (pmap_unset, GLIBC_2_0) ---- a/sunrpc/pmap_prot.c -+++ b/sunrpc/pmap_prot.c -@@ -49,4 +49,4 @@ - return xdr_u_long (xdrs, ®s->pm_port); - return FALSE; - } --libc_hidden_nolink (xdr_pmap, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_pmap, GLIBC_2_0) ---- a/sunrpc/pmap_prot2.c -+++ b/sunrpc/pmap_prot2.c -@@ -110,4 +110,4 @@ - rp = freeing ? &next : &((*rp)->pml_next); - } - } --libc_hidden_nolink (xdr_pmaplist, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_pmaplist, GLIBC_2_0) ---- a/sunrpc/pmap_rmt.c -+++ b/sunrpc/pmap_rmt.c -@@ -104,7 +104,7 @@ - addr->sin_port = 0; - return stat; - } --libc_hidden_nolink (pmap_rmtcall, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (pmap_rmtcall, GLIBC_2_0) - - - /* -@@ -137,7 +137,7 @@ - } - return FALSE; - } --libc_hidden_nolink (xdr_rmtcall_args, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_rmtcall_args, GLIBC_2_0) - - /* - * XDR remote call results -@@ -160,7 +160,7 @@ - } - return FALSE; - } --libc_hidden_nolink (xdr_rmtcallres, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_rmtcallres, GLIBC_2_0) - - - /* -@@ -388,4 +388,4 @@ - AUTH_DESTROY (unix_auth); - return stat; - } --libc_hidden_nolink (clnt_broadcast, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (clnt_broadcast, GLIBC_2_0) ---- a/sunrpc/publickey.c -+++ b/sunrpc/publickey.c -@@ -76,7 +76,7 @@ - - return status == NSS_STATUS_SUCCESS; - } --libc_hidden_nolink (getpublickey, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (getpublickey, GLIBC_2_0) - - - int -@@ -119,4 +119,4 @@ - - return status == NSS_STATUS_SUCCESS; - } --libc_hidden_nolink (getsecretkey, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (getsecretkey, GLIBC_2_0) ---- a/sunrpc/rpc_cmsg.c -+++ b/sunrpc/rpc_cmsg.c -@@ -194,4 +194,4 @@ - return xdr_opaque_auth (xdrs, &(cmsg->rm_call.cb_verf)); - return FALSE; - } --libc_hidden_nolink (xdr_callmsg, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_callmsg, GLIBC_2_0) ---- a/sunrpc/rpc_common.c -+++ b/sunrpc/rpc_common.c -@@ -45,7 +45,7 @@ - section but we cannot add const to the type because this isn't how - the variable is declared. So we use the section attribute. */ - struct opaque_auth _null_auth __attribute__ ((nocommon)); --libc_hidden_nolink (_null_auth, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (_null_auth, GLIBC_2_0) - fd_set svc_fdset; - struct rpc_createerr rpc_createerr; - struct pollfd *svc_pollfd; ---- a/sunrpc/rpc_dtable.c -+++ b/sunrpc/rpc_dtable.c -@@ -46,4 +46,4 @@ - - return size; - } --libc_hidden_nolink (_rpc_dtablesize, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (_rpc_dtablesize, GLIBC_2_0) ---- a/sunrpc/rpc_prot.c -+++ b/sunrpc/rpc_prot.c -@@ -57,7 +57,7 @@ - &ap->oa_length, MAX_AUTH_BYTES); - return FALSE; - } --libc_hidden_nolink (xdr_opaque_auth, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_opaque_auth, GLIBC_2_0) - - /* - * XDR a DES block -@@ -67,7 +67,7 @@ - { - return xdr_opaque (xdrs, (caddr_t) blkp, sizeof (des_block)); - } --libc_hidden_nolink (xdr_des_block, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_des_block, GLIBC_2_0) - - /* * * * * * * * * * * * * * XDR RPC MESSAGE * * * * * * * * * * * * * * * */ - -@@ -95,7 +95,7 @@ - } - return TRUE; /* TRUE => open ended set of problems */ - } --libc_hidden_nolink (xdr_accepted_reply, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_accepted_reply, GLIBC_2_0) - - /* - * XDR the MSG_DENIED part of a reply message union -@@ -118,7 +118,7 @@ - } - return FALSE; - } --libc_hidden_nolink (xdr_rejected_reply, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_rejected_reply, GLIBC_2_0) - - static const struct xdr_discrim reply_dscrm[3] = - { -@@ -142,7 +142,7 @@ - NULL_xdrproc_t); - return FALSE; - } --libc_hidden_nolink (xdr_replymsg, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_replymsg, GLIBC_2_0) - - - /* -@@ -167,7 +167,7 @@ - return xdr_u_long (xdrs, &(cmsg->rm_call.cb_vers)); - return FALSE; - } --libc_hidden_nolink (xdr_callhdr, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_callhdr, GLIBC_2_0) - - /* ************************** Client utility routine ************* */ - -@@ -277,4 +277,4 @@ - break; - } - } --libc_hidden_nolink (_seterr_reply, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (_seterr_reply, GLIBC_2_0) ---- a/sunrpc/rpc_thread.c -+++ b/sunrpc/rpc_thread.c -@@ -97,7 +97,7 @@ - return &svc_fdset; - return &tvp->svc_fdset_s; - } --libc_hidden_nolink (__rpc_thread_svc_fdset, GLIBC_2_2_3) -+libc_hidden_nolink_sunrpc (__rpc_thread_svc_fdset, GLIBC_2_2_3) - - struct rpc_createerr * - __rpc_thread_createerr (void) -@@ -109,7 +109,7 @@ - return &rpc_createerr; - return &tvp->rpc_createerr_s; - } --libc_hidden_nolink (__rpc_thread_createerr, GLIBC_2_2_3) -+libc_hidden_nolink_sunrpc (__rpc_thread_createerr, GLIBC_2_2_3) - - struct pollfd ** - __rpc_thread_svc_pollfd (void) -@@ -124,7 +124,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (__rpc_thread_svc_pollfd) - #else --libc_hidden_nolink (__rpc_thread_svc_pollfd, GLIBC_2_2_3) -+libc_hidden_nolink_sunrpc (__rpc_thread_svc_pollfd, GLIBC_2_2_3) - #endif - - int * -@@ -140,7 +140,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (__rpc_thread_svc_max_pollfd) - #else --libc_hidden_nolink (__rpc_thread_svc_max_pollfd, GLIBC_2_2_3) -+libc_hidden_nolink_sunrpc (__rpc_thread_svc_max_pollfd, GLIBC_2_2_3) - #endif - - #endif /* _RPC_THREAD_SAFE_ */ ---- a/sunrpc/rtime.c -+++ b/sunrpc/rtime.c -@@ -140,4 +140,4 @@ - timep->tv_usec = 0; - return 0; - } --libc_hidden_nolink (rtime, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (rtime, GLIBC_2_1) ---- a/sunrpc/svc.c -+++ b/sunrpc/svc.c -@@ -115,7 +115,7 @@ - POLLRDNORM | POLLRDBAND); - } - } --libc_hidden_nolink (xprt_register, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xprt_register, GLIBC_2_0) - - /* De-activate a transport handle. */ - void -@@ -139,7 +139,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xprt_unregister) - #else --libc_hidden_nolink (xprt_unregister, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xprt_unregister, GLIBC_2_0) - #endif - - -@@ -218,7 +218,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svc_register) - #else --libc_hidden_nolink (svc_register, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_register, GLIBC_2_0) - #endif - - /* Remove a service program from the callout list. */ -@@ -242,7 +242,7 @@ - if (! svc_is_mapped (prog, vers)) - pmap_unset (prog, vers); - } --libc_hidden_nolink (svc_unregister, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_unregister, GLIBC_2_0) - - /* ******************* REPLY GENERATION ROUTINES ************ */ - -@@ -264,7 +264,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svc_sendreply) - #else --libc_hidden_nolink (svc_sendreply, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_sendreply, GLIBC_2_0) - #endif - - /* No procedure error reply */ -@@ -282,7 +282,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svcerr_noproc) - #else --libc_hidden_nolink (svcerr_noproc, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_noproc, GLIBC_2_0) - #endif - - /* Can't decode args error reply */ -@@ -300,7 +300,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svcerr_decode) - #else --libc_hidden_nolink (svcerr_decode, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_decode, GLIBC_2_0) - #endif - - /* Some system error */ -@@ -318,7 +318,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svcerr_systemerr) - #else --libc_hidden_nolink (svcerr_systemerr, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_systemerr, GLIBC_2_0) - #endif - - /* Authentication error reply */ -@@ -333,7 +333,7 @@ - rply.rjcted_rply.rj_why = why; - SVC_REPLY (xprt, &rply); - } --libc_hidden_nolink (svcerr_auth, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_auth, GLIBC_2_0) - - /* Auth too weak error reply */ - void -@@ -341,7 +341,7 @@ - { - svcerr_auth (xprt, AUTH_TOOWEAK); - } --libc_hidden_nolink (svcerr_weakauth, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_weakauth, GLIBC_2_0) - - /* Program unavailable error reply */ - void -@@ -355,7 +355,7 @@ - rply.acpted_rply.ar_stat = PROG_UNAVAIL; - SVC_REPLY (xprt, &rply); - } --libc_hidden_nolink (svcerr_noprog, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_noprog, GLIBC_2_0) - - /* Program version mismatch error reply */ - void -@@ -372,7 +372,7 @@ - rply.acpted_rply.ar_vers.high = high_vers; - SVC_REPLY (xprt, &rply); - } --libc_hidden_nolink (svcerr_progvers, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcerr_progvers, GLIBC_2_0) - - /* ******************* SERVER INPUT STUFF ******************* */ - -@@ -401,7 +401,7 @@ - readfds.fds_bits[0] = rdfds; - svc_getreqset (&readfds); - } --libc_hidden_nolink (svc_getreq, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_getreq, GLIBC_2_0) - - void - svc_getreqset (fd_set *readfds) -@@ -420,7 +420,7 @@ - for (mask = *maskp++; (bit = ffsl (mask)); mask ^= (1L << (bit - 1))) - svc_getreq_common (sock + bit - 1); - } --libc_hidden_nolink (svc_getreqset, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_getreqset, GLIBC_2_0) - - void - svc_getreq_poll (struct pollfd *pfdp, int pollretval) -@@ -449,7 +449,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svc_getreq_poll) - #else --libc_hidden_nolink (svc_getreq_poll, GLIBC_2_2) -+libc_hidden_nolink_sunrpc (svc_getreq_poll, GLIBC_2_2) - #endif - - -@@ -542,7 +542,7 @@ - } - while (stat == XPRT_MOREREQS); - } --libc_hidden_nolink (svc_getreq_common, GLIBC_2_2) -+libc_hidden_nolink_sunrpc (svc_getreq_common, GLIBC_2_2) - - #ifdef _RPC_THREAD_SAFE_ - ---- a/sunrpc/svc_auth.c -+++ b/sunrpc/svc_auth.c -@@ -105,7 +105,7 @@ - - return AUTH_REJECTEDCRED; - } --libc_hidden_nolink (_authenticate, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (_authenticate, GLIBC_2_1) - - static enum auth_stat - _svcauth_null (struct svc_req *rqst, struct rpc_msg *msg) ---- a/sunrpc/svc_raw.c -+++ b/sunrpc/svc_raw.c -@@ -88,7 +88,7 @@ - xdrmem_create (&srp->xdr_stream, srp->_raw_buf, UDPMSGSIZE, XDR_FREE); - return &srp->server; - } --libc_hidden_nolink (svcraw_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcraw_create, GLIBC_2_0) - - static enum xprt_stat - svcraw_stat (SVCXPRT *xprt) ---- a/sunrpc/svc_run.c -+++ b/sunrpc/svc_run.c -@@ -46,7 +46,7 @@ - svc_pollfd = NULL; - svc_max_pollfd = 0; - } --libc_hidden_nolink (svc_exit, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_exit, GLIBC_2_0) - - void - svc_run (void) -@@ -104,5 +104,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svc_run) - #else --libc_hidden_nolink (svc_run, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svc_run, GLIBC_2_0) - #endif ---- a/sunrpc/svc_tcp.c -+++ b/sunrpc/svc_tcp.c -@@ -187,7 +187,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svctcp_create) - #else --libc_hidden_nolink (svctcp_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svctcp_create, GLIBC_2_0) - #endif - - /* -@@ -199,7 +199,7 @@ - { - return makefd_xprt (fd, sendsize, recvsize); - } --libc_hidden_nolink (svcfd_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcfd_create, GLIBC_2_0) - - static SVCXPRT * - internal_function ---- a/sunrpc/svc_udp.c -+++ b/sunrpc/svc_udp.c -@@ -184,7 +184,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svcudp_bufcreate) - #else --libc_hidden_nolink (svcudp_bufcreate, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcudp_bufcreate, GLIBC_2_0) - #endif - - SVCXPRT * -@@ -196,7 +196,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (svcudp_create) - #else --libc_hidden_nolink (svcudp_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcudp_create, GLIBC_2_0) - #endif - - static enum xprt_stat -@@ -500,7 +500,7 @@ - su->su_cache = (char *) uc; - return 1; - } --libc_hidden_nolink (svcudp_enablecache, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (svcudp_enablecache, GLIBC_2_0) - - - /* ---- a/sunrpc/svc_unix.c -+++ b/sunrpc/svc_unix.c -@@ -184,7 +184,7 @@ - xprt_register (xprt); - return xprt; - } --libc_hidden_nolink (svcunix_create, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (svcunix_create, GLIBC_2_1) - - /* - * Like svunix_create(), except the routine takes any *open* UNIX file -@@ -195,7 +195,7 @@ - { - return makefd_xprt (fd, sendsize, recvsize); - } --libc_hidden_nolink (svcunixfd_create, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (svcunixfd_create, GLIBC_2_1) - - static SVCXPRT * - internal_function ---- a/sunrpc/svcauth_des.c -+++ b/sunrpc/svcauth_des.c -@@ -583,7 +583,7 @@ - groups[i] = cred->groups[i]; - return 1; - } --libc_hidden_nolink (authdes_getucred, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (authdes_getucred, GLIBC_2_1) - - static void - internal_function ---- a/sunrpc/xcrypt.c -+++ b/sunrpc/xcrypt.c -@@ -127,7 +127,7 @@ - free (buf); - return 1; - } --libc_hidden_nolink (xencrypt, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xencrypt, GLIBC_2_0) - - /* - * Decrypt secret key using passwd -@@ -163,7 +163,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdecrypt) - #else --libc_hidden_nolink (xdecrypt, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdecrypt, GLIBC_2_1) - #endif - - /* ---- a/sunrpc/xdr.c -+++ b/sunrpc/xdr.c -@@ -72,7 +72,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_free) - #else --libc_hidden_nolink (xdr_free, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_free, GLIBC_2_0) - #endif - - /* -@@ -86,7 +86,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_void) - #else --libc_hidden_nolink (xdr_void, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_void, GLIBC_2_0) - #endif - - /* -@@ -126,7 +126,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_int) - #else --libc_hidden_nolink (xdr_int, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_int, GLIBC_2_0) - #endif - - /* -@@ -165,7 +165,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_int) - #else --libc_hidden_nolink (xdr_u_int, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_u_int, GLIBC_2_0) - #endif - - /* -@@ -193,7 +193,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_long) - #else --libc_hidden_nolink (xdr_long, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_long, GLIBC_2_0) - #endif - - /* -@@ -232,7 +232,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_long) - #else --libc_hidden_nolink (xdr_u_long, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_u_long, GLIBC_2_0) - #endif - - /* -@@ -268,7 +268,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_hyper) - #else --libc_hidden_nolink (xdr_hyper, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_hyper, GLIBC_2_1_1) - #endif - - /* -@@ -304,7 +304,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_hyper) - #else --libc_hidden_nolink (xdr_u_hyper, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_u_hyper, GLIBC_2_1_1) - #endif - - bool_t -@@ -315,7 +315,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_longlong_t) - #else --libc_hidden_nolink (xdr_longlong_t, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_longlong_t, GLIBC_2_1_1) - #endif - - bool_t -@@ -326,7 +326,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_longlong_t) - #else --libc_hidden_nolink (xdr_u_longlong_t, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_u_longlong_t, GLIBC_2_1_1) - #endif - - /* -@@ -359,7 +359,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_short) - #else --libc_hidden_nolink (xdr_short, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_short, GLIBC_2_0) - #endif - - /* -@@ -392,7 +392,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_short) - #else --libc_hidden_nolink (xdr_u_short, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_u_short, GLIBC_2_0) - #endif - - -@@ -415,7 +415,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_char) - #else --libc_hidden_nolink (xdr_char, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_char, GLIBC_2_0) - #endif - - /* -@@ -437,7 +437,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_u_char) - #else --libc_hidden_nolink (xdr_u_char, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_u_char, GLIBC_2_0) - #endif - - /* -@@ -470,7 +470,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_bool) - #else --libc_hidden_nolink (xdr_bool, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_bool, GLIBC_2_0) - #endif - - /* -@@ -525,7 +525,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_enum) - #else --libc_hidden_nolink (xdr_enum, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_enum, GLIBC_2_0) - #endif - - /* -@@ -580,7 +580,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_opaque) - #else --libc_hidden_nolink (xdr_opaque, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_opaque, GLIBC_2_0) - #endif - - /* -@@ -648,7 +648,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_bytes) - #else --libc_hidden_nolink (xdr_bytes, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_bytes, GLIBC_2_0) - #endif - - /* -@@ -665,7 +665,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_netobj) - #else --libc_hidden_nolink (xdr_netobj, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_netobj, GLIBC_2_0) - #endif - - /* -@@ -714,7 +714,7 @@ - return ((dfault == NULL_xdrproc_t) ? FALSE : - (*dfault) (xdrs, unp, LASTUNSIGNED)); - } --libc_hidden_nolink (xdr_union, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_union, GLIBC_2_0) - - - /* -@@ -806,7 +806,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_string) - #else --libc_hidden_nolink (xdr_string, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_string, GLIBC_2_0) - #endif - - /* -@@ -827,5 +827,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_wrapstring) - #else --libc_hidden_nolink (xdr_wrapstring, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_wrapstring, GLIBC_2_0) - #endif ---- a/sunrpc/xdr_array.c -+++ b/sunrpc/xdr_array.c -@@ -127,7 +127,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_array) - #else --libc_hidden_nolink (xdr_array, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_array, GLIBC_2_0) - #endif - - /* -@@ -162,4 +162,4 @@ - } - return TRUE; - } --libc_hidden_nolink (xdr_vector, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_vector, GLIBC_2_0) ---- a/sunrpc/xdr_float.c -+++ b/sunrpc/xdr_float.c -@@ -158,7 +158,7 @@ - } - return (FALSE); - } --libc_hidden_nolink (xdr_float, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_float, GLIBC_2_0) - - /* - * This routine works on Suns (Sky / 68000's) and Vaxen. -@@ -300,4 +300,4 @@ - } - return (FALSE); - } --libc_hidden_nolink (xdr_double, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_double, GLIBC_2_0) ---- a/sunrpc/xdr_intXX_t.c -+++ b/sunrpc/xdr_intXX_t.c -@@ -47,14 +47,14 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_int64_t, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_int64_t, GLIBC_2_1_1) - - bool_t - xdr_quad_t (XDR *xdrs, quad_t *ip) - { - return xdr_int64_t (xdrs, (int64_t *) ip); - } --libc_hidden_nolink (xdr_quad_t, GLIBC_2_3_4) -+libc_hidden_nolink_sunrpc (xdr_quad_t, GLIBC_2_3_4) - - /* XDR 64bit unsigned integers */ - bool_t -@@ -83,14 +83,14 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_uint64_t, GLIBC_2_1_1) -+libc_hidden_nolink_sunrpc (xdr_uint64_t, GLIBC_2_1_1) - - bool_t - xdr_u_quad_t (XDR *xdrs, u_quad_t *ip) - { - return xdr_uint64_t (xdrs, (uint64_t *) ip); - } --libc_hidden_nolink (xdr_u_quad_t, GLIBC_2_3_4) -+libc_hidden_nolink_sunrpc (xdr_u_quad_t, GLIBC_2_3_4) - - /* XDR 32bit integers */ - bool_t -@@ -108,7 +108,7 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_int32_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_int32_t, GLIBC_2_1) - - /* XDR 32bit unsigned integers */ - bool_t -@@ -129,7 +129,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_uint32_t) - #else --libc_hidden_nolink (xdr_uint32_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_uint32_t, GLIBC_2_1) - #endif - - /* XDR 16bit integers */ -@@ -154,7 +154,7 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_int16_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_int16_t, GLIBC_2_1) - - /* XDR 16bit unsigned integers */ - bool_t -@@ -178,7 +178,7 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_uint16_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_uint16_t, GLIBC_2_1) - - /* XDR 8bit integers */ - bool_t -@@ -202,7 +202,7 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_int8_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_int8_t, GLIBC_2_1) - - /* XDR 8bit unsigned integers */ - bool_t -@@ -226,4 +226,4 @@ - return FALSE; - } - } --libc_hidden_nolink (xdr_uint8_t, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_uint8_t, GLIBC_2_1) ---- a/sunrpc/xdr_mem.c -+++ b/sunrpc/xdr_mem.c -@@ -81,7 +81,7 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdrmem_create) - #else --libc_hidden_nolink (xdrmem_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrmem_create, GLIBC_2_0) - #endif - - /* ---- a/sunrpc/xdr_rec.c -+++ b/sunrpc/xdr_rec.c -@@ -189,7 +189,7 @@ - rstrm->fbtbc = 0; - rstrm->last_frag = TRUE; - } --libc_hidden_nolink (xdrrec_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrrec_create, GLIBC_2_0) - - - /* -@@ -477,7 +477,7 @@ - rstrm->last_frag = FALSE; - return TRUE; - } --libc_hidden_nolink (xdrrec_skiprecord, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrrec_skiprecord, GLIBC_2_0) - - /* - * Lookahead function. -@@ -501,7 +501,7 @@ - return TRUE; - return FALSE; - } --libc_hidden_nolink (xdrrec_eof, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrrec_eof, GLIBC_2_0) - - /* - * The client must tell the package when an end-of-record has occurred. -@@ -528,7 +528,7 @@ - rstrm->out_finger += BYTES_PER_XDR_UNIT; - return TRUE; - } --libc_hidden_nolink (xdrrec_endofrecord, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrrec_endofrecord, GLIBC_2_0) - - - /* ---- a/sunrpc/xdr_ref.c -+++ b/sunrpc/xdr_ref.c -@@ -90,7 +90,7 @@ - } - return stat; - } --libc_hidden_nolink (xdr_reference, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_reference, GLIBC_2_0) - - - /* -@@ -137,5 +137,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_pointer) - #else --libc_hidden_nolink (xdr_pointer, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdr_pointer, GLIBC_2_0) - #endif ---- a/sunrpc/xdr_sizeof.c -+++ b/sunrpc/xdr_sizeof.c -@@ -161,5 +161,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdr_sizeof) - #else --libc_hidden_nolink (xdr_sizeof, GLIBC_2_1) -+libc_hidden_nolink_sunrpc (xdr_sizeof, GLIBC_2_1) - #endif ---- a/sunrpc/xdr_stdio.c -+++ b/sunrpc/xdr_stdio.c -@@ -191,5 +191,5 @@ - #ifdef EXPORT_RPC_SYMBOLS - libc_hidden_def (xdrstdio_create) - #else --libc_hidden_nolink (xdrstdio_create, GLIBC_2_0) -+libc_hidden_nolink_sunrpc (xdrstdio_create, GLIBC_2_0) - #endif diff --git a/packages/glibc/2.15/0043-obstack-common.patch b/packages/glibc/2.15/0043-obstack-common.patch deleted file mode 100644 index 1993be2..0000000 --- a/packages/glibc/2.15/0043-obstack-common.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit 39b1f6172a2f9ddc74a8f82d6e84dd13b22dbaf2 -Author: Peter Collingbourne -Date: Wed May 15 20:28:08 2013 +0200 - - Move _obstack_compat out of common - - it is impossible to create an alias of a common symbol (as - compat_symbol does), because common symbols do not have a section or - an offset until linked. GNU as tolerates aliases of common symbols by - simply creating another common symbol, but other assemblers (notably - LLVM's integrated assembler) are less tolerant. - - 2013-05-15 Peter Collingbourne - - * malloc/obstack.c (_obstack_compat): Add initializer. - - - ---- - malloc/obstack.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/malloc/obstack.c -+++ b/malloc/obstack.c -@@ -117,7 +117,7 @@ - /* A looong time ago (before 1994, anyway; we're not sure) this global variable - was used by non-GNU-C macros to avoid multiple evaluation. The GNU C - library still exports it because somebody might use it. */ --struct obstack *_obstack_compat; -+struct obstack *_obstack_compat = 0; - compat_symbol (libc, _obstack_compat, _obstack, GLIBC_2_0); - # endif - # endif diff --git a/packages/glibc/2.15/0044-new-tools.patch b/packages/glibc/2.15/0044-new-tools.patch deleted file mode 100644 index d08d873..0000000 --- a/packages/glibc/2.15/0044-new-tools.patch +++ /dev/null @@ -1,72 +0,0 @@ ---- - configure | 8 ++++---- - configure.in | 8 ++++---- - 2 files changed, 8 insertions(+), 8 deletions(-) - ---- a/configure -+++ b/configure -@@ -4939,7 +4939,7 @@ - ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.4* | 4.[0-9]* ) -+ 3.4* | [4-9].* | [1-9][0-9]* ) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5002,7 +5002,7 @@ - ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.79* | 3.[89]*) -+ 3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5129,7 +5129,7 @@ - ac_prog_version=`$MAKEINFO --version 2>&1 | sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 4.*) -+ [4-9].*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5189,7 +5189,7 @@ - # Found it, now check the version. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking version of $SED" >&5 - $as_echo_n "checking version of $SED... " >&6; } -- ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed version \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed[^0-9]* \([0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; - 3.0[2-9]*|3.[1-9]*|[4-9]*) ---- a/configure.in -+++ b/configure.in -@@ -1011,11 +1011,11 @@ - # These programs are version sensitive. - AC_CHECK_TOOL_PREFIX - AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v, -- [version \([egcygnustpi-]*[0-9.]*\)], [3.4* | 4.[0-9]* ], -+ [version \([egcygnustpi-]*[0-9.]*\)], [3.4* | [4-9].* | [1-9][0-9].* ], - critic_missing="$critic_missing gcc") - AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version, - [GNU Make[^0-9]*\([0-9][0-9.]*\)], -- [3.79* | 3.[89]*], critic_missing="$critic_missing make") -+ [3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*], critic_missing="$critic_missing make") - - AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version, - [GNU gettext.* \([0-9]*\.[0-9.]*\)], -@@ -1023,10 +1023,10 @@ - MSGFMT=: aux_missing="$aux_missing msgfmt") - AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version, - [GNU texinfo.* \([0-9][0-9.]*\)], -- [4.*], -+ [[4-9].*], - MAKEINFO=: aux_missing="$aux_missing makeinfo") - AC_CHECK_PROG_VER(SED, sed, --version, -- [GNU sed version \([0-9]*\.[0-9.]*\)], -+ [GNU sed[^0-9]* \([0-9]*\.[0-9.]*\)], - [3.0[2-9]*|3.[1-9]*|[4-9]*], - SED=: aux_missing="$aux_missing sed") - diff --git a/packages/glibc/2.15/0045-strftime-multiple-stmts.patch b/packages/glibc/2.15/0045-strftime-multiple-stmts.patch deleted file mode 100644 index e544b33..0000000 --- a/packages/glibc/2.15/0045-strftime-multiple-stmts.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb -Author: Joseph Myers -Date: Tue Jun 27 17:12:13 2017 +0000 - - Fix strftime build with GCC 8. - - Building with current GCC mainline fails with: - - strftime_l.c: In function '__strftime_internal': - strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros] - digits = d > width ? d : width; \ - ^ - strftime_l.c:1260:6: note: in expansion of macro 'DO_NUMBER' - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - ^~~~~~~~~ - strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this 'else' clause - else - ^~~~ - - In fact this particular instance is harmless; the code looks like: - - if (modifier == L_('O')) - goto bad_format; - else - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - - and because of the goto, it doesn't matter that part of the expansion - isn't under the "else" conditional. But it's also clearly bad style - to rely on that. This patch changes DO_NUMBER and DO_NUMBER_SPACEPAD - to use do { } while (0) to avoid such problems. - - Tested (full testsuite) for x86_64 (GCC 6), and with - build-many-glibcs.py with GCC mainline, in conjunction with my libgcc - patch . - - * time/strftime_l.c (DO_NUMBER): Define using do { } while (0). - (DO_NUMBER_SPACEPAD): Likewise. - ---- - time/strftime_l.c | 22 ++++++++++++++++------ - 1 file changed, 16 insertions(+), 6 deletions(-) - ---- a/time/strftime_l.c -+++ b/time/strftime_l.c -@@ -742,12 +742,22 @@ - format_char = *f; - switch (format_char) - { --#define DO_NUMBER(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number --#define DO_NUMBER_SPACEPAD(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number_spacepad -+#define DO_NUMBER(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number; \ -+ } \ -+ while (0) -+#define DO_NUMBER_SPACEPAD(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number_spacepad; \ -+ } \ -+ while (0) - - case L_('%'): - if (modifier != 0) diff --git a/packages/glibc/2.15/0046-if_nametoindex-size-check.patch b/packages/glibc/2.15/0046-if_nametoindex-size-check.patch deleted file mode 100644 index 5803db5..0000000 --- a/packages/glibc/2.15/0046-if_nametoindex-size-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 2180fee114b778515b3f560e5ff1e795282e60b0 -Author: Steve Ellcey -Date: Wed Nov 15 08:58:48 2017 -0800 - - Check length of ifname before copying it into to ifreq structure. - - [BZ #22442] - * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): - Check if ifname is too long. - ---- - sysdeps/unix/sysv/linux/if_index.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/sysdeps/unix/sysv/linux/if_index.c -+++ b/sysdeps/unix/sysv/linux/if_index.c -@@ -54,6 +54,12 @@ - if (fd < 0) - return 0; - -+ if (strlen (ifname) >= IFNAMSIZ) -+ { -+ __set_errno (ENODEV); -+ return 0; -+ } -+ - strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name)); - if (__ioctl (fd, SIOCGIFINDEX, &ifr) < 0) - { diff --git a/packages/glibc/2.15/0047-utmp-nonstring.patch b/packages/glibc/2.15/0047-utmp-nonstring.patch deleted file mode 100644 index 3943cdf..0000000 --- a/packages/glibc/2.15/0047-utmp-nonstring.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit 7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c -Author: Martin Sebor -Date: Wed Nov 15 17:39:59 2017 -0700 - - The -Wstringop-truncation option new in GCC 8 detects common misuses - of the strncat and strncpy function that may result in truncating - the copied string before the terminating NUL. To avoid false positive - warnings for correct code that intentionally creates sequences of - characters that aren't guaranteed to be NUL-terminated, arrays that - are intended to store such sequences should be decorated with a new - nonstring attribute. This change add this attribute to Glibc and - uses it to suppress such false positives. - - ChangeLog: - * misc/sys/cdefs.h (__attribute_nonstring__): New macro. - * sysdeps/gnu/bits/utmp.h (struct utmp): Use it. - * sysdeps/unix/sysv/linux/s390/bits/utmp.h (struct utmp): Same. - ---- - misc/sys/cdefs.h | 9 +++++++++ - sysdeps/gnu/bits/utmp.h | 9 ++++++--- - sysdeps/unix/sysv/linux/s390/bits/utmp.h | 9 ++++++--- - 3 files changed, 21 insertions(+), 6 deletions(-) - ---- a/misc/sys/cdefs.h -+++ b/misc/sys/cdefs.h -@@ -375,6 +375,15 @@ - # endif - #endif - -+#if __GNUC_PREREQ (8, 0) -+/* Describes a char array whose address can safely be passed as the first -+ argument to strncpy and strncat, as the char array is not necessarily -+ a NUL-terminated string. */ -+# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -+#else -+# define __attribute_nonstring__ -+#endif -+ - #include - - #if defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH ---- a/sysdeps/gnu/bits/utmp.h -+++ b/sysdeps/gnu/bits/utmp.h -@@ -61,10 +61,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled ---- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h -+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h -@@ -61,10 +61,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled diff --git a/packages/glibc/2.15/0048-getlogin_r-use-strnlen.patch b/packages/glibc/2.15/0048-getlogin_r-use-strnlen.patch deleted file mode 100644 index 15a16bd..0000000 --- a/packages/glibc/2.15/0048-getlogin_r-use-strnlen.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 4bae615022cb5a5da79ccda83cc6c9ba9f2d479c -Author: Joseph Myers -Date: Wed Nov 22 18:44:23 2017 +0000 - - Avoid use of strlen in getlogin_r (bug 22447). - - Building glibc with current mainline GCC fails, among other reasons, - because of an error for use of strlen on the nonstring ut_user field. - This patch changes the problem code in getlogin_r to use __strnlen - instead. It also needs to set the trailing NUL byte of the result - explicitly, because of the case where ut_user does not have such a - trailing NUL byte (but the result should always have one). - - Tested for x86_64. Also tested that, in conjunction with - , it fixes - the build for arm with mainline GCC. - - [BZ #22447] - * sysdeps/unix/getlogin_r.c (__getlogin_r): Use __strnlen not - strlen to compute length of ut_user and set trailing NUL byte of - result explicitly. - ---- - sysdeps/unix/getlogin_r.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - ---- a/sysdeps/unix/getlogin_r.c -+++ b/sysdeps/unix/getlogin_r.c -@@ -83,7 +83,7 @@ - - if (result == 0) - { -- size_t needed = strlen (ut->ut_user) + 1; -+ size_t needed = __strnlen (ut->ut_user, UT_NAMESIZE) + 1; - - if (needed > name_len) - { -@@ -92,7 +92,8 @@ - } - else - { -- memcpy (name, ut->ut_user, needed); -+ memcpy (name, ut->ut_user, needed - 1); -+ name[needed - 1] = 0; - result = 0; - } - } diff --git a/packages/glibc/2.15/0049-zic.c-use-memcpy.patch b/packages/glibc/2.15/0049-zic.c-use-memcpy.patch deleted file mode 100644 index 4c89446..0000000 --- a/packages/glibc/2.15/0049-zic.c-use-memcpy.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit e69897bf202e18034cbef26f363bae64de70a196 -Author: Paul Eggert -Date: Sun Nov 12 22:00:28 2017 -0800 - - timezone: pacify GCC -Wstringop-truncation - - Problem reported by Martin Sebor in: - https://sourceware.org/ml/libc-alpha/2017-11/msg00336.html - * timezone/zic.c (writezone): Use memcpy, not strncpy. - ---- - timezone/zic.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/timezone/zic.c -+++ b/timezone/zic.c -@@ -1648,7 +1648,7 @@ - #define DO(field) (void) fwrite((void *) tzh.field, \ - (size_t) sizeof tzh.field, (size_t) 1, fp) - tzh = tzh0; -- (void) strncpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); -+ memcpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); - tzh.tzh_version[0] = ZIC_VERSION; - convert(eitol(thistypecnt), tzh.tzh_ttisgmtcnt); - convert(eitol(thistypecnt), tzh.tzh_ttisstdcnt); diff --git a/packages/glibc/2.15/0050-fdivp-order.patch b/packages/glibc/2.15/0050-fdivp-order.patch deleted file mode 100644 index 159c9c4..0000000 --- a/packages/glibc/2.15/0050-fdivp-order.patch +++ /dev/null @@ -1,27 +0,0 @@ -commit 751728a1f10cdaf35c499c1d508a3a28ccfddc92 -Author: Marek Polacek -Date: Mon Apr 16 11:03:41 2012 +0200 - - Reverse arguments of fdivp in i386 code. - ---- - sysdeps/i386/fpu/bits/fenv.h | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - ---- a/sysdeps/i386/fpu/bits/fenv.h -+++ b/sysdeps/i386/fpu/bits/fenv.h -@@ -1,4 +1,4 @@ --/* Copyright (C) 1997, 1998, 1999, 2000, 2011 Free Software Foundation, Inc. -+/* Copyright (C) 1997-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 -@@ -122,7 +122,7 @@ - # ifdef __SSE_MATH__ - __asm__ __volatile__ ("divss %1, %0" : : "x" (__f), "x" (__g)); - # else -- __asm__ __volatile__ ("fdivp %%st(1), %%st; fwait" -+ __asm__ __volatile__ ("fdivp %%st, %%st(1); fwait" - : "=t" (__f) : "0" (__f), "u" (__g) : "st(1)"); - # endif - (void) &__f; diff --git a/packages/glibc/2.15/chksum b/packages/glibc/2.15/chksum deleted file mode 100644 index abc80a8..0000000 --- a/packages/glibc/2.15/chksum +++ /dev/null @@ -1,12 +0,0 @@ -md5 glibc-2.15.tar.xz 4f9f3b0e780a8c7179a372d34e9452bc -sha1 glibc-2.15.tar.xz 0a7936be3bd0562b076b95dacb7c9daa3dbc83fc -sha256 glibc-2.15.tar.xz 321ec482abdc27b03244f7b345ee22dc431bc55daf9c000a4e7b040fbdbecb50 -sha512 glibc-2.15.tar.xz fc8bc407cd9edfd79bd286d28c84e0b8224e1f57c1d318e73da098a9693257d78970178fd59f487f0321a079fcb772e8e78473fab52f091b2addb0a48fe8dcf7 -md5 glibc-2.15.tar.bz2 5335870d75d221370193d543ad9852e8 -sha1 glibc-2.15.tar.bz2 b8dd04538a35fd4c96554ed417cb00823b58a3ee -sha256 glibc-2.15.tar.bz2 bacdb35931149cbf64cb2983207f91a320b7cd866e3b6b6ba57f0b94d74e61ac -sha512 glibc-2.15.tar.bz2 2a730cd826ceb333e301e68cbac0c249342106016fe23f1c994c010ae979d5271fb21edd7e14e115693cad73d1ef7e8d8d7e7704973882488fafb30eab7ac113 -md5 glibc-2.15.tar.gz 96e7bcc79f6508cc2687e667328f3535 -sha1 glibc-2.15.tar.gz 33861d75dfc6e9d176f33c356929da792055146c -sha256 glibc-2.15.tar.gz da6b95d14b722539c2ec02e7ae1221318dba3d27f19c098a882ffa71bb429c20 -sha512 glibc-2.15.tar.gz a12ddb00371e89f437354b8d2026acb4a57c44823821b9caf622d089a2be66f6d8b41fc4b2427921df2f03e61b012b4577e09e0f49fc77ab0a4e54910f0e8f70 diff --git a/packages/glibc/2.15/version.desc b/packages/glibc/2.15/version.desc deleted file mode 100644 index fcfe389..0000000 --- a/packages/glibc/2.15/version.desc +++ /dev/null @@ -1 +0,0 @@ -obsolete='yes' diff --git a/packages/glibc/2.16.0/0000-respect-env-CPPFLAGS.patch b/packages/glibc/2.16.0/0000-respect-env-CPPFLAGS.patch deleted file mode 100644 index be9d0bb..0000000 --- a/packages/glibc/2.16.0/0000-respect-env-CPPFLAGS.patch +++ /dev/null @@ -1,17 +0,0 @@ -Respect environment CPPFLAGS when we run ./configure so we can inject -random -D things without having to set CFLAGS/ASFLAGS - ---- - Makeconfig | 1 + - 1 file changed, 1 insertion(+) - ---- a/Makeconfig -+++ b/Makeconfig -@@ -668,6 +668,7 @@ - $(foreach lib,$(libof-$(basename $(@F))) \ - $(libof-$( -Date: Fri, 15 Apr 2016 13:29:26 +0200 -Subject: [PATCH] Suppress GCC 6 warning about ambiguous 'else' with - -Wparentheses - ---- - nis/nis_call.c | 20 +++++++++++--------- - stdlib/setenv.c | 24 +++++++++++++----------- - 2 files changed, 24 insertions(+), 20 deletions(-) - ---- a/nis/nis_call.c -+++ b/nis/nis_call.c -@@ -681,16 +681,18 @@ - /* Choose which entry should be evicted from the cache. */ - loc = &nis_server_cache[0]; - if (*loc != NULL) -- for (i = 1; i < 16; ++i) -- if (nis_server_cache[i] == NULL) -- { -+ { -+ for (i = 1; i < 16; ++i) -+ if (nis_server_cache[i] == NULL) -+ { -+ loc = &nis_server_cache[i]; -+ break; -+ } -+ else if ((*loc)->uses > nis_server_cache[i]->uses -+ || ((*loc)->uses == nis_server_cache[i]->uses -+ && (*loc)->expires > nis_server_cache[i]->expires)) - loc = &nis_server_cache[i]; -- break; -- } -- else if ((*loc)->uses > nis_server_cache[i]->uses -- || ((*loc)->uses == nis_server_cache[i]->uses -- && (*loc)->expires > nis_server_cache[i]->expires)) -- loc = &nis_server_cache[i]; -+ } - old = *loc; - *loc = new; - ---- a/stdlib/setenv.c -+++ b/stdlib/setenv.c -@@ -327,18 +327,20 @@ - ep = __environ; - if (ep != NULL) - while (*ep != NULL) -- if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -- { -- /* Found it. Remove this pointer by moving later ones back. */ -- char **dp = ep; -+ { -+ if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -+ { -+ /* Found it. Remove this pointer by moving later ones back. */ -+ char **dp = ep; - -- do -- dp[0] = dp[1]; -- while (*dp++); -- /* Continue the loop in case NAME appears again. */ -- } -- else -- ++ep; -+ do -+ dp[0] = dp[1]; -+ while (*dp++); -+ /* Continue the loop in case NAME appears again. */ -+ } -+ else -+ ++ep; -+ } - - UNLOCK; - diff --git a/packages/glibc/2.16.0/0002-fix-signed-shift-overlow.patch b/packages/glibc/2.16.0/0002-fix-signed-shift-overlow.patch deleted file mode 100644 index 3b2ef40..0000000 --- a/packages/glibc/2.16.0/0002-fix-signed-shift-overlow.patch +++ /dev/null @@ -1,97 +0,0 @@ -commit 5542236837c5c41435f8282ec92799f480c36f18 -Author: Paul Eggert -Date: Tue Jul 21 22:50:29 2015 -0700 - - Port the 0x7efe...feff pattern to GCC 6. - - See Steve Ellcey's bug report in: - https://sourceware.org/ml/libc-alpha/2015-07/msg00673.html - * string/memrchr.c (MEMRCHR): - * string/rawmemchr.c (RAWMEMCHR): - * string/strchr.c (strchr): - * string/strchrnul.c (STRCHRNUL): - Rewrite code to avoid issues with signed shift overflow. - ---- - string/memrchr.c | 11 ++--------- - string/rawmemchr.c | 11 ++--------- - string/strchr.c | 9 ++------- - string/strchrnul.c | 9 ++------- - 4 files changed, 8 insertions(+), 32 deletions(-) - ---- a/string/memrchr.c -+++ b/string/memrchr.c -@@ -96,15 +96,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/rawmemchr.c -+++ b/string/rawmemchr.c -@@ -83,15 +83,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchr.c -+++ b/string/strchr.c -@@ -64,13 +64,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchrnul.c -+++ b/string/strchrnul.c -@@ -62,13 +62,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); diff --git a/packages/glibc/2.16.0/0003-dl-openat64-variadic.patch b/packages/glibc/2.16.0/0003-dl-openat64-variadic.patch deleted file mode 100644 index 552db12..0000000 --- a/packages/glibc/2.16.0/0003-dl-openat64-variadic.patch +++ /dev/null @@ -1,197 +0,0 @@ -commit 9dd346ff431fc761f1b748bd4da8bb59f7652094 -Author: Joseph Myers -Date: Tue Oct 20 11:54:09 2015 +0000 - - Convert 113 more function definitions to prototype style (files with assertions). - - This mostly automatically-generated patch converts 113 function - definitions in glibc from old-style K&R to prototype-style. Following - my other recent such patches, this one deals with the case of function - definitions in files that either contain assertions or where grep - suggested they might contain assertions - and thus where it isn't - possible to use a simple object code comparison as a sanity check on - the correctness of the patch, because line numbers are changed. - - A few such automatically-generated changes needed to be supplemented - by manual changes for the result to compile. openat64 had a prototype - declaration with "..." but an old-style definition in - sysdeps/unix/sysv/linux/dl-openat64.c, and "..." needed adding to the - generated prototype in the definition (I've filed - for diagnosing - such cases in GCC; the old state was undefined behavior not requiring - a diagnostic, but one seems a good idea). In addition, as Florian has - noted regparm attribute mismatches between declaration and definition - are only diagnosed for prototype definitions, and five functions - needed internal_function added to their definitions (in the case of - __pthread_mutex_cond_lock, via the macro definition of - __pthread_mutex_lock) to compile on i386. - - After this patch is in, remaining old-style definitions are probably - most readily fixed manually before we can turn on - -Wold-style-definition for all builds. - - Tested for x86_64 and x86 (testsuite). - - * crypt/md5-crypt.c (__md5_crypt_r): Convert to prototype-style - function definition. - * crypt/sha256-crypt.c (__sha256_crypt_r): Likewise. - * crypt/sha512-crypt.c (__sha512_crypt_r): Likewise. - * debug/backtracesyms.c (__backtrace_symbols): Likewise. - * elf/dl-minimal.c (_itoa): Likewise. - * hurd/hurdmalloc.c (malloc): Likewise. - (free): Likewise. - (realloc): Likewise. - * inet/inet6_option.c (inet6_option_space): Likewise. - (inet6_option_init): Likewise. - (inet6_option_append): Likewise. - (inet6_option_alloc): Likewise. - (inet6_option_next): Likewise. - (inet6_option_find): Likewise. - * io/ftw.c (FTW_NAME): Likewise. - (NFTW_NAME): Likewise. - (NFTW_NEW_NAME): Likewise. - (NFTW_OLD_NAME): Likewise. - * libio/iofwide.c (_IO_fwide): Likewise. - * libio/strops.c (_IO_str_init_static_internal): Likewise. - (_IO_str_init_static): Likewise. - (_IO_str_init_readonly): Likewise. - (_IO_str_overflow): Likewise. - (_IO_str_underflow): Likewise. - (_IO_str_count): Likewise. - (_IO_str_seekoff): Likewise. - (_IO_str_pbackfail): Likewise. - (_IO_str_finish): Likewise. - * libio/wstrops.c (_IO_wstr_init_static): Likewise. - (_IO_wstr_overflow): Likewise. - (_IO_wstr_underflow): Likewise. - (_IO_wstr_count): Likewise. - (_IO_wstr_seekoff): Likewise. - (_IO_wstr_pbackfail): Likewise. - (_IO_wstr_finish): Likewise. - * locale/programs/localedef.c (normalize_codeset): Likewise. - * locale/programs/locarchive.c (add_locale_to_archive): Likewise. - (add_locales_to_archive): Likewise. - (delete_locales_from_archive): Likewise. - * malloc/malloc.c (__libc_mallinfo): Likewise. - * math/gen-auto-libm-tests.c (init_fp_formats): Likewise. - * misc/tsearch.c (__tfind): Likewise. - * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Likewise. - * nptl/pthread_attr_getdetachstate.c - (__pthread_attr_getdetachstate): Likewise. - * nptl/pthread_attr_getguardsize.c (pthread_attr_getguardsize): - Likewise. - * nptl/pthread_attr_getinheritsched.c - (__pthread_attr_getinheritsched): Likewise. - * nptl/pthread_attr_getschedparam.c - (__pthread_attr_getschedparam): Likewise. - * nptl/pthread_attr_getschedpolicy.c - (__pthread_attr_getschedpolicy): Likewise. - * nptl/pthread_attr_getscope.c (__pthread_attr_getscope): - Likewise. - * nptl/pthread_attr_getstack.c (__pthread_attr_getstack): - Likewise. - * nptl/pthread_attr_getstackaddr.c (__pthread_attr_getstackaddr): - Likewise. - * nptl/pthread_attr_getstacksize.c (__pthread_attr_getstacksize): - Likewise. - * nptl/pthread_attr_init.c (__pthread_attr_init_2_1): Likewise. - (__pthread_attr_init_2_0): Likewise. - * nptl/pthread_attr_setdetachstate.c - (__pthread_attr_setdetachstate): Likewise. - * nptl/pthread_attr_setguardsize.c (pthread_attr_setguardsize): - Likewise. - * nptl/pthread_attr_setinheritsched.c - (__pthread_attr_setinheritsched): Likewise. - * nptl/pthread_attr_setschedparam.c - (__pthread_attr_setschedparam): Likewise. - * nptl/pthread_attr_setschedpolicy.c - (__pthread_attr_setschedpolicy): Likewise. - * nptl/pthread_attr_setscope.c (__pthread_attr_setscope): - Likewise. - * nptl/pthread_attr_setstack.c (__pthread_attr_setstack): - Likewise. - * nptl/pthread_attr_setstackaddr.c (__pthread_attr_setstackaddr): - Likewise. - * nptl/pthread_attr_setstacksize.c (__pthread_attr_setstacksize): - Likewise. - * nptl/pthread_condattr_setclock.c (pthread_condattr_setclock): - Likewise. - * nptl/pthread_create.c (__find_in_stack_list): Likewise. - * nptl/pthread_getattr_np.c (pthread_getattr_np): Likewise. - * nptl/pthread_mutex_cond_lock.c (__pthread_mutex_lock): Define to - use internal_function. - * nptl/pthread_mutex_init.c (__pthread_mutex_init): Convert to - prototype-style function definition. - * nptl/pthread_mutex_lock.c (__pthread_mutex_lock): Likewise. - (__pthread_mutex_cond_lock_adjust): Likewise. Use - internal_function. - * nptl/pthread_mutex_timedlock.c (pthread_mutex_timedlock): - Convert to prototype-style function definition. - * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): - Likewise. - * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_usercnt): - Likewise. - (__pthread_mutex_unlock): Likewise. - * nptl_db/td_ta_clear_event.c (td_ta_clear_event): Likewise. - * nptl_db/td_ta_set_event.c (td_ta_set_event): Likewise. - * nptl_db/td_thr_clear_event.c (td_thr_clear_event): Likewise. - * nptl_db/td_thr_event_enable.c (td_thr_event_enable): Likewise. - * nptl_db/td_thr_set_event.c (td_thr_set_event): Likewise. - * nss/makedb.c (process_input): Likewise. - * posix/fnmatch.c (__strchrnul): Likewise. - (__wcschrnul): Likewise. - (fnmatch): Likewise. - * posix/fnmatch_loop.c (FCT): Likewise. - * posix/glob.c (globfree): Likewise. - (__glob_pattern_type): Likewise. - (__glob_pattern_p): Likewise. - * posix/regcomp.c (re_compile_pattern): Likewise. - (re_set_syntax): Likewise. - (re_compile_fastmap): Likewise. - (regcomp): Likewise. - (regerror): Likewise. - (regfree): Likewise. - * posix/regexec.c (regexec): Likewise. - (re_match): Likewise. - (re_search): Likewise. - (re_match_2): Likewise. - (re_search_2): Likewise. - (re_search_stub): Likewise. Use internal_function - (re_copy_regs): Likewise. - (re_set_registers): Convert to prototype-style function - definition. - (prune_impossible_nodes): Likewise. Use internal_function. - * resolv/inet_net_pton.c (inet_net_pton): Convert to - prototype-style function definition. - (inet_net_pton_ipv4): Likewise. - * stdlib/strtod_l.c (____STRTOF_INTERNAL): Likewise. - * sysdeps/pthread/aio_cancel.c (aio_cancel): Likewise. - * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise. - * sysdeps/pthread/timer_delete.c (timer_delete): Likewise. - * sysdeps/unix/sysv/linux/dl-openat64.c (openat64): Likewise. - Make variadic. - * time/strptime_l.c (localtime_r): Convert to prototype-style - function definition. - * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Likewise. - * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Likewise. - * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Likewise. - * wcsmbs/wcsrtombs.c (__wcsrtombs): Likewise. - ---- - sysdeps/unix/sysv/linux/dl-openat64.c | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - ---- a/sysdeps/unix/sysv/linux/dl-openat64.c -+++ b/sysdeps/unix/sysv/linux/dl-openat64.c -@@ -23,10 +23,7 @@ - - - int --openat64 (dfd, file, oflag) -- int dfd; -- const char *file; -- int oflag; -+openat64 (int dfd, const char *file, int oflag, ...) - { - assert ((oflag & O_CREAT) == 0); - diff --git a/packages/glibc/2.16.0/0004-unused-variables.patch b/packages/glibc/2.16.0/0004-unused-variables.patch deleted file mode 100644 index db6f1b4..0000000 --- a/packages/glibc/2.16.0/0004-unused-variables.patch +++ /dev/null @@ -1,151 +0,0 @@ -commit 6565fcb6e189d67b5a3f321453daebb805056d73 -Author: Wilco Dijkstra -Date: Fri Sep 18 20:27:20 2015 +0100 - - Fix several build failures with GCC6 due to unused static variables. - - 2015-09-18 Wilco Dijkstra - - * resolv/base64.c (rcsid): Remove unused static. - * sysdeps/ieee754/dbl-64/atnat2.h (qpi1): Remove unused - static. (tqpi1): Likewise. - * sysdeps/ieee754/dbl-64/uexp.h (one): Likewise. - * sysdeps/ieee754/dbl-64/upow.h (sqrt_2): Likewise. - * sysdeps/ieee754/flt-32/e_log10f.c (one): Likewise. - * sysdeps/ieee754/flt-32/s_cosf.c (one): Likewise. - * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (zero): Likewise. - * sysdeps/ieee754/ldbl-128/s_erfl.c (half): Likewise. - * sysdeps/ieee754/ldbl-128/s_log1pl.c (maxlog): Likewise. - * timezone/private.h (time_t_min): Likewise. (time_t_max): - Likewise. - ---- - resolv/base64.c | 4 ---- - sysdeps/ieee754/dbl-64/atnat2.h | 4 ---- - sysdeps/ieee754/dbl-64/uexp.h | 2 +- - sysdeps/ieee754/dbl-64/upow.h | 2 -- - sysdeps/ieee754/flt-32/e_log10f.c | 2 -- - sysdeps/ieee754/flt-32/s_cosf.c | 2 -- - sysdeps/ieee754/ldbl-128/e_lgammal_r.c | 1 - - sysdeps/ieee754/ldbl-128/s_erfl.c | 1 - - sysdeps/ieee754/ldbl-128/s_log1pl.c | 1 - - 9 files changed, 1 insertion(+), 18 deletions(-) - ---- a/resolv/base64.c -+++ b/resolv/base64.c -@@ -40,10 +40,6 @@ - * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. - */ - --#if !defined(LINT) && !defined(CODECENTER) --static const char rcsid[] = "$BINDId: base64.c,v 8.7 1999/10/13 16:39:33 vixie Exp $"; --#endif /* not lint */ -- - #include - #include - #include ---- a/sysdeps/ieee754/dbl-64/atnat2.h -+++ b/sysdeps/ieee754/dbl-64/atnat2.h -@@ -68,10 +68,8 @@ - /**/ hpi1 = {{0x3c91a626, 0x33145c07} }, /* pi/2-hpi */ - /**/ mhpi = {{0xbff921fb, 0x54442d18} }, /* -pi/2 */ - /**/ qpi = {{0x3fe921fb, 0x54442d18} }, /* pi/4 */ --/**/ qpi1 = {{0x3c81a626, 0x33145c07} }, /* pi/4-qpi */ - /**/ mqpi = {{0xbfe921fb, 0x54442d18} }, /* -pi/4 */ - /**/ tqpi = {{0x4002d97c, 0x7f3321d2} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x3c9a7939, 0x4c9e8a0a} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0xc002d97c, 0x7f3321d2} }, /* -3pi/4 */ - /**/ u1 = {{0x3c314c2a, 0x00000000} }, /* 9.377e-19 */ - /**/ u2 = {{0x3bf955e4, 0x00000000} }, /* 8.584e-20 */ -@@ -138,10 +136,8 @@ - /**/ hpi1 = {{0x33145c07, 0x3c91a626} }, /* pi/2-hpi */ - /**/ mhpi = {{0x54442d18, 0xbff921fb} }, /* -pi/2 */ - /**/ qpi = {{0x54442d18, 0x3fe921fb} }, /* pi/4 */ --/**/ qpi1 = {{0x33145c07, 0x3c81a626} }, /* pi/4-qpi */ - /**/ mqpi = {{0x54442d18, 0xbfe921fb} }, /* -pi/4 */ - /**/ tqpi = {{0x7f3321d2, 0x4002d97c} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x4c9e8a0a, 0x3c9a7939} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0x7f3321d2, 0xc002d97c} }, /* -3pi/4 */ - /**/ u1 = {{0x00000000, 0x3c314c2a} }, /* 9.377e-19 */ - /**/ u2 = {{0x00000000, 0x3bf955e4} }, /* 8.584e-20 */ ---- a/sysdeps/ieee754/dbl-64/uexp.h -+++ b/sysdeps/ieee754/dbl-64/uexp.h -@@ -29,7 +29,7 @@ - - #include "mydefs.h" - --const static double one = 1.0, zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, -+const static double zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, - err_0 = 1.000014, err_1 = 0.000016; - const static int4 bigint = 0x40862002, - badint = 0x40876000,smallint = 0x3C8fffff; ---- a/sysdeps/ieee754/dbl-64/upow.h -+++ b/sysdeps/ieee754/dbl-64/upow.h -@@ -35,7 +35,6 @@ - /**/ INF = {{0x7ff00000, 0x00000000}}, /* INF */ - /**/ nINF = {{0xfff00000, 0x00000000}}, /* -INF */ - /**/ NaNQ = {{0x7ff80000, 0x00000000}}, /* NaNQ */ --/**/ sqrt_2 = {{0x3ff6a09e, 0x667f3bcc}}, /* sqrt(2) */ - /**/ ln2a = {{0x3fe62e42, 0xfefa3800}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x3d2ef357, 0x93c76730}}, /* ln(2)-ln2a */ - /**/ bigu = {{0x4297ffff, 0xfffffd2c}}, /* 1.5*2**42 -724*2**-10 */ -@@ -50,7 +49,6 @@ - /**/ INF = {{0x00000000, 0x7ff00000}}, /* INF */ - /**/ nINF = {{0x00000000, 0xfff00000}}, /* -INF */ - /**/ NaNQ = {{0x00000000, 0x7ff80000}}, /* NaNQ */ --/**/ sqrt_2 = {{0x667f3bcc, 0x3ff6a09e}}, /* sqrt(2) */ - /**/ ln2a = {{0xfefa3800, 0x3fe62e42}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x93c76730, 0x3d2ef357}}, /* ln(2)-ln2a */ - /**/ bigu = {{0xfffffd2c, 0x4297ffff}}, /* 1.5*2**42 -724*2**-10 */ ---- a/sysdeps/ieee754/flt-32/e_log10f.c -+++ b/sysdeps/ieee754/flt-32/e_log10f.c -@@ -22,8 +22,6 @@ - log10_2hi = 3.0102920532e-01, /* 0x3e9a2080 */ - log10_2lo = 7.9034151668e-07; /* 0x355427db */ - --static const float zero = 0.0; -- - float - __ieee754_log10f(float x) - { ---- a/sysdeps/ieee754/flt-32/s_cosf.c -+++ b/sysdeps/ieee754/flt-32/s_cosf.c -@@ -21,8 +21,6 @@ - #include - #include - --static const float one=1.0; -- - float __cosf(float x) - { - float y[2],z=0.0; ---- a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -+++ b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -@@ -74,7 +74,6 @@ - static const long double PIL = 3.1415926535897932384626433832795028841972E0L; - static const long double MAXLGM = 1.0485738685148938358098967157129705071571E4928L; - static const long double one = 1.0L; --static const long double zero = 0.0L; - static const long double huge = 1.0e4000L; - - /* log gamma(x) = ( x - 0.5 ) * log(x) - x + LS2PI + 1/x P(1/x^2) ---- a/sysdeps/ieee754/ldbl-128/s_erfl.c -+++ b/sysdeps/ieee754/ldbl-128/s_erfl.c -@@ -138,7 +138,6 @@ - - static const long double - tiny = 1e-4931L, -- half = 0.5L, - one = 1.0L, - two = 2.0L, - /* 2/sqrt(pi) - 1 */ ---- a/sysdeps/ieee754/ldbl-128/s_log1pl.c -+++ b/sysdeps/ieee754/ldbl-128/s_log1pl.c -@@ -116,7 +116,6 @@ - - static const long double sqrth = 0.7071067811865475244008443621048490392848L; - /* ln (2^16384 * (1 - 2^-113)) */ --static const long double maxlog = 1.1356523406294143949491931077970764891253E4L; - static const long double zero = 0.0L; - - long double diff --git a/packages/glibc/2.16.0/0005-misleading-indentation.patch b/packages/glibc/2.16.0/0005-misleading-indentation.patch deleted file mode 100644 index 8e08259..0000000 --- a/packages/glibc/2.16.0/0005-misleading-indentation.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 976ef870542580cf5fed896c2c652b3e1a95f9da -Author: Steve Ellcey -Date: Fri Dec 11 09:19:37 2015 -0800 - - Fix indentation. - - * sysdeps/ieee754/flt-32/k_rem_pio2f.c (__kernel_rem_pio2f): - Fix indentation. - ---- - sysdeps/ieee754/flt-32/k_rem_pio2f.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - ---- a/sysdeps/ieee754/flt-32/k_rem_pio2f.c -+++ b/sysdeps/ieee754/flt-32/k_rem_pio2f.c -@@ -65,7 +65,9 @@ - - /* compute q[0],q[1],...q[jk] */ - for (i=0;i<=jk;i++) { -- for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; q[i] = fw; -+ for(j=0,fw=0.0;j<=jx;j++) -+ fw += x[j]*f[jx+i-j]; -+ q[i] = fw; - } - - jz = jk; diff --git a/packages/glibc/2.16.0/0006-dl-open-array-bounds.patch b/packages/glibc/2.16.0/0006-dl-open-array-bounds.patch deleted file mode 100644 index 4df8346..0000000 --- a/packages/glibc/2.16.0/0006-dl-open-array-bounds.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 328c44c3670ebf6c1bd790acddce65a12998cd6c -Author: Roland McGrath -Date: Fri Apr 17 12:11:58 2015 -0700 - - Fuller check for invalid NSID in _dl_open. - ---- - elf/dl-open.c | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - ---- a/elf/dl-open.c -+++ b/elf/dl-open.c -@@ -609,8 +609,14 @@ - /* Never allow loading a DSO in a namespace which is empty. Such - direct placements is only causing problems. Also don't allow - loading into a namespace used for auditing. */ -- else if (__builtin_expect (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER, 0) -- && (GL(dl_ns)[nsid]._ns_nloaded == 0 -+ else if (__glibc_unlikely (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER) -+ && (__glibc_unlikely (nsid < 0 || nsid >= GL(dl_nns)) -+ /* This prevents the [NSID] index expressions from being -+ evaluated, so the compiler won't think that we are -+ accessing an invalid index here in the !SHARED case where -+ DL_NNS is 1 and so any NSID != 0 is invalid. */ -+ || DL_NNS == 1 -+ || GL(dl_ns)[nsid]._ns_nloaded == 0 - || GL(dl_ns)[nsid]._ns_loaded->l_auditing)) - _dl_signal_error (EINVAL, file, NULL, - N_("invalid target namespace in dlmopen()")); diff --git a/packages/glibc/2.16.0/0007-i386-x86_64-revert-clone-cfi.patch b/packages/glibc/2.16.0/0007-i386-x86_64-revert-clone-cfi.patch deleted file mode 100644 index 30e8929..0000000 --- a/packages/glibc/2.16.0/0007-i386-x86_64-revert-clone-cfi.patch +++ /dev/null @@ -1,51 +0,0 @@ -revert cfi additions to clone on i386/x86_64 to workaround problems in -gcc's unwinder code. this is not a bug in glibc, it triggers problems -elsewhere. this cfi code does not gain us a whole lot anyways. - -http://gcc.gnu.org/ml/gcc/2006-12/msg00293.html - ---- - sysdeps/unix/sysv/linux/i386/clone.S | 4 ---- - sysdeps/unix/sysv/linux/x86_64/clone.S | 4 ---- - 2 files changed, 8 deletions(-) - ---- a/sysdeps/unix/sysv/linux/i386/clone.S -+++ b/sysdeps/unix/sysv/linux/i386/clone.S -@@ -119,9 +119,6 @@ - ret - - L(thread_start): -- cfi_startproc; -- /* Clearing frame pointer is insufficient, use CFI. */ -- cfi_undefined (eip); - /* Note: %esi is zero. */ - movl %esi,%ebp /* terminate the stack frame */ - #ifdef RESET_PID -@@ -154,7 +151,6 @@ - jmp L(haspid) - .previous - #endif -- cfi_endproc; - - cfi_startproc - PSEUDO_END (BP_SYM (__clone)) ---- a/sysdeps/unix/sysv/linux/x86_64/clone.S -+++ b/sysdeps/unix/sysv/linux/x86_64/clone.S -@@ -88,9 +88,6 @@ - ret - - L(thread_start): -- cfi_startproc; -- /* Clearing frame pointer is insufficient, use CFI. */ -- cfi_undefined (rip); - /* Clear the frame pointer. The ABI suggests this be done, to mark - the outermost frame obviously. */ - xorl %ebp, %ebp -@@ -115,7 +112,6 @@ - /* Call exit with return value from function call. */ - movq %rax, %rdi - call HIDDEN_JUMPTARGET (_exit) -- cfi_endproc; - - cfi_startproc; - PSEUDO_END (BP_SYM (__clone)) diff --git a/packages/glibc/2.16.0/0008-disable-ldconfig.patch b/packages/glibc/2.16.0/0008-disable-ldconfig.patch deleted file mode 100644 index 49f39b5..0000000 --- a/packages/glibc/2.16.0/0008-disable-ldconfig.patch +++ /dev/null @@ -1,19 +0,0 @@ -do not bother running ldconfig on DESTDIR. it wants to write the temp cache -file outside of the chroot. doesnt matter anyways as we wont use the cache -results (portage will rebuild cache), so running ldconfig is simply a waste -of time. - ---- - Makefile | 1 + - 1 file changed, 1 insertion(+) - ---- a/Makefile -+++ b/Makefile -@@ -105,6 +105,7 @@ - rm -f $(symbolic-link-list) - - install: -+dont-bother-with-destdir: - -test ! -x $(common-objpfx)elf/ldconfig || LC_ALL=C LANGUAGE=C \ - $(common-objpfx)elf/ldconfig $(addprefix -r ,$(install_root)) \ - $(slibdir) $(libdir) diff --git a/packages/glibc/2.16.0/0009-Fix-combreloc-test-BSD-grep.patch b/packages/glibc/2.16.0/0009-Fix-combreloc-test-BSD-grep.patch deleted file mode 100644 index e1d7dec..0000000 --- a/packages/glibc/2.16.0/0009-Fix-combreloc-test-BSD-grep.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 61d5f9c09b3157db76bd1a393e248c262a8d9dd4 Mon Sep 17 00:00:00 2001 -From: Alexey Neyman -Date: Wed, 8 Mar 2017 14:31:10 -0800 -Subject: [PATCH] Fix combreloc test with BSD grep - -The test for "-z combreloc" fails when cross-compiling on a machine -that uses BSD grep (e.g. on macos). grep complains about empty -subexpression and exits with non-zero status, which is interpreted -by configure as "not found". As a result, support for "-z combreloc" -(HAVE_Z_COMBRELOC) is not detected, leading to link failure on SPARC. - - * configure.ac: Avoid empty subexpression in grep. - -Signed-off-by: Alexey Neyman ---- - configure | 2 +- - configure.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/configure -+++ b/configure -@@ -6440,7 +6440,7 @@ - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } - then -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no ---- a/configure.in -+++ b/configure.in -@@ -1586,7 +1586,7 @@ - dnl introducing new options this is not easily doable. Instead use a tool - dnl which always is cross-platform: readelf. To detect whether -z combreloc - dnl look for a section named .rel.dyn. -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/packages/glibc/2.16.0/0010-queue-header-updates.patch b/packages/glibc/2.16.0/0010-queue-header-updates.patch deleted file mode 100644 index f6515e2..0000000 --- a/packages/glibc/2.16.0/0010-queue-header-updates.patch +++ /dev/null @@ -1,86 +0,0 @@ -grab some updates from FreeBSD - -http://bugs.gentoo.org/201979 - ---- - misc/sys/queue.h | 36 ++++++++++++++++++++++++++++++++++++ - 1 file changed, 36 insertions(+) - ---- a/misc/sys/queue.h -+++ b/misc/sys/queue.h -@@ -136,6 +136,11 @@ - (var); \ - (var) = ((var)->field.le_next)) - -+#define LIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = LIST_FIRST((head)); \ -+ (var) && ((tvar) = LIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - /* - * List access methods. - */ -@@ -197,6 +202,16 @@ - #define SLIST_FOREACH(var, head, field) \ - for((var) = (head)->slh_first; (var); (var) = (var)->field.sle_next) - -+#define SLIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = SLIST_FIRST((head)); \ -+ (var) && ((tvar) = SLIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ -+#define SLIST_FOREACH_PREVPTR(var, varp, head, field) \ -+ for ((varp) = &SLIST_FIRST((head)); \ -+ ((var) = *(varp)) != NULL; \ -+ (varp) = &SLIST_NEXT((var), field)) -+ - /* - * Singly-linked List access methods. - */ -@@ -242,6 +257,12 @@ - (head)->stqh_last = &(elm)->field.stqe_next; \ - } while (/*CONSTCOND*/0) - -+#define STAILQ_LAST(head, type, field) \ -+ (STAILQ_EMPTY((head)) ? \ -+ NULL : \ -+ ((struct type *)(void *) \ -+ ((char *)((head)->stqh_last) - __offsetof(struct type, field)))) -+ - #define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ - if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\ - (head)->stqh_last = &(elm)->field.stqe_next; \ -@@ -271,6 +292,11 @@ - (var); \ - (var) = ((var)->field.stqe_next)) - -+#define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = STAILQ_FIRST((head)); \ -+ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - #define STAILQ_CONCAT(head1, head2) do { \ - if (!STAILQ_EMPTY((head2))) { \ - *(head1)->stqh_last = (head2)->stqh_first; \ -@@ -437,11 +463,21 @@ - (var); \ - (var) = ((var)->field.tqe_next)) - -+#define TAILQ_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = TAILQ_FIRST((head)); \ -+ (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - #define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ - for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last)); \ - (var); \ - (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last))) - -+#define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar) \ -+ for ((var) = TAILQ_LAST((head), headname); \ -+ (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \ -+ (var) = (tvar)) -+ - #define TAILQ_CONCAT(head1, head2, field) do { \ - if (!TAILQ_EMPTY(head2)) { \ - *(head1)->tqh_last = (head2)->tqh_first; \ diff --git a/packages/glibc/2.16.0/0011-localedef-fix-trampoline.patch b/packages/glibc/2.16.0/0011-localedef-fix-trampoline.patch deleted file mode 100644 index e6392c1..0000000 --- a/packages/glibc/2.16.0/0011-localedef-fix-trampoline.patch +++ /dev/null @@ -1,56 +0,0 @@ -# DP: Description: Fix localedef segfault when run under exec-shield, -# PaX or similar. (#231438, #198099) -# DP: Dpatch Author: James Troup -# DP: Patch Author: (probably) Jakub Jelinek -# DP: Upstream status: Unknown -# DP: Status Details: Unknown -# DP: Date: 2004-03-16 ---- -# locale/programs/3level.h | 36 ++++++++++++++++++++++++++++++++++++ -# 1 file changed, 36 insertions(+) -# ---- a/locale/programs/3level.h -+++ b/locale/programs/3level.h -@@ -202,6 +202,42 @@ - } - } - } -+ -+/* GCC ATM seems to do a poor job with pointers to nested functions passed -+ to inlined functions. Help it a little bit with this hack. */ -+#define wchead_table_iterate(tp, fn) \ -+do \ -+ { \ -+ struct wchead_table *t = (tp); \ -+ uint32_t index1; \ -+ for (index1 = 0; index1 < t->level1_size; index1++) \ -+ { \ -+ uint32_t lookup1 = t->level1[index1]; \ -+ if (lookup1 != ((uint32_t) ~0)) \ -+ { \ -+ uint32_t lookup1_shifted = lookup1 << t->q; \ -+ uint32_t index2; \ -+ for (index2 = 0; index2 < (1 << t->q); index2++) \ -+ { \ -+ uint32_t lookup2 = t->level2[index2 + lookup1_shifted]; \ -+ if (lookup2 != ((uint32_t) ~0)) \ -+ { \ -+ uint32_t lookup2_shifted = lookup2 << t->p; \ -+ uint32_t index3; \ -+ for (index3 = 0; index3 < (1 << t->p); index3++) \ -+ { \ -+ struct element_t *lookup3 \ -+ = t->level3[index3 + lookup2_shifted]; \ -+ if (lookup3 != NULL) \ -+ fn ((((index1 << t->q) + index2) << t->p) + index3, \ -+ lookup3); \ -+ } \ -+ } \ -+ } \ -+ } \ -+ } \ -+ } while (0) -+ - #endif - - #ifndef NO_FINALIZE diff --git a/packages/glibc/2.16.0/0012-resolv-dynamic.patch b/packages/glibc/2.16.0/0012-resolv-dynamic.patch deleted file mode 100644 index fcc2f80..0000000 --- a/packages/glibc/2.16.0/0012-resolv-dynamic.patch +++ /dev/null @@ -1,42 +0,0 @@ -ripped from SuSE - -if /etc/resolv.conf is updated, then make sure applications -already running get the updated information. - -http://bugs.gentoo.org/177416 - ---- - resolv/res_libc.c | 15 +++++++++++++++ - 1 file changed, 15 insertions(+) - ---- a/resolv/res_libc.c -+++ b/resolv/res_libc.c -@@ -22,6 +22,7 @@ - #include - #include - #include -+#include - - - /* The following bit is copied from res_data.c (where it is #ifdef'ed -@@ -95,6 +96,20 @@ - __res_maybe_init (res_state resp, int preinit) - { - if (resp->options & RES_INIT) { -+ static time_t last_mtime, last_check; -+ time_t now; -+ struct stat statbuf; -+ -+ time (&now); -+ if (now != last_check) { -+ last_check = now; -+ if (stat (_PATH_RESCONF, &statbuf) == 0 && last_mtime != statbuf.st_mtime) { -+ last_mtime = statbuf.st_mtime; -+ atomicinclock (lock); -+ atomicinc (__res_initstamp); -+ atomicincunlock (lock); -+ } -+ } - if (__res_initstamp != resp->_u._ext.initstamp) { - if (resp->nscount > 0) - __res_iclose (resp, true); diff --git a/packages/glibc/2.16.0/0013-fadvise64_64.patch b/packages/glibc/2.16.0/0013-fadvise64_64.patch deleted file mode 100644 index 3f827ab..0000000 --- a/packages/glibc/2.16.0/0013-fadvise64_64.patch +++ /dev/null @@ -1,27 +0,0 @@ -ripped from Debian - - sysdeps/unix/sysv/linux/posix_fadvise.c | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - ---- a/sysdeps/unix/sysv/linux/posix_fadvise.c -+++ b/sysdeps/unix/sysv/linux/posix_fadvise.c -@@ -34,6 +34,19 @@ - return INTERNAL_SYSCALL_ERRNO (ret, err); - return 0; - #else -+# ifdef __NR_fadvise64_64 -+ INTERNAL_SYSCALL_DECL (err); -+ int ret = INTERNAL_SYSCALL (fadvise64_64, err, 6, fd, -+ __LONG_LONG_PAIR ((long) (offset >> 31), -+ (long) offset), -+ __LONG_LONG_PAIR ((long) (len >> 31), -+ (long) len), -+ advise); -+ if (INTERNAL_SYSCALL_ERROR_P (ret, err)) -+ return INTERNAL_SYSCALL_ERRNO (ret, err); -+ return 0; -+# else - return ENOSYS; -+# endif - #endif - } diff --git a/packages/glibc/2.16.0/0014-assume-pipe2.patch b/packages/glibc/2.16.0/0014-assume-pipe2.patch deleted file mode 100644 index a36b602..0000000 --- a/packages/glibc/2.16.0/0014-assume-pipe2.patch +++ /dev/null @@ -1,43 +0,0 @@ -http://bugs.gentoo.org/250342 -http://sources.redhat.com/bugzilla/show_bug.cgi?id=9685 - -we cant assume sock_cloexec and pipe2 are bound together as the former defines -are found in glibc only while the latter are a combo of kernel headers and -glibc. so if we do a runtime detection of SOCK_CLOEXEC, but pipe2() is a stub -inside of glibc, we hit a problem. for example: - -#include -#include -main() -{ - getgrnam("portage"); - if (!popen("ls", "r")) - perror("popen()"); -} - -getgrnam() will detect that the kernel supports SOCK_CLOEXEC and then set both -__have_sock_cloexec and __have_pipe2 to true. but if glibc was built against -older kernel headers where __NR_pipe2 does not exist, glibc will have a ENOSYS -stub for it. so popen() will always fail as glibc assumes pipe2() works. - ---- - socket/have_sock_cloexec.c | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/socket/have_sock_cloexec.c -+++ b/socket/have_sock_cloexec.c -@@ -15,9 +15,14 @@ - License along with the GNU C Library; if not, see - . */ - -+#include - #include - #include - - #if defined SOCK_CLOEXEC && !defined __ASSUME_SOCK_CLOEXEC - int __have_sock_cloexec; - #endif -+ -+#if defined O_CLOEXEC && !defined __ASSUME_PIPE2 -+int __have_pipe2; -+#endif diff --git a/packages/glibc/2.16.0/0015-china.patch b/packages/glibc/2.16.0/0015-china.patch deleted file mode 100644 index b323cf6..0000000 --- a/packages/glibc/2.16.0/0015-china.patch +++ /dev/null @@ -1,35 +0,0 @@ - - ---- - localedata/locales/zh_TW | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/localedata/locales/zh_TW -+++ b/localedata/locales/zh_TW -@@ -1,7 +1,7 @@ - comment_char % - escape_char / - % --% Chinese language locale for Taiwan R.O.C. -+% Chinese language locale for Taiwan - % charmap: BIG5-CP950 - % - % Original Author: -@@ -17,7 +17,7 @@ - % Reference: http://wwwold.dkuug.dk/JTC1/SC22/WG20/docs/n690.pdf - - LC_IDENTIFICATION --title "Chinese locale for Taiwan R.O.C." -+title "Chinese locale for Taiwan" - source "" - address "" - contact "" -@@ -25,7 +25,7 @@ - tel "" - fax "" - language "Chinese" --territory "Taiwan R.O.C." -+territory "Taiwan" - revision "0.2" - date "2000-08-02" - % diff --git a/packages/glibc/2.16.0/0016-new-valencian-locale.patch b/packages/glibc/2.16.0/0016-new-valencian-locale.patch deleted file mode 100644 index 8f67711..0000000 --- a/packages/glibc/2.16.0/0016-new-valencian-locale.patch +++ /dev/null @@ -1,118 +0,0 @@ -http://bugs.gentoo.org/show_bug.cgi?id=131815 -http://sourceware.org/bugzilla/show_bug.cgi?id=2522 - ---- - localedata/SUPPORTED | 2 - localedata/locales/ca_ES@valencia | 96 ++++++++++++++++++++++++++++++++++++++ - 2 files changed, 98 insertions(+) - ---- a/localedata/SUPPORTED -+++ b/localedata/SUPPORTED -@@ -75,6 +75,8 @@ - ca_ES.UTF-8/UTF-8 \ - ca_ES/ISO-8859-1 \ - ca_ES@euro/ISO-8859-15 \ -+ca_ES.UTF-8@valencia/UTF-8 \ -+ca_ES@valencia/ISO-8859-15 \ - ca_FR.UTF-8/UTF-8 \ - ca_FR/ISO-8859-15 \ - ca_IT.UTF-8/UTF-8 \ ---- /dev/null -+++ b/localedata/locales/ca_ES@valencia -@@ -0,0 +1,96 @@ -+comment_char % -+escape_char / -+% -+% Valencian (southern Catalan) locale for Spain with Euro -+% -+% Note that this locale is almost the same as ca_ES@euro. The point of having -+% a separate locale is only for PO translations, which have a lot of social -+% support and are very appreciated by the Valencian-speaking community. -+% -+% Contact: Jordi Mallach -+% Email: jordi@gnu.org -+% Tel: -+% Fax: -+% Language: ca -+% Territory: ES -+% Option: euro -+% Revision: 1.0 -+% Date: 2006-04-06 -+% Application: general -+% Users: general -+% Repertoiremap: mnemonic,ds -+% Charset: ISO-8859-15 -+% Distribution and use is free, also -+% for commercial purposes. -+ -+LC_IDENTIFICATION -+title "Valencian (southern Catalan) locale for Spain with Euro" -+source "" -+address "" -+contact "Jordi Mallach" -+email "jordi@gnu.org" -+tel "" -+fax "" -+language "Catalan" -+territory "Spain" -+revision "1.0" -+date "2006-04-06" -+% -+category "ca_ES@valencia:2006";LC_IDENTIFICATION -+category "ca_ES@valencia:2006";LC_CTYPE -+category "ca_ES@valencia:2006";LC_COLLATE -+category "ca_ES@valencia:2006";LC_MONETARY -+category "ca_ES@valencia:2006";LC_NUMERIC -+category "ca_ES@valencia:2006";LC_TIME -+category "ca_ES@valencia:2006";LC_MESSAGES -+category "ca_ES@valencia:2006";LC_PAPER -+category "ca_ES@valencia:2006";LC_NAME -+category "ca_ES@valencia:2006";LC_ADDRESS -+category "ca_ES@valencia:2006";LC_TELEPHONE -+category "ca_ES@valencia:2006";LC_MEASUREMENT -+ -+END LC_IDENTIFICATION -+ -+LC_CTYPE -+copy "i18n" -+END LC_CTYPE -+ -+LC_COLLATE -+copy "ca_ES" -+END LC_COLLATE -+ -+LC_MONETARY -+copy "ca_ES" -+END LC_MONETARY -+ -+LC_NUMERIC -+copy "ca_ES" -+END LC_NUMERIC -+ -+LC_TIME -+copy "ca_ES" -+END LC_TIME -+ -+LC_MESSAGES -+copy "ca_ES" -+END LC_MESSAGES -+ -+LC_PAPER -+copy "ca_ES" -+END LC_PAPER -+ -+LC_NAME -+copy "ca_ES" -+END LC_NAME -+ -+LC_ADDRESS -+copy "ca_ES" -+END LC_ADDRESS -+ -+LC_TELEPHONE -+copy "ca_ES" -+END LC_TELEPHONE -+ -+LC_MEASUREMENT -+copy "ca_ES" -+END LC_MEASUREMENT diff --git a/packages/glibc/2.16.0/0017-macos-cross-rpcgen.patch b/packages/glibc/2.16.0/0017-macos-cross-rpcgen.patch deleted file mode 100644 index b439b0f..0000000 --- a/packages/glibc/2.16.0/0017-macos-cross-rpcgen.patch +++ /dev/null @@ -1,34 +0,0 @@ -commit ae7080d30c68cfa0c81ce3422dca948f64a94f50 -Author: Jia Liu -Date: Sat Sep 7 00:01:08 2013 +0800 - - sunrpc/rpc/types.h: fix OS X and FreeBSD build problems - - When I build arm-linux-gcc on OS X, I find glibc will get a build error - in sunrpc/rpc/types.h, so I add __APPLE_CC__ to make OS X build OK. - For FreeBSD, Add __FreeBSD__ to make it build OK, too. - - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00155.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00217.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00240.html - Signed-off-by: Jia Liu - Signed-off-by: Mike Frysinger - ---- - sunrpc/rpc/types.h | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/sunrpc/rpc/types.h -+++ b/sunrpc/rpc/types.h -@@ -69,6 +69,11 @@ - #include - #endif - -+#if defined __APPLE_CC__ || defined __FreeBSD__ -+# define __u_char_defined -+# define __daddr_t_defined -+#endif -+ - #ifndef __u_char_defined - typedef __u_char u_char; - typedef __u_short u_short; diff --git a/packages/glibc/2.16.0/0018-nscd-one-fork.patch b/packages/glibc/2.16.0/0018-nscd-one-fork.patch deleted file mode 100644 index 0d72f07..0000000 --- a/packages/glibc/2.16.0/0018-nscd-one-fork.patch +++ /dev/null @@ -1,46 +0,0 @@ -only fork one to assist in stop-start-daemon assumptions about daemon behavior - -http://bugs.gentoo.org/190785 - ---- - nscd/nscd.c | 15 +++------------ - 1 file changed, 3 insertions(+), 12 deletions(-) - ---- a/nscd/nscd.c -+++ b/nscd/nscd.c -@@ -203,6 +203,9 @@ - exit (0); - } - -+ if (write_pid (_PATH_NSCDPID) < 0) -+ dbg_log ("%s: %s", _PATH_NSCDPID, strerror (errno)); -+ - int nullfd = open (_PATH_DEVNULL, O_RDWR); - if (nullfd != -1) - { -@@ -252,15 +255,6 @@ - for (i = min_close_fd; i < getdtablesize (); i++) - close (i); - -- if (run_mode == RUN_DAEMONIZE) -- { -- pid = fork (); -- if (pid == -1) -- error (EXIT_FAILURE, errno, _("cannot fork")); -- if (pid != 0) -- exit (0); -- } -- - setsid (); - - if (chdir ("/") != 0) -@@ -269,9 +263,6 @@ - - openlog ("nscd", LOG_CONS | LOG_ODELAY, LOG_DAEMON); - -- if (write_pid (_PATH_NSCDPID) < 0) -- dbg_log ("%s: %s", _PATH_NSCDPID, strerror (errno)); -- - if (!init_logfile ()) - dbg_log (_("Could not create log file")); - diff --git a/packages/glibc/2.16.0/0019-hppa-nptl-carlos.patch b/packages/glibc/2.16.0/0019-hppa-nptl-carlos.patch deleted file mode 100644 index 6c2ca8e..0000000 --- a/packages/glibc/2.16.0/0019-hppa-nptl-carlos.patch +++ /dev/null @@ -1,249 +0,0 @@ - - ---- - elf/rtld.c | 10 +++++----- - include/atomic.h | 26 +++++++++++++------------- - nptl/Makefile | 35 ++++++++++++++++++++++++++++++++--- - nptl/pthread_barrier_wait.c | 2 +- - nptl/sysdeps/pthread/Makefile | 2 ++ - stdio-common/Makefile | 2 +- - sunrpc/clnt_udp.c | 2 +- - 7 files changed, 55 insertions(+), 24 deletions(-) - ---- a/elf/rtld.c -+++ b/elf/rtld.c -@@ -393,14 +393,14 @@ - know it is available. We do not have to clear the memory if we - do not have to use the temporary bootstrap_map. Global variables - are initialized to zero by default. */ --#ifndef DONT_USE_BOOTSTRAP_MAP -+#if !defined DONT_USE_BOOTSTRAP_MAP - # ifdef HAVE_BUILTIN_MEMSET - __builtin_memset (bootstrap_map.l_info, '\0', sizeof (bootstrap_map.l_info)); - # else -- for (size_t cnt = 0; -- cnt < sizeof (bootstrap_map.l_info) / sizeof (bootstrap_map.l_info[0]); -- ++cnt) -- bootstrap_map.l_info[cnt] = 0; -+ /* Clear the whole bootstrap_map structure */ -+ for (char *cnt = (char *)&(bootstrap_map); -+ cnt < ((char *)&(bootstrap_map) + sizeof (bootstrap_map)); -+ *cnt++ = '\0'); - # endif - # if USE___THREAD - bootstrap_map.l_tls_modid = 0; ---- a/include/atomic.h -+++ b/include/atomic.h -@@ -184,7 +184,7 @@ - __typeof (*(mem)) __atg5_value = (newvalue); \ - \ - do \ -- __atg5_oldval = *__atg5_memp; \ -+ __atg5_oldval = *(volatile __typeof (mem))__atg5_memp; \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg5_memp, __atg5_value, \ - __atg5_oldval), 0)); \ -@@ -205,7 +205,7 @@ - __typeof (*(mem)) __atg6_value = (value); \ - \ - do \ -- __atg6_oldval = *__atg6_memp; \ -+ __atg6_oldval = *(volatile __typeof (mem))__atg6_memp; \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg6_memp, \ - __atg6_oldval \ -@@ -223,7 +223,7 @@ - __typeof (*(mem)) __atg7_value = (value); \ - \ - do \ -- __atg7_oldv = *__atg7_memp; \ -+ __atg7_oldv = *(volatile __typeof (mem))__atg7_memp; \ - while (__builtin_expect \ - (catomic_compare_and_exchange_bool_acq (__atg7_memp, \ - __atg7_oldv \ -@@ -241,7 +241,7 @@ - __typeof (mem) __atg8_memp = (mem); \ - __typeof (*(mem)) __atg8_value = (value); \ - do { \ -- __atg8_oldval = *__atg8_memp; \ -+ __atg8_oldval = *(volatile __typeof (mem))__atg8_memp; \ - if (__atg8_oldval >= __atg8_value) \ - break; \ - } while (__builtin_expect \ -@@ -258,7 +258,7 @@ - __typeof (mem) __atg9_memp = (mem); \ - __typeof (*(mem)) __atg9_value = (value); \ - do { \ -- __atg9_oldv = *__atg9_memp; \ -+ __atg9_oldv = *(volatile __typeof (mem))__atg9_memp; \ - if (__atg9_oldv >= __atg9_value) \ - break; \ - } while (__builtin_expect \ -@@ -276,7 +276,7 @@ - __typeof (mem) __atg10_memp = (mem); \ - __typeof (*(mem)) __atg10_value = (value); \ - do { \ -- __atg10_oldval = *__atg10_memp; \ -+ __atg10_oldval = *(volatile __typeof (mem))__atg10_memp; \ - if (__atg10_oldval <= __atg10_value) \ - break; \ - } while (__builtin_expect \ -@@ -360,7 +360,7 @@ - \ - do \ - { \ -- __atg11_oldval = *__atg11_memp; \ -+ __atg11_oldval = *(volatile __typeof (mem))__atg11_memp; \ - if (__builtin_expect (__atg11_oldval <= 0, 0)) \ - break; \ - } \ -@@ -399,7 +399,7 @@ - __typeof (*(mem)) __atg14_mask = ((__typeof (*(mem))) 1 << (bit)); \ - \ - do \ -- __atg14_old = (*__atg14_memp); \ -+ __atg14_old = (*(volatile __typeof (mem))__atg14_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg14_memp, \ - __atg14_old | __atg14_mask,\ -@@ -417,7 +417,7 @@ - __typeof (*(mem)) __atg15_mask = (mask); \ - \ - do \ -- __atg15_old = (*__atg15_memp); \ -+ __atg15_old = (*(volatile __typeof (mem))__atg15_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg15_memp, \ - __atg15_old & __atg15_mask, \ -@@ -449,7 +449,7 @@ - __typeof (*(mem)) __atg16_mask = (mask); \ - \ - do \ -- __atg16_old = (*__atg16_memp); \ -+ __atg16_old = (*(volatile __typeof (mem))__atg16_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg16_memp, \ - __atg16_old & __atg16_mask,\ -@@ -467,7 +467,7 @@ - __typeof (*(mem)) __atg17_mask = (mask); \ - \ - do \ -- __atg17_old = (*__atg17_memp); \ -+ __atg17_old = (*(volatile __typeof (mem))__atg17_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg17_memp, \ - __atg17_old | __atg17_mask, \ -@@ -483,7 +483,7 @@ - __typeof (*(mem)) __atg18_mask = (mask); \ - \ - do \ -- __atg18_old = (*__atg18_memp); \ -+ __atg18_old = (*(volatile __typeof (mem))__atg18_memp); \ - while (__builtin_expect \ - (catomic_compare_and_exchange_bool_acq (__atg18_memp, \ - __atg18_old | __atg18_mask,\ -@@ -499,7 +499,7 @@ - __typeof (*(mem)) __atg19_mask = (mask); \ - \ - do \ -- __atg19_old = (*__atg19_memp); \ -+ __atg19_old = (*(volatile __typeof (mem))__atg19_memp); \ - while (__builtin_expect \ - (atomic_compare_and_exchange_bool_acq (__atg19_memp, \ - __atg19_old | __atg19_mask,\ ---- a/nptl/Makefile -+++ b/nptl/Makefile -@@ -266,9 +266,9 @@ - # Files which must not be linked with libpthread. - tests-nolibpthread = tst-unload - --# This sets the stack resource limit to 1023kb, which is not a multiple --# of the page size since every architecture's page size is > 1k. --tst-oddstacklimit-ENV = ; ulimit -s 1023; -+# This sets the stack resource limit to 8193kb, which is not a multiple -+# of the page size since every architecture's page size is 4096 bytes. -+tst-oddstacklimit-ENV = ; ulimit -s 8193; - - gen-as-const-headers = pthread-errnos.sym - -@@ -421,6 +421,35 @@ - CFLAGS-tst-cleanupx4.c += -fexceptions - CFLAGS-tst-oncex3.c += -fexceptions - CFLAGS-tst-oncex4.c += -fexceptions -+ -+ldflags-libgcc_s = --as-needed -lgcc_s --no-as-needed -+LDFLAGS-tst-cancelx2 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx4 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx5 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx6 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx7 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx8 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx9 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx10 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx11 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx12 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx13 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx14 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx15 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx16 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx17 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx18 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx20 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cancelx21 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx0 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx1 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx2 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-cleanupx4 += $(ldflags-libgcc_s) -+LDFLAGS-tst-oncex3 += $(ldflags-libgcc_s) -+LDFLAGS-tst-oncex4 += $(ldflags-libgcc_s) -+ - CFLAGS-tst-align.c += $(stack-align-test-flags) - CFLAGS-tst-align3.c += $(stack-align-test-flags) - CFLAGS-tst-initializers1.c = -W -Wall -Werror ---- a/nptl/pthread_barrier_wait.c -+++ b/nptl/pthread_barrier_wait.c -@@ -63,7 +63,7 @@ - do - lll_futex_wait (&ibarrier->curr_event, event, - ibarrier->private ^ FUTEX_PRIVATE_FLAG); -- while (event == ibarrier->curr_event); -+ while (event == *(volatile unsigned int *)&ibarrier->curr_event); - } - - /* Make sure the init_count is stored locally or in a register. */ ---- a/nptl/sysdeps/pthread/Makefile -+++ b/nptl/sysdeps/pthread/Makefile -@@ -32,7 +32,9 @@ - - ifeq ($(have-forced-unwind),yes) - tests += tst-mqueue8x -+ldflags-libgcc_s = --as-needed -lgcc_s --no-as-needed - CFLAGS-tst-mqueue8x.c += -fexceptions -+LDFLAGS-tst-mqueue8x += $(ldflags-libgcc_s) - endif - endif - ---- a/stdio-common/Makefile -+++ b/stdio-common/Makefile -@@ -76,7 +76,7 @@ - $(SHELL) -e tst-printf.sh $(common-objpfx) '$(run-program-prefix)' - endif - --CFLAGS-vfprintf.c = -Wno-uninitialized -+CFLAGS-vfprintf.c = -Wno-uninitialized -fno-delayed-branch - CFLAGS-vfwprintf.c = -Wno-uninitialized - CFLAGS-tst-printf.c = -Wno-format - CFLAGS-tstdiomisc.c = -Wno-format ---- a/sunrpc/clnt_udp.c -+++ b/sunrpc/clnt_udp.c -@@ -462,7 +462,7 @@ - while (inlen < 0 && errno == EINTR); - if (inlen < 0) - { -- if (errno == EWOULDBLOCK) -+ if (errno == EWOULDBLOCK || errno == EAGAIN) - continue; - cu->cu_error.re_errno = errno; - return (cu->cu_error.re_status = RPC_CANTRECV); diff --git a/packages/glibc/2.16.0/0020-dl_execstack-PaX-support.patch b/packages/glibc/2.16.0/0020-dl_execstack-PaX-support.patch deleted file mode 100644 index cd60905..0000000 --- a/packages/glibc/2.16.0/0020-dl_execstack-PaX-support.patch +++ /dev/null @@ -1,69 +0,0 @@ - With latest versions of glibc, a lot of apps failed on a PaX enabled - system with: - cannot enable executable stack as shared object requires: Permission denied - - This is due to PaX 'exec-protecting' the stack, and ld.so then trying - to make the stack executable due to some libraries not containing the - PT_GNU_STACK section. Bug #32960. (12 Nov 2003). - - Patch also NPTL. Bug #116086. (20 Dec 2005). - ---- - nptl/allocatestack.c | 3 ++- - sysdeps/unix/sysv/linux/dl-execstack.c | 19 ++++++++++++++++--- - 2 files changed, 18 insertions(+), 4 deletions(-) - ---- a/nptl/allocatestack.c -+++ b/nptl/allocatestack.c -@@ -334,7 +334,8 @@ - # error "Define either _STACK_GROWS_DOWN or _STACK_GROWS_UP" - #endif - if (mprotect (stack, len, PROT_READ | PROT_WRITE | PROT_EXEC) != 0) -- return errno; -+ if (errno != EACCES) /* PAX is enabled */ -+ return errno; - - return 0; - } ---- a/sysdeps/unix/sysv/linux/dl-execstack.c -+++ b/sysdeps/unix/sysv/linux/dl-execstack.c -@@ -62,7 +62,10 @@ - else - # endif - { -- result = errno; -+ if (errno == EACCES) /* PAX is enabled */ -+ result = 0; -+ else -+ result = errno; - goto out; - } - } -@@ -88,7 +91,12 @@ - page -= size; - else - { -- if (errno != ENOMEM) /* Unexpected failure mode. */ -+ if (errno == EACCES) /* PAX is enabled */ -+ { -+ result = 0; -+ goto out; -+ } -+ else if (errno != ENOMEM) /* Unexpected failure mode. */ - { - result = errno; - goto out; -@@ -114,7 +122,12 @@ - page += size; - else - { -- if (errno != ENOMEM) /* Unexpected failure mode. */ -+ if (errno == EACCES) /* PAX is enabled */ -+ { -+ result = 0; -+ goto out; -+ } -+ else if (errno != ENOMEM) /* Unexpected failure mode. */ - { - result = errno; - goto out; diff --git a/packages/glibc/2.16.0/0021-pre20040117-pt_pax.patch b/packages/glibc/2.16.0/0021-pre20040117-pt_pax.patch deleted file mode 100644 index 544b3f6..0000000 --- a/packages/glibc/2.16.0/0021-pre20040117-pt_pax.patch +++ /dev/null @@ -1,35 +0,0 @@ - - ---- - elf/elf.h | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - ---- a/elf/elf.h -+++ b/elf/elf.h -@@ -581,6 +581,7 @@ - #define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */ - #define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */ - #define PT_GNU_RELRO 0x6474e552 /* Read-only after relocation */ -+#define PT_PAX_FLAGS 0x65041580 /* Indicates PaX flag markings */ - #define PT_LOSUNW 0x6ffffffa - #define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */ - #define PT_SUNWSTACK 0x6ffffffb /* Stack segment */ -@@ -594,6 +595,18 @@ - #define PF_X (1 << 0) /* Segment is executable */ - #define PF_W (1 << 1) /* Segment is writable */ - #define PF_R (1 << 2) /* Segment is readable */ -+#define PF_PAGEEXEC (1 << 4) /* Enable PAGEEXEC */ -+#define PF_NOPAGEEXEC (1 << 5) /* Disable PAGEEXEC */ -+#define PF_SEGMEXEC (1 << 6) /* Enable SEGMEXEC */ -+#define PF_NOSEGMEXEC (1 << 7) /* Disable SEGMEXEC */ -+#define PF_MPROTECT (1 << 8) /* Enable MPROTECT */ -+#define PF_NOMPROTECT (1 << 9) /* Disable MPROTECT */ -+#define PF_RANDEXEC (1 << 10) /* Enable RANDEXEC */ -+#define PF_NORANDEXEC (1 << 11) /* Disable RANDEXEC */ -+#define PF_EMUTRAMP (1 << 12) /* Enable EMUTRAMP */ -+#define PF_NOEMUTRAMP (1 << 13) /* Disable EMUTRAMP */ -+#define PF_RANDMMAP (1 << 14) /* Enable RANDMMAP */ -+#define PF_NORANDMMAP (1 << 15) /* Disable RANDMMAP */ - #define PF_MASKOS 0x0ff00000 /* OS-specific */ - #define PF_MASKPROC 0xf0000000 /* Processor-specific */ - diff --git a/packages/glibc/2.16.0/0022-tests-sandbox-libdl-paths.patch b/packages/glibc/2.16.0/0022-tests-sandbox-libdl-paths.patch deleted file mode 100644 index 0c51c88..0000000 --- a/packages/glibc/2.16.0/0022-tests-sandbox-libdl-paths.patch +++ /dev/null @@ -1,196 +0,0 @@ -when glibc runs its tests, it does so by invoking the local library loader. -in Gentoo, we build/run inside of our "sandbox" which itself is linked against -libdl (so that it can load libraries and pull out symbols). the trouble -is that when you upgrade from an older glibc to the new one, often times -internal symbols change name or abi. this is normally OK as you cannot use -libc.so from say version 2.3.6 but libpthread.so from say version 2.5, so -we always say "keep all of the glibc libraries from the same build". but -when glibc runs its tests, it uses dynamic paths to point to its new local -copies of libraries. if the test doesnt use libdl, then glibc doesnt add -its path, and when sandbox triggers the loading of libdl, glibc does so -from the host system system. this gets us into the case of all libraries -are from the locally compiled version of glibc except for libdl.so. - -Fix by Wormo - -http://bugs.gentoo.org/56898 - ---- - grp/tst_fgetgrent.sh | 3 ++- - iconvdata/run-iconv-test.sh | 2 +- - iconvdata/tst-table.sh | 5 ++++- - intl/tst-codeset.sh | 3 +++ - intl/tst-gettext.sh | 5 ++++- - intl/tst-gettext2.sh | 5 ++++- - intl/tst-translit.sh | 5 ++++- - malloc/tst-mtrace.sh | 5 ++++- - nptl/tst-tls6.sh | 4 ++-- - posix/globtest.sh | 2 +- - posix/tst-getconf.sh | 5 ++++- - posix/wordexp-tst.sh | 5 ++++- - 12 files changed, 37 insertions(+), 12 deletions(-) - ---- a/grp/tst_fgetgrent.sh -+++ b/grp/tst_fgetgrent.sh -@@ -23,7 +23,8 @@ - rtld_installed_name=$1; shift - - testout=${common_objpfx}/grp/tst_fgetgrent.out --library_path=${common_objpfx} -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn - - result=0 - ---- a/iconvdata/run-iconv-test.sh -+++ b/iconvdata/run-iconv-test.sh -@@ -33,7 +33,7 @@ - export GCONV_PATH - - # We have to have some directories in the library path. --LIBPATH=$codir:$codir/iconvdata -+LIBPATH=$codir:$codir/iconvdata:$codir/dlfcn - - # How the start the iconv(1) program. - ICONV='$codir/elf/ld.so --library-path $LIBPATH --inhibit-rpath ${from}.so \ ---- a/iconvdata/tst-table.sh -+++ b/iconvdata/tst-table.sh -@@ -58,8 +58,11 @@ - irreversible=${charset}.irreversible - fi - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # iconv in one direction. --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-table-from ${charset} \ - > ${objpfx}tst-${charset}.table - ---- a/intl/tst-codeset.sh -+++ b/intl/tst-codeset.sh -@@ -36,6 +36,9 @@ - LOCPATH=${common_objpfx}localedata - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - ${common_objpfx}elf/ld.so --library-path $common_objpfx \ - ${objpfx}tst-codeset > ${objpfx}tst-codeset.out - ---- a/intl/tst-gettext.sh -+++ b/intl/tst-gettext.sh -@@ -50,9 +50,12 @@ - LOCPATH=${common_objpfx}localedata - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # Now run the test. - MALLOC_TRACE=$malloc_trace LOCPATH=${objpfx}localedir:$LOCPATH \ --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-gettext > ${objpfx}tst-gettext.out ${objpfx}domaindir - - exit $? ---- a/intl/tst-gettext2.sh -+++ b/intl/tst-gettext2.sh -@@ -64,8 +64,11 @@ - LOCPATH=${objpfx}domaindir - export LOCPATH - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - # Now run the test. --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${objpfx}tst-gettext2 > ${objpfx}tst-gettext2.out ${objpfx}domaindir && - cmp ${objpfx}tst-gettext2.out - < ${objpfx}tst-translit.out ${objpfx}domaindir - - exit $? ---- a/malloc/tst-mtrace.sh -+++ b/malloc/tst-mtrace.sh -@@ -23,9 +23,12 @@ - status=0 - trap "rm -f ${common_objpfx}malloc/tst-mtrace.leak; exit 1" 1 2 15 - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - MALLOC_TRACE=${common_objpfx}malloc/tst-mtrace.leak \ - LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ --${common_objpfx}elf/ld.so --library-path $common_objpfx \ -+${common_objpfx}elf/ld.so --library-path $library_path \ - ${common_objpfx}malloc/tst-mtrace || status=1 - - if test $status -eq 0 && test -f ${common_objpfx}malloc/mtrace; then ---- a/nptl/tst-tls6.sh -+++ b/nptl/tst-tls6.sh -@@ -5,8 +5,8 @@ - rtld_installed_name=$1; shift - logfile=$common_objpfx/nptl/tst-tls6.out - --# We have to find libc and nptl --library_path=${common_objpfx}:${common_objpfx}nptl -+# We have to find libc and nptl (also libdl in case sandbox is in use) -+library_path=${common_objpfx}:${common_objpfx}nptl:${common_objpfx}/dlfcn - tst_tls5="${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \ - ${common_objpfx}/nptl/tst-tls5" - ---- a/posix/globtest.sh -+++ b/posix/globtest.sh -@@ -18,7 +18,7 @@ - esac - - # We have to find the libc and the NSS modules. --library_path=${common_objpfx}:${common_objpfx}nss:${common_objpfx}nis:${common_objpfx}db2:${common_objpfx}hesiod -+library_path=${common_objpfx}:${common_objpfx}nss:${common_objpfx}nis:${common_objpfx}db2:${common_objpfx}hesiod:${common_objpfx}/dlfcn - - # Since we use `sort' we must make sure to use the same locale everywhere. - LC_ALL=C ---- a/posix/tst-getconf.sh -+++ b/posix/tst-getconf.sh -@@ -10,7 +10,10 @@ - else - rtld_installed_name=$1; shift - runit() { -- ${elf_objpfx}${rtld_installed_name} --library-path ${common_objpfx} "$@" -+ -+ # make sure libdl is also in path in case sandbox is in use -+ library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ ${elf_objpfx}${rtld_installed_name} --library-path ${library_path} "$@" - } - fi - ---- a/posix/wordexp-tst.sh -+++ b/posix/wordexp-tst.sh -@@ -19,8 +19,11 @@ - " - export IFS - -+# make sure libdl is also in path in case sandbox is in use -+library_path=${common_objpfx}:${common_objpfx}/dlfcn -+ - failed=0 --${elf_objpfx}${rtld_installed_name} --library-path ${common_objpfx} \ -+${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \ - ${common_objpfx}posix/wordexp-test '$*' > ${testout}1 - cat <<"EOF" | cmp - ${testout}1 >> $logfile || failed=1 - wordexp returned 0 diff --git a/packages/glibc/2.16.0/0023-dont-build-timezone.patch b/packages/glibc/2.16.0/0023-dont-build-timezone.patch deleted file mode 100644 index dca2a27..0000000 --- a/packages/glibc/2.16.0/0023-dont-build-timezone.patch +++ /dev/null @@ -1,17 +0,0 @@ -timezone data has been split into the package sys-libs/timezone-data - ---- - Makeconfig | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/Makeconfig -+++ b/Makeconfig -@@ -926,7 +926,7 @@ - stdlib stdio-common libio malloc string wcsmbs time dirent \ - grp pwd posix io termios resource misc socket sysvipc gmon \ - gnulib iconv iconvdata wctype manual shadow gshadow po argp \ -- crypt nss localedata timezone rt conform debug \ -+ crypt nss localedata rt conform debug \ - $(add-on-subdirs) $(dlfcn) $(binfmt-subdir) - - ifndef avoid-generated diff --git a/packages/glibc/2.16.0/0024-alpha-xstat.patch b/packages/glibc/2.16.0/0024-alpha-xstat.patch deleted file mode 100644 index a329214..0000000 --- a/packages/glibc/2.16.0/0024-alpha-xstat.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- - sysdeps/unix/sysv/linux/kernel-features.h | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -285,6 +285,11 @@ - # define __ASSUME_GETDENTS32_D_TYPE 1 - #endif - -+/* Starting with version 2.6.4, alpha stat64 syscalls are available. */ -+#if __LINUX_KERNEL_VERSION >= 0x020604 && defined __alpha__ -+# define __ASSUME_STAT64_SYSCALL 1 -+#endif -+ - /* Starting with version 2.5.3, the initial location returned by `brk' - after exec is always rounded up to the next page. */ - #if __LINUX_KERNEL_VERSION >= 132355 diff --git a/packages/glibc/2.16.0/0025-alpha-creat.patch b/packages/glibc/2.16.0/0025-alpha-creat.patch deleted file mode 100644 index 6ef5278..0000000 --- a/packages/glibc/2.16.0/0025-alpha-creat.patch +++ /dev/null @@ -1,17 +0,0 @@ -alpha does not have a __NR_creat - -http://bugs.gentoo.org/227275 -http://sourceware.org/bugzilla/show_bug.cgi?id=6650 - ---- - sysdeps/unix/sysv/linux/wordsize-64/creat64.c | 4 ++++ - 1 file changed, 4 insertions(+) - ---- a/sysdeps/unix/sysv/linux/wordsize-64/creat64.c -+++ b/sysdeps/unix/sysv/linux/wordsize-64/creat64.c -@@ -1 +1,5 @@ - /* Defined as alias for the syscall. */ -+#include -+#ifndef __NR_creat -+#include "../../../../../io/creat64.c" -+#endif diff --git a/packages/glibc/2.16.0/0026-alpha_alpha-add-fdatasync-support.patch b/packages/glibc/2.16.0/0026-alpha_alpha-add-fdatasync-support.patch deleted file mode 100644 index 159d8d0..0000000 --- a/packages/glibc/2.16.0/0026-alpha_alpha-add-fdatasync-support.patch +++ /dev/null @@ -1,122 +0,0 @@ -2009-07-25 Aurelien Jarno - - * sysdeps/unix/sysv/linux/kernel-features.h: define - __ASSUME_FDATASYNC. - * sysdeps/unix/sysv/linux/fdatasync.c: New file. - * sysdeps/unix/sysv/linux/Makefile: compile fdatasync.c with - -fexceptions. - * sysdeps/unix/sysv/linux/syscalls.list: Remove fdatasync. - - sysdeps/unix/sysv/linux/Makefile | 1 - sysdeps/unix/sysv/linux/fdatasync.c | 69 ++++++++++++++++++++++++++++++ - sysdeps/unix/sysv/linux/kernel-features.h | 6 ++ - sysdeps/unix/sysv/linux/syscalls.list | 1 - 4 files changed, 76 insertions(+), 1 deletion(-) - ---- a/sysdeps/unix/sysv/linux/Makefile -+++ b/sysdeps/unix/sysv/linux/Makefile -@@ -23,6 +23,7 @@ - setfsuid setfsgid makedev epoll_pwait signalfd \ - eventfd eventfd_read eventfd_write prlimit - -+CFLAGS-fdatasync.c = -fexceptions - CFLAGS-gethostid.c = -fexceptions - CFLAGS-tst-writev.c += "-DARTIFICIAL_LIMIT=0x80000000-__getpagesize()" - ---- /dev/null -+++ b/sysdeps/unix/sysv/linux/fdatasync.c -@@ -0,0 +1,69 @@ -+/* fdatasync -- synchronize at least the data part of a file with -+ the underlying media. Linux version. -+ -+ Copyright (C) 2007 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 -+ 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 -+ -+#if defined __NR_fdatasync && !defined __ASSUME_FDATASYNC -+static int __have_no_fdatasync; -+#endif -+ -+static int -+do_fdatasync (int fd) -+{ -+#ifdef __ASSUME_FDATASYNC -+ return INLINE_SYSCALL (fdatasync, 1, fd); -+#elif defined __NR_fdatasync -+ if (!__builtin_expect (__have_no_fdatasync, 0)) -+ { -+ int result = INLINE_SYSCALL (fdatasync, 1, fd); -+ if (__builtin_expect (result, 0) != -1 || errno != ENOSYS) -+ return result; -+ -+ __have_no_fdatasync = 1; -+ } -+#endif -+ return INLINE_SYSCALL (fsync, 1, fd); -+} -+ -+int -+__fdatasync (int fd) -+{ -+ if (SINGLE_THREAD_P) -+ return do_fdatasync (fd); -+ -+ int oldtype = LIBC_CANCEL_ASYNC (); -+ -+ int result = do_fdatasync (fd); -+ -+ LIBC_CANCEL_RESET (oldtype); -+ -+ return result; -+} -+ -+weak_alias (__fdatasync, fdatasync) -+ ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -357,6 +357,12 @@ - # define __ASSUME_FUTEX_LOCK_PI 1 - #endif - -+/* Support for fsyncdata syscall was added in 2.6.22 on alpha, but it -+ was already present in 2.0 kernels on other architectures. */ -+#if (!defined __alpha || __LINUX_KERNEL_VERSION >= 0x020616) -+# define __ASSUME_FDATASYNC 1 -+#endif -+ - /* Support for utimensat syscall was added in 2.6.22, on SH - only after 2.6.22-rc1. */ - #if __LINUX_KERNEL_VERSION >= 0x020616 \ ---- a/sysdeps/unix/sysv/linux/syscalls.list -+++ b/sysdeps/unix/sysv/linux/syscalls.list -@@ -13,7 +13,6 @@ - epoll_create1 EXTRA epoll_create1 i:i epoll_create1 - epoll_ctl EXTRA epoll_ctl i:iiip epoll_ctl - epoll_wait EXTRA epoll_wait Ci:ipii epoll_wait --fdatasync - fdatasync Ci:i fdatasync - flock - flock i:ii __flock flock - fork - fork i: __libc_fork __fork fork - get_kernel_syms EXTRA get_kernel_syms i:p get_kernel_syms diff --git a/packages/glibc/2.16.0/0027-fix-parsing-of-numeric-hosts-in-gethostbyname_r.patch b/packages/glibc/2.16.0/0027-fix-parsing-of-numeric-hosts-in-gethostbyname_r.patch deleted file mode 100644 index b366805..0000000 --- a/packages/glibc/2.16.0/0027-fix-parsing-of-numeric-hosts-in-gethostbyname_r.patch +++ /dev/null @@ -1,222 +0,0 @@ -From 536ae0651b015b1f6140ec01775d4deaacf12c0c Mon Sep 17 00:00:00 2001 -From: Andreas Schwab -Date: Mon, 21 Jan 2013 17:41:28 +0100 -Subject: [PATCH] Fix parsing of numeric hosts in gethostbyname_r - -Ported from master, fixes CVE-2015-0235. ---- - nss/Makefile | 2 - - nss/digits_dots.c | 73 +++++++++++++------------------------------------ - nss/getXXbyYY_r.c | 3 ++ - nss/test-digits-dots.c | 38 +++++++++++++++++++++++++ - 4 files changed, 62 insertions(+), 54 deletions(-) - create mode 100644 nss/test-digits-dots.c - ---- a/nss/Makefile -+++ b/nss/Makefile -@@ -38,7 +38,7 @@ - makedb-modules = xmalloc hash-string - extra-objs += $(makedb-modules:=.o) - --tests = test-netdb tst-nss-test1 -+tests = test-netdb tst-nss-test1 test-digits-dots - xtests = bug-erange - - include ../Makeconfig ---- a/nss/digits_dots.c -+++ b/nss/digits_dots.c -@@ -46,7 +46,10 @@ - { - if (h_errnop) - *h_errnop = NETDB_INTERNAL; -- *result = NULL; -+ if (buffer_size == NULL) -+ *status = NSS_STATUS_TRYAGAIN; -+ else -+ *result = NULL; - return -1; - } - -@@ -83,14 +86,16 @@ - } - - size_needed = (sizeof (*host_addr) -- + sizeof (*h_addr_ptrs) + strlen (name) + 1); -+ + sizeof (*h_addr_ptrs) -+ + sizeof (*h_alias_ptr) + strlen (name) + 1); - - if (buffer_size == NULL) - { - if (buflen < size_needed) - { -+ *status = NSS_STATUS_TRYAGAIN; - if (h_errnop != NULL) -- *h_errnop = TRY_AGAIN; -+ *h_errnop = NETDB_INTERNAL; - __set_errno (ERANGE); - goto done; - } -@@ -109,7 +114,7 @@ - *buffer_size = 0; - __set_errno (save); - if (h_errnop != NULL) -- *h_errnop = TRY_AGAIN; -+ *h_errnop = NETDB_INTERNAL; - *result = NULL; - goto done; - } -@@ -149,7 +154,9 @@ - if (! ok) - { - *h_errnop = HOST_NOT_FOUND; -- if (buffer_size) -+ if (buffer_size == NULL) -+ *status = NSS_STATUS_NOTFOUND; -+ else - *result = NULL; - goto done; - } -@@ -190,7 +197,7 @@ - if (buffer_size == NULL) - *status = NSS_STATUS_SUCCESS; - else -- *result = resbuf; -+ *result = resbuf; - goto done; - } - -@@ -201,15 +208,6 @@ - - if ((isxdigit (name[0]) && strchr (name, ':') != NULL) || name[0] == ':') - { -- const char *cp; -- char *hostname; -- typedef unsigned char host_addr_t[16]; -- host_addr_t *host_addr; -- typedef char *host_addr_list_t[2]; -- host_addr_list_t *h_addr_ptrs; -- size_t size_needed; -- int addr_size; -- - switch (af) - { - default: -@@ -225,7 +223,10 @@ - /* This is not possible. We cannot represent an IPv6 address - in an `struct in_addr' variable. */ - *h_errnop = HOST_NOT_FOUND; -- *result = NULL; -+ if (buffer_size == NULL) -+ *status = NSS_STATUS_NOTFOUND; -+ else -+ *result = NULL; - goto done; - - case AF_INET6: -@@ -233,42 +234,6 @@ - break; - } - -- size_needed = (sizeof (*host_addr) -- + sizeof (*h_addr_ptrs) + strlen (name) + 1); -- -- if (buffer_size == NULL && buflen < size_needed) -- { -- if (h_errnop != NULL) -- *h_errnop = TRY_AGAIN; -- __set_errno (ERANGE); -- goto done; -- } -- else if (buffer_size != NULL && *buffer_size < size_needed) -- { -- char *new_buf; -- *buffer_size = size_needed; -- new_buf = realloc (*buffer, *buffer_size); -- -- if (new_buf == NULL) -- { -- save = errno; -- free (*buffer); -- __set_errno (save); -- *buffer = NULL; -- *buffer_size = 0; -- *result = NULL; -- goto done; -- } -- *buffer = new_buf; -- } -- -- memset (*buffer, '\0', size_needed); -- -- host_addr = (host_addr_t *) *buffer; -- h_addr_ptrs = (host_addr_list_t *) -- ((char *) host_addr + sizeof (*host_addr)); -- hostname = (char *) h_addr_ptrs + sizeof (*h_addr_ptrs); -- - for (cp = name;; ++cp) - { - if (!*cp) -@@ -281,7 +246,9 @@ - if (inet_pton (AF_INET6, name, host_addr) <= 0) - { - *h_errnop = HOST_NOT_FOUND; -- if (buffer_size) -+ if (buffer_size == NULL) -+ *status = NSS_STATUS_NOTFOUND; -+ else - *result = NULL; - goto done; - } ---- /dev/null -+++ b/nss/test-digits-dots.c -@@ -0,0 +1,38 @@ -+/* Copyright (C) 2013 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 -+ 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, see -+ . */ -+ -+/* Testcase for BZ #15014 */ -+ -+#include -+#include -+#include -+ -+static int -+do_test (void) -+{ -+ char buf[32]; -+ struct hostent *result = NULL; -+ struct hostent ret; -+ int h_err = 0; -+ int err; -+ -+ err = gethostbyname_r ("1.2.3.4", &ret, buf, sizeof (buf), &result, &h_err); -+ return err == ERANGE && h_err == NETDB_INTERNAL ? EXIT_SUCCESS : EXIT_FAILURE; -+} -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" ---- a/nss/getXXbyYY_r.c -+++ b/nss/getXXbyYY_r.c -@@ -179,6 +179,9 @@ - case -1: - return errno; - case 1: -+#ifdef NEED_H_ERRNO -+ any_service = true; -+#endif - goto done; - } - #endif diff --git a/packages/glibc/2.16.0/0028-ppc-atomic.patch b/packages/glibc/2.16.0/0028-ppc-atomic.patch deleted file mode 100644 index 5340937..0000000 --- a/packages/glibc/2.16.0/0028-ppc-atomic.patch +++ /dev/null @@ -1,412 +0,0 @@ -sniped from suse - ---- - sysdeps/powerpc/bits/atomic.h | 66 ++++++++++----------- - sysdeps/powerpc/powerpc32/bits/atomic.h | 16 ++--- - sysdeps/powerpc/powerpc64/bits/atomic.h | 98 ++++++++++++++++---------------- - 3 files changed, 90 insertions(+), 90 deletions(-) - ---- a/sysdeps/powerpc/bits/atomic.h -+++ b/sysdeps/powerpc/bits/atomic.h -@@ -84,14 +84,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile ( \ -- "1: lwarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " cmpw %0,%2\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -101,14 +101,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ - " cmpw %0,%2\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -117,12 +117,12 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile ( \ -- "1: lwarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -- " stwcx. %3,0,%2\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ -+ " stwcx. %2,%y1\n" \ - " bne- 1b\n" \ - " " __ARCH_ACQ_INSTR \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -131,11 +131,11 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_REL "\n" \ -- " stwcx. %3,0,%2\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ -+ " stwcx. %2,%y1\n" \ - " bne- 1b" \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -143,12 +143,12 @@ - #define __arch_atomic_exchange_and_add_32(mem, value) \ - ({ \ - __typeof (*mem) __val, __tmp; \ -- __asm __volatile ("1: lwarx %0,0,%3\n" \ -- " add %1,%0,%4\n" \ -- " stwcx. %1,0,%3\n" \ -+ __asm __volatile ("1: lwarx %0,%y2\n" \ -+ " add %1,%0,%3\n" \ -+ " stwcx. %1,%y2\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*mem) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -156,12 +156,12 @@ - #define __arch_atomic_increment_val_32(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: lwarx %0,0,%2\n" \ -+ __asm __volatile ("1: lwarx %0,%y1\n" \ - " addi %0,%0,1\n" \ -- " stwcx. %0,0,%2\n" \ -+ " stwcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -169,27 +169,27 @@ - #define __arch_atomic_decrement_val_32(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: lwarx %0,0,%2\n" \ -+ __asm __volatile ("1: lwarx %0,%y1\n" \ - " subi %0,%0,1\n" \ -- " stwcx. %0,0,%2\n" \ -+ " stwcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) - - #define __arch_atomic_decrement_if_positive_32(mem) \ - ({ int __val, __tmp; \ -- __asm __volatile ("1: lwarx %0,0,%3\n" \ -+ __asm __volatile ("1: lwarx %0,%y2\n" \ - " cmpwi 0,%0,0\n" \ - " addi %1,%0,-1\n" \ - " ble 2f\n" \ -- " stwcx. %1,0,%3\n" \ -+ " stwcx. %1,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*mem) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) ---- a/sysdeps/powerpc/powerpc32/bits/atomic.h -+++ b/sysdeps/powerpc/powerpc32/bits/atomic.h -@@ -43,14 +43,14 @@ - ({ \ - unsigned int __tmp; \ - __asm __volatile ( \ -- "1: lwarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -59,14 +59,14 @@ - ({ \ - unsigned int __tmp; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: lwarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y1" MUTEX_HINT_REL "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stwcx. %3,0,%1\n" \ -+ " stwcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) ---- a/sysdeps/powerpc/powerpc64/bits/atomic.h -+++ b/sysdeps/powerpc/powerpc64/bits/atomic.h -@@ -43,14 +43,14 @@ - ({ \ - unsigned int __tmp, __tmp2; \ - __asm __volatile (" clrldi %1,%1,32\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -+ "1: lwarx %0,%y2" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%1,%0\n" \ - " bne 2f\n" \ -- " stwcx. %4,0,%2\n" \ -+ " stwcx. %4,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp), "=r" (__tmp2) \ -- : "b" (mem), "1" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "=r" (__tmp2), "+Z" (*(mem)) \ -+ : "1" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -60,14 +60,14 @@ - unsigned int __tmp, __tmp2; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ - " clrldi %1,%1,32\n" \ -- "1: lwarx %0,0,%2" MUTEX_HINT_REL "\n" \ -+ "1: lwarx %0,%y2" MUTEX_HINT_REL "\n" \ - " subf. %0,%1,%0\n" \ - " bne 2f\n" \ -- " stwcx. %4,0,%2\n" \ -+ " stwcx. %4,%y2\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp), "=r" (__tmp2) \ -- : "b" (mem), "1" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "=r" (__tmp2), "+Z" (*(mem)) \ -+ : "1" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -81,14 +81,14 @@ - ({ \ - unsigned long __tmp; \ - __asm __volatile ( \ -- "1: ldarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -97,14 +97,14 @@ - ({ \ - unsigned long __tmp; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_REL "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ - " subf. %0,%2,%0\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (mem), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp != 0; \ - }) -@@ -114,14 +114,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile ( \ -- "1: ldarx %0,0,%1" MUTEX_HINT_ACQ "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ - " cmpd %0,%2\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -131,14 +131,14 @@ - __typeof (*(mem)) __tmp; \ - __typeof (mem) __memp = (mem); \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%1" MUTEX_HINT_REL "\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ - " cmpd %0,%2\n" \ - " bne 2f\n" \ -- " stdcx. %3,0,%1\n" \ -+ " stdcx. %3,%y1\n" \ - " bne- 1b\n" \ - "2: " \ -- : "=&r" (__tmp) \ -- : "b" (__memp), "r" (oldval), "r" (newval) \ -+ : "=&r" (__tmp), "+Z" (*__memp) \ -+ : "r" (oldval), "r" (newval) \ - : "cr0", "memory"); \ - __tmp; \ - }) -@@ -147,12 +147,12 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_ACQ "\n" \ -- " stdcx. %3,0,%2\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_ACQ "\n" \ -+ " stdcx. %2,%y1\n" \ - " bne- 1b\n" \ - " " __ARCH_ACQ_INSTR \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -161,11 +161,11 @@ - ({ \ - __typeof (*mem) __val; \ - __asm __volatile (__ARCH_REL_INSTR "\n" \ -- "1: ldarx %0,0,%2" MUTEX_HINT_REL "\n" \ -- " stdcx. %3,0,%2\n" \ -+ "1: ldarx %0,%y1" MUTEX_HINT_REL "\n" \ -+ " stdcx. %2,%y1\n" \ - " bne- 1b" \ -- : "=&r" (__val), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&r" (__val), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -173,12 +173,12 @@ - #define __arch_atomic_exchange_and_add_64(mem, value) \ - ({ \ - __typeof (*mem) __val, __tmp; \ -- __asm __volatile ("1: ldarx %0,0,%3\n" \ -- " add %1,%0,%4\n" \ -- " stdcx. %1,0,%3\n" \ -+ __asm __volatile ("1: ldarx %0,%y2\n" \ -+ " add %1,%0,%3\n" \ -+ " stdcx. %1,%y2\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "r" (value), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*(mem)) \ -+ : "r" (value) \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -186,12 +186,12 @@ - #define __arch_atomic_increment_val_64(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: ldarx %0,0,%2\n" \ -+ __asm __volatile ("1: ldarx %0,%y1\n" \ - " addi %0,%0,1\n" \ -- " stdcx. %0,0,%2\n" \ -+ " stdcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) -@@ -199,27 +199,27 @@ - #define __arch_atomic_decrement_val_64(mem) \ - ({ \ - __typeof (*(mem)) __val; \ -- __asm __volatile ("1: ldarx %0,0,%2\n" \ -+ __asm __volatile ("1: ldarx %0,%y1\n" \ - " subi %0,%0,1\n" \ -- " stdcx. %0,0,%2\n" \ -+ " stdcx. %0,%y1\n" \ - " bne- 1b" \ -- : "=&b" (__val), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) - - #define __arch_atomic_decrement_if_positive_64(mem) \ - ({ int __val, __tmp; \ -- __asm __volatile ("1: ldarx %0,0,%3\n" \ -+ __asm __volatile ("1: ldarx %0,%y2\n" \ - " cmpdi 0,%0,0\n" \ - " addi %1,%0,-1\n" \ - " ble 2f\n" \ -- " stdcx. %1,0,%3\n" \ -+ " stdcx. %1,%y2\n" \ - " bne- 1b\n" \ - "2: " __ARCH_ACQ_INSTR \ -- : "=&b" (__val), "=&r" (__tmp), "=m" (*mem) \ -- : "b" (mem), "m" (*mem) \ -+ : "=&b" (__val), "=&r" (__tmp), "+Z" (*(mem)) \ -+ : \ - : "cr0", "memory"); \ - __val; \ - }) diff --git a/packages/glibc/2.16.0/0029-mips_shn_undef-hack.patch b/packages/glibc/2.16.0/0029-mips_shn_undef-hack.patch deleted file mode 100644 index 5b82f13..0000000 --- a/packages/glibc/2.16.0/0029-mips_shn_undef-hack.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- - elf/dl-lookup.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/elf/dl-lookup.c -+++ b/elf/dl-lookup.c -@@ -299,6 +299,12 @@ - /* FALLTHROUGH */ - case STB_GLOBAL: - success: -+#ifdef __mips__ -+ /* HACK: MIPS marks its lazy evaluation stubs with SHN_UNDEF -+ symbols, we skip them. */ -+ if (sym->st_shndx == SHN_UNDEF) -+ break; -+#endif - /* Global definition. Just what we need. */ - result->s = sym; - result->m = (struct link_map *) map; diff --git a/packages/glibc/2.16.0/0030-alpha-atfcts.patch b/packages/glibc/2.16.0/0030-alpha-atfcts.patch deleted file mode 100644 index 5f138a9..0000000 --- a/packages/glibc/2.16.0/0030-alpha-atfcts.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- - sysdeps/unix/sysv/linux/kernel-features.h | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - ---- a/sysdeps/unix/sysv/linux/kernel-features.h -+++ b/sysdeps/unix/sysv/linux/kernel-features.h -@@ -335,7 +335,8 @@ - the code. On PPC they were introduced in 2.6.17-rc1, - on SH in 2.6.19-rc1. */ - #if __LINUX_KERNEL_VERSION >= 0x020611 \ -- && (!defined __sh__ || __LINUX_KERNEL_VERSION >= 0x020613) -+ && (!defined __sh__ || __LINUX_KERNEL_VERSION >= 0x020613) \ -+ && (!defined __alpha__) - # define __ASSUME_ATFCTS 1 - #endif - diff --git a/packages/glibc/2.16.0/0031-syslog.patch b/packages/glibc/2.16.0/0031-syslog.patch deleted file mode 100644 index cd3c426..0000000 --- a/packages/glibc/2.16.0/0031-syslog.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- - misc/syslog.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/misc/syslog.c -+++ b/misc/syslog.c -@@ -150,7 +150,7 @@ - #define INTERNALLOG LOG_ERR|LOG_CONS|LOG_PERROR|LOG_PID - /* Check for invalid bits. */ - if (pri & ~(LOG_PRIMASK|LOG_FACMASK)) { -- syslog(INTERNALLOG, -+ __syslog(INTERNALLOG, - "syslog: unknown facility/priority: %x", pri); - pri &= LOG_PRIMASK|LOG_FACMASK; - } diff --git a/packages/glibc/2.16.0/0032-debug-readlink_chk-readklinkat_chk.patch b/packages/glibc/2.16.0/0032-debug-readlink_chk-readklinkat_chk.patch deleted file mode 100644 index 44d596a..0000000 --- a/packages/glibc/2.16.0/0032-debug-readlink_chk-readklinkat_chk.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- - debug/readlink_chk.c | 2 +- - debug/readlinkat_chk.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/debug/readlink_chk.c -+++ b/debug/readlink_chk.c -@@ -24,7 +24,7 @@ - - - ssize_t --__readlink_chk (const char *path, void *buf, size_t len, size_t buflen) -+__readlink_chk (const char *path, char *buf, size_t len, size_t buflen) - { - if (len > buflen) - __chk_fail (); ---- a/debug/readlinkat_chk.c -+++ b/debug/readlinkat_chk.c -@@ -20,7 +20,7 @@ - - - ssize_t --__readlinkat_chk (int fd, const char *path, void *buf, size_t len, -+__readlinkat_chk (int fd, const char *path, char *buf, size_t len, - size_t buflen) - { - if (len > buflen) diff --git a/packages/glibc/2.16.0/0033-fix-rpc_parse-format.patch b/packages/glibc/2.16.0/0033-fix-rpc_parse-format.patch deleted file mode 100644 index 341d541..0000000 --- a/packages/glibc/2.16.0/0033-fix-rpc_parse-format.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 5874510faaf3cbd0bb112aaacab9f225002beed1 -Author: Joseph Myers -Date: Tue Nov 8 23:44:51 2016 +0000 - - Fix rpcgen buffer overrun (bug 20790). - - Building with GCC 7 produces an error building rpcgen: - - rpc_parse.c: In function 'get_prog_declaration': - rpc_parse.c:543:25: error: may write a terminating nul past the end of the destination [-Werror=format-length=] - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ~~~~^ - rpc_parse.c:543:5: note: format output between 5 and 14 bytes into a destination of size 10 - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - That buffer overrun is for the case where the .x file declares a - program with a million arguments. The strcpy two lines above can - generate a buffer overrun much more simply for a long argument name. - - The limit on length of line read by rpcgen (MAXLINESIZE == 1024) - provides a bound on the buffer size needed, so this patch just changes - the buffer size to MAXLINESIZE to avoid both possible buffer - overruns. A testcase is added that rpcgen does not crash with a - 500-character argument name, where it previously crashed. - - It would not at all surprise me if there are many other ways of - crashing rpcgen with either valid or invalid input; fuzz testing would - likely find various such bugs, though I don't think they are that - important to fix (rpcgen is not that likely to be used with untrusted - .x files as input). (As well as fuzz-findable bugs there are probably - also issues when various int variables get overflowed on very large - input.) The test infrastructure for rpcgen-not-crashing tests would - need extending if tests are to be added for cases where rpcgen should - produce an error, as opposed to cases where it should succeed. - - Tested for x86_64 and x86. - - [BZ #20790] - * sunrpc/rpc_parse.c (get_prog_declaration): Increase buffer size - to MAXLINESIZE. - * sunrpc/bug20790.x: New file. - * sunrpc/Makefile [$(run-built-tests) = yes] (rpcgen-tests): New - variable. - [$(run-built-tests) = yes] (tests-special): Add $(rpcgen-tests). - [$(run-built-tests) = yes] ($(rpcgen-tests)): New rule. - ---- - sunrpc/rpc_parse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sunrpc/rpc_parse.c -+++ b/sunrpc/rpc_parse.c -@@ -521,7 +521,7 @@ - get_prog_declaration (declaration * dec, defkind dkind, int num /* arg number */ ) - { - token tok; -- char name[10]; /* argument name */ -+ char name[MAXLINESIZE]; /* argument name */ - - if (dkind == DEF_PROGRAM) - { diff --git a/packages/glibc/2.16.0/0034-nis-bogus-conditional.patch b/packages/glibc/2.16.0/0034-nis-bogus-conditional.patch deleted file mode 100644 index b8b806c..0000000 --- a/packages/glibc/2.16.0/0034-nis-bogus-conditional.patch +++ /dev/null @@ -1,64 +0,0 @@ -commit f88759ea9bd3c8d8fef28f123ba9767cb0e421a3 -Author: Joseph Myers -Date: Wed Dec 21 23:44:01 2016 +0000 - - Fix nss_nisplus build with mainline GCC (bug 20978). - - glibc build with current mainline GCC fails because - nis/nss_nisplus/nisplus-alias.c contains code - - if (name != NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; - } - - char buf[strlen (name) + 9 + tablename_len]; - - producing an error about strlen being called on a pointer that is - always NULL (and a subsequent use of that pointer with a %s format in - snprintf). - - As Andreas noted, the bogus conditional comes from a 1997 change: - - - if (name == NULL || strlen(name) > 8) - - return NSS_STATUS_NOTFOUND; - - else - + if (name != NULL || strlen(name) <= 8) - - So the intention is clearly to return an error for NULL name. - - This patch duly inverts the sense of the conditional. It fixes the - build with GCC mainline, and passes usual glibc testsuite testing for - x86_64. However, I have not tried any actual substantive nisplus - testing, do not have an environment for such testing, and do not know - whether it is possible that strlen (name) or tablename_len might be - large so that the VLA for buf is actually a security issue. However, - if it is a security issue, there are plenty of other similar instances - in the nisplus code (that haven't been hidden by a bogus comparison - with NULL) - and nis_table.c:__create_ib_request uses strdupa on the - string passed to nis_list, so a local fix in the caller wouldn't - suffice anyway (see bug 20987). (Calls to strdupa and other such - macros that use alloca must be considered equally questionable - regarding stack overflow issues as direct calls to alloca and VLA - declarations.) - - [BZ #20978] - * nis/nss_nisplus/nisplus-alias.c (_nss_nisplus_getaliasbyname_r): - Compare name == NULL, not name != NULL. - ---- - nis/nss_nisplus/nisplus-alias.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/nis/nss_nisplus/nisplus-alias.c -+++ b/nis/nss_nisplus/nisplus-alias.c -@@ -292,7 +292,7 @@ - return status; - } - -- if (name != NULL) -+ if (name == NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; diff --git a/packages/glibc/2.16.0/0035-obstack-common.patch b/packages/glibc/2.16.0/0035-obstack-common.patch deleted file mode 100644 index ad1f8eb..0000000 --- a/packages/glibc/2.16.0/0035-obstack-common.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit 39b1f6172a2f9ddc74a8f82d6e84dd13b22dbaf2 -Author: Peter Collingbourne -Date: Wed May 15 20:28:08 2013 +0200 - - Move _obstack_compat out of common - - it is impossible to create an alias of a common symbol (as - compat_symbol does), because common symbols do not have a section or - an offset until linked. GNU as tolerates aliases of common symbols by - simply creating another common symbol, but other assemblers (notably - LLVM's integrated assembler) are less tolerant. - - 2013-05-15 Peter Collingbourne - - * malloc/obstack.c (_obstack_compat): Add initializer. - - - ---- - malloc/obstack.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/malloc/obstack.c -+++ b/malloc/obstack.c -@@ -116,7 +116,7 @@ - /* A looong time ago (before 1994, anyway; we're not sure) this global variable - was used by non-GNU-C macros to avoid multiple evaluation. The GNU C - library still exports it because somebody might use it. */ --struct obstack *_obstack_compat; -+struct obstack *_obstack_compat = 0; - compat_symbol (libc, _obstack_compat, _obstack, GLIBC_2_0); - # endif - # endif diff --git a/packages/glibc/2.16.0/0036-new-tools.patch b/packages/glibc/2.16.0/0036-new-tools.patch deleted file mode 100644 index 8805a3e..0000000 --- a/packages/glibc/2.16.0/0036-new-tools.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- - configure | 4 ++-- - configure.in | 2 +- - 2 files changed, 3 insertions(+), 3 deletions(-) - ---- a/configure -+++ b/configure -@@ -4845,7 +4845,7 @@ - ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.79* | 3.[89]*) -+ 3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5032,7 +5032,7 @@ - # Found it, now check the version. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking version of $SED" >&5 - $as_echo_n "checking version of $SED... " >&6; } -- ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed version \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed[^0-9]* \([0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; - 3.0[2-9]*|3.[1-9]*|[4-9]*) ---- a/configure.in -+++ b/configure.in -@@ -940,7 +940,7 @@ - critic_missing="$critic_missing gcc") - AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version, - [GNU Make[^0-9]*\([0-9][0-9.]*\)], -- [3.79* | 3.[89]*], critic_missing="$critic_missing make") -+ [3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*], critic_missing="$critic_missing make") - - AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version, - [GNU gettext.* \([0-9]*\.[0-9.]*\)], diff --git a/packages/glibc/2.16.0/0037-strftime-multiple-stmts.patch b/packages/glibc/2.16.0/0037-strftime-multiple-stmts.patch deleted file mode 100644 index 88e658b..0000000 --- a/packages/glibc/2.16.0/0037-strftime-multiple-stmts.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb -Author: Joseph Myers -Date: Tue Jun 27 17:12:13 2017 +0000 - - Fix strftime build with GCC 8. - - Building with current GCC mainline fails with: - - strftime_l.c: In function '__strftime_internal': - strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros] - digits = d > width ? d : width; \ - ^ - strftime_l.c:1260:6: note: in expansion of macro 'DO_NUMBER' - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - ^~~~~~~~~ - strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this 'else' clause - else - ^~~~ - - In fact this particular instance is harmless; the code looks like: - - if (modifier == L_('O')) - goto bad_format; - else - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - - and because of the goto, it doesn't matter that part of the expansion - isn't under the "else" conditional. But it's also clearly bad style - to rely on that. This patch changes DO_NUMBER and DO_NUMBER_SPACEPAD - to use do { } while (0) to avoid such problems. - - Tested (full testsuite) for x86_64 (GCC 6), and with - build-many-glibcs.py with GCC mainline, in conjunction with my libgcc - patch . - - * time/strftime_l.c (DO_NUMBER): Define using do { } while (0). - (DO_NUMBER_SPACEPAD): Likewise. - ---- - time/strftime_l.c | 22 ++++++++++++++++------ - 1 file changed, 16 insertions(+), 6 deletions(-) - ---- a/time/strftime_l.c -+++ b/time/strftime_l.c -@@ -737,12 +737,22 @@ - format_char = *f; - switch (format_char) - { --#define DO_NUMBER(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number --#define DO_NUMBER_SPACEPAD(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number_spacepad -+#define DO_NUMBER(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number; \ -+ } \ -+ while (0) -+#define DO_NUMBER_SPACEPAD(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number_spacepad; \ -+ } \ -+ while (0) - - case L_('%'): - if (modifier != 0) diff --git a/packages/glibc/2.16.0/0038-if_nametoindex-size-check.patch b/packages/glibc/2.16.0/0038-if_nametoindex-size-check.patch deleted file mode 100644 index 375bb95..0000000 --- a/packages/glibc/2.16.0/0038-if_nametoindex-size-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 2180fee114b778515b3f560e5ff1e795282e60b0 -Author: Steve Ellcey -Date: Wed Nov 15 08:58:48 2017 -0800 - - Check length of ifname before copying it into to ifreq structure. - - [BZ #22442] - * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): - Check if ifname is too long. - ---- - sysdeps/unix/sysv/linux/if_index.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/sysdeps/unix/sysv/linux/if_index.c -+++ b/sysdeps/unix/sysv/linux/if_index.c -@@ -44,6 +44,12 @@ - if (fd < 0) - return 0; - -+ if (strlen (ifname) >= IFNAMSIZ) -+ { -+ __set_errno (ENODEV); -+ return 0; -+ } -+ - strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name)); - if (__ioctl (fd, SIOCGIFINDEX, &ifr) < 0) - { diff --git a/packages/glibc/2.16.0/0039-utmp-nonstring.patch b/packages/glibc/2.16.0/0039-utmp-nonstring.patch deleted file mode 100644 index 1f47956..0000000 --- a/packages/glibc/2.16.0/0039-utmp-nonstring.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit 7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c -Author: Martin Sebor -Date: Wed Nov 15 17:39:59 2017 -0700 - - The -Wstringop-truncation option new in GCC 8 detects common misuses - of the strncat and strncpy function that may result in truncating - the copied string before the terminating NUL. To avoid false positive - warnings for correct code that intentionally creates sequences of - characters that aren't guaranteed to be NUL-terminated, arrays that - are intended to store such sequences should be decorated with a new - nonstring attribute. This change add this attribute to Glibc and - uses it to suppress such false positives. - - ChangeLog: - * misc/sys/cdefs.h (__attribute_nonstring__): New macro. - * sysdeps/gnu/bits/utmp.h (struct utmp): Use it. - * sysdeps/unix/sysv/linux/s390/bits/utmp.h (struct utmp): Same. - ---- - misc/sys/cdefs.h | 9 +++++++++ - sysdeps/gnu/bits/utmp.h | 9 ++++++--- - sysdeps/unix/sysv/linux/s390/bits/utmp.h | 9 ++++++--- - 3 files changed, 21 insertions(+), 6 deletions(-) - ---- a/misc/sys/cdefs.h -+++ b/misc/sys/cdefs.h -@@ -375,6 +375,15 @@ - # define __glibc_unlikely(cond) (cond) - #endif - -+#if __GNUC_PREREQ (8, 0) -+/* Describes a char array whose address can safely be passed as the first -+ argument to strncpy and strncat, as the char array is not necessarily -+ a NUL-terminated string. */ -+# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -+#else -+# define __attribute_nonstring__ -+#endif -+ - #include - - #if defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH ---- a/sysdeps/gnu/bits/utmp.h -+++ b/sysdeps/gnu/bits/utmp.h -@@ -59,10 +59,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled ---- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h -+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h -@@ -60,10 +60,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled diff --git a/packages/glibc/2.16.0/0040-getlogin_r-use-strnlen.patch b/packages/glibc/2.16.0/0040-getlogin_r-use-strnlen.patch deleted file mode 100644 index ff19964..0000000 --- a/packages/glibc/2.16.0/0040-getlogin_r-use-strnlen.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 4bae615022cb5a5da79ccda83cc6c9ba9f2d479c -Author: Joseph Myers -Date: Wed Nov 22 18:44:23 2017 +0000 - - Avoid use of strlen in getlogin_r (bug 22447). - - Building glibc with current mainline GCC fails, among other reasons, - because of an error for use of strlen on the nonstring ut_user field. - This patch changes the problem code in getlogin_r to use __strnlen - instead. It also needs to set the trailing NUL byte of the result - explicitly, because of the case where ut_user does not have such a - trailing NUL byte (but the result should always have one). - - Tested for x86_64. Also tested that, in conjunction with - , it fixes - the build for arm with mainline GCC. - - [BZ #22447] - * sysdeps/unix/getlogin_r.c (__getlogin_r): Use __strnlen not - strlen to compute length of ut_user and set trailing NUL byte of - result explicitly. - ---- - sysdeps/unix/getlogin_r.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - ---- a/sysdeps/unix/getlogin_r.c -+++ b/sysdeps/unix/getlogin_r.c -@@ -82,7 +82,7 @@ - - if (result == 0) - { -- size_t needed = strlen (ut->ut_user) + 1; -+ size_t needed = __strnlen (ut->ut_user, UT_NAMESIZE) + 1; - - if (needed > name_len) - { -@@ -91,7 +91,8 @@ - } - else - { -- memcpy (name, ut->ut_user, needed); -+ memcpy (name, ut->ut_user, needed - 1); -+ name[needed - 1] = 0; - result = 0; - } - } diff --git a/packages/glibc/2.16.0/0041-zic.c-use-memcpy.patch b/packages/glibc/2.16.0/0041-zic.c-use-memcpy.patch deleted file mode 100644 index 8679c0a..0000000 --- a/packages/glibc/2.16.0/0041-zic.c-use-memcpy.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit e69897bf202e18034cbef26f363bae64de70a196 -Author: Paul Eggert -Date: Sun Nov 12 22:00:28 2017 -0800 - - timezone: pacify GCC -Wstringop-truncation - - Problem reported by Martin Sebor in: - https://sourceware.org/ml/libc-alpha/2017-11/msg00336.html - * timezone/zic.c (writezone): Use memcpy, not strncpy. - ---- - timezone/zic.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/timezone/zic.c -+++ b/timezone/zic.c -@@ -1695,7 +1695,7 @@ - #define DO(field) (void) fwrite((void *) tzh.field, \ - (size_t) sizeof tzh.field, (size_t) 1, fp) - tzh = tzh0; -- (void) strncpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); -+ memcpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); - tzh.tzh_version[0] = ZIC_VERSION; - convert(eitol(thistypecnt), tzh.tzh_ttisgmtcnt); - convert(eitol(thistypecnt), tzh.tzh_ttisstdcnt); diff --git a/packages/glibc/2.16.0/0042-fix-GCC-10-detection.patch b/packages/glibc/2.16.0/0042-fix-GCC-10-detection.patch deleted file mode 100644 index 4d55ff3..0000000 --- a/packages/glibc/2.16.0/0042-fix-GCC-10-detection.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 01e89232ac76b66e2bba2ec84d7f86e86f04ae64 Mon Sep 17 00:00:00 2001 -From: Jakub Labenski -Date: Fri, 5 Jun 2020 09:11:40 +0200 -Subject: [PATCH] Fix GCC 10+ detection - ---- - configure | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure b/configure -index aa7869ff17..2a513eae65 100755 ---- a/configure -+++ b/configure -@@ -4782,7 +4782,7 @@ $as_echo_n "checking version of $CC... " >&6; } - ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 4.[3-9].* | 4.[1-9][0-9].* | [5-9].* ) -+ 4.[3-9].* | 4.[1-9][0-9].* | [5-9].* | [1-9][0-9].* ) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - --- -2.25.1 - diff --git a/packages/glibc/2.16.0/chksum b/packages/glibc/2.16.0/chksum deleted file mode 100644 index 91294a4..0000000 --- a/packages/glibc/2.16.0/chksum +++ /dev/null @@ -1,12 +0,0 @@ -md5 glibc-2.16.0.tar.xz 80b181b02ab249524ec92822c0174cf7 -sha1 glibc-2.16.0.tar.xz 9d4fffc9c4ac93e7919e124fa38bb51dcaff5216 -sha256 glibc-2.16.0.tar.xz 1edc36aa2a6cb7127971fce8e02eecffe9c7956297ad3ef10dd4c09f486d5924 -sha512 glibc-2.16.0.tar.xz be9acc11b77ab3c01d5766fe626a6a51bc3192ac98f9554fbb5c37120cfc6f636c0b7a80beddc180f13b32ad06051d24c1999fa2e64eeb724d55a9498f0f634e -md5 glibc-2.16.0.tar.bz2 b1030e3c7150419bf8bd0ba0017cdbc7 -sha1 glibc-2.16.0.tar.bz2 3bebc5a3120eafde2144ced6ee151e6c4934c781 -sha256 glibc-2.16.0.tar.bz2 660ffe8ce6d9620796073f9e6f43cbf664d755fc0354f3b9f8930ce76d3bbf4c -sha512 glibc-2.16.0.tar.bz2 1712cd44c32110278fd11ca2294312a421e49b24cb032a0ae2c385aa2a47d8552d3a39da49dff4eb9ab3674e7b1ab241e8b7af91089194ca24346ea5feb44ce7 -md5 glibc-2.16.0.tar.gz b5f786fa7df4ff947bcd240c0e595f98 -sha1 glibc-2.16.0.tar.gz b55bdbc88a0b950f712a05d37b96e9b1484c567e -sha256 glibc-2.16.0.tar.gz a75be51658cc1cfb6324ec6dbdbed416526c44c14814823129f0fcc74c279f6e -sha512 glibc-2.16.0.tar.gz 428ad429644d1464d08aebbe560c47aeaa5a636c2affeae8ae06f2e374526cbacbdd8e78dea3c9d2244df5f41c233ad09b31dc115687c2349d390815ba4a6645 diff --git a/packages/glibc/2.16.0/version.desc b/packages/glibc/2.16.0/version.desc deleted file mode 100644 index fcfe389..0000000 --- a/packages/glibc/2.16.0/version.desc +++ /dev/null @@ -1 +0,0 @@ -obsolete='yes' diff --git a/packages/glibc/2.18/0000-4f2bcda-ARM-Fix-clone-code-when-built-for-Thumb.patch b/packages/glibc/2.18/0000-4f2bcda-ARM-Fix-clone-code-when-built-for-Thumb.patch deleted file mode 100644 index d441b0c..0000000 --- a/packages/glibc/2.18/0000-4f2bcda-ARM-Fix-clone-code-when-built-for-Thumb.patch +++ /dev/null @@ -1,65 +0,0 @@ -commit 4f2bcda964d4fff56855e0c66198c9bcb682ea1e -Author: Will Newton -Date: Thu Aug 29 20:10:26 2013 +0100 - - ARM: Fix clone code when built for Thumb. - - The mov lr, pc instruction will lose the Thumb bit from the return address - so use blx lr instead. - - ports/ChangeLog.arm: - - 2013-08-30 Will Newton - - [BZ #15909] - * sysdeps/unix/sysv/linux/arm/clone.S (__clone): Use blx - instead of mov lr, pc. - - (cherry picked from commit 6b06ac56cdfc9293908724e51e827534e97819aa) - ---- - NEWS | 6 ++++++ - ports/ChangeLog.arm | 6 ++++++ - ports/sysdeps/unix/sysv/linux/arm/clone.S | 4 ++-- - 3 files changed, 14 insertions(+), 2 deletions(-) - ---- a/NEWS -+++ b/NEWS -@@ -5,6 +5,12 @@ - Please send GNU C library bug reports via - using `glibc' in the "product" field. - -+Version 2.18.1 -+ -+* The following bugs are resolved with this release: -+ -+ 15909. -+ - Version 2.18 - - * The following bugs are resolved with this release: ---- a/ports/ChangeLog.arm -+++ b/ports/ChangeLog.arm -@@ -1,3 +1,9 @@ -+2013-08-30 Will Newton -+ -+ [BZ #15909] -+ * sysdeps/unix/sysv/linux/arm/clone.S (__clone): Use blx -+ instead of mov lr, pc. -+ - 2013-07-03 Joseph Myers - - * sysdeps/arm/include/bits/setjmp.h [_ISOMAC] (JMP_BUF_REGLIST): ---- a/ports/sysdeps/unix/sysv/linux/arm/clone.S -+++ b/ports/sysdeps/unix/sysv/linux/arm/clone.S -@@ -93,8 +93,8 @@ - mov lr, pc - bx ip - #else -- mov lr, pc -- ldr pc, [sp], #8 -+ ldr lr, [sp], #8 -+ blx lr - #endif - - @ and we are done, passing the return value through r0 diff --git a/packages/glibc/2.18/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch b/packages/glibc/2.18/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch deleted file mode 100644 index 5d724b2..0000000 --- a/packages/glibc/2.18/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch +++ /dev/null @@ -1,75 +0,0 @@ -From df1cf48777fe4cd81ad7fb09ecbe5b31432b7c1c Mon Sep 17 00:00:00 2001 -From: Yvan Roux -Date: Fri, 15 Apr 2016 13:29:26 +0200 -Subject: [PATCH] Suppress GCC 6 warning about ambiguous 'else' with - -Wparentheses - ---- - nis/nis_call.c | 20 +++++++++++--------- - stdlib/setenv.c | 24 +++++++++++++----------- - 2 files changed, 24 insertions(+), 20 deletions(-) - ---- a/nis/nis_call.c -+++ b/nis/nis_call.c -@@ -680,16 +680,18 @@ - /* Choose which entry should be evicted from the cache. */ - loc = &nis_server_cache[0]; - if (*loc != NULL) -- for (i = 1; i < 16; ++i) -- if (nis_server_cache[i] == NULL) -- { -+ { -+ for (i = 1; i < 16; ++i) -+ if (nis_server_cache[i] == NULL) -+ { -+ loc = &nis_server_cache[i]; -+ break; -+ } -+ else if ((*loc)->uses > nis_server_cache[i]->uses -+ || ((*loc)->uses == nis_server_cache[i]->uses -+ && (*loc)->expires > nis_server_cache[i]->expires)) - loc = &nis_server_cache[i]; -- break; -- } -- else if ((*loc)->uses > nis_server_cache[i]->uses -- || ((*loc)->uses == nis_server_cache[i]->uses -- && (*loc)->expires > nis_server_cache[i]->expires)) -- loc = &nis_server_cache[i]; -+ } - old = *loc; - *loc = new; - ---- a/stdlib/setenv.c -+++ b/stdlib/setenv.c -@@ -327,18 +327,20 @@ - ep = __environ; - if (ep != NULL) - while (*ep != NULL) -- if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -- { -- /* Found it. Remove this pointer by moving later ones back. */ -- char **dp = ep; -+ { -+ if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -+ { -+ /* Found it. Remove this pointer by moving later ones back. */ -+ char **dp = ep; - -- do -- dp[0] = dp[1]; -- while (*dp++); -- /* Continue the loop in case NAME appears again. */ -- } -- else -- ++ep; -+ do -+ dp[0] = dp[1]; -+ while (*dp++); -+ /* Continue the loop in case NAME appears again. */ -+ } -+ else -+ ++ep; -+ } - - UNLOCK; - diff --git a/packages/glibc/2.18/0002-fix-signed-shift-overlow.patch b/packages/glibc/2.18/0002-fix-signed-shift-overlow.patch deleted file mode 100644 index cf36780..0000000 --- a/packages/glibc/2.18/0002-fix-signed-shift-overlow.patch +++ /dev/null @@ -1,97 +0,0 @@ -commit 5542236837c5c41435f8282ec92799f480c36f18 -Author: Paul Eggert -Date: Tue Jul 21 22:50:29 2015 -0700 - - Port the 0x7efe...feff pattern to GCC 6. - - See Steve Ellcey's bug report in: - https://sourceware.org/ml/libc-alpha/2015-07/msg00673.html - * string/memrchr.c (MEMRCHR): - * string/rawmemchr.c (RAWMEMCHR): - * string/strchr.c (strchr): - * string/strchrnul.c (STRCHRNUL): - Rewrite code to avoid issues with signed shift overflow. - ---- - string/memrchr.c | 11 ++--------- - string/rawmemchr.c | 11 ++--------- - string/strchr.c | 9 ++------- - string/strchrnul.c | 9 ++------- - 4 files changed, 8 insertions(+), 32 deletions(-) - ---- a/string/memrchr.c -+++ b/string/memrchr.c -@@ -96,15 +96,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/rawmemchr.c -+++ b/string/rawmemchr.c -@@ -83,15 +83,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchr.c -+++ b/string/strchr.c -@@ -63,13 +63,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchrnul.c -+++ b/string/strchrnul.c -@@ -62,13 +62,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); diff --git a/packages/glibc/2.18/0003-dl-openat64-variadic.patch b/packages/glibc/2.18/0003-dl-openat64-variadic.patch deleted file mode 100644 index 552db12..0000000 --- a/packages/glibc/2.18/0003-dl-openat64-variadic.patch +++ /dev/null @@ -1,197 +0,0 @@ -commit 9dd346ff431fc761f1b748bd4da8bb59f7652094 -Author: Joseph Myers -Date: Tue Oct 20 11:54:09 2015 +0000 - - Convert 113 more function definitions to prototype style (files with assertions). - - This mostly automatically-generated patch converts 113 function - definitions in glibc from old-style K&R to prototype-style. Following - my other recent such patches, this one deals with the case of function - definitions in files that either contain assertions or where grep - suggested they might contain assertions - and thus where it isn't - possible to use a simple object code comparison as a sanity check on - the correctness of the patch, because line numbers are changed. - - A few such automatically-generated changes needed to be supplemented - by manual changes for the result to compile. openat64 had a prototype - declaration with "..." but an old-style definition in - sysdeps/unix/sysv/linux/dl-openat64.c, and "..." needed adding to the - generated prototype in the definition (I've filed - for diagnosing - such cases in GCC; the old state was undefined behavior not requiring - a diagnostic, but one seems a good idea). In addition, as Florian has - noted regparm attribute mismatches between declaration and definition - are only diagnosed for prototype definitions, and five functions - needed internal_function added to their definitions (in the case of - __pthread_mutex_cond_lock, via the macro definition of - __pthread_mutex_lock) to compile on i386. - - After this patch is in, remaining old-style definitions are probably - most readily fixed manually before we can turn on - -Wold-style-definition for all builds. - - Tested for x86_64 and x86 (testsuite). - - * crypt/md5-crypt.c (__md5_crypt_r): Convert to prototype-style - function definition. - * crypt/sha256-crypt.c (__sha256_crypt_r): Likewise. - * crypt/sha512-crypt.c (__sha512_crypt_r): Likewise. - * debug/backtracesyms.c (__backtrace_symbols): Likewise. - * elf/dl-minimal.c (_itoa): Likewise. - * hurd/hurdmalloc.c (malloc): Likewise. - (free): Likewise. - (realloc): Likewise. - * inet/inet6_option.c (inet6_option_space): Likewise. - (inet6_option_init): Likewise. - (inet6_option_append): Likewise. - (inet6_option_alloc): Likewise. - (inet6_option_next): Likewise. - (inet6_option_find): Likewise. - * io/ftw.c (FTW_NAME): Likewise. - (NFTW_NAME): Likewise. - (NFTW_NEW_NAME): Likewise. - (NFTW_OLD_NAME): Likewise. - * libio/iofwide.c (_IO_fwide): Likewise. - * libio/strops.c (_IO_str_init_static_internal): Likewise. - (_IO_str_init_static): Likewise. - (_IO_str_init_readonly): Likewise. - (_IO_str_overflow): Likewise. - (_IO_str_underflow): Likewise. - (_IO_str_count): Likewise. - (_IO_str_seekoff): Likewise. - (_IO_str_pbackfail): Likewise. - (_IO_str_finish): Likewise. - * libio/wstrops.c (_IO_wstr_init_static): Likewise. - (_IO_wstr_overflow): Likewise. - (_IO_wstr_underflow): Likewise. - (_IO_wstr_count): Likewise. - (_IO_wstr_seekoff): Likewise. - (_IO_wstr_pbackfail): Likewise. - (_IO_wstr_finish): Likewise. - * locale/programs/localedef.c (normalize_codeset): Likewise. - * locale/programs/locarchive.c (add_locale_to_archive): Likewise. - (add_locales_to_archive): Likewise. - (delete_locales_from_archive): Likewise. - * malloc/malloc.c (__libc_mallinfo): Likewise. - * math/gen-auto-libm-tests.c (init_fp_formats): Likewise. - * misc/tsearch.c (__tfind): Likewise. - * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Likewise. - * nptl/pthread_attr_getdetachstate.c - (__pthread_attr_getdetachstate): Likewise. - * nptl/pthread_attr_getguardsize.c (pthread_attr_getguardsize): - Likewise. - * nptl/pthread_attr_getinheritsched.c - (__pthread_attr_getinheritsched): Likewise. - * nptl/pthread_attr_getschedparam.c - (__pthread_attr_getschedparam): Likewise. - * nptl/pthread_attr_getschedpolicy.c - (__pthread_attr_getschedpolicy): Likewise. - * nptl/pthread_attr_getscope.c (__pthread_attr_getscope): - Likewise. - * nptl/pthread_attr_getstack.c (__pthread_attr_getstack): - Likewise. - * nptl/pthread_attr_getstackaddr.c (__pthread_attr_getstackaddr): - Likewise. - * nptl/pthread_attr_getstacksize.c (__pthread_attr_getstacksize): - Likewise. - * nptl/pthread_attr_init.c (__pthread_attr_init_2_1): Likewise. - (__pthread_attr_init_2_0): Likewise. - * nptl/pthread_attr_setdetachstate.c - (__pthread_attr_setdetachstate): Likewise. - * nptl/pthread_attr_setguardsize.c (pthread_attr_setguardsize): - Likewise. - * nptl/pthread_attr_setinheritsched.c - (__pthread_attr_setinheritsched): Likewise. - * nptl/pthread_attr_setschedparam.c - (__pthread_attr_setschedparam): Likewise. - * nptl/pthread_attr_setschedpolicy.c - (__pthread_attr_setschedpolicy): Likewise. - * nptl/pthread_attr_setscope.c (__pthread_attr_setscope): - Likewise. - * nptl/pthread_attr_setstack.c (__pthread_attr_setstack): - Likewise. - * nptl/pthread_attr_setstackaddr.c (__pthread_attr_setstackaddr): - Likewise. - * nptl/pthread_attr_setstacksize.c (__pthread_attr_setstacksize): - Likewise. - * nptl/pthread_condattr_setclock.c (pthread_condattr_setclock): - Likewise. - * nptl/pthread_create.c (__find_in_stack_list): Likewise. - * nptl/pthread_getattr_np.c (pthread_getattr_np): Likewise. - * nptl/pthread_mutex_cond_lock.c (__pthread_mutex_lock): Define to - use internal_function. - * nptl/pthread_mutex_init.c (__pthread_mutex_init): Convert to - prototype-style function definition. - * nptl/pthread_mutex_lock.c (__pthread_mutex_lock): Likewise. - (__pthread_mutex_cond_lock_adjust): Likewise. Use - internal_function. - * nptl/pthread_mutex_timedlock.c (pthread_mutex_timedlock): - Convert to prototype-style function definition. - * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): - Likewise. - * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_usercnt): - Likewise. - (__pthread_mutex_unlock): Likewise. - * nptl_db/td_ta_clear_event.c (td_ta_clear_event): Likewise. - * nptl_db/td_ta_set_event.c (td_ta_set_event): Likewise. - * nptl_db/td_thr_clear_event.c (td_thr_clear_event): Likewise. - * nptl_db/td_thr_event_enable.c (td_thr_event_enable): Likewise. - * nptl_db/td_thr_set_event.c (td_thr_set_event): Likewise. - * nss/makedb.c (process_input): Likewise. - * posix/fnmatch.c (__strchrnul): Likewise. - (__wcschrnul): Likewise. - (fnmatch): Likewise. - * posix/fnmatch_loop.c (FCT): Likewise. - * posix/glob.c (globfree): Likewise. - (__glob_pattern_type): Likewise. - (__glob_pattern_p): Likewise. - * posix/regcomp.c (re_compile_pattern): Likewise. - (re_set_syntax): Likewise. - (re_compile_fastmap): Likewise. - (regcomp): Likewise. - (regerror): Likewise. - (regfree): Likewise. - * posix/regexec.c (regexec): Likewise. - (re_match): Likewise. - (re_search): Likewise. - (re_match_2): Likewise. - (re_search_2): Likewise. - (re_search_stub): Likewise. Use internal_function - (re_copy_regs): Likewise. - (re_set_registers): Convert to prototype-style function - definition. - (prune_impossible_nodes): Likewise. Use internal_function. - * resolv/inet_net_pton.c (inet_net_pton): Convert to - prototype-style function definition. - (inet_net_pton_ipv4): Likewise. - * stdlib/strtod_l.c (____STRTOF_INTERNAL): Likewise. - * sysdeps/pthread/aio_cancel.c (aio_cancel): Likewise. - * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise. - * sysdeps/pthread/timer_delete.c (timer_delete): Likewise. - * sysdeps/unix/sysv/linux/dl-openat64.c (openat64): Likewise. - Make variadic. - * time/strptime_l.c (localtime_r): Convert to prototype-style - function definition. - * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Likewise. - * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Likewise. - * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Likewise. - * wcsmbs/wcsrtombs.c (__wcsrtombs): Likewise. - ---- - sysdeps/unix/sysv/linux/dl-openat64.c | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - ---- a/sysdeps/unix/sysv/linux/dl-openat64.c -+++ b/sysdeps/unix/sysv/linux/dl-openat64.c -@@ -23,10 +23,7 @@ - - - int --openat64 (dfd, file, oflag) -- int dfd; -- const char *file; -- int oflag; -+openat64 (int dfd, const char *file, int oflag, ...) - { - assert ((oflag & O_CREAT) == 0); - diff --git a/packages/glibc/2.18/0004-unused-variables.patch b/packages/glibc/2.18/0004-unused-variables.patch deleted file mode 100644 index 0f17740..0000000 --- a/packages/glibc/2.18/0004-unused-variables.patch +++ /dev/null @@ -1,151 +0,0 @@ -commit 6565fcb6e189d67b5a3f321453daebb805056d73 -Author: Wilco Dijkstra -Date: Fri Sep 18 20:27:20 2015 +0100 - - Fix several build failures with GCC6 due to unused static variables. - - 2015-09-18 Wilco Dijkstra - - * resolv/base64.c (rcsid): Remove unused static. - * sysdeps/ieee754/dbl-64/atnat2.h (qpi1): Remove unused - static. (tqpi1): Likewise. - * sysdeps/ieee754/dbl-64/uexp.h (one): Likewise. - * sysdeps/ieee754/dbl-64/upow.h (sqrt_2): Likewise. - * sysdeps/ieee754/flt-32/e_log10f.c (one): Likewise. - * sysdeps/ieee754/flt-32/s_cosf.c (one): Likewise. - * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (zero): Likewise. - * sysdeps/ieee754/ldbl-128/s_erfl.c (half): Likewise. - * sysdeps/ieee754/ldbl-128/s_log1pl.c (maxlog): Likewise. - * timezone/private.h (time_t_min): Likewise. (time_t_max): - Likewise. - ---- - resolv/base64.c | 4 ---- - sysdeps/ieee754/dbl-64/atnat2.h | 4 ---- - sysdeps/ieee754/dbl-64/uexp.h | 2 +- - sysdeps/ieee754/dbl-64/upow.h | 2 -- - sysdeps/ieee754/flt-32/e_log10f.c | 2 -- - sysdeps/ieee754/flt-32/s_cosf.c | 2 -- - sysdeps/ieee754/ldbl-128/e_lgammal_r.c | 1 - - sysdeps/ieee754/ldbl-128/s_erfl.c | 1 - - sysdeps/ieee754/ldbl-128/s_log1pl.c | 1 - - 9 files changed, 1 insertion(+), 18 deletions(-) - ---- a/resolv/base64.c -+++ b/resolv/base64.c -@@ -40,10 +40,6 @@ - * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. - */ - --#if !defined(LINT) && !defined(CODECENTER) --static const char rcsid[] = "$BINDId: base64.c,v 8.7 1999/10/13 16:39:33 vixie Exp $"; --#endif /* not lint */ -- - #include - #include - #include ---- a/sysdeps/ieee754/dbl-64/atnat2.h -+++ b/sysdeps/ieee754/dbl-64/atnat2.h -@@ -65,10 +65,8 @@ - /**/ hpi1 = {{0x3c91a626, 0x33145c07} }, /* pi/2-hpi */ - /**/ mhpi = {{0xbff921fb, 0x54442d18} }, /* -pi/2 */ - /**/ qpi = {{0x3fe921fb, 0x54442d18} }, /* pi/4 */ --/**/ qpi1 = {{0x3c81a626, 0x33145c07} }, /* pi/4-qpi */ - /**/ mqpi = {{0xbfe921fb, 0x54442d18} }, /* -pi/4 */ - /**/ tqpi = {{0x4002d97c, 0x7f3321d2} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x3c9a7939, 0x4c9e8a0a} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0xc002d97c, 0x7f3321d2} }, /* -3pi/4 */ - /**/ u1 = {{0x3c314c2a, 0x00000000} }, /* 9.377e-19 */ - /**/ u2 = {{0x3bf955e4, 0x00000000} }, /* 8.584e-20 */ -@@ -129,10 +127,8 @@ - /**/ hpi1 = {{0x33145c07, 0x3c91a626} }, /* pi/2-hpi */ - /**/ mhpi = {{0x54442d18, 0xbff921fb} }, /* -pi/2 */ - /**/ qpi = {{0x54442d18, 0x3fe921fb} }, /* pi/4 */ --/**/ qpi1 = {{0x33145c07, 0x3c81a626} }, /* pi/4-qpi */ - /**/ mqpi = {{0x54442d18, 0xbfe921fb} }, /* -pi/4 */ - /**/ tqpi = {{0x7f3321d2, 0x4002d97c} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x4c9e8a0a, 0x3c9a7939} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0x7f3321d2, 0xc002d97c} }, /* -3pi/4 */ - /**/ u1 = {{0x00000000, 0x3c314c2a} }, /* 9.377e-19 */ - /**/ u2 = {{0x00000000, 0x3bf955e4} }, /* 8.584e-20 */ ---- a/sysdeps/ieee754/dbl-64/uexp.h -+++ b/sysdeps/ieee754/dbl-64/uexp.h -@@ -29,7 +29,7 @@ - - #include "mydefs.h" - --const static double one = 1.0, zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, -+const static double zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, - err_0 = 1.000014, err_1 = 0.000016; - const static int4 bigint = 0x40862002, - badint = 0x40876000,smallint = 0x3C8fffff; ---- a/sysdeps/ieee754/dbl-64/upow.h -+++ b/sysdeps/ieee754/dbl-64/upow.h -@@ -34,7 +34,6 @@ - /**/ nZERO = {{0x80000000, 0}}, /* -0.0 */ - /**/ INF = {{0x7ff00000, 0x00000000}}, /* INF */ - /**/ nINF = {{0xfff00000, 0x00000000}}, /* -INF */ --/**/ sqrt_2 = {{0x3ff6a09e, 0x667f3bcc}}, /* sqrt(2) */ - /**/ ln2a = {{0x3fe62e42, 0xfefa3800}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x3d2ef357, 0x93c76730}}, /* ln(2)-ln2a */ - /**/ bigu = {{0x4297ffff, 0xfffffd2c}}, /* 1.5*2**42 -724*2**-10 */ -@@ -48,7 +47,6 @@ - /**/ nZERO = {{0, 0x80000000}}, /* -0.0 */ - /**/ INF = {{0x00000000, 0x7ff00000}}, /* INF */ - /**/ nINF = {{0x00000000, 0xfff00000}}, /* -INF */ --/**/ sqrt_2 = {{0x667f3bcc, 0x3ff6a09e}}, /* sqrt(2) */ - /**/ ln2a = {{0xfefa3800, 0x3fe62e42}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x93c76730, 0x3d2ef357}}, /* ln(2)-ln2a */ - /**/ bigu = {{0xfffffd2c, 0x4297ffff}}, /* 1.5*2**42 -724*2**-10 */ ---- a/sysdeps/ieee754/flt-32/e_log10f.c -+++ b/sysdeps/ieee754/flt-32/e_log10f.c -@@ -22,8 +22,6 @@ - log10_2hi = 3.0102920532e-01, /* 0x3e9a2080 */ - log10_2lo = 7.9034151668e-07; /* 0x355427db */ - --static const float zero = 0.0; -- - float - __ieee754_log10f(float x) - { ---- a/sysdeps/ieee754/flt-32/s_cosf.c -+++ b/sysdeps/ieee754/flt-32/s_cosf.c -@@ -21,8 +21,6 @@ - #include - #include - --static const float one=1.0; -- - #ifndef COSF - # define COSF_FUNC __cosf - #else ---- a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -+++ b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -@@ -74,7 +74,6 @@ - static const long double PIL = 3.1415926535897932384626433832795028841972E0L; - static const long double MAXLGM = 1.0485738685148938358098967157129705071571E4928L; - static const long double one = 1.0L; --static const long double zero = 0.0L; - static const long double huge = 1.0e4000L; - - /* log gamma(x) = ( x - 0.5 ) * log(x) - x + LS2PI + 1/x P(1/x^2) ---- a/sysdeps/ieee754/ldbl-128/s_erfl.c -+++ b/sysdeps/ieee754/ldbl-128/s_erfl.c -@@ -138,7 +138,6 @@ - - static const long double - tiny = 1e-4931L, -- half = 0.5L, - one = 1.0L, - two = 2.0L, - /* 2/sqrt(pi) - 1 */ ---- a/sysdeps/ieee754/ldbl-128/s_log1pl.c -+++ b/sysdeps/ieee754/ldbl-128/s_log1pl.c -@@ -116,7 +116,6 @@ - - static const long double sqrth = 0.7071067811865475244008443621048490392848L; - /* ln (2^16384 * (1 - 2^-113)) */ --static const long double maxlog = 1.1356523406294143949491931077970764891253E4L; - static const long double zero = 0.0L; - - long double diff --git a/packages/glibc/2.18/0005-misleading-indentation.patch b/packages/glibc/2.18/0005-misleading-indentation.patch deleted file mode 100644 index 8e08259..0000000 --- a/packages/glibc/2.18/0005-misleading-indentation.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 976ef870542580cf5fed896c2c652b3e1a95f9da -Author: Steve Ellcey -Date: Fri Dec 11 09:19:37 2015 -0800 - - Fix indentation. - - * sysdeps/ieee754/flt-32/k_rem_pio2f.c (__kernel_rem_pio2f): - Fix indentation. - ---- - sysdeps/ieee754/flt-32/k_rem_pio2f.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - ---- a/sysdeps/ieee754/flt-32/k_rem_pio2f.c -+++ b/sysdeps/ieee754/flt-32/k_rem_pio2f.c -@@ -65,7 +65,9 @@ - - /* compute q[0],q[1],...q[jk] */ - for (i=0;i<=jk;i++) { -- for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; q[i] = fw; -+ for(j=0,fw=0.0;j<=jx;j++) -+ fw += x[j]*f[jx+i-j]; -+ q[i] = fw; - } - - jz = jk; diff --git a/packages/glibc/2.18/0006-dl-open-array-bounds.patch b/packages/glibc/2.18/0006-dl-open-array-bounds.patch deleted file mode 100644 index 83eb0b3..0000000 --- a/packages/glibc/2.18/0006-dl-open-array-bounds.patch +++ /dev/null @@ -1,38 +0,0 @@ -commit 328c44c3670ebf6c1bd790acddce65a12998cd6c -Author: Roland McGrath -Date: Fri Apr 17 12:11:58 2015 -0700 - - Fuller check for invalid NSID in _dl_open. - ---- - elf/dl-open.c | 12 +++++++++--- - 1 file changed, 9 insertions(+), 3 deletions(-) - ---- a/elf/dl-open.c -+++ b/elf/dl-open.c -@@ -211,7 +211,7 @@ - struct link_map *l = _dl_find_dso_for_object ((ElfW(Addr)) caller_dlopen); - - if (l) -- call_map = l; -+ call_map = l; - - if (args->nsid == __LM_ID_CALLER) - args->nsid = call_map->l_ns; -@@ -627,8 +627,14 @@ - /* Never allow loading a DSO in a namespace which is empty. Such - direct placements is only causing problems. Also don't allow - loading into a namespace used for auditing. */ -- else if (__builtin_expect (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER, 0) -- && (GL(dl_ns)[nsid]._ns_nloaded == 0 -+ else if (__glibc_unlikely (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER) -+ && (__glibc_unlikely (nsid < 0 || nsid >= GL(dl_nns)) -+ /* This prevents the [NSID] index expressions from being -+ evaluated, so the compiler won't think that we are -+ accessing an invalid index here in the !SHARED case where -+ DL_NNS is 1 and so any NSID != 0 is invalid. */ -+ || DL_NNS == 1 -+ || GL(dl_ns)[nsid]._ns_nloaded == 0 - || GL(dl_ns)[nsid]._ns_loaded->l_auditing)) - _dl_signal_error (EINVAL, file, NULL, - N_("invalid target namespace in dlmopen()")); diff --git a/packages/glibc/2.18/0007-2770d15-Fix-PI-mutex-check-in-pthread_cond_broadcast-and-pthread_cond_signal.patch b/packages/glibc/2.18/0007-2770d15-Fix-PI-mutex-check-in-pthread_cond_broadcast-and-pthread_cond_signal.patch deleted file mode 100644 index 5249bf3..0000000 --- a/packages/glibc/2.18/0007-2770d15-Fix-PI-mutex-check-in-pthread_cond_broadcast-and-pthread_cond_signal.patch +++ /dev/null @@ -1,77 +0,0 @@ -commit 2770d15e7e880821fc586619c59eb45180628e16 -Author: Siddhesh Poyarekar -Date: Thu Oct 3 08:26:21 2013 +0530 - - Fix PI mutex check in pthread_cond_broadcast and pthread_cond_signal - - Fixes BZ #15996. - - The check had a typo - it checked for PTHREAD_MUTEX_ROBUST_NP instead - of PTHREAD_MUTEX_ROBUST_NORMAL_NP. It has now been replaced by the - already existing convenience macro USE_REQUEUE_PI. - ---- - NEWS | 2 +- - nptl/ChangeLog | 9 +++++++++ - nptl/pthread_cond_broadcast.c | 5 +---- - nptl/pthread_cond_signal.c | 7 +------ - 4 files changed, 12 insertions(+), 11 deletions(-) - ---- a/NEWS -+++ b/NEWS -@@ -9,7 +9,7 @@ - - * The following bugs are resolved with this release: - -- 15909. -+ 15909, 15996. - - Version 2.18 - ---- a/nptl/ChangeLog -+++ b/nptl/ChangeLog -@@ -1,3 +1,12 @@ -+2013-10-03 Siddhesh Poyarekar -+ -+ [BZ #15996] -+ * pthread_cond_broadcast.c (__pthread_cond_broadcast) -+ [lll_futex_cmp_requeue_pi && __ASSUME_REQUEUE_PI]: Use -+ USE_REQUEUE_PI. -+ * pthread_cond_signal.c (__pthread_cond_signal) -+ [lll_futex_cmd_requeue_pi && __ASSUME_REQUEUE_PI]: Likewise. -+ - 2013-07-23 David S. Miller - - * tst-cancel4.c (WRITE_BUFFER_SIZE): Adjust comment. ---- a/nptl/pthread_cond_broadcast.c -+++ b/nptl/pthread_cond_broadcast.c -@@ -63,10 +63,7 @@ - - #if (defined lll_futex_cmp_requeue_pi \ - && defined __ASSUME_REQUEUE_PI) -- int pi_flag = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_NP; -- pi_flag &= mut->__data.__kind; -- -- if (pi_flag == PTHREAD_MUTEX_PRIO_INHERIT_NP) -+ if (USE_REQUEUE_PI (mut)) - { - if (lll_futex_cmp_requeue_pi (&cond->__data.__futex, 1, INT_MAX, - &mut->__data.__lock, futex_val, ---- a/nptl/pthread_cond_signal.c -+++ b/nptl/pthread_cond_signal.c -@@ -49,14 +49,9 @@ - - #if (defined lll_futex_cmp_requeue_pi \ - && defined __ASSUME_REQUEUE_PI) -- int pi_flag = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_NP; - pthread_mutex_t *mut = cond->__data.__mutex; - -- /* Do not use requeue for pshared condvars. */ -- if (mut != (void *) ~0l) -- pi_flag &= mut->__data.__kind; -- -- if (__builtin_expect (pi_flag == PTHREAD_MUTEX_PRIO_INHERIT_NP, 0) -+ if (USE_REQUEUE_PI (mut) - /* This can only really fail with a ENOSYS, since nobody can modify - futex while we have the cond_lock. */ - && lll_futex_cmp_requeue_pi (&cond->__data.__futex, 1, 0, diff --git a/packages/glibc/2.18/0008-support-make4.patch b/packages/glibc/2.18/0008-support-make4.patch deleted file mode 100644 index a9be159..0000000 --- a/packages/glibc/2.18/0008-support-make4.patch +++ /dev/null @@ -1,39 +0,0 @@ -Original patch modified: Removed ChangeLog and NEWS sections, ajdust for configure.in -KS - -From: Marc-Antoine Perennou -Date: Thu, 31 Oct 2013 02:37:50 +0000 (+1000) -Subject: Accept make versions 4.0 and greater -X-Git-Tag: glibc-2.19~556 -X-Git-Url: https://sourceware.org/git/?p=glibc.git;a=commitdiff_plain;h=28d708c44bc47b56f6551ff285f78edcf61c208a;hp=a56ee40b176d0a3f47f2a7eb75208f2e3763c9fd - -Accept make versions 4.0 and greater ---- - ---- - configure | 2 +- - configure.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/configure -+++ b/configure -@@ -4772,7 +4772,7 @@ - ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.79* | 3.[89]*) -+ 3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - ---- a/configure.in -+++ b/configure.in -@@ -989,7 +989,7 @@ - critic_missing="$critic_missing gcc") - AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version, - [GNU Make[^0-9]*\([0-9][0-9.]*\)], -- [3.79* | 3.[89]*], critic_missing="$critic_missing make") -+ [3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*], critic_missing="$critic_missing make") - - AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version, - [GNU gettext.* \([0-9]*\.[0-9.]*\)], diff --git a/packages/glibc/2.18/0009-arm-unwind.patch b/packages/glibc/2.18/0009-arm-unwind.patch deleted file mode 100644 index 85288d0..0000000 --- a/packages/glibc/2.18/0009-arm-unwind.patch +++ /dev/null @@ -1,51 +0,0 @@ ---- - nptl/sysdeps/pthread/unwind-forcedunwind.c | 2 +- - ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c | 2 +- - ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c | 2 +- - sysdeps/gnu/unwind-resume.c | 2 +- - 4 files changed, 4 insertions(+), 4 deletions(-) - ---- a/nptl/sysdeps/pthread/unwind-forcedunwind.c -+++ b/nptl/sysdeps/pthread/unwind-forcedunwind.c -@@ -24,7 +24,7 @@ - #include - - static void *libgcc_s_handle; --static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); -+static void (*libgcc_s_resume) (struct _Unwind_Exception *exc) __attribute_used__; - static _Unwind_Reason_Code (*libgcc_s_personality) - (int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *, - struct _Unwind_Context *); ---- a/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c -+++ b/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c -@@ -22,7 +22,7 @@ - #include - - static void *libgcc_s_handle; --static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); -+static void (*libgcc_s_resume) (struct _Unwind_Exception *exc) __attribute_used__; - static _Unwind_Reason_Code (*libgcc_s_personality) - (_Unwind_State, struct _Unwind_Exception *, struct _Unwind_Context *); - static _Unwind_Reason_Code (*libgcc_s_forcedunwind) ---- a/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c -+++ b/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c -@@ -20,7 +20,7 @@ - #include - #include - --static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); -+static void (*libgcc_s_resume) (struct _Unwind_Exception *exc) __attribute_used__; - static _Unwind_Reason_Code (*libgcc_s_personality) - (_Unwind_State, struct _Unwind_Exception *, struct _Unwind_Context *); - ---- a/sysdeps/gnu/unwind-resume.c -+++ b/sysdeps/gnu/unwind-resume.c -@@ -21,7 +21,7 @@ - #include - #include - --static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); -+static void (*libgcc_s_resume) (struct _Unwind_Exception *exc) __attribute_used__; - static _Unwind_Reason_Code (*libgcc_s_personality) - (int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *, - struct _Unwind_Context *); diff --git a/packages/glibc/2.18/0010-Fix-combreloc-test-BSD-grep.patch b/packages/glibc/2.18/0010-Fix-combreloc-test-BSD-grep.patch deleted file mode 100644 index e457c3c..0000000 --- a/packages/glibc/2.18/0010-Fix-combreloc-test-BSD-grep.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 61d5f9c09b3157db76bd1a393e248c262a8d9dd4 Mon Sep 17 00:00:00 2001 -From: Alexey Neyman -Date: Wed, 8 Mar 2017 14:31:10 -0800 -Subject: [PATCH] Fix combreloc test with BSD grep - -The test for "-z combreloc" fails when cross-compiling on a machine -that uses BSD grep (e.g. on macos). grep complains about empty -subexpression and exits with non-zero status, which is interpreted -by configure as "not found". As a result, support for "-z combreloc" -(HAVE_Z_COMBRELOC) is not detected, leading to link failure on SPARC. - - * configure.ac: Avoid empty subexpression in grep. - -Signed-off-by: Alexey Neyman ---- - configure | 2 +- - configure.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/configure -+++ b/configure -@@ -6307,7 +6307,7 @@ - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } - then -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no ---- a/configure.in -+++ b/configure.in -@@ -1596,7 +1596,7 @@ - dnl introducing new options this is not easily doable. Instead use a tool - dnl which always is cross-platform: readelf. To detect whether -z combreloc - dnl look for a section named .rel.dyn. -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/packages/glibc/2.18/0011-macos-cross-rpcgen.patch b/packages/glibc/2.18/0011-macos-cross-rpcgen.patch deleted file mode 100644 index b439b0f..0000000 --- a/packages/glibc/2.18/0011-macos-cross-rpcgen.patch +++ /dev/null @@ -1,34 +0,0 @@ -commit ae7080d30c68cfa0c81ce3422dca948f64a94f50 -Author: Jia Liu -Date: Sat Sep 7 00:01:08 2013 +0800 - - sunrpc/rpc/types.h: fix OS X and FreeBSD build problems - - When I build arm-linux-gcc on OS X, I find glibc will get a build error - in sunrpc/rpc/types.h, so I add __APPLE_CC__ to make OS X build OK. - For FreeBSD, Add __FreeBSD__ to make it build OK, too. - - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00155.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00217.html - URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00240.html - Signed-off-by: Jia Liu - Signed-off-by: Mike Frysinger - ---- - sunrpc/rpc/types.h | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/sunrpc/rpc/types.h -+++ b/sunrpc/rpc/types.h -@@ -69,6 +69,11 @@ - #include - #endif - -+#if defined __APPLE_CC__ || defined __FreeBSD__ -+# define __u_char_defined -+# define __daddr_t_defined -+#endif -+ - #ifndef __u_char_defined - typedef __u_char u_char; - typedef __u_short u_short; diff --git a/packages/glibc/2.18/0012-fix-rpc_parse-format.patch b/packages/glibc/2.18/0012-fix-rpc_parse-format.patch deleted file mode 100644 index 341d541..0000000 --- a/packages/glibc/2.18/0012-fix-rpc_parse-format.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 5874510faaf3cbd0bb112aaacab9f225002beed1 -Author: Joseph Myers -Date: Tue Nov 8 23:44:51 2016 +0000 - - Fix rpcgen buffer overrun (bug 20790). - - Building with GCC 7 produces an error building rpcgen: - - rpc_parse.c: In function 'get_prog_declaration': - rpc_parse.c:543:25: error: may write a terminating nul past the end of the destination [-Werror=format-length=] - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ~~~~^ - rpc_parse.c:543:5: note: format output between 5 and 14 bytes into a destination of size 10 - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - That buffer overrun is for the case where the .x file declares a - program with a million arguments. The strcpy two lines above can - generate a buffer overrun much more simply for a long argument name. - - The limit on length of line read by rpcgen (MAXLINESIZE == 1024) - provides a bound on the buffer size needed, so this patch just changes - the buffer size to MAXLINESIZE to avoid both possible buffer - overruns. A testcase is added that rpcgen does not crash with a - 500-character argument name, where it previously crashed. - - It would not at all surprise me if there are many other ways of - crashing rpcgen with either valid or invalid input; fuzz testing would - likely find various such bugs, though I don't think they are that - important to fix (rpcgen is not that likely to be used with untrusted - .x files as input). (As well as fuzz-findable bugs there are probably - also issues when various int variables get overflowed on very large - input.) The test infrastructure for rpcgen-not-crashing tests would - need extending if tests are to be added for cases where rpcgen should - produce an error, as opposed to cases where it should succeed. - - Tested for x86_64 and x86. - - [BZ #20790] - * sunrpc/rpc_parse.c (get_prog_declaration): Increase buffer size - to MAXLINESIZE. - * sunrpc/bug20790.x: New file. - * sunrpc/Makefile [$(run-built-tests) = yes] (rpcgen-tests): New - variable. - [$(run-built-tests) = yes] (tests-special): Add $(rpcgen-tests). - [$(run-built-tests) = yes] ($(rpcgen-tests)): New rule. - ---- - sunrpc/rpc_parse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sunrpc/rpc_parse.c -+++ b/sunrpc/rpc_parse.c -@@ -521,7 +521,7 @@ - get_prog_declaration (declaration * dec, defkind dkind, int num /* arg number */ ) - { - token tok; -- char name[10]; /* argument name */ -+ char name[MAXLINESIZE]; /* argument name */ - - if (dkind == DEF_PROGRAM) - { diff --git a/packages/glibc/2.18/0013-nis-bogus-conditional.patch b/packages/glibc/2.18/0013-nis-bogus-conditional.patch deleted file mode 100644 index e728368..0000000 --- a/packages/glibc/2.18/0013-nis-bogus-conditional.patch +++ /dev/null @@ -1,64 +0,0 @@ -commit f88759ea9bd3c8d8fef28f123ba9767cb0e421a3 -Author: Joseph Myers -Date: Wed Dec 21 23:44:01 2016 +0000 - - Fix nss_nisplus build with mainline GCC (bug 20978). - - glibc build with current mainline GCC fails because - nis/nss_nisplus/nisplus-alias.c contains code - - if (name != NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; - } - - char buf[strlen (name) + 9 + tablename_len]; - - producing an error about strlen being called on a pointer that is - always NULL (and a subsequent use of that pointer with a %s format in - snprintf). - - As Andreas noted, the bogus conditional comes from a 1997 change: - - - if (name == NULL || strlen(name) > 8) - - return NSS_STATUS_NOTFOUND; - - else - + if (name != NULL || strlen(name) <= 8) - - So the intention is clearly to return an error for NULL name. - - This patch duly inverts the sense of the conditional. It fixes the - build with GCC mainline, and passes usual glibc testsuite testing for - x86_64. However, I have not tried any actual substantive nisplus - testing, do not have an environment for such testing, and do not know - whether it is possible that strlen (name) or tablename_len might be - large so that the VLA for buf is actually a security issue. However, - if it is a security issue, there are plenty of other similar instances - in the nisplus code (that haven't been hidden by a bogus comparison - with NULL) - and nis_table.c:__create_ib_request uses strdupa on the - string passed to nis_list, so a local fix in the caller wouldn't - suffice anyway (see bug 20987). (Calls to strdupa and other such - macros that use alloca must be considered equally questionable - regarding stack overflow issues as direct calls to alloca and VLA - declarations.) - - [BZ #20978] - * nis/nss_nisplus/nisplus-alias.c (_nss_nisplus_getaliasbyname_r): - Compare name == NULL, not name != NULL. - ---- - nis/nss_nisplus/nisplus-alias.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/nis/nss_nisplus/nisplus-alias.c -+++ b/nis/nss_nisplus/nisplus-alias.c -@@ -291,7 +291,7 @@ - return status; - } - -- if (name != NULL) -+ if (name == NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; diff --git a/packages/glibc/2.18/0014-strftime-multiple-stmts.patch b/packages/glibc/2.18/0014-strftime-multiple-stmts.patch deleted file mode 100644 index 88e658b..0000000 --- a/packages/glibc/2.18/0014-strftime-multiple-stmts.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb -Author: Joseph Myers -Date: Tue Jun 27 17:12:13 2017 +0000 - - Fix strftime build with GCC 8. - - Building with current GCC mainline fails with: - - strftime_l.c: In function '__strftime_internal': - strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros] - digits = d > width ? d : width; \ - ^ - strftime_l.c:1260:6: note: in expansion of macro 'DO_NUMBER' - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - ^~~~~~~~~ - strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this 'else' clause - else - ^~~~ - - In fact this particular instance is harmless; the code looks like: - - if (modifier == L_('O')) - goto bad_format; - else - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - - and because of the goto, it doesn't matter that part of the expansion - isn't under the "else" conditional. But it's also clearly bad style - to rely on that. This patch changes DO_NUMBER and DO_NUMBER_SPACEPAD - to use do { } while (0) to avoid such problems. - - Tested (full testsuite) for x86_64 (GCC 6), and with - build-many-glibcs.py with GCC mainline, in conjunction with my libgcc - patch . - - * time/strftime_l.c (DO_NUMBER): Define using do { } while (0). - (DO_NUMBER_SPACEPAD): Likewise. - ---- - time/strftime_l.c | 22 ++++++++++++++++------ - 1 file changed, 16 insertions(+), 6 deletions(-) - ---- a/time/strftime_l.c -+++ b/time/strftime_l.c -@@ -737,12 +737,22 @@ - format_char = *f; - switch (format_char) - { --#define DO_NUMBER(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number --#define DO_NUMBER_SPACEPAD(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number_spacepad -+#define DO_NUMBER(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number; \ -+ } \ -+ while (0) -+#define DO_NUMBER_SPACEPAD(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number_spacepad; \ -+ } \ -+ while (0) - - case L_('%'): - if (modifier != 0) diff --git a/packages/glibc/2.18/0015-if_nametoindex-size-check.patch b/packages/glibc/2.18/0015-if_nametoindex-size-check.patch deleted file mode 100644 index 375bb95..0000000 --- a/packages/glibc/2.18/0015-if_nametoindex-size-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 2180fee114b778515b3f560e5ff1e795282e60b0 -Author: Steve Ellcey -Date: Wed Nov 15 08:58:48 2017 -0800 - - Check length of ifname before copying it into to ifreq structure. - - [BZ #22442] - * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): - Check if ifname is too long. - ---- - sysdeps/unix/sysv/linux/if_index.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/sysdeps/unix/sysv/linux/if_index.c -+++ b/sysdeps/unix/sysv/linux/if_index.c -@@ -44,6 +44,12 @@ - if (fd < 0) - return 0; - -+ if (strlen (ifname) >= IFNAMSIZ) -+ { -+ __set_errno (ENODEV); -+ return 0; -+ } -+ - strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name)); - if (__ioctl (fd, SIOCGIFINDEX, &ifr) < 0) - { diff --git a/packages/glibc/2.18/0016-utmp-nonstring.patch b/packages/glibc/2.18/0016-utmp-nonstring.patch deleted file mode 100644 index 378d62e..0000000 --- a/packages/glibc/2.18/0016-utmp-nonstring.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit 7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c -Author: Martin Sebor -Date: Wed Nov 15 17:39:59 2017 -0700 - - The -Wstringop-truncation option new in GCC 8 detects common misuses - of the strncat and strncpy function that may result in truncating - the copied string before the terminating NUL. To avoid false positive - warnings for correct code that intentionally creates sequences of - characters that aren't guaranteed to be NUL-terminated, arrays that - are intended to store such sequences should be decorated with a new - nonstring attribute. This change add this attribute to Glibc and - uses it to suppress such false positives. - - ChangeLog: - * misc/sys/cdefs.h (__attribute_nonstring__): New macro. - * sysdeps/gnu/bits/utmp.h (struct utmp): Use it. - * sysdeps/unix/sysv/linux/s390/bits/utmp.h (struct utmp): Same. - ---- - misc/sys/cdefs.h | 9 +++++++++ - sysdeps/gnu/bits/utmp.h | 9 ++++++--- - sysdeps/unix/sysv/linux/s390/bits/utmp.h | 9 ++++++--- - 3 files changed, 21 insertions(+), 6 deletions(-) - ---- a/misc/sys/cdefs.h -+++ b/misc/sys/cdefs.h -@@ -382,6 +382,15 @@ - # define __glibc_likely(cond) (cond) - #endif - -+#if __GNUC_PREREQ (8, 0) -+/* Describes a char array whose address can safely be passed as the first -+ argument to strncpy and strncat, as the char array is not necessarily -+ a NUL-terminated string. */ -+# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -+#else -+# define __attribute_nonstring__ -+#endif -+ - #include - - #if defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH ---- a/sysdeps/gnu/bits/utmp.h -+++ b/sysdeps/gnu/bits/utmp.h -@@ -59,10 +59,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled ---- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h -+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h -@@ -59,10 +59,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled diff --git a/packages/glibc/2.18/0017-getlogin_r-use-strnlen.patch b/packages/glibc/2.18/0017-getlogin_r-use-strnlen.patch deleted file mode 100644 index ff19964..0000000 --- a/packages/glibc/2.18/0017-getlogin_r-use-strnlen.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 4bae615022cb5a5da79ccda83cc6c9ba9f2d479c -Author: Joseph Myers -Date: Wed Nov 22 18:44:23 2017 +0000 - - Avoid use of strlen in getlogin_r (bug 22447). - - Building glibc with current mainline GCC fails, among other reasons, - because of an error for use of strlen on the nonstring ut_user field. - This patch changes the problem code in getlogin_r to use __strnlen - instead. It also needs to set the trailing NUL byte of the result - explicitly, because of the case where ut_user does not have such a - trailing NUL byte (but the result should always have one). - - Tested for x86_64. Also tested that, in conjunction with - , it fixes - the build for arm with mainline GCC. - - [BZ #22447] - * sysdeps/unix/getlogin_r.c (__getlogin_r): Use __strnlen not - strlen to compute length of ut_user and set trailing NUL byte of - result explicitly. - ---- - sysdeps/unix/getlogin_r.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - ---- a/sysdeps/unix/getlogin_r.c -+++ b/sysdeps/unix/getlogin_r.c -@@ -82,7 +82,7 @@ - - if (result == 0) - { -- size_t needed = strlen (ut->ut_user) + 1; -+ size_t needed = __strnlen (ut->ut_user, UT_NAMESIZE) + 1; - - if (needed > name_len) - { -@@ -91,7 +91,8 @@ - } - else - { -- memcpy (name, ut->ut_user, needed); -+ memcpy (name, ut->ut_user, needed - 1); -+ name[needed - 1] = 0; - result = 0; - } - } diff --git a/packages/glibc/2.18/0018-zic.c-use-memcpy.patch b/packages/glibc/2.18/0018-zic.c-use-memcpy.patch deleted file mode 100644 index e5ab81e..0000000 --- a/packages/glibc/2.18/0018-zic.c-use-memcpy.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit e69897bf202e18034cbef26f363bae64de70a196 -Author: Paul Eggert -Date: Sun Nov 12 22:00:28 2017 -0800 - - timezone: pacify GCC -Wstringop-truncation - - Problem reported by Martin Sebor in: - https://sourceware.org/ml/libc-alpha/2017-11/msg00336.html - * timezone/zic.c (writezone): Use memcpy, not strncpy. - ---- - timezone/zic.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/timezone/zic.c -+++ b/timezone/zic.c -@@ -1609,7 +1609,7 @@ - } - #define DO(field) ((void) fwrite(tzh.field, sizeof tzh.field, 1, fp)) - tzh = tzh0; -- (void) strncpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); -+ memcpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); - tzh.tzh_version[0] = ZIC_VERSION; - convert(eitol(thistypecnt), tzh.tzh_ttisgmtcnt); - convert(eitol(thistypecnt), tzh.tzh_ttisstdcnt); diff --git a/packages/glibc/2.18/0019-fix-GCC-10-detection.patch b/packages/glibc/2.18/0019-fix-GCC-10-detection.patch deleted file mode 100644 index 32f4a17..0000000 --- a/packages/glibc/2.18/0019-fix-GCC-10-detection.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 3b16131609b2edbf29194532c089079a8d2664b1 Mon Sep 17 00:00:00 2001 -From: Jakub Labenski -Date: Fri, 5 Jun 2020 09:11:40 +0200 -Subject: [PATCH] Fix GCC 10+ detection - ---- - configure | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure b/configure -index 1ee4c42003..4e1d1fa8a0 100755 ---- a/configure -+++ b/configure -@@ -4709,7 +4709,7 @@ $as_echo_n "checking version of $CC... " >&6; } - ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 4.[4-9].* | 4.[1-9][0-9].* | [5-9].* ) -+ 4.[4-9].* | 4.[1-9][0-9].* | [5-9].* | [1-9][0-9].* ) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - --- -2.25.1 - diff --git a/packages/glibc/2.18/chksum b/packages/glibc/2.18/chksum deleted file mode 100644 index aea8377..0000000 --- a/packages/glibc/2.18/chksum +++ /dev/null @@ -1,12 +0,0 @@ -md5 glibc-2.18.tar.xz 88fbbceafee809e82efd52efa1e3c58f -sha1 glibc-2.18.tar.xz 1f0e4e7ba5fe1f45ffd0548b6c36caef0bc7e51f -sha256 glibc-2.18.tar.xz 2cb4e1e381928f1e5e55e71ab1ba8e0ea7ede75ff9709770435bfd018ea257a3 -sha512 glibc-2.18.tar.xz 27218d2e7dd3bf3908d7af171c490933680e958c579ebd27b43b661e223fd5de2219cc1cf699170405280808c84de476d0ad86dbba35a488ef404e9438552327 -md5 glibc-2.18.tar.bz2 e67f791383077c5f6a6e91fabc7579a5 -sha1 glibc-2.18.tar.bz2 a3b106be1d578fd5b4628a34ff1aa6264d974cdc -sha256 glibc-2.18.tar.bz2 f32c07486fc35c1b7da95251c074c726c8c22e65dcc7d9c68e8f68ad2975f63d -sha512 glibc-2.18.tar.bz2 be02b39486df03c84b13454bd6edc64135a4e0f6ee3eacd5c9ad856900518427518764b99c3c24ab770173aad113806ffd17c028c46c6bf73c9917939286c90c -md5 glibc-2.18.tar.gz b67b22b428ed183148d1344da6d22ea9 -sha1 glibc-2.18.tar.gz 84dd76b6b6427d2bdcd6f73b5c56e71e4223606c -sha256 glibc-2.18.tar.gz c8e727b5feef883184241a4767725ec280c0288794bc5cd4432497370db47734 -sha512 glibc-2.18.tar.gz 6242279f52ce36b71486bc18b239c9577a838618284785c6e3ad57c34268c1887d1e9a97141613fdbfc66f32eb8f31290addb51cf07a4744532dfcbabe11cfd4 diff --git a/packages/glibc/2.18/version.desc b/packages/glibc/2.18/version.desc deleted file mode 100644 index fcfe389..0000000 --- a/packages/glibc/2.18/version.desc +++ /dev/null @@ -1 +0,0 @@ -obsolete='yes' diff --git a/packages/glibc/2.20/0000-sparc-nptl.patch b/packages/glibc/2.20/0000-sparc-nptl.patch deleted file mode 100644 index 4c5a10e..0000000 --- a/packages/glibc/2.20/0000-sparc-nptl.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- - sysdeps/sparc/sparc32/sem_trywait.c | 1 + - 1 file changed, 1 insertion(+) - ---- a/sysdeps/sparc/sparc32/sem_trywait.c -+++ b/sysdeps/sparc/sparc32/sem_trywait.c -@@ -22,6 +22,7 @@ - #include - #include - #include -+#include - - #include - diff --git a/packages/glibc/2.20/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch b/packages/glibc/2.20/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch deleted file mode 100644 index d92014e..0000000 --- a/packages/glibc/2.20/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch +++ /dev/null @@ -1,75 +0,0 @@ -From df1cf48777fe4cd81ad7fb09ecbe5b31432b7c1c Mon Sep 17 00:00:00 2001 -From: Yvan Roux -Date: Fri, 15 Apr 2016 13:29:26 +0200 -Subject: [PATCH] Suppress GCC 6 warning about ambiguous 'else' with - -Wparentheses - ---- - nis/nis_call.c | 20 +++++++++++--------- - stdlib/setenv.c | 24 +++++++++++++----------- - 2 files changed, 24 insertions(+), 20 deletions(-) - ---- a/nis/nis_call.c -+++ b/nis/nis_call.c -@@ -680,16 +680,18 @@ - /* Choose which entry should be evicted from the cache. */ - loc = &nis_server_cache[0]; - if (*loc != NULL) -- for (i = 1; i < 16; ++i) -- if (nis_server_cache[i] == NULL) -- { -+ { -+ for (i = 1; i < 16; ++i) -+ if (nis_server_cache[i] == NULL) -+ { -+ loc = &nis_server_cache[i]; -+ break; -+ } -+ else if ((*loc)->uses > nis_server_cache[i]->uses -+ || ((*loc)->uses == nis_server_cache[i]->uses -+ && (*loc)->expires > nis_server_cache[i]->expires)) - loc = &nis_server_cache[i]; -- break; -- } -- else if ((*loc)->uses > nis_server_cache[i]->uses -- || ((*loc)->uses == nis_server_cache[i]->uses -- && (*loc)->expires > nis_server_cache[i]->expires)) -- loc = &nis_server_cache[i]; -+ } - old = *loc; - *loc = new; - ---- a/stdlib/setenv.c -+++ b/stdlib/setenv.c -@@ -262,18 +262,20 @@ - ep = __environ; - if (ep != NULL) - while (*ep != NULL) -- if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -- { -- /* Found it. Remove this pointer by moving later ones back. */ -- char **dp = ep; -+ { -+ if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -+ { -+ /* Found it. Remove this pointer by moving later ones back. */ -+ char **dp = ep; - -- do -- dp[0] = dp[1]; -- while (*dp++); -- /* Continue the loop in case NAME appears again. */ -- } -- else -- ++ep; -+ do -+ dp[0] = dp[1]; -+ while (*dp++); -+ /* Continue the loop in case NAME appears again. */ -+ } -+ else -+ ++ep; -+ } - - UNLOCK; - diff --git a/packages/glibc/2.20/0002-fix-signed-shift-overlow.patch b/packages/glibc/2.20/0002-fix-signed-shift-overlow.patch deleted file mode 100644 index c7cc330..0000000 --- a/packages/glibc/2.20/0002-fix-signed-shift-overlow.patch +++ /dev/null @@ -1,97 +0,0 @@ -commit 5542236837c5c41435f8282ec92799f480c36f18 -Author: Paul Eggert -Date: Tue Jul 21 22:50:29 2015 -0700 - - Port the 0x7efe...feff pattern to GCC 6. - - See Steve Ellcey's bug report in: - https://sourceware.org/ml/libc-alpha/2015-07/msg00673.html - * string/memrchr.c (MEMRCHR): - * string/rawmemchr.c (RAWMEMCHR): - * string/strchr.c (strchr): - * string/strchrnul.c (STRCHRNUL): - Rewrite code to avoid issues with signed shift overflow. - ---- - string/memrchr.c | 11 ++--------- - string/rawmemchr.c | 11 ++--------- - string/strchr.c | 9 ++------- - string/strchrnul.c | 9 ++------- - 4 files changed, 8 insertions(+), 32 deletions(-) - ---- a/string/memrchr.c -+++ b/string/memrchr.c -@@ -96,15 +96,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/rawmemchr.c -+++ b/string/rawmemchr.c -@@ -86,15 +86,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchr.c -+++ b/string/strchr.c -@@ -60,13 +60,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchrnul.c -+++ b/string/strchrnul.c -@@ -66,13 +66,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); diff --git a/packages/glibc/2.20/0003-dl-openat64-variadic.patch b/packages/glibc/2.20/0003-dl-openat64-variadic.patch deleted file mode 100644 index 552db12..0000000 --- a/packages/glibc/2.20/0003-dl-openat64-variadic.patch +++ /dev/null @@ -1,197 +0,0 @@ -commit 9dd346ff431fc761f1b748bd4da8bb59f7652094 -Author: Joseph Myers -Date: Tue Oct 20 11:54:09 2015 +0000 - - Convert 113 more function definitions to prototype style (files with assertions). - - This mostly automatically-generated patch converts 113 function - definitions in glibc from old-style K&R to prototype-style. Following - my other recent such patches, this one deals with the case of function - definitions in files that either contain assertions or where grep - suggested they might contain assertions - and thus where it isn't - possible to use a simple object code comparison as a sanity check on - the correctness of the patch, because line numbers are changed. - - A few such automatically-generated changes needed to be supplemented - by manual changes for the result to compile. openat64 had a prototype - declaration with "..." but an old-style definition in - sysdeps/unix/sysv/linux/dl-openat64.c, and "..." needed adding to the - generated prototype in the definition (I've filed - for diagnosing - such cases in GCC; the old state was undefined behavior not requiring - a diagnostic, but one seems a good idea). In addition, as Florian has - noted regparm attribute mismatches between declaration and definition - are only diagnosed for prototype definitions, and five functions - needed internal_function added to their definitions (in the case of - __pthread_mutex_cond_lock, via the macro definition of - __pthread_mutex_lock) to compile on i386. - - After this patch is in, remaining old-style definitions are probably - most readily fixed manually before we can turn on - -Wold-style-definition for all builds. - - Tested for x86_64 and x86 (testsuite). - - * crypt/md5-crypt.c (__md5_crypt_r): Convert to prototype-style - function definition. - * crypt/sha256-crypt.c (__sha256_crypt_r): Likewise. - * crypt/sha512-crypt.c (__sha512_crypt_r): Likewise. - * debug/backtracesyms.c (__backtrace_symbols): Likewise. - * elf/dl-minimal.c (_itoa): Likewise. - * hurd/hurdmalloc.c (malloc): Likewise. - (free): Likewise. - (realloc): Likewise. - * inet/inet6_option.c (inet6_option_space): Likewise. - (inet6_option_init): Likewise. - (inet6_option_append): Likewise. - (inet6_option_alloc): Likewise. - (inet6_option_next): Likewise. - (inet6_option_find): Likewise. - * io/ftw.c (FTW_NAME): Likewise. - (NFTW_NAME): Likewise. - (NFTW_NEW_NAME): Likewise. - (NFTW_OLD_NAME): Likewise. - * libio/iofwide.c (_IO_fwide): Likewise. - * libio/strops.c (_IO_str_init_static_internal): Likewise. - (_IO_str_init_static): Likewise. - (_IO_str_init_readonly): Likewise. - (_IO_str_overflow): Likewise. - (_IO_str_underflow): Likewise. - (_IO_str_count): Likewise. - (_IO_str_seekoff): Likewise. - (_IO_str_pbackfail): Likewise. - (_IO_str_finish): Likewise. - * libio/wstrops.c (_IO_wstr_init_static): Likewise. - (_IO_wstr_overflow): Likewise. - (_IO_wstr_underflow): Likewise. - (_IO_wstr_count): Likewise. - (_IO_wstr_seekoff): Likewise. - (_IO_wstr_pbackfail): Likewise. - (_IO_wstr_finish): Likewise. - * locale/programs/localedef.c (normalize_codeset): Likewise. - * locale/programs/locarchive.c (add_locale_to_archive): Likewise. - (add_locales_to_archive): Likewise. - (delete_locales_from_archive): Likewise. - * malloc/malloc.c (__libc_mallinfo): Likewise. - * math/gen-auto-libm-tests.c (init_fp_formats): Likewise. - * misc/tsearch.c (__tfind): Likewise. - * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Likewise. - * nptl/pthread_attr_getdetachstate.c - (__pthread_attr_getdetachstate): Likewise. - * nptl/pthread_attr_getguardsize.c (pthread_attr_getguardsize): - Likewise. - * nptl/pthread_attr_getinheritsched.c - (__pthread_attr_getinheritsched): Likewise. - * nptl/pthread_attr_getschedparam.c - (__pthread_attr_getschedparam): Likewise. - * nptl/pthread_attr_getschedpolicy.c - (__pthread_attr_getschedpolicy): Likewise. - * nptl/pthread_attr_getscope.c (__pthread_attr_getscope): - Likewise. - * nptl/pthread_attr_getstack.c (__pthread_attr_getstack): - Likewise. - * nptl/pthread_attr_getstackaddr.c (__pthread_attr_getstackaddr): - Likewise. - * nptl/pthread_attr_getstacksize.c (__pthread_attr_getstacksize): - Likewise. - * nptl/pthread_attr_init.c (__pthread_attr_init_2_1): Likewise. - (__pthread_attr_init_2_0): Likewise. - * nptl/pthread_attr_setdetachstate.c - (__pthread_attr_setdetachstate): Likewise. - * nptl/pthread_attr_setguardsize.c (pthread_attr_setguardsize): - Likewise. - * nptl/pthread_attr_setinheritsched.c - (__pthread_attr_setinheritsched): Likewise. - * nptl/pthread_attr_setschedparam.c - (__pthread_attr_setschedparam): Likewise. - * nptl/pthread_attr_setschedpolicy.c - (__pthread_attr_setschedpolicy): Likewise. - * nptl/pthread_attr_setscope.c (__pthread_attr_setscope): - Likewise. - * nptl/pthread_attr_setstack.c (__pthread_attr_setstack): - Likewise. - * nptl/pthread_attr_setstackaddr.c (__pthread_attr_setstackaddr): - Likewise. - * nptl/pthread_attr_setstacksize.c (__pthread_attr_setstacksize): - Likewise. - * nptl/pthread_condattr_setclock.c (pthread_condattr_setclock): - Likewise. - * nptl/pthread_create.c (__find_in_stack_list): Likewise. - * nptl/pthread_getattr_np.c (pthread_getattr_np): Likewise. - * nptl/pthread_mutex_cond_lock.c (__pthread_mutex_lock): Define to - use internal_function. - * nptl/pthread_mutex_init.c (__pthread_mutex_init): Convert to - prototype-style function definition. - * nptl/pthread_mutex_lock.c (__pthread_mutex_lock): Likewise. - (__pthread_mutex_cond_lock_adjust): Likewise. Use - internal_function. - * nptl/pthread_mutex_timedlock.c (pthread_mutex_timedlock): - Convert to prototype-style function definition. - * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): - Likewise. - * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_usercnt): - Likewise. - (__pthread_mutex_unlock): Likewise. - * nptl_db/td_ta_clear_event.c (td_ta_clear_event): Likewise. - * nptl_db/td_ta_set_event.c (td_ta_set_event): Likewise. - * nptl_db/td_thr_clear_event.c (td_thr_clear_event): Likewise. - * nptl_db/td_thr_event_enable.c (td_thr_event_enable): Likewise. - * nptl_db/td_thr_set_event.c (td_thr_set_event): Likewise. - * nss/makedb.c (process_input): Likewise. - * posix/fnmatch.c (__strchrnul): Likewise. - (__wcschrnul): Likewise. - (fnmatch): Likewise. - * posix/fnmatch_loop.c (FCT): Likewise. - * posix/glob.c (globfree): Likewise. - (__glob_pattern_type): Likewise. - (__glob_pattern_p): Likewise. - * posix/regcomp.c (re_compile_pattern): Likewise. - (re_set_syntax): Likewise. - (re_compile_fastmap): Likewise. - (regcomp): Likewise. - (regerror): Likewise. - (regfree): Likewise. - * posix/regexec.c (regexec): Likewise. - (re_match): Likewise. - (re_search): Likewise. - (re_match_2): Likewise. - (re_search_2): Likewise. - (re_search_stub): Likewise. Use internal_function - (re_copy_regs): Likewise. - (re_set_registers): Convert to prototype-style function - definition. - (prune_impossible_nodes): Likewise. Use internal_function. - * resolv/inet_net_pton.c (inet_net_pton): Convert to - prototype-style function definition. - (inet_net_pton_ipv4): Likewise. - * stdlib/strtod_l.c (____STRTOF_INTERNAL): Likewise. - * sysdeps/pthread/aio_cancel.c (aio_cancel): Likewise. - * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise. - * sysdeps/pthread/timer_delete.c (timer_delete): Likewise. - * sysdeps/unix/sysv/linux/dl-openat64.c (openat64): Likewise. - Make variadic. - * time/strptime_l.c (localtime_r): Convert to prototype-style - function definition. - * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Likewise. - * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Likewise. - * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Likewise. - * wcsmbs/wcsrtombs.c (__wcsrtombs): Likewise. - ---- - sysdeps/unix/sysv/linux/dl-openat64.c | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - ---- a/sysdeps/unix/sysv/linux/dl-openat64.c -+++ b/sysdeps/unix/sysv/linux/dl-openat64.c -@@ -23,10 +23,7 @@ - - - int --openat64 (dfd, file, oflag) -- int dfd; -- const char *file; -- int oflag; -+openat64 (int dfd, const char *file, int oflag, ...) - { - assert ((oflag & O_CREAT) == 0); - diff --git a/packages/glibc/2.20/0004-unused-variables.patch b/packages/glibc/2.20/0004-unused-variables.patch deleted file mode 100644 index 694bc61..0000000 --- a/packages/glibc/2.20/0004-unused-variables.patch +++ /dev/null @@ -1,171 +0,0 @@ -commit 6565fcb6e189d67b5a3f321453daebb805056d73 -Author: Wilco Dijkstra -Date: Fri Sep 18 20:27:20 2015 +0100 - - Fix several build failures with GCC6 due to unused static variables. - - 2015-09-18 Wilco Dijkstra - - * resolv/base64.c (rcsid): Remove unused static. - * sysdeps/ieee754/dbl-64/atnat2.h (qpi1): Remove unused - static. (tqpi1): Likewise. - * sysdeps/ieee754/dbl-64/uexp.h (one): Likewise. - * sysdeps/ieee754/dbl-64/upow.h (sqrt_2): Likewise. - * sysdeps/ieee754/flt-32/e_log10f.c (one): Likewise. - * sysdeps/ieee754/flt-32/s_cosf.c (one): Likewise. - * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (zero): Likewise. - * sysdeps/ieee754/ldbl-128/s_erfl.c (half): Likewise. - * sysdeps/ieee754/ldbl-128/s_log1pl.c (maxlog): Likewise. - * timezone/private.h (time_t_min): Likewise. (time_t_max): - Likewise. - ---- - resolv/base64.c | 4 ---- - sysdeps/ieee754/dbl-64/atnat2.h | 4 ---- - sysdeps/ieee754/dbl-64/uexp.h | 2 +- - sysdeps/ieee754/dbl-64/upow.h | 2 -- - sysdeps/ieee754/flt-32/e_log10f.c | 2 -- - sysdeps/ieee754/flt-32/s_cosf.c | 2 -- - sysdeps/ieee754/ldbl-128/e_lgammal_r.c | 1 - - sysdeps/ieee754/ldbl-128/s_erfl.c | 1 - - sysdeps/ieee754/ldbl-128/s_log1pl.c | 1 - - timezone/private.h | 10 ---------- - 10 files changed, 1 insertion(+), 28 deletions(-) - ---- a/resolv/base64.c -+++ b/resolv/base64.c -@@ -40,10 +40,6 @@ - * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. - */ - --#if !defined(LINT) && !defined(CODECENTER) --static const char rcsid[] = "$BINDId: base64.c,v 8.7 1999/10/13 16:39:33 vixie Exp $"; --#endif /* not lint */ -- - #include - #include - #include ---- a/sysdeps/ieee754/dbl-64/atnat2.h -+++ b/sysdeps/ieee754/dbl-64/atnat2.h -@@ -65,10 +65,8 @@ - /**/ hpi1 = {{0x3c91a626, 0x33145c07} }, /* pi/2-hpi */ - /**/ mhpi = {{0xbff921fb, 0x54442d18} }, /* -pi/2 */ - /**/ qpi = {{0x3fe921fb, 0x54442d18} }, /* pi/4 */ --/**/ qpi1 = {{0x3c81a626, 0x33145c07} }, /* pi/4-qpi */ - /**/ mqpi = {{0xbfe921fb, 0x54442d18} }, /* -pi/4 */ - /**/ tqpi = {{0x4002d97c, 0x7f3321d2} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x3c9a7939, 0x4c9e8a0a} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0xc002d97c, 0x7f3321d2} }, /* -3pi/4 */ - /**/ u1 = {{0x3c314c2a, 0x00000000} }, /* 9.377e-19 */ - /**/ u2 = {{0x3bf955e4, 0x00000000} }, /* 8.584e-20 */ -@@ -129,10 +127,8 @@ - /**/ hpi1 = {{0x33145c07, 0x3c91a626} }, /* pi/2-hpi */ - /**/ mhpi = {{0x54442d18, 0xbff921fb} }, /* -pi/2 */ - /**/ qpi = {{0x54442d18, 0x3fe921fb} }, /* pi/4 */ --/**/ qpi1 = {{0x33145c07, 0x3c81a626} }, /* pi/4-qpi */ - /**/ mqpi = {{0x54442d18, 0xbfe921fb} }, /* -pi/4 */ - /**/ tqpi = {{0x7f3321d2, 0x4002d97c} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x4c9e8a0a, 0x3c9a7939} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0x7f3321d2, 0xc002d97c} }, /* -3pi/4 */ - /**/ u1 = {{0x00000000, 0x3c314c2a} }, /* 9.377e-19 */ - /**/ u2 = {{0x00000000, 0x3bf955e4} }, /* 8.584e-20 */ ---- a/sysdeps/ieee754/dbl-64/uexp.h -+++ b/sysdeps/ieee754/dbl-64/uexp.h -@@ -29,7 +29,7 @@ - - #include "mydefs.h" - --const static double one = 1.0, zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, -+const static double zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, - err_0 = 1.000014, err_1 = 0.000016; - const static int4 bigint = 0x40862002, - badint = 0x40876000,smallint = 0x3C8fffff; ---- a/sysdeps/ieee754/dbl-64/upow.h -+++ b/sysdeps/ieee754/dbl-64/upow.h -@@ -34,7 +34,6 @@ - /**/ nZERO = {{0x80000000, 0}}, /* -0.0 */ - /**/ INF = {{0x7ff00000, 0x00000000}}, /* INF */ - /**/ nINF = {{0xfff00000, 0x00000000}}, /* -INF */ --/**/ sqrt_2 = {{0x3ff6a09e, 0x667f3bcc}}, /* sqrt(2) */ - /**/ ln2a = {{0x3fe62e42, 0xfefa3800}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x3d2ef357, 0x93c76730}}, /* ln(2)-ln2a */ - /**/ bigu = {{0x4297ffff, 0xfffffd2c}}, /* 1.5*2**42 -724*2**-10 */ -@@ -48,7 +47,6 @@ - /**/ nZERO = {{0, 0x80000000}}, /* -0.0 */ - /**/ INF = {{0x00000000, 0x7ff00000}}, /* INF */ - /**/ nINF = {{0x00000000, 0xfff00000}}, /* -INF */ --/**/ sqrt_2 = {{0x667f3bcc, 0x3ff6a09e}}, /* sqrt(2) */ - /**/ ln2a = {{0xfefa3800, 0x3fe62e42}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x93c76730, 0x3d2ef357}}, /* ln(2)-ln2a */ - /**/ bigu = {{0xfffffd2c, 0x4297ffff}}, /* 1.5*2**42 -724*2**-10 */ ---- a/sysdeps/ieee754/flt-32/e_log10f.c -+++ b/sysdeps/ieee754/flt-32/e_log10f.c -@@ -22,8 +22,6 @@ - log10_2hi = 3.0102920532e-01, /* 0x3e9a2080 */ - log10_2lo = 7.9034151668e-07; /* 0x355427db */ - --static const float zero = 0.0; -- - float - __ieee754_log10f(float x) - { ---- a/sysdeps/ieee754/flt-32/s_cosf.c -+++ b/sysdeps/ieee754/flt-32/s_cosf.c -@@ -21,8 +21,6 @@ - #include - #include - --static const float one=1.0; -- - #ifndef COSF - # define COSF_FUNC __cosf - #else ---- a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -+++ b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -@@ -74,7 +74,6 @@ - static const long double PIL = 3.1415926535897932384626433832795028841972E0L; - static const long double MAXLGM = 1.0485738685148938358098967157129705071571E4928L; - static const long double one = 1.0L; --static const long double zero = 0.0L; - static const long double huge = 1.0e4000L; - - /* log gamma(x) = ( x - 0.5 ) * log(x) - x + LS2PI + 1/x P(1/x^2) ---- a/sysdeps/ieee754/ldbl-128/s_erfl.c -+++ b/sysdeps/ieee754/ldbl-128/s_erfl.c -@@ -140,7 +140,6 @@ - - static const long double - tiny = 1e-4931L, -- half = 0.5L, - one = 1.0L, - two = 2.0L, - /* 2/sqrt(pi) - 1 */ ---- a/sysdeps/ieee754/ldbl-128/s_log1pl.c -+++ b/sysdeps/ieee754/ldbl-128/s_log1pl.c -@@ -116,7 +116,6 @@ - - static const long double sqrth = 0.7071067811865475244008443621048490392848L; - /* ln (2^16384 * (1 - 2^-113)) */ --static const long double maxlog = 1.1356523406294143949491931077970764891253E4L; - static const long double zero = 0.0L; - - long double ---- a/timezone/private.h -+++ b/timezone/private.h -@@ -326,16 +326,6 @@ - #define TYPE_SIGNED(type) (((type) -1) < 0) - #endif /* !defined TYPE_SIGNED */ - --/* The minimum and maximum finite time values. */ --static time_t const time_t_min = -- (TYPE_SIGNED(time_t) -- ? (time_t) -1 << (CHAR_BIT * sizeof (time_t) - 1) -- : 0); --static time_t const time_t_max = -- (TYPE_SIGNED(time_t) -- ? - (~ 0 < 0) - ((time_t) -1 << (CHAR_BIT * sizeof (time_t) - 1)) -- : -1); -- - #ifndef INT_STRLEN_MAXIMUM - /* - ** 302 / 1000 is log10(2.0) rounded up. diff --git a/packages/glibc/2.20/0005-misleading-indentation.patch b/packages/glibc/2.20/0005-misleading-indentation.patch deleted file mode 100644 index 8e08259..0000000 --- a/packages/glibc/2.20/0005-misleading-indentation.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 976ef870542580cf5fed896c2c652b3e1a95f9da -Author: Steve Ellcey -Date: Fri Dec 11 09:19:37 2015 -0800 - - Fix indentation. - - * sysdeps/ieee754/flt-32/k_rem_pio2f.c (__kernel_rem_pio2f): - Fix indentation. - ---- - sysdeps/ieee754/flt-32/k_rem_pio2f.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - ---- a/sysdeps/ieee754/flt-32/k_rem_pio2f.c -+++ b/sysdeps/ieee754/flt-32/k_rem_pio2f.c -@@ -65,7 +65,9 @@ - - /* compute q[0],q[1],...q[jk] */ - for (i=0;i<=jk;i++) { -- for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; q[i] = fw; -+ for(j=0,fw=0.0;j<=jx;j++) -+ fw += x[j]*f[jx+i-j]; -+ q[i] = fw; - } - - jz = jk; diff --git a/packages/glibc/2.20/0006-dl-open-array-bounds.patch b/packages/glibc/2.20/0006-dl-open-array-bounds.patch deleted file mode 100644 index 83eb0b3..0000000 --- a/packages/glibc/2.20/0006-dl-open-array-bounds.patch +++ /dev/null @@ -1,38 +0,0 @@ -commit 328c44c3670ebf6c1bd790acddce65a12998cd6c -Author: Roland McGrath -Date: Fri Apr 17 12:11:58 2015 -0700 - - Fuller check for invalid NSID in _dl_open. - ---- - elf/dl-open.c | 12 +++++++++--- - 1 file changed, 9 insertions(+), 3 deletions(-) - ---- a/elf/dl-open.c -+++ b/elf/dl-open.c -@@ -211,7 +211,7 @@ - struct link_map *l = _dl_find_dso_for_object ((ElfW(Addr)) caller_dlopen); - - if (l) -- call_map = l; -+ call_map = l; - - if (args->nsid == __LM_ID_CALLER) - args->nsid = call_map->l_ns; -@@ -627,8 +627,14 @@ - /* Never allow loading a DSO in a namespace which is empty. Such - direct placements is only causing problems. Also don't allow - loading into a namespace used for auditing. */ -- else if (__builtin_expect (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER, 0) -- && (GL(dl_ns)[nsid]._ns_nloaded == 0 -+ else if (__glibc_unlikely (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER) -+ && (__glibc_unlikely (nsid < 0 || nsid >= GL(dl_nns)) -+ /* This prevents the [NSID] index expressions from being -+ evaluated, so the compiler won't think that we are -+ accessing an invalid index here in the !SHARED case where -+ DL_NNS is 1 and so any NSID != 0 is invalid. */ -+ || DL_NNS == 1 -+ || GL(dl_ns)[nsid]._ns_nloaded == 0 - || GL(dl_ns)[nsid]._ns_loaded->l_auditing)) - _dl_signal_error (EINVAL, file, NULL, - N_("invalid target namespace in dlmopen()")); diff --git a/packages/glibc/2.20/0007-Fix-combreloc-test-BSD-grep.patch b/packages/glibc/2.20/0007-Fix-combreloc-test-BSD-grep.patch deleted file mode 100644 index f56a4ca..0000000 --- a/packages/glibc/2.20/0007-Fix-combreloc-test-BSD-grep.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 61d5f9c09b3157db76bd1a393e248c262a8d9dd4 Mon Sep 17 00:00:00 2001 -From: Alexey Neyman -Date: Wed, 8 Mar 2017 14:31:10 -0800 -Subject: [PATCH] Fix combreloc test with BSD grep - -The test for "-z combreloc" fails when cross-compiling on a machine -that uses BSD grep (e.g. on macos). grep complains about empty -subexpression and exits with non-zero status, which is interpreted -by configure as "not found". As a result, support for "-z combreloc" -(HAVE_Z_COMBRELOC) is not detected, leading to link failure on SPARC. - - * configure.ac: Avoid empty subexpression in grep. - -Signed-off-by: Alexey Neyman ---- - configure | 2 +- - configure.ac | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/configure -+++ b/configure -@@ -6025,7 +6025,7 @@ - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } - then -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no ---- a/configure.ac -+++ b/configure.ac -@@ -1397,7 +1397,7 @@ - dnl introducing new options this is not easily doable. Instead use a tool - dnl which always is cross-platform: readelf. To detect whether -z combreloc - dnl look for a section named .rel.dyn. -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/packages/glibc/2.20/0008-typedef-caddr.patch b/packages/glibc/2.20/0008-typedef-caddr.patch deleted file mode 100644 index 980939b..0000000 --- a/packages/glibc/2.20/0008-typedef-caddr.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- - posix/sys/types.h | 3 +++ - 1 file changed, 3 insertions(+) - ---- a/posix/sys/types.h -+++ b/posix/sys/types.h -@@ -113,7 +113,10 @@ - #ifdef __USE_MISC - # ifndef __daddr_t_defined - typedef __daddr_t daddr_t; -+# if ! defined(caddr_t) && ! defined(__caddr_t_defined) - typedef __caddr_t caddr_t; -+# define __caddr_t_defined -+# endif - # define __daddr_t_defined - # endif - #endif diff --git a/packages/glibc/2.20/0009-fix-rpc_parse-format.patch b/packages/glibc/2.20/0009-fix-rpc_parse-format.patch deleted file mode 100644 index 341d541..0000000 --- a/packages/glibc/2.20/0009-fix-rpc_parse-format.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 5874510faaf3cbd0bb112aaacab9f225002beed1 -Author: Joseph Myers -Date: Tue Nov 8 23:44:51 2016 +0000 - - Fix rpcgen buffer overrun (bug 20790). - - Building with GCC 7 produces an error building rpcgen: - - rpc_parse.c: In function 'get_prog_declaration': - rpc_parse.c:543:25: error: may write a terminating nul past the end of the destination [-Werror=format-length=] - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ~~~~^ - rpc_parse.c:543:5: note: format output between 5 and 14 bytes into a destination of size 10 - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - That buffer overrun is for the case where the .x file declares a - program with a million arguments. The strcpy two lines above can - generate a buffer overrun much more simply for a long argument name. - - The limit on length of line read by rpcgen (MAXLINESIZE == 1024) - provides a bound on the buffer size needed, so this patch just changes - the buffer size to MAXLINESIZE to avoid both possible buffer - overruns. A testcase is added that rpcgen does not crash with a - 500-character argument name, where it previously crashed. - - It would not at all surprise me if there are many other ways of - crashing rpcgen with either valid or invalid input; fuzz testing would - likely find various such bugs, though I don't think they are that - important to fix (rpcgen is not that likely to be used with untrusted - .x files as input). (As well as fuzz-findable bugs there are probably - also issues when various int variables get overflowed on very large - input.) The test infrastructure for rpcgen-not-crashing tests would - need extending if tests are to be added for cases where rpcgen should - produce an error, as opposed to cases where it should succeed. - - Tested for x86_64 and x86. - - [BZ #20790] - * sunrpc/rpc_parse.c (get_prog_declaration): Increase buffer size - to MAXLINESIZE. - * sunrpc/bug20790.x: New file. - * sunrpc/Makefile [$(run-built-tests) = yes] (rpcgen-tests): New - variable. - [$(run-built-tests) = yes] (tests-special): Add $(rpcgen-tests). - [$(run-built-tests) = yes] ($(rpcgen-tests)): New rule. - ---- - sunrpc/rpc_parse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sunrpc/rpc_parse.c -+++ b/sunrpc/rpc_parse.c -@@ -521,7 +521,7 @@ - get_prog_declaration (declaration * dec, defkind dkind, int num /* arg number */ ) - { - token tok; -- char name[10]; /* argument name */ -+ char name[MAXLINESIZE]; /* argument name */ - - if (dkind == DEF_PROGRAM) - { diff --git a/packages/glibc/2.20/0010-explicit-boolean.patch b/packages/glibc/2.20/0010-explicit-boolean.patch deleted file mode 100644 index ff7cd87..0000000 --- a/packages/glibc/2.20/0010-explicit-boolean.patch +++ /dev/null @@ -1,35 +0,0 @@ -commit e223d1fe72e820d96f43831412ab267a1ace04d0 -Author: steve ellcey-CA Eng-Software -Date: Fri Oct 14 12:53:27 2016 -0700 - - Fix warnings from latest GCC. - - * sysdeps/ieee754/dbl-64/e_pow.c (checkint) Make conditions explicitly - boolean. - ---- - sysdeps/ieee754/dbl-64/e_pow.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - ---- a/sysdeps/ieee754/dbl-64/e_pow.c -+++ b/sysdeps/ieee754/dbl-64/e_pow.c -@@ -462,15 +462,15 @@ - return (n & 1) ? -1 : 1; /* odd or even */ - if (k > 20) - { -- if (n << (k - 20)) -+ if (n << (k - 20) != 0) - return 0; /* if not integer */ -- return (n << (k - 21)) ? -1 : 1; -+ return (n << (k - 21) != 0) ? -1 : 1; - } - if (n) - return 0; /*if not integer */ - if (k == 20) - return (m & 1) ? -1 : 1; -- if (m << (k + 12)) -+ if (m << (k + 12) != 0) - return 0; -- return (m << (k + 11)) ? -1 : 1; -+ return (m << (k + 11) != 0) ? -1 : 1; - } diff --git a/packages/glibc/2.20/0011-nis-bogus-conditional.patch b/packages/glibc/2.20/0011-nis-bogus-conditional.patch deleted file mode 100644 index e728368..0000000 --- a/packages/glibc/2.20/0011-nis-bogus-conditional.patch +++ /dev/null @@ -1,64 +0,0 @@ -commit f88759ea9bd3c8d8fef28f123ba9767cb0e421a3 -Author: Joseph Myers -Date: Wed Dec 21 23:44:01 2016 +0000 - - Fix nss_nisplus build with mainline GCC (bug 20978). - - glibc build with current mainline GCC fails because - nis/nss_nisplus/nisplus-alias.c contains code - - if (name != NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; - } - - char buf[strlen (name) + 9 + tablename_len]; - - producing an error about strlen being called on a pointer that is - always NULL (and a subsequent use of that pointer with a %s format in - snprintf). - - As Andreas noted, the bogus conditional comes from a 1997 change: - - - if (name == NULL || strlen(name) > 8) - - return NSS_STATUS_NOTFOUND; - - else - + if (name != NULL || strlen(name) <= 8) - - So the intention is clearly to return an error for NULL name. - - This patch duly inverts the sense of the conditional. It fixes the - build with GCC mainline, and passes usual glibc testsuite testing for - x86_64. However, I have not tried any actual substantive nisplus - testing, do not have an environment for such testing, and do not know - whether it is possible that strlen (name) or tablename_len might be - large so that the VLA for buf is actually a security issue. However, - if it is a security issue, there are plenty of other similar instances - in the nisplus code (that haven't been hidden by a bogus comparison - with NULL) - and nis_table.c:__create_ib_request uses strdupa on the - string passed to nis_list, so a local fix in the caller wouldn't - suffice anyway (see bug 20987). (Calls to strdupa and other such - macros that use alloca must be considered equally questionable - regarding stack overflow issues as direct calls to alloca and VLA - declarations.) - - [BZ #20978] - * nis/nss_nisplus/nisplus-alias.c (_nss_nisplus_getaliasbyname_r): - Compare name == NULL, not name != NULL. - ---- - nis/nss_nisplus/nisplus-alias.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/nis/nss_nisplus/nisplus-alias.c -+++ b/nis/nss_nisplus/nisplus-alias.c -@@ -291,7 +291,7 @@ - return status; - } - -- if (name != NULL) -+ if (name == NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; diff --git a/packages/glibc/2.20/0012-strftime-multiple-stmts.patch b/packages/glibc/2.20/0012-strftime-multiple-stmts.patch deleted file mode 100644 index 0f97e7d..0000000 --- a/packages/glibc/2.20/0012-strftime-multiple-stmts.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb -Author: Joseph Myers -Date: Tue Jun 27 17:12:13 2017 +0000 - - Fix strftime build with GCC 8. - - Building with current GCC mainline fails with: - - strftime_l.c: In function '__strftime_internal': - strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros] - digits = d > width ? d : width; \ - ^ - strftime_l.c:1260:6: note: in expansion of macro 'DO_NUMBER' - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - ^~~~~~~~~ - strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this 'else' clause - else - ^~~~ - - In fact this particular instance is harmless; the code looks like: - - if (modifier == L_('O')) - goto bad_format; - else - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - - and because of the goto, it doesn't matter that part of the expansion - isn't under the "else" conditional. But it's also clearly bad style - to rely on that. This patch changes DO_NUMBER and DO_NUMBER_SPACEPAD - to use do { } while (0) to avoid such problems. - - Tested (full testsuite) for x86_64 (GCC 6), and with - build-many-glibcs.py with GCC mainline, in conjunction with my libgcc - patch . - - * time/strftime_l.c (DO_NUMBER): Define using do { } while (0). - (DO_NUMBER_SPACEPAD): Likewise. - ---- - time/strftime_l.c | 22 ++++++++++++++++------ - 1 file changed, 16 insertions(+), 6 deletions(-) - ---- a/time/strftime_l.c -+++ b/time/strftime_l.c -@@ -738,12 +738,22 @@ - format_char = *f; - switch (format_char) - { --#define DO_NUMBER(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number --#define DO_NUMBER_SPACEPAD(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number_spacepad -+#define DO_NUMBER(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number; \ -+ } \ -+ while (0) -+#define DO_NUMBER_SPACEPAD(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number_spacepad; \ -+ } \ -+ while (0) - - case L_('%'): - if (modifier != 0) diff --git a/packages/glibc/2.20/0013-if_nametoindex-size-check.patch b/packages/glibc/2.20/0013-if_nametoindex-size-check.patch deleted file mode 100644 index 7976fdd..0000000 --- a/packages/glibc/2.20/0013-if_nametoindex-size-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 2180fee114b778515b3f560e5ff1e795282e60b0 -Author: Steve Ellcey -Date: Wed Nov 15 08:58:48 2017 -0800 - - Check length of ifname before copying it into to ifreq structure. - - [BZ #22442] - * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): - Check if ifname is too long. - ---- - sysdeps/unix/sysv/linux/if_index.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/sysdeps/unix/sysv/linux/if_index.c -+++ b/sysdeps/unix/sysv/linux/if_index.c -@@ -43,6 +43,12 @@ - if (fd < 0) - return 0; - -+ if (strlen (ifname) >= IFNAMSIZ) -+ { -+ __set_errno (ENODEV); -+ return 0; -+ } -+ - strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name)); - if (__ioctl (fd, SIOCGIFINDEX, &ifr) < 0) - { diff --git a/packages/glibc/2.20/0014-utmp-nonstring.patch b/packages/glibc/2.20/0014-utmp-nonstring.patch deleted file mode 100644 index 5a3da64..0000000 --- a/packages/glibc/2.20/0014-utmp-nonstring.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit 7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c -Author: Martin Sebor -Date: Wed Nov 15 17:39:59 2017 -0700 - - The -Wstringop-truncation option new in GCC 8 detects common misuses - of the strncat and strncpy function that may result in truncating - the copied string before the terminating NUL. To avoid false positive - warnings for correct code that intentionally creates sequences of - characters that aren't guaranteed to be NUL-terminated, arrays that - are intended to store such sequences should be decorated with a new - nonstring attribute. This change add this attribute to Glibc and - uses it to suppress such false positives. - - ChangeLog: - * misc/sys/cdefs.h (__attribute_nonstring__): New macro. - * sysdeps/gnu/bits/utmp.h (struct utmp): Use it. - * sysdeps/unix/sysv/linux/s390/bits/utmp.h (struct utmp): Same. - ---- - misc/sys/cdefs.h | 9 +++++++++ - sysdeps/gnu/bits/utmp.h | 9 ++++++--- - sysdeps/unix/sysv/linux/s390/bits/utmp.h | 9 ++++++--- - 3 files changed, 21 insertions(+), 6 deletions(-) - ---- a/misc/sys/cdefs.h -+++ b/misc/sys/cdefs.h -@@ -392,6 +392,15 @@ - # endif - #endif - -+#if __GNUC_PREREQ (8, 0) -+/* Describes a char array whose address can safely be passed as the first -+ argument to strncpy and strncat, as the char array is not necessarily -+ a NUL-terminated string. */ -+# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -+#else -+# define __attribute_nonstring__ -+#endif -+ - #include - - #if defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH ---- a/sysdeps/gnu/bits/utmp.h -+++ b/sysdeps/gnu/bits/utmp.h -@@ -59,10 +59,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled ---- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h -+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h -@@ -59,10 +59,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled diff --git a/packages/glibc/2.20/0015-getlogin_r-use-strnlen.patch b/packages/glibc/2.20/0015-getlogin_r-use-strnlen.patch deleted file mode 100644 index ff19964..0000000 --- a/packages/glibc/2.20/0015-getlogin_r-use-strnlen.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 4bae615022cb5a5da79ccda83cc6c9ba9f2d479c -Author: Joseph Myers -Date: Wed Nov 22 18:44:23 2017 +0000 - - Avoid use of strlen in getlogin_r (bug 22447). - - Building glibc with current mainline GCC fails, among other reasons, - because of an error for use of strlen on the nonstring ut_user field. - This patch changes the problem code in getlogin_r to use __strnlen - instead. It also needs to set the trailing NUL byte of the result - explicitly, because of the case where ut_user does not have such a - trailing NUL byte (but the result should always have one). - - Tested for x86_64. Also tested that, in conjunction with - , it fixes - the build for arm with mainline GCC. - - [BZ #22447] - * sysdeps/unix/getlogin_r.c (__getlogin_r): Use __strnlen not - strlen to compute length of ut_user and set trailing NUL byte of - result explicitly. - ---- - sysdeps/unix/getlogin_r.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - ---- a/sysdeps/unix/getlogin_r.c -+++ b/sysdeps/unix/getlogin_r.c -@@ -82,7 +82,7 @@ - - if (result == 0) - { -- size_t needed = strlen (ut->ut_user) + 1; -+ size_t needed = __strnlen (ut->ut_user, UT_NAMESIZE) + 1; - - if (needed > name_len) - { -@@ -91,7 +91,8 @@ - } - else - { -- memcpy (name, ut->ut_user, needed); -+ memcpy (name, ut->ut_user, needed - 1); -+ name[needed - 1] = 0; - result = 0; - } - } diff --git a/packages/glibc/2.20/0016-zic.c-use-memcpy.patch b/packages/glibc/2.20/0016-zic.c-use-memcpy.patch deleted file mode 100644 index ef768aa..0000000 --- a/packages/glibc/2.20/0016-zic.c-use-memcpy.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit e69897bf202e18034cbef26f363bae64de70a196 -Author: Paul Eggert -Date: Sun Nov 12 22:00:28 2017 -0800 - - timezone: pacify GCC -Wstringop-truncation - - Problem reported by Martin Sebor in: - https://sourceware.org/ml/libc-alpha/2017-11/msg00336.html - * timezone/zic.c (writezone): Use memcpy, not strncpy. - ---- - timezone/zic.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/timezone/zic.c -+++ b/timezone/zic.c -@@ -1713,7 +1713,7 @@ - } - #define DO(field) ((void) fwrite(tzh.field, sizeof tzh.field, 1, fp)) - tzh = tzh0; -- (void) strncpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); -+ memcpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); - tzh.tzh_version[0] = version; - convert(thistypecnt, tzh.tzh_ttisgmtcnt); - convert(thistypecnt, tzh.tzh_ttisstdcnt); diff --git a/packages/glibc/2.20/0017-Fix-cmpli-usage-in-power6-memset.patch b/packages/glibc/2.20/0017-Fix-cmpli-usage-in-power6-memset.patch deleted file mode 100644 index 5213378..0000000 --- a/packages/glibc/2.20/0017-Fix-cmpli-usage-in-power6-memset.patch +++ /dev/null @@ -1,49 +0,0 @@ -Author: Joseph Myers -Date: 2016-10-24 - -Building glibc for powerpc64 with recent (2.27.51.20161012) binutils, -with multi-arch enabled, I get the error: - -../sysdeps/powerpc/powerpc64/power6/memset.S: Assembler messages: -../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: operand out of range (5 is not between 0 and 1) -../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: operand out of range (128 is not between 0 and 31) -../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: missing operand - -Indeed, cmpli is documented as a four-operand instruction, and looking -at nearby code it seems likely cmpldi was intended. This patch fixes -this powerpc64 code accordingly, and makes a corresponding change to -the powerpc32 code. - -Note: this patch is not tested beyond verifying that the powerpc64 -code builds where it failed to build before the patch. In particular, -I have not done execution testing (the systems I usually use for -testing powerpc are pre-power6 so wouldn't use this code) or tested -the powerpc32 change. - ---- - sysdeps/powerpc/powerpc32/power6/memset.S (memset): Use cmplwi instead of cmpli. - sysdeps/powerpc/powerpc64/power6/memset.S (memset): Use cmpldi instead of cmpli. - ---- a/sysdeps/powerpc/powerpc32/power6/memset.S -+++ b/sysdeps/powerpc/powerpc32/power6/memset.S -@@ -394,7 +394,7 @@ L(cacheAlignedx): - /* A simple loop for the longer (>640 bytes) lengths. This form limits - the branch miss-predicted to exactly 1 at loop exit.*/ - L(cacheAligned512): -- cmpli cr1,rLEN,128 -+ cmplwi cr1,rLEN,128 - blt cr1,L(cacheAligned1) - dcbz 0,rMEMP - addi rLEN,rLEN,-128 - ---- a/sysdeps/powerpc/powerpc64/power6/memset.S -+++ b/sysdeps/powerpc/powerpc64/power6/memset.S -@@ -251,7 +251,7 @@ L(cacheAlignedx): - /* A simple loop for the longer (>640 bytes) lengths. This form limits - the branch miss-predicted to exactly 1 at loop exit.*/ - L(cacheAligned512): -- cmpli cr1,rLEN,128 -+ cmpldi cr1,rLEN,128 - blt cr1,L(cacheAligned1) - dcbz 0,rMEMP - addi rLEN,rLEN,-128 diff --git a/packages/glibc/2.20/0017-fix-GCC-10-detection.patch b/packages/glibc/2.20/0017-fix-GCC-10-detection.patch deleted file mode 100644 index c2afc77..0000000 --- a/packages/glibc/2.20/0017-fix-GCC-10-detection.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 0991846fc6d5d0ef3800391bd29f2759780a3041 Mon Sep 17 00:00:00 2001 -From: Jakub Labenski -Date: Fri, 5 Jun 2020 09:11:40 +0200 -Subject: [PATCH] Fix GCC 10+ detection - ---- - configure | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure b/configure -index 86ba30774b..b22ad9cb07 100755 ---- a/configure -+++ b/configure -@@ -4661,7 +4661,7 @@ $as_echo_n "checking version of $CC... " >&6; } - ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 4.[4-9].* | 4.[1-9][0-9].* | [5-9].* ) -+ 4.[4-9].* | 4.[1-9][0-9].* | [5-9].* | [1-9][0-9].* ) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - --- -2.25.1 - diff --git a/packages/glibc/2.20/chksum b/packages/glibc/2.20/chksum deleted file mode 100644 index 166c910..0000000 --- a/packages/glibc/2.20/chksum +++ /dev/null @@ -1,12 +0,0 @@ -md5 glibc-2.20.tar.xz 948a6e06419a01bd51e97206861595b0 -sha1 glibc-2.20.tar.xz 0ddd02ceb41f7cd049fac691a7864047b87b6351 -sha256 glibc-2.20.tar.xz f84b6d42aecc288d593c397b0a3d02260a33ee686bce0c634eb9b32798f36ba5 -sha512 glibc-2.20.tar.xz 7a8eea8b71d3ccba766c3f304cab61055446d451ef063309476b26dc40d880562dc33b1b68fbedeedb4b55b84c26415b9202311aaa71ef8c141b6849a814d2fa -md5 glibc-2.20.tar.bz2 5d9d375e670fe546a030061db36e9f3d -sha1 glibc-2.20.tar.bz2 66eb0ca2591f90c4405b84eedcb3de3891a7f9bb -sha256 glibc-2.20.tar.bz2 a72a3094f1511cfa704f80cfe64dc7a3a9daff1904ac9ca4ab9c53ea0931d9bc -sha512 glibc-2.20.tar.bz2 589a43a4969c3f51c5ddb942c70ce750894337746de78cfb438de1c9fa326aaa7821398808ddb4f730c35f5b95fd9242ffbbf91cb9ee3fc04f3c29a87c4c5850 -md5 glibc-2.20.tar.gz aabb1776353e6bc60ecc707af78a3813 -sha1 glibc-2.20.tar.gz f788e9a2cbc496f541bd9889dad54d4f3fd3e62c -sha256 glibc-2.20.tar.gz 37e1de410d572a19b707b99786db9822bb4775e9d70517d88937ab12e6d6debc -sha512 glibc-2.20.tar.gz ea031e7da6bb8cdcfeeac653a77a20b8cf8f2b906ef9dc1aa13a54a82b7506acd2e7ef60b0f45764643cc9630a84772d1df12064a5ee1e96dcad563bfd166deb diff --git a/packages/glibc/2.20/version.desc b/packages/glibc/2.20/version.desc deleted file mode 100644 index fcfe389..0000000 --- a/packages/glibc/2.20/version.desc +++ /dev/null @@ -1 +0,0 @@ -obsolete='yes' diff --git a/packages/glibc/2.21/0000-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch b/packages/glibc/2.21/0000-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch deleted file mode 100644 index b9509a3..0000000 --- a/packages/glibc/2.21/0000-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch +++ /dev/null @@ -1,75 +0,0 @@ -From df1cf48777fe4cd81ad7fb09ecbe5b31432b7c1c Mon Sep 17 00:00:00 2001 -From: Yvan Roux -Date: Fri, 15 Apr 2016 13:29:26 +0200 -Subject: [PATCH] Suppress GCC 6 warning about ambiguous 'else' with - -Wparentheses - ---- - nis/nis_call.c | 20 +++++++++++--------- - stdlib/setenv.c | 24 +++++++++++++----------- - 2 files changed, 24 insertions(+), 20 deletions(-) - ---- a/nis/nis_call.c -+++ b/nis/nis_call.c -@@ -680,16 +680,18 @@ - /* Choose which entry should be evicted from the cache. */ - loc = &nis_server_cache[0]; - if (*loc != NULL) -- for (i = 1; i < 16; ++i) -- if (nis_server_cache[i] == NULL) -- { -+ { -+ for (i = 1; i < 16; ++i) -+ if (nis_server_cache[i] == NULL) -+ { -+ loc = &nis_server_cache[i]; -+ break; -+ } -+ else if ((*loc)->uses > nis_server_cache[i]->uses -+ || ((*loc)->uses == nis_server_cache[i]->uses -+ && (*loc)->expires > nis_server_cache[i]->expires)) - loc = &nis_server_cache[i]; -- break; -- } -- else if ((*loc)->uses > nis_server_cache[i]->uses -- || ((*loc)->uses == nis_server_cache[i]->uses -- && (*loc)->expires > nis_server_cache[i]->expires)) -- loc = &nis_server_cache[i]; -+ } - old = *loc; - *loc = new; - ---- a/stdlib/setenv.c -+++ b/stdlib/setenv.c -@@ -269,18 +269,20 @@ - ep = __environ; - if (ep != NULL) - while (*ep != NULL) -- if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -- { -- /* Found it. Remove this pointer by moving later ones back. */ -- char **dp = ep; -+ { -+ if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -+ { -+ /* Found it. Remove this pointer by moving later ones back. */ -+ char **dp = ep; - -- do -- dp[0] = dp[1]; -- while (*dp++); -- /* Continue the loop in case NAME appears again. */ -- } -- else -- ++ep; -+ do -+ dp[0] = dp[1]; -+ while (*dp++); -+ /* Continue the loop in case NAME appears again. */ -+ } -+ else -+ ++ep; -+ } - - UNLOCK; - diff --git a/packages/glibc/2.21/0001-fix-signed-shift-overlow.patch b/packages/glibc/2.21/0001-fix-signed-shift-overlow.patch deleted file mode 100644 index c7cc330..0000000 --- a/packages/glibc/2.21/0001-fix-signed-shift-overlow.patch +++ /dev/null @@ -1,97 +0,0 @@ -commit 5542236837c5c41435f8282ec92799f480c36f18 -Author: Paul Eggert -Date: Tue Jul 21 22:50:29 2015 -0700 - - Port the 0x7efe...feff pattern to GCC 6. - - See Steve Ellcey's bug report in: - https://sourceware.org/ml/libc-alpha/2015-07/msg00673.html - * string/memrchr.c (MEMRCHR): - * string/rawmemchr.c (RAWMEMCHR): - * string/strchr.c (strchr): - * string/strchrnul.c (STRCHRNUL): - Rewrite code to avoid issues with signed shift overflow. - ---- - string/memrchr.c | 11 ++--------- - string/rawmemchr.c | 11 ++--------- - string/strchr.c | 9 ++------- - string/strchrnul.c | 9 ++------- - 4 files changed, 8 insertions(+), 32 deletions(-) - ---- a/string/memrchr.c -+++ b/string/memrchr.c -@@ -96,15 +96,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/rawmemchr.c -+++ b/string/rawmemchr.c -@@ -86,15 +86,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchr.c -+++ b/string/strchr.c -@@ -60,13 +60,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchrnul.c -+++ b/string/strchrnul.c -@@ -66,13 +66,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); diff --git a/packages/glibc/2.21/0002-dl-openat64-variadic.patch b/packages/glibc/2.21/0002-dl-openat64-variadic.patch deleted file mode 100644 index 552db12..0000000 --- a/packages/glibc/2.21/0002-dl-openat64-variadic.patch +++ /dev/null @@ -1,197 +0,0 @@ -commit 9dd346ff431fc761f1b748bd4da8bb59f7652094 -Author: Joseph Myers -Date: Tue Oct 20 11:54:09 2015 +0000 - - Convert 113 more function definitions to prototype style (files with assertions). - - This mostly automatically-generated patch converts 113 function - definitions in glibc from old-style K&R to prototype-style. Following - my other recent such patches, this one deals with the case of function - definitions in files that either contain assertions or where grep - suggested they might contain assertions - and thus where it isn't - possible to use a simple object code comparison as a sanity check on - the correctness of the patch, because line numbers are changed. - - A few such automatically-generated changes needed to be supplemented - by manual changes for the result to compile. openat64 had a prototype - declaration with "..." but an old-style definition in - sysdeps/unix/sysv/linux/dl-openat64.c, and "..." needed adding to the - generated prototype in the definition (I've filed - for diagnosing - such cases in GCC; the old state was undefined behavior not requiring - a diagnostic, but one seems a good idea). In addition, as Florian has - noted regparm attribute mismatches between declaration and definition - are only diagnosed for prototype definitions, and five functions - needed internal_function added to their definitions (in the case of - __pthread_mutex_cond_lock, via the macro definition of - __pthread_mutex_lock) to compile on i386. - - After this patch is in, remaining old-style definitions are probably - most readily fixed manually before we can turn on - -Wold-style-definition for all builds. - - Tested for x86_64 and x86 (testsuite). - - * crypt/md5-crypt.c (__md5_crypt_r): Convert to prototype-style - function definition. - * crypt/sha256-crypt.c (__sha256_crypt_r): Likewise. - * crypt/sha512-crypt.c (__sha512_crypt_r): Likewise. - * debug/backtracesyms.c (__backtrace_symbols): Likewise. - * elf/dl-minimal.c (_itoa): Likewise. - * hurd/hurdmalloc.c (malloc): Likewise. - (free): Likewise. - (realloc): Likewise. - * inet/inet6_option.c (inet6_option_space): Likewise. - (inet6_option_init): Likewise. - (inet6_option_append): Likewise. - (inet6_option_alloc): Likewise. - (inet6_option_next): Likewise. - (inet6_option_find): Likewise. - * io/ftw.c (FTW_NAME): Likewise. - (NFTW_NAME): Likewise. - (NFTW_NEW_NAME): Likewise. - (NFTW_OLD_NAME): Likewise. - * libio/iofwide.c (_IO_fwide): Likewise. - * libio/strops.c (_IO_str_init_static_internal): Likewise. - (_IO_str_init_static): Likewise. - (_IO_str_init_readonly): Likewise. - (_IO_str_overflow): Likewise. - (_IO_str_underflow): Likewise. - (_IO_str_count): Likewise. - (_IO_str_seekoff): Likewise. - (_IO_str_pbackfail): Likewise. - (_IO_str_finish): Likewise. - * libio/wstrops.c (_IO_wstr_init_static): Likewise. - (_IO_wstr_overflow): Likewise. - (_IO_wstr_underflow): Likewise. - (_IO_wstr_count): Likewise. - (_IO_wstr_seekoff): Likewise. - (_IO_wstr_pbackfail): Likewise. - (_IO_wstr_finish): Likewise. - * locale/programs/localedef.c (normalize_codeset): Likewise. - * locale/programs/locarchive.c (add_locale_to_archive): Likewise. - (add_locales_to_archive): Likewise. - (delete_locales_from_archive): Likewise. - * malloc/malloc.c (__libc_mallinfo): Likewise. - * math/gen-auto-libm-tests.c (init_fp_formats): Likewise. - * misc/tsearch.c (__tfind): Likewise. - * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Likewise. - * nptl/pthread_attr_getdetachstate.c - (__pthread_attr_getdetachstate): Likewise. - * nptl/pthread_attr_getguardsize.c (pthread_attr_getguardsize): - Likewise. - * nptl/pthread_attr_getinheritsched.c - (__pthread_attr_getinheritsched): Likewise. - * nptl/pthread_attr_getschedparam.c - (__pthread_attr_getschedparam): Likewise. - * nptl/pthread_attr_getschedpolicy.c - (__pthread_attr_getschedpolicy): Likewise. - * nptl/pthread_attr_getscope.c (__pthread_attr_getscope): - Likewise. - * nptl/pthread_attr_getstack.c (__pthread_attr_getstack): - Likewise. - * nptl/pthread_attr_getstackaddr.c (__pthread_attr_getstackaddr): - Likewise. - * nptl/pthread_attr_getstacksize.c (__pthread_attr_getstacksize): - Likewise. - * nptl/pthread_attr_init.c (__pthread_attr_init_2_1): Likewise. - (__pthread_attr_init_2_0): Likewise. - * nptl/pthread_attr_setdetachstate.c - (__pthread_attr_setdetachstate): Likewise. - * nptl/pthread_attr_setguardsize.c (pthread_attr_setguardsize): - Likewise. - * nptl/pthread_attr_setinheritsched.c - (__pthread_attr_setinheritsched): Likewise. - * nptl/pthread_attr_setschedparam.c - (__pthread_attr_setschedparam): Likewise. - * nptl/pthread_attr_setschedpolicy.c - (__pthread_attr_setschedpolicy): Likewise. - * nptl/pthread_attr_setscope.c (__pthread_attr_setscope): - Likewise. - * nptl/pthread_attr_setstack.c (__pthread_attr_setstack): - Likewise. - * nptl/pthread_attr_setstackaddr.c (__pthread_attr_setstackaddr): - Likewise. - * nptl/pthread_attr_setstacksize.c (__pthread_attr_setstacksize): - Likewise. - * nptl/pthread_condattr_setclock.c (pthread_condattr_setclock): - Likewise. - * nptl/pthread_create.c (__find_in_stack_list): Likewise. - * nptl/pthread_getattr_np.c (pthread_getattr_np): Likewise. - * nptl/pthread_mutex_cond_lock.c (__pthread_mutex_lock): Define to - use internal_function. - * nptl/pthread_mutex_init.c (__pthread_mutex_init): Convert to - prototype-style function definition. - * nptl/pthread_mutex_lock.c (__pthread_mutex_lock): Likewise. - (__pthread_mutex_cond_lock_adjust): Likewise. Use - internal_function. - * nptl/pthread_mutex_timedlock.c (pthread_mutex_timedlock): - Convert to prototype-style function definition. - * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): - Likewise. - * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_usercnt): - Likewise. - (__pthread_mutex_unlock): Likewise. - * nptl_db/td_ta_clear_event.c (td_ta_clear_event): Likewise. - * nptl_db/td_ta_set_event.c (td_ta_set_event): Likewise. - * nptl_db/td_thr_clear_event.c (td_thr_clear_event): Likewise. - * nptl_db/td_thr_event_enable.c (td_thr_event_enable): Likewise. - * nptl_db/td_thr_set_event.c (td_thr_set_event): Likewise. - * nss/makedb.c (process_input): Likewise. - * posix/fnmatch.c (__strchrnul): Likewise. - (__wcschrnul): Likewise. - (fnmatch): Likewise. - * posix/fnmatch_loop.c (FCT): Likewise. - * posix/glob.c (globfree): Likewise. - (__glob_pattern_type): Likewise. - (__glob_pattern_p): Likewise. - * posix/regcomp.c (re_compile_pattern): Likewise. - (re_set_syntax): Likewise. - (re_compile_fastmap): Likewise. - (regcomp): Likewise. - (regerror): Likewise. - (regfree): Likewise. - * posix/regexec.c (regexec): Likewise. - (re_match): Likewise. - (re_search): Likewise. - (re_match_2): Likewise. - (re_search_2): Likewise. - (re_search_stub): Likewise. Use internal_function - (re_copy_regs): Likewise. - (re_set_registers): Convert to prototype-style function - definition. - (prune_impossible_nodes): Likewise. Use internal_function. - * resolv/inet_net_pton.c (inet_net_pton): Convert to - prototype-style function definition. - (inet_net_pton_ipv4): Likewise. - * stdlib/strtod_l.c (____STRTOF_INTERNAL): Likewise. - * sysdeps/pthread/aio_cancel.c (aio_cancel): Likewise. - * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise. - * sysdeps/pthread/timer_delete.c (timer_delete): Likewise. - * sysdeps/unix/sysv/linux/dl-openat64.c (openat64): Likewise. - Make variadic. - * time/strptime_l.c (localtime_r): Convert to prototype-style - function definition. - * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Likewise. - * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Likewise. - * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Likewise. - * wcsmbs/wcsrtombs.c (__wcsrtombs): Likewise. - ---- - sysdeps/unix/sysv/linux/dl-openat64.c | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - ---- a/sysdeps/unix/sysv/linux/dl-openat64.c -+++ b/sysdeps/unix/sysv/linux/dl-openat64.c -@@ -23,10 +23,7 @@ - - - int --openat64 (dfd, file, oflag) -- int dfd; -- const char *file; -- int oflag; -+openat64 (int dfd, const char *file, int oflag, ...) - { - assert ((oflag & O_CREAT) == 0); - diff --git a/packages/glibc/2.21/0003-unused-variables.patch b/packages/glibc/2.21/0003-unused-variables.patch deleted file mode 100644 index 3359834..0000000 --- a/packages/glibc/2.21/0003-unused-variables.patch +++ /dev/null @@ -1,171 +0,0 @@ -commit 6565fcb6e189d67b5a3f321453daebb805056d73 -Author: Wilco Dijkstra -Date: Fri Sep 18 20:27:20 2015 +0100 - - Fix several build failures with GCC6 due to unused static variables. - - 2015-09-18 Wilco Dijkstra - - * resolv/base64.c (rcsid): Remove unused static. - * sysdeps/ieee754/dbl-64/atnat2.h (qpi1): Remove unused - static. (tqpi1): Likewise. - * sysdeps/ieee754/dbl-64/uexp.h (one): Likewise. - * sysdeps/ieee754/dbl-64/upow.h (sqrt_2): Likewise. - * sysdeps/ieee754/flt-32/e_log10f.c (one): Likewise. - * sysdeps/ieee754/flt-32/s_cosf.c (one): Likewise. - * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (zero): Likewise. - * sysdeps/ieee754/ldbl-128/s_erfl.c (half): Likewise. - * sysdeps/ieee754/ldbl-128/s_log1pl.c (maxlog): Likewise. - * timezone/private.h (time_t_min): Likewise. (time_t_max): - Likewise. - ---- - resolv/base64.c | 4 ---- - sysdeps/ieee754/dbl-64/atnat2.h | 4 ---- - sysdeps/ieee754/dbl-64/uexp.h | 2 +- - sysdeps/ieee754/dbl-64/upow.h | 2 -- - sysdeps/ieee754/flt-32/e_log10f.c | 2 -- - sysdeps/ieee754/flt-32/s_cosf.c | 2 -- - sysdeps/ieee754/ldbl-128/e_lgammal_r.c | 1 - - sysdeps/ieee754/ldbl-128/s_erfl.c | 1 - - sysdeps/ieee754/ldbl-128/s_log1pl.c | 1 - - timezone/private.h | 10 ---------- - 10 files changed, 1 insertion(+), 28 deletions(-) - ---- a/resolv/base64.c -+++ b/resolv/base64.c -@@ -40,10 +40,6 @@ - * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. - */ - --#if !defined(LINT) && !defined(CODECENTER) --static const char rcsid[] = "$BINDId: base64.c,v 8.7 1999/10/13 16:39:33 vixie Exp $"; --#endif /* not lint */ -- - #include - #include - #include ---- a/sysdeps/ieee754/dbl-64/atnat2.h -+++ b/sysdeps/ieee754/dbl-64/atnat2.h -@@ -65,10 +65,8 @@ - /**/ hpi1 = {{0x3c91a626, 0x33145c07} }, /* pi/2-hpi */ - /**/ mhpi = {{0xbff921fb, 0x54442d18} }, /* -pi/2 */ - /**/ qpi = {{0x3fe921fb, 0x54442d18} }, /* pi/4 */ --/**/ qpi1 = {{0x3c81a626, 0x33145c07} }, /* pi/4-qpi */ - /**/ mqpi = {{0xbfe921fb, 0x54442d18} }, /* -pi/4 */ - /**/ tqpi = {{0x4002d97c, 0x7f3321d2} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x3c9a7939, 0x4c9e8a0a} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0xc002d97c, 0x7f3321d2} }, /* -3pi/4 */ - /**/ u1 = {{0x3c314c2a, 0x00000000} }, /* 9.377e-19 */ - /**/ u2 = {{0x3bf955e4, 0x00000000} }, /* 8.584e-20 */ -@@ -129,10 +127,8 @@ - /**/ hpi1 = {{0x33145c07, 0x3c91a626} }, /* pi/2-hpi */ - /**/ mhpi = {{0x54442d18, 0xbff921fb} }, /* -pi/2 */ - /**/ qpi = {{0x54442d18, 0x3fe921fb} }, /* pi/4 */ --/**/ qpi1 = {{0x33145c07, 0x3c81a626} }, /* pi/4-qpi */ - /**/ mqpi = {{0x54442d18, 0xbfe921fb} }, /* -pi/4 */ - /**/ tqpi = {{0x7f3321d2, 0x4002d97c} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x4c9e8a0a, 0x3c9a7939} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0x7f3321d2, 0xc002d97c} }, /* -3pi/4 */ - /**/ u1 = {{0x00000000, 0x3c314c2a} }, /* 9.377e-19 */ - /**/ u2 = {{0x00000000, 0x3bf955e4} }, /* 8.584e-20 */ ---- a/sysdeps/ieee754/dbl-64/uexp.h -+++ b/sysdeps/ieee754/dbl-64/uexp.h -@@ -29,7 +29,7 @@ - - #include "mydefs.h" - --const static double one = 1.0, zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, -+const static double zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, - err_0 = 1.000014, err_1 = 0.000016; - const static int4 bigint = 0x40862002, - badint = 0x40876000,smallint = 0x3C8fffff; ---- a/sysdeps/ieee754/dbl-64/upow.h -+++ b/sysdeps/ieee754/dbl-64/upow.h -@@ -34,7 +34,6 @@ - /**/ nZERO = {{0x80000000, 0}}, /* -0.0 */ - /**/ INF = {{0x7ff00000, 0x00000000}}, /* INF */ - /**/ nINF = {{0xfff00000, 0x00000000}}, /* -INF */ --/**/ sqrt_2 = {{0x3ff6a09e, 0x667f3bcc}}, /* sqrt(2) */ - /**/ ln2a = {{0x3fe62e42, 0xfefa3800}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x3d2ef357, 0x93c76730}}, /* ln(2)-ln2a */ - /**/ bigu = {{0x4297ffff, 0xfffffd2c}}, /* 1.5*2**42 -724*2**-10 */ -@@ -48,7 +47,6 @@ - /**/ nZERO = {{0, 0x80000000}}, /* -0.0 */ - /**/ INF = {{0x00000000, 0x7ff00000}}, /* INF */ - /**/ nINF = {{0x00000000, 0xfff00000}}, /* -INF */ --/**/ sqrt_2 = {{0x667f3bcc, 0x3ff6a09e}}, /* sqrt(2) */ - /**/ ln2a = {{0xfefa3800, 0x3fe62e42}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x93c76730, 0x3d2ef357}}, /* ln(2)-ln2a */ - /**/ bigu = {{0xfffffd2c, 0x4297ffff}}, /* 1.5*2**42 -724*2**-10 */ ---- a/sysdeps/ieee754/flt-32/e_log10f.c -+++ b/sysdeps/ieee754/flt-32/e_log10f.c -@@ -22,8 +22,6 @@ - log10_2hi = 3.0102920532e-01, /* 0x3e9a2080 */ - log10_2lo = 7.9034151668e-07; /* 0x355427db */ - --static const float zero = 0.0; -- - float - __ieee754_log10f(float x) - { ---- a/sysdeps/ieee754/flt-32/s_cosf.c -+++ b/sysdeps/ieee754/flt-32/s_cosf.c -@@ -21,8 +21,6 @@ - #include - #include - --static const float one=1.0; -- - #ifndef COSF - # define COSF_FUNC __cosf - #else ---- a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -+++ b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -@@ -82,7 +82,6 @@ - static const long double MAXLGM = 1.0485738685148938358098967157129705071571E4928L; - DIAG_POP_NEEDS_COMMENT; - static const long double one = 1.0L; --static const long double zero = 0.0L; - static const long double huge = LDBL_MAX; - - /* log gamma(x) = ( x - 0.5 ) * log(x) - x + LS2PI + 1/x P(1/x^2) ---- a/sysdeps/ieee754/ldbl-128/s_erfl.c -+++ b/sysdeps/ieee754/ldbl-128/s_erfl.c -@@ -140,7 +140,6 @@ - - static const long double - tiny = 1e-4931L, -- half = 0.5L, - one = 1.0L, - two = 2.0L, - /* 2/sqrt(pi) - 1 */ ---- a/sysdeps/ieee754/ldbl-128/s_log1pl.c -+++ b/sysdeps/ieee754/ldbl-128/s_log1pl.c -@@ -116,7 +116,6 @@ - - static const long double sqrth = 0.7071067811865475244008443621048490392848L; - /* ln (2^16384 * (1 - 2^-113)) */ --static const long double maxlog = 1.1356523406294143949491931077970764891253E4L; - static const long double zero = 0.0L; - - long double ---- a/timezone/private.h -+++ b/timezone/private.h -@@ -326,16 +326,6 @@ - #define TYPE_SIGNED(type) (((type) -1) < 0) - #endif /* !defined TYPE_SIGNED */ - --/* The minimum and maximum finite time values. */ --static time_t const time_t_min = -- (TYPE_SIGNED(time_t) -- ? (time_t) -1 << (CHAR_BIT * sizeof (time_t) - 1) -- : 0); --static time_t const time_t_max = -- (TYPE_SIGNED(time_t) -- ? - (~ 0 < 0) - ((time_t) -1 << (CHAR_BIT * sizeof (time_t) - 1)) -- : -1); -- - #ifndef INT_STRLEN_MAXIMUM - /* - ** 302 / 1000 is log10(2.0) rounded up. diff --git a/packages/glibc/2.21/0004-misleading-indentation.patch b/packages/glibc/2.21/0004-misleading-indentation.patch deleted file mode 100644 index 8e08259..0000000 --- a/packages/glibc/2.21/0004-misleading-indentation.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 976ef870542580cf5fed896c2c652b3e1a95f9da -Author: Steve Ellcey -Date: Fri Dec 11 09:19:37 2015 -0800 - - Fix indentation. - - * sysdeps/ieee754/flt-32/k_rem_pio2f.c (__kernel_rem_pio2f): - Fix indentation. - ---- - sysdeps/ieee754/flt-32/k_rem_pio2f.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - ---- a/sysdeps/ieee754/flt-32/k_rem_pio2f.c -+++ b/sysdeps/ieee754/flt-32/k_rem_pio2f.c -@@ -65,7 +65,9 @@ - - /* compute q[0],q[1],...q[jk] */ - for (i=0;i<=jk;i++) { -- for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; q[i] = fw; -+ for(j=0,fw=0.0;j<=jx;j++) -+ fw += x[j]*f[jx+i-j]; -+ q[i] = fw; - } - - jz = jk; diff --git a/packages/glibc/2.21/0005-dl-open-array-bounds.patch b/packages/glibc/2.21/0005-dl-open-array-bounds.patch deleted file mode 100644 index ae626f1..0000000 --- a/packages/glibc/2.21/0005-dl-open-array-bounds.patch +++ /dev/null @@ -1,38 +0,0 @@ -commit 328c44c3670ebf6c1bd790acddce65a12998cd6c -Author: Roland McGrath -Date: Fri Apr 17 12:11:58 2015 -0700 - - Fuller check for invalid NSID in _dl_open. - ---- - elf/dl-open.c | 12 +++++++++--- - 1 file changed, 9 insertions(+), 3 deletions(-) - ---- a/elf/dl-open.c -+++ b/elf/dl-open.c -@@ -211,7 +211,7 @@ - struct link_map *l = _dl_find_dso_for_object ((ElfW(Addr)) caller_dlopen); - - if (l) -- call_map = l; -+ call_map = l; - - if (args->nsid == __LM_ID_CALLER) - args->nsid = call_map->l_ns; -@@ -629,8 +629,14 @@ - /* Never allow loading a DSO in a namespace which is empty. Such - direct placements is only causing problems. Also don't allow - loading into a namespace used for auditing. */ -- else if (__builtin_expect (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER, 0) -- && (GL(dl_ns)[nsid]._ns_nloaded == 0 -+ else if (__glibc_unlikely (nsid != LM_ID_BASE && nsid != __LM_ID_CALLER) -+ && (__glibc_unlikely (nsid < 0 || nsid >= GL(dl_nns)) -+ /* This prevents the [NSID] index expressions from being -+ evaluated, so the compiler won't think that we are -+ accessing an invalid index here in the !SHARED case where -+ DL_NNS is 1 and so any NSID != 0 is invalid. */ -+ || DL_NNS == 1 -+ || GL(dl_ns)[nsid]._ns_nloaded == 0 - || GL(dl_ns)[nsid]._ns_loaded->l_auditing)) - _dl_signal_error (EINVAL, file, NULL, - N_("invalid target namespace in dlmopen()")); diff --git a/packages/glibc/2.21/0006-Fix-combreloc-test-BSD-grep.patch b/packages/glibc/2.21/0006-Fix-combreloc-test-BSD-grep.patch deleted file mode 100644 index f90947b..0000000 --- a/packages/glibc/2.21/0006-Fix-combreloc-test-BSD-grep.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 61d5f9c09b3157db76bd1a393e248c262a8d9dd4 Mon Sep 17 00:00:00 2001 -From: Alexey Neyman -Date: Wed, 8 Mar 2017 14:31:10 -0800 -Subject: [PATCH] Fix combreloc test with BSD grep - -The test for "-z combreloc" fails when cross-compiling on a machine -that uses BSD grep (e.g. on macos). grep complains about empty -subexpression and exits with non-zero status, which is interpreted -by configure as "not found". As a result, support for "-z combreloc" -(HAVE_Z_COMBRELOC) is not detected, leading to link failure on SPARC. - - * configure.ac: Avoid empty subexpression in grep. - -Signed-off-by: Alexey Neyman ---- - configure | 2 +- - configure.ac | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/configure -+++ b/configure -@@ -6017,7 +6017,7 @@ - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } - then -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no ---- a/configure.ac -+++ b/configure.ac -@@ -1391,7 +1391,7 @@ - dnl introducing new options this is not easily doable. Instead use a tool - dnl which always is cross-platform: readelf. To detect whether -z combreloc - dnl look for a section named .rel.dyn. -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/packages/glibc/2.21/0007-typedef-caddr.patch b/packages/glibc/2.21/0007-typedef-caddr.patch deleted file mode 100644 index 980939b..0000000 --- a/packages/glibc/2.21/0007-typedef-caddr.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- - posix/sys/types.h | 3 +++ - 1 file changed, 3 insertions(+) - ---- a/posix/sys/types.h -+++ b/posix/sys/types.h -@@ -113,7 +113,10 @@ - #ifdef __USE_MISC - # ifndef __daddr_t_defined - typedef __daddr_t daddr_t; -+# if ! defined(caddr_t) && ! defined(__caddr_t_defined) - typedef __caddr_t caddr_t; -+# define __caddr_t_defined -+# endif - # define __daddr_t_defined - # endif - #endif diff --git a/packages/glibc/2.21/0008-fix-rpc_parse-format.patch b/packages/glibc/2.21/0008-fix-rpc_parse-format.patch deleted file mode 100644 index 341d541..0000000 --- a/packages/glibc/2.21/0008-fix-rpc_parse-format.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 5874510faaf3cbd0bb112aaacab9f225002beed1 -Author: Joseph Myers -Date: Tue Nov 8 23:44:51 2016 +0000 - - Fix rpcgen buffer overrun (bug 20790). - - Building with GCC 7 produces an error building rpcgen: - - rpc_parse.c: In function 'get_prog_declaration': - rpc_parse.c:543:25: error: may write a terminating nul past the end of the destination [-Werror=format-length=] - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ~~~~^ - rpc_parse.c:543:5: note: format output between 5 and 14 bytes into a destination of size 10 - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - That buffer overrun is for the case where the .x file declares a - program with a million arguments. The strcpy two lines above can - generate a buffer overrun much more simply for a long argument name. - - The limit on length of line read by rpcgen (MAXLINESIZE == 1024) - provides a bound on the buffer size needed, so this patch just changes - the buffer size to MAXLINESIZE to avoid both possible buffer - overruns. A testcase is added that rpcgen does not crash with a - 500-character argument name, where it previously crashed. - - It would not at all surprise me if there are many other ways of - crashing rpcgen with either valid or invalid input; fuzz testing would - likely find various such bugs, though I don't think they are that - important to fix (rpcgen is not that likely to be used with untrusted - .x files as input). (As well as fuzz-findable bugs there are probably - also issues when various int variables get overflowed on very large - input.) The test infrastructure for rpcgen-not-crashing tests would - need extending if tests are to be added for cases where rpcgen should - produce an error, as opposed to cases where it should succeed. - - Tested for x86_64 and x86. - - [BZ #20790] - * sunrpc/rpc_parse.c (get_prog_declaration): Increase buffer size - to MAXLINESIZE. - * sunrpc/bug20790.x: New file. - * sunrpc/Makefile [$(run-built-tests) = yes] (rpcgen-tests): New - variable. - [$(run-built-tests) = yes] (tests-special): Add $(rpcgen-tests). - [$(run-built-tests) = yes] ($(rpcgen-tests)): New rule. - ---- - sunrpc/rpc_parse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sunrpc/rpc_parse.c -+++ b/sunrpc/rpc_parse.c -@@ -521,7 +521,7 @@ - get_prog_declaration (declaration * dec, defkind dkind, int num /* arg number */ ) - { - token tok; -- char name[10]; /* argument name */ -+ char name[MAXLINESIZE]; /* argument name */ - - if (dkind == DEF_PROGRAM) - { diff --git a/packages/glibc/2.21/0009-explicit-boolean.patch b/packages/glibc/2.21/0009-explicit-boolean.patch deleted file mode 100644 index ff7cd87..0000000 --- a/packages/glibc/2.21/0009-explicit-boolean.patch +++ /dev/null @@ -1,35 +0,0 @@ -commit e223d1fe72e820d96f43831412ab267a1ace04d0 -Author: steve ellcey-CA Eng-Software -Date: Fri Oct 14 12:53:27 2016 -0700 - - Fix warnings from latest GCC. - - * sysdeps/ieee754/dbl-64/e_pow.c (checkint) Make conditions explicitly - boolean. - ---- - sysdeps/ieee754/dbl-64/e_pow.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - ---- a/sysdeps/ieee754/dbl-64/e_pow.c -+++ b/sysdeps/ieee754/dbl-64/e_pow.c -@@ -462,15 +462,15 @@ - return (n & 1) ? -1 : 1; /* odd or even */ - if (k > 20) - { -- if (n << (k - 20)) -+ if (n << (k - 20) != 0) - return 0; /* if not integer */ -- return (n << (k - 21)) ? -1 : 1; -+ return (n << (k - 21) != 0) ? -1 : 1; - } - if (n) - return 0; /*if not integer */ - if (k == 20) - return (m & 1) ? -1 : 1; -- if (m << (k + 12)) -+ if (m << (k + 12) != 0) - return 0; -- return (m << (k + 11)) ? -1 : 1; -+ return (m << (k + 11) != 0) ? -1 : 1; - } diff --git a/packages/glibc/2.21/0010-nis-bogus-conditional.patch b/packages/glibc/2.21/0010-nis-bogus-conditional.patch deleted file mode 100644 index e728368..0000000 --- a/packages/glibc/2.21/0010-nis-bogus-conditional.patch +++ /dev/null @@ -1,64 +0,0 @@ -commit f88759ea9bd3c8d8fef28f123ba9767cb0e421a3 -Author: Joseph Myers -Date: Wed Dec 21 23:44:01 2016 +0000 - - Fix nss_nisplus build with mainline GCC (bug 20978). - - glibc build with current mainline GCC fails because - nis/nss_nisplus/nisplus-alias.c contains code - - if (name != NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; - } - - char buf[strlen (name) + 9 + tablename_len]; - - producing an error about strlen being called on a pointer that is - always NULL (and a subsequent use of that pointer with a %s format in - snprintf). - - As Andreas noted, the bogus conditional comes from a 1997 change: - - - if (name == NULL || strlen(name) > 8) - - return NSS_STATUS_NOTFOUND; - - else - + if (name != NULL || strlen(name) <= 8) - - So the intention is clearly to return an error for NULL name. - - This patch duly inverts the sense of the conditional. It fixes the - build with GCC mainline, and passes usual glibc testsuite testing for - x86_64. However, I have not tried any actual substantive nisplus - testing, do not have an environment for such testing, and do not know - whether it is possible that strlen (name) or tablename_len might be - large so that the VLA for buf is actually a security issue. However, - if it is a security issue, there are plenty of other similar instances - in the nisplus code (that haven't been hidden by a bogus comparison - with NULL) - and nis_table.c:__create_ib_request uses strdupa on the - string passed to nis_list, so a local fix in the caller wouldn't - suffice anyway (see bug 20987). (Calls to strdupa and other such - macros that use alloca must be considered equally questionable - regarding stack overflow issues as direct calls to alloca and VLA - declarations.) - - [BZ #20978] - * nis/nss_nisplus/nisplus-alias.c (_nss_nisplus_getaliasbyname_r): - Compare name == NULL, not name != NULL. - ---- - nis/nss_nisplus/nisplus-alias.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/nis/nss_nisplus/nisplus-alias.c -+++ b/nis/nss_nisplus/nisplus-alias.c -@@ -291,7 +291,7 @@ - return status; - } - -- if (name != NULL) -+ if (name == NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; diff --git a/packages/glibc/2.21/0011-dlclose-assert.patch b/packages/glibc/2.21/0011-dlclose-assert.patch deleted file mode 100644 index 4a9de10..0000000 --- a/packages/glibc/2.21/0011-dlclose-assert.patch +++ /dev/null @@ -1,42 +0,0 @@ -commit 2bd2cad9e8a410643e80efa0b15f6f2882e1271b -Author: Roland McGrath -Date: Fri Apr 17 14:29:40 2015 -0700 - - Avoid confusing compiler with dynamically impossible statically invalid dereference in _dl_close_worker. - ---- - elf/dl-close.c | 16 +++++++++++++--- - 1 file changed, 13 insertions(+), 3 deletions(-) - ---- a/elf/dl-close.c -+++ b/elf/dl-close.c -@@ -641,9 +641,16 @@ - DL_UNMAP (imap); - - /* Finally, unlink the data structure and free it. */ -- if (imap->l_prev != NULL) -- imap->l_prev->l_next = imap->l_next; -- else -+#if DL_NNS == 1 -+ /* The assert in the (imap->l_prev == NULL) case gives -+ the compiler license to warn that NS points outside -+ the dl_ns array bounds in that case (as nsid != LM_ID_BASE -+ is tantamount to nsid >= DL_NNS). That should be impossible -+ in this configuration, so just assert about it instead. */ -+ assert (nsid == LM_ID_BASE); -+ assert (imap->l_prev != NULL); -+#else -+ if (imap->l_prev == NULL) - { - assert (nsid != LM_ID_BASE); - ns->_ns_loaded = imap->l_next; -@@ -652,6 +659,9 @@ - we leave for debuggers to examine. */ - r->r_map = (void *) ns->_ns_loaded; - } -+ else -+#endif -+ imap->l_prev->l_next = imap->l_next; - - --ns->_ns_nloaded; - if (imap->l_next != NULL) diff --git a/packages/glibc/2.21/0012-strftime-multiple-stmts.patch b/packages/glibc/2.21/0012-strftime-multiple-stmts.patch deleted file mode 100644 index 0f97e7d..0000000 --- a/packages/glibc/2.21/0012-strftime-multiple-stmts.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb -Author: Joseph Myers -Date: Tue Jun 27 17:12:13 2017 +0000 - - Fix strftime build with GCC 8. - - Building with current GCC mainline fails with: - - strftime_l.c: In function '__strftime_internal': - strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros] - digits = d > width ? d : width; \ - ^ - strftime_l.c:1260:6: note: in expansion of macro 'DO_NUMBER' - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - ^~~~~~~~~ - strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this 'else' clause - else - ^~~~ - - In fact this particular instance is harmless; the code looks like: - - if (modifier == L_('O')) - goto bad_format; - else - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - - and because of the goto, it doesn't matter that part of the expansion - isn't under the "else" conditional. But it's also clearly bad style - to rely on that. This patch changes DO_NUMBER and DO_NUMBER_SPACEPAD - to use do { } while (0) to avoid such problems. - - Tested (full testsuite) for x86_64 (GCC 6), and with - build-many-glibcs.py with GCC mainline, in conjunction with my libgcc - patch . - - * time/strftime_l.c (DO_NUMBER): Define using do { } while (0). - (DO_NUMBER_SPACEPAD): Likewise. - ---- - time/strftime_l.c | 22 ++++++++++++++++------ - 1 file changed, 16 insertions(+), 6 deletions(-) - ---- a/time/strftime_l.c -+++ b/time/strftime_l.c -@@ -738,12 +738,22 @@ - format_char = *f; - switch (format_char) - { --#define DO_NUMBER(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number --#define DO_NUMBER_SPACEPAD(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number_spacepad -+#define DO_NUMBER(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number; \ -+ } \ -+ while (0) -+#define DO_NUMBER_SPACEPAD(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number_spacepad; \ -+ } \ -+ while (0) - - case L_('%'): - if (modifier != 0) diff --git a/packages/glibc/2.21/0013-if_nametoindex-size-check.patch b/packages/glibc/2.21/0013-if_nametoindex-size-check.patch deleted file mode 100644 index 7976fdd..0000000 --- a/packages/glibc/2.21/0013-if_nametoindex-size-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 2180fee114b778515b3f560e5ff1e795282e60b0 -Author: Steve Ellcey -Date: Wed Nov 15 08:58:48 2017 -0800 - - Check length of ifname before copying it into to ifreq structure. - - [BZ #22442] - * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): - Check if ifname is too long. - ---- - sysdeps/unix/sysv/linux/if_index.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/sysdeps/unix/sysv/linux/if_index.c -+++ b/sysdeps/unix/sysv/linux/if_index.c -@@ -43,6 +43,12 @@ - if (fd < 0) - return 0; - -+ if (strlen (ifname) >= IFNAMSIZ) -+ { -+ __set_errno (ENODEV); -+ return 0; -+ } -+ - strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name)); - if (__ioctl (fd, SIOCGIFINDEX, &ifr) < 0) - { diff --git a/packages/glibc/2.21/0014-utmp-nonstring.patch b/packages/glibc/2.21/0014-utmp-nonstring.patch deleted file mode 100644 index dab4e02..0000000 --- a/packages/glibc/2.21/0014-utmp-nonstring.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit 7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c -Author: Martin Sebor -Date: Wed Nov 15 17:39:59 2017 -0700 - - The -Wstringop-truncation option new in GCC 8 detects common misuses - of the strncat and strncpy function that may result in truncating - the copied string before the terminating NUL. To avoid false positive - warnings for correct code that intentionally creates sequences of - characters that aren't guaranteed to be NUL-terminated, arrays that - are intended to store such sequences should be decorated with a new - nonstring attribute. This change add this attribute to Glibc and - uses it to suppress such false positives. - - ChangeLog: - * misc/sys/cdefs.h (__attribute_nonstring__): New macro. - * sysdeps/gnu/bits/utmp.h (struct utmp): Use it. - * sysdeps/unix/sysv/linux/s390/bits/utmp.h (struct utmp): Same. - ---- - misc/sys/cdefs.h | 9 +++++++++ - sysdeps/gnu/bits/utmp.h | 9 ++++++--- - sysdeps/unix/sysv/linux/s390/bits/utmp.h | 9 ++++++--- - 3 files changed, 21 insertions(+), 6 deletions(-) - ---- a/misc/sys/cdefs.h -+++ b/misc/sys/cdefs.h -@@ -399,6 +399,15 @@ - # endif - #endif - -+#if __GNUC_PREREQ (8, 0) -+/* Describes a char array whose address can safely be passed as the first -+ argument to strncpy and strncat, as the char array is not necessarily -+ a NUL-terminated string. */ -+# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -+#else -+# define __attribute_nonstring__ -+#endif -+ - #include - - #if defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH ---- a/sysdeps/gnu/bits/utmp.h -+++ b/sysdeps/gnu/bits/utmp.h -@@ -59,10 +59,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled ---- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h -+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h -@@ -59,10 +59,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled diff --git a/packages/glibc/2.21/0015-getlogin_r-use-strnlen.patch b/packages/glibc/2.21/0015-getlogin_r-use-strnlen.patch deleted file mode 100644 index ff19964..0000000 --- a/packages/glibc/2.21/0015-getlogin_r-use-strnlen.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 4bae615022cb5a5da79ccda83cc6c9ba9f2d479c -Author: Joseph Myers -Date: Wed Nov 22 18:44:23 2017 +0000 - - Avoid use of strlen in getlogin_r (bug 22447). - - Building glibc with current mainline GCC fails, among other reasons, - because of an error for use of strlen on the nonstring ut_user field. - This patch changes the problem code in getlogin_r to use __strnlen - instead. It also needs to set the trailing NUL byte of the result - explicitly, because of the case where ut_user does not have such a - trailing NUL byte (but the result should always have one). - - Tested for x86_64. Also tested that, in conjunction with - , it fixes - the build for arm with mainline GCC. - - [BZ #22447] - * sysdeps/unix/getlogin_r.c (__getlogin_r): Use __strnlen not - strlen to compute length of ut_user and set trailing NUL byte of - result explicitly. - ---- - sysdeps/unix/getlogin_r.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - ---- a/sysdeps/unix/getlogin_r.c -+++ b/sysdeps/unix/getlogin_r.c -@@ -82,7 +82,7 @@ - - if (result == 0) - { -- size_t needed = strlen (ut->ut_user) + 1; -+ size_t needed = __strnlen (ut->ut_user, UT_NAMESIZE) + 1; - - if (needed > name_len) - { -@@ -91,7 +91,8 @@ - } - else - { -- memcpy (name, ut->ut_user, needed); -+ memcpy (name, ut->ut_user, needed - 1); -+ name[needed - 1] = 0; - result = 0; - } - } diff --git a/packages/glibc/2.21/0016-zic.c-use-memcpy.patch b/packages/glibc/2.21/0016-zic.c-use-memcpy.patch deleted file mode 100644 index ef768aa..0000000 --- a/packages/glibc/2.21/0016-zic.c-use-memcpy.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit e69897bf202e18034cbef26f363bae64de70a196 -Author: Paul Eggert -Date: Sun Nov 12 22:00:28 2017 -0800 - - timezone: pacify GCC -Wstringop-truncation - - Problem reported by Martin Sebor in: - https://sourceware.org/ml/libc-alpha/2017-11/msg00336.html - * timezone/zic.c (writezone): Use memcpy, not strncpy. - ---- - timezone/zic.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/timezone/zic.c -+++ b/timezone/zic.c -@@ -1713,7 +1713,7 @@ - } - #define DO(field) ((void) fwrite(tzh.field, sizeof tzh.field, 1, fp)) - tzh = tzh0; -- (void) strncpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); -+ memcpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); - tzh.tzh_version[0] = version; - convert(thistypecnt, tzh.tzh_ttisgmtcnt); - convert(thistypecnt, tzh.tzh_ttisstdcnt); diff --git a/packages/glibc/2.21/0017-Fix-cmpli-usage-in-power6-memset.patch b/packages/glibc/2.21/0017-Fix-cmpli-usage-in-power6-memset.patch deleted file mode 100644 index 5213378..0000000 --- a/packages/glibc/2.21/0017-Fix-cmpli-usage-in-power6-memset.patch +++ /dev/null @@ -1,49 +0,0 @@ -Author: Joseph Myers -Date: 2016-10-24 - -Building glibc for powerpc64 with recent (2.27.51.20161012) binutils, -with multi-arch enabled, I get the error: - -../sysdeps/powerpc/powerpc64/power6/memset.S: Assembler messages: -../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: operand out of range (5 is not between 0 and 1) -../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: operand out of range (128 is not between 0 and 31) -../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: missing operand - -Indeed, cmpli is documented as a four-operand instruction, and looking -at nearby code it seems likely cmpldi was intended. This patch fixes -this powerpc64 code accordingly, and makes a corresponding change to -the powerpc32 code. - -Note: this patch is not tested beyond verifying that the powerpc64 -code builds where it failed to build before the patch. In particular, -I have not done execution testing (the systems I usually use for -testing powerpc are pre-power6 so wouldn't use this code) or tested -the powerpc32 change. - ---- - sysdeps/powerpc/powerpc32/power6/memset.S (memset): Use cmplwi instead of cmpli. - sysdeps/powerpc/powerpc64/power6/memset.S (memset): Use cmpldi instead of cmpli. - ---- a/sysdeps/powerpc/powerpc32/power6/memset.S -+++ b/sysdeps/powerpc/powerpc32/power6/memset.S -@@ -394,7 +394,7 @@ L(cacheAlignedx): - /* A simple loop for the longer (>640 bytes) lengths. This form limits - the branch miss-predicted to exactly 1 at loop exit.*/ - L(cacheAligned512): -- cmpli cr1,rLEN,128 -+ cmplwi cr1,rLEN,128 - blt cr1,L(cacheAligned1) - dcbz 0,rMEMP - addi rLEN,rLEN,-128 - ---- a/sysdeps/powerpc/powerpc64/power6/memset.S -+++ b/sysdeps/powerpc/powerpc64/power6/memset.S -@@ -251,7 +251,7 @@ L(cacheAlignedx): - /* A simple loop for the longer (>640 bytes) lengths. This form limits - the branch miss-predicted to exactly 1 at loop exit.*/ - L(cacheAligned512): -- cmpli cr1,rLEN,128 -+ cmpldi cr1,rLEN,128 - blt cr1,L(cacheAligned1) - dcbz 0,rMEMP - addi rLEN,rLEN,-128 diff --git a/packages/glibc/2.21/chksum b/packages/glibc/2.21/chksum deleted file mode 100644 index faf55d7..0000000 --- a/packages/glibc/2.21/chksum +++ /dev/null @@ -1,12 +0,0 @@ -md5 glibc-2.21.tar.xz 9cb398828e8f84f57d1f7d5588cf40cd -sha1 glibc-2.21.tar.xz 1157be3fe63baa81b7ba104a103337775a6ed06f -sha256 glibc-2.21.tar.xz aeeb362437965a5d3f40b151094ca79def04a115bd363fdd4a9a0c69482923b8 -sha512 glibc-2.21.tar.xz 8cded6693618bec115f678fcbd0b77556f97dfa8337608f66e37224aefa55b38765ba61cb4d58beea37b5934e5ec8e30bad58613707388484906f2a0ce77997d -md5 glibc-2.21.tar.bz2 b9746a4b2486b68e70977f51549f12e7 -sha1 glibc-2.21.tar.bz2 427ef7d4e3a2cf0f0bcda30e2993a50fc11c5f56 -sha256 glibc-2.21.tar.bz2 d17a843419530035e73f65e8ecf75e3bb7ea9548d3469bd67f3f769a03ee39c1 -sha512 glibc-2.21.tar.bz2 62e207c0176dd4dbb4832019b46473528b616e4c89c643602e0dd1936306d1596f5d9bc0863ee2f32980cf125d8c14a290c56f0a1e65888bc5d89be7d1cbaba9 -md5 glibc-2.21.tar.gz 641021d33934b327b216af60af71a728 -sha1 glibc-2.21.tar.gz 244c0a8bc1ea8d1fe3df1c33b8c0add99c847f3b -sha256 glibc-2.21.tar.gz 8d8f78058f2e9c7237700f76fe4e0ae500db31470290cd0b8a9739c0c8ce9738 -sha512 glibc-2.21.tar.gz 51ef6a7895295ea952f28604156a28831380302f822d71bc98e1afcc6d48d8361a3ead66ca63d372e829cb7b027fc923d6695198d35e392333f06255a47ea2c1 diff --git a/packages/glibc/2.21/version.desc b/packages/glibc/2.21/version.desc deleted file mode 100644 index fcfe389..0000000 --- a/packages/glibc/2.21/version.desc +++ /dev/null @@ -1 +0,0 @@ -obsolete='yes' diff --git a/packages/glibc/2.22/0000-sparc32-sem_open-missing-include.patch b/packages/glibc/2.22/0000-sparc32-sem_open-missing-include.patch deleted file mode 100644 index 1153d7b..0000000 --- a/packages/glibc/2.22/0000-sparc32-sem_open-missing-include.patch +++ /dev/null @@ -1,23 +0,0 @@ -commit 3f512ca79fda7854da188df0585e71467119206e -Author: Brett Neumeier -Date: Mon Aug 31 15:27:21 2015 -0700 - - Fix non-v9 32-bit sparc build. - - [BZ #18870] - * sysdeps/sparc/sparc32/sem_open.c: Add missing #include - ---- - sysdeps/sparc/sparc32/sem_open.c | 1 + - 1 file changed, 1 insertion(+) - ---- a/sysdeps/sparc/sparc32/sem_open.c -+++ b/sysdeps/sparc/sparc32/sem_open.c -@@ -29,6 +29,7 @@ - #include - #include - #include "semaphoreP.h" -+#include - #include - - diff --git a/packages/glibc/2.22/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch b/packages/glibc/2.22/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch deleted file mode 100644 index 9232b1b..0000000 --- a/packages/glibc/2.22/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch +++ /dev/null @@ -1,75 +0,0 @@ -From df1cf48777fe4cd81ad7fb09ecbe5b31432b7c1c Mon Sep 17 00:00:00 2001 -From: Yvan Roux -Date: Fri, 15 Apr 2016 13:29:26 +0200 -Subject: [PATCH] Suppress GCC 6 warning about ambiguous 'else' with - -Wparentheses - ---- - nis/nis_call.c | 20 +++++++++++--------- - stdlib/setenv.c | 24 +++++++++++++----------- - 2 files changed, 24 insertions(+), 20 deletions(-) - ---- a/nis/nis_call.c -+++ b/nis/nis_call.c -@@ -680,16 +680,18 @@ - /* Choose which entry should be evicted from the cache. */ - loc = &nis_server_cache[0]; - if (*loc != NULL) -- for (i = 1; i < 16; ++i) -- if (nis_server_cache[i] == NULL) -- { -+ { -+ for (i = 1; i < 16; ++i) -+ if (nis_server_cache[i] == NULL) -+ { -+ loc = &nis_server_cache[i]; -+ break; -+ } -+ else if ((*loc)->uses > nis_server_cache[i]->uses -+ || ((*loc)->uses == nis_server_cache[i]->uses -+ && (*loc)->expires > nis_server_cache[i]->expires)) - loc = &nis_server_cache[i]; -- break; -- } -- else if ((*loc)->uses > nis_server_cache[i]->uses -- || ((*loc)->uses == nis_server_cache[i]->uses -- && (*loc)->expires > nis_server_cache[i]->expires)) -- loc = &nis_server_cache[i]; -+ } - old = *loc; - *loc = new; - ---- a/stdlib/setenv.c -+++ b/stdlib/setenv.c -@@ -289,18 +289,20 @@ - ep = __environ; - if (ep != NULL) - while (*ep != NULL) -- if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -- { -- /* Found it. Remove this pointer by moving later ones back. */ -- char **dp = ep; -+ { -+ if (!strncmp (*ep, name, len) && (*ep)[len] == '=') -+ { -+ /* Found it. Remove this pointer by moving later ones back. */ -+ char **dp = ep; - -- do -- dp[0] = dp[1]; -- while (*dp++); -- /* Continue the loop in case NAME appears again. */ -- } -- else -- ++ep; -+ do -+ dp[0] = dp[1]; -+ while (*dp++); -+ /* Continue the loop in case NAME appears again. */ -+ } -+ else -+ ++ep; -+ } - - UNLOCK; - diff --git a/packages/glibc/2.22/0002-fix-signed-shift-overlow.patch b/packages/glibc/2.22/0002-fix-signed-shift-overlow.patch deleted file mode 100644 index c7cc330..0000000 --- a/packages/glibc/2.22/0002-fix-signed-shift-overlow.patch +++ /dev/null @@ -1,97 +0,0 @@ -commit 5542236837c5c41435f8282ec92799f480c36f18 -Author: Paul Eggert -Date: Tue Jul 21 22:50:29 2015 -0700 - - Port the 0x7efe...feff pattern to GCC 6. - - See Steve Ellcey's bug report in: - https://sourceware.org/ml/libc-alpha/2015-07/msg00673.html - * string/memrchr.c (MEMRCHR): - * string/rawmemchr.c (RAWMEMCHR): - * string/strchr.c (strchr): - * string/strchrnul.c (STRCHRNUL): - Rewrite code to avoid issues with signed shift overflow. - ---- - string/memrchr.c | 11 ++--------- - string/rawmemchr.c | 11 ++--------- - string/strchr.c | 9 ++------- - string/strchrnul.c | 9 ++------- - 4 files changed, 8 insertions(+), 32 deletions(-) - ---- a/string/memrchr.c -+++ b/string/memrchr.c -@@ -96,15 +96,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/rawmemchr.c -+++ b/string/rawmemchr.c -@@ -86,15 +86,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- -- if (sizeof (longword) != 4 && sizeof (longword) != 8) -- abort (); -- --#if LONG_MAX <= LONG_MAX_32_BITS -- magic_bits = 0x7efefeff; --#else -- magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; --#endif -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchr.c -+++ b/string/strchr.c -@@ -60,13 +60,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); ---- a/string/strchrnul.c -+++ b/string/strchrnul.c -@@ -66,13 +66,8 @@ - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ -- switch (sizeof (longword)) -- { -- case 4: magic_bits = 0x7efefeffL; break; -- case 8: magic_bits = ((0x7efefefeL << 16) << 16) | 0xfefefeffL; break; -- default: -- abort (); -- } -+ magic_bits = -1; -+ magic_bits = magic_bits / 0xff * 0xfe << 1 >> 1 | 1; - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); diff --git a/packages/glibc/2.22/0003-dl-openat64-variadic.patch b/packages/glibc/2.22/0003-dl-openat64-variadic.patch deleted file mode 100644 index f57764f..0000000 --- a/packages/glibc/2.22/0003-dl-openat64-variadic.patch +++ /dev/null @@ -1,197 +0,0 @@ -commit 9dd346ff431fc761f1b748bd4da8bb59f7652094 -Author: Joseph Myers -Date: Tue Oct 20 11:54:09 2015 +0000 - - Convert 113 more function definitions to prototype style (files with assertions). - - This mostly automatically-generated patch converts 113 function - definitions in glibc from old-style K&R to prototype-style. Following - my other recent such patches, this one deals with the case of function - definitions in files that either contain assertions or where grep - suggested they might contain assertions - and thus where it isn't - possible to use a simple object code comparison as a sanity check on - the correctness of the patch, because line numbers are changed. - - A few such automatically-generated changes needed to be supplemented - by manual changes for the result to compile. openat64 had a prototype - declaration with "..." but an old-style definition in - sysdeps/unix/sysv/linux/dl-openat64.c, and "..." needed adding to the - generated prototype in the definition (I've filed - for diagnosing - such cases in GCC; the old state was undefined behavior not requiring - a diagnostic, but one seems a good idea). In addition, as Florian has - noted regparm attribute mismatches between declaration and definition - are only diagnosed for prototype definitions, and five functions - needed internal_function added to their definitions (in the case of - __pthread_mutex_cond_lock, via the macro definition of - __pthread_mutex_lock) to compile on i386. - - After this patch is in, remaining old-style definitions are probably - most readily fixed manually before we can turn on - -Wold-style-definition for all builds. - - Tested for x86_64 and x86 (testsuite). - - * crypt/md5-crypt.c (__md5_crypt_r): Convert to prototype-style - function definition. - * crypt/sha256-crypt.c (__sha256_crypt_r): Likewise. - * crypt/sha512-crypt.c (__sha512_crypt_r): Likewise. - * debug/backtracesyms.c (__backtrace_symbols): Likewise. - * elf/dl-minimal.c (_itoa): Likewise. - * hurd/hurdmalloc.c (malloc): Likewise. - (free): Likewise. - (realloc): Likewise. - * inet/inet6_option.c (inet6_option_space): Likewise. - (inet6_option_init): Likewise. - (inet6_option_append): Likewise. - (inet6_option_alloc): Likewise. - (inet6_option_next): Likewise. - (inet6_option_find): Likewise. - * io/ftw.c (FTW_NAME): Likewise. - (NFTW_NAME): Likewise. - (NFTW_NEW_NAME): Likewise. - (NFTW_OLD_NAME): Likewise. - * libio/iofwide.c (_IO_fwide): Likewise. - * libio/strops.c (_IO_str_init_static_internal): Likewise. - (_IO_str_init_static): Likewise. - (_IO_str_init_readonly): Likewise. - (_IO_str_overflow): Likewise. - (_IO_str_underflow): Likewise. - (_IO_str_count): Likewise. - (_IO_str_seekoff): Likewise. - (_IO_str_pbackfail): Likewise. - (_IO_str_finish): Likewise. - * libio/wstrops.c (_IO_wstr_init_static): Likewise. - (_IO_wstr_overflow): Likewise. - (_IO_wstr_underflow): Likewise. - (_IO_wstr_count): Likewise. - (_IO_wstr_seekoff): Likewise. - (_IO_wstr_pbackfail): Likewise. - (_IO_wstr_finish): Likewise. - * locale/programs/localedef.c (normalize_codeset): Likewise. - * locale/programs/locarchive.c (add_locale_to_archive): Likewise. - (add_locales_to_archive): Likewise. - (delete_locales_from_archive): Likewise. - * malloc/malloc.c (__libc_mallinfo): Likewise. - * math/gen-auto-libm-tests.c (init_fp_formats): Likewise. - * misc/tsearch.c (__tfind): Likewise. - * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Likewise. - * nptl/pthread_attr_getdetachstate.c - (__pthread_attr_getdetachstate): Likewise. - * nptl/pthread_attr_getguardsize.c (pthread_attr_getguardsize): - Likewise. - * nptl/pthread_attr_getinheritsched.c - (__pthread_attr_getinheritsched): Likewise. - * nptl/pthread_attr_getschedparam.c - (__pthread_attr_getschedparam): Likewise. - * nptl/pthread_attr_getschedpolicy.c - (__pthread_attr_getschedpolicy): Likewise. - * nptl/pthread_attr_getscope.c (__pthread_attr_getscope): - Likewise. - * nptl/pthread_attr_getstack.c (__pthread_attr_getstack): - Likewise. - * nptl/pthread_attr_getstackaddr.c (__pthread_attr_getstackaddr): - Likewise. - * nptl/pthread_attr_getstacksize.c (__pthread_attr_getstacksize): - Likewise. - * nptl/pthread_attr_init.c (__pthread_attr_init_2_1): Likewise. - (__pthread_attr_init_2_0): Likewise. - * nptl/pthread_attr_setdetachstate.c - (__pthread_attr_setdetachstate): Likewise. - * nptl/pthread_attr_setguardsize.c (pthread_attr_setguardsize): - Likewise. - * nptl/pthread_attr_setinheritsched.c - (__pthread_attr_setinheritsched): Likewise. - * nptl/pthread_attr_setschedparam.c - (__pthread_attr_setschedparam): Likewise. - * nptl/pthread_attr_setschedpolicy.c - (__pthread_attr_setschedpolicy): Likewise. - * nptl/pthread_attr_setscope.c (__pthread_attr_setscope): - Likewise. - * nptl/pthread_attr_setstack.c (__pthread_attr_setstack): - Likewise. - * nptl/pthread_attr_setstackaddr.c (__pthread_attr_setstackaddr): - Likewise. - * nptl/pthread_attr_setstacksize.c (__pthread_attr_setstacksize): - Likewise. - * nptl/pthread_condattr_setclock.c (pthread_condattr_setclock): - Likewise. - * nptl/pthread_create.c (__find_in_stack_list): Likewise. - * nptl/pthread_getattr_np.c (pthread_getattr_np): Likewise. - * nptl/pthread_mutex_cond_lock.c (__pthread_mutex_lock): Define to - use internal_function. - * nptl/pthread_mutex_init.c (__pthread_mutex_init): Convert to - prototype-style function definition. - * nptl/pthread_mutex_lock.c (__pthread_mutex_lock): Likewise. - (__pthread_mutex_cond_lock_adjust): Likewise. Use - internal_function. - * nptl/pthread_mutex_timedlock.c (pthread_mutex_timedlock): - Convert to prototype-style function definition. - * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): - Likewise. - * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_usercnt): - Likewise. - (__pthread_mutex_unlock): Likewise. - * nptl_db/td_ta_clear_event.c (td_ta_clear_event): Likewise. - * nptl_db/td_ta_set_event.c (td_ta_set_event): Likewise. - * nptl_db/td_thr_clear_event.c (td_thr_clear_event): Likewise. - * nptl_db/td_thr_event_enable.c (td_thr_event_enable): Likewise. - * nptl_db/td_thr_set_event.c (td_thr_set_event): Likewise. - * nss/makedb.c (process_input): Likewise. - * posix/fnmatch.c (__strchrnul): Likewise. - (__wcschrnul): Likewise. - (fnmatch): Likewise. - * posix/fnmatch_loop.c (FCT): Likewise. - * posix/glob.c (globfree): Likewise. - (__glob_pattern_type): Likewise. - (__glob_pattern_p): Likewise. - * posix/regcomp.c (re_compile_pattern): Likewise. - (re_set_syntax): Likewise. - (re_compile_fastmap): Likewise. - (regcomp): Likewise. - (regerror): Likewise. - (regfree): Likewise. - * posix/regexec.c (regexec): Likewise. - (re_match): Likewise. - (re_search): Likewise. - (re_match_2): Likewise. - (re_search_2): Likewise. - (re_search_stub): Likewise. Use internal_function - (re_copy_regs): Likewise. - (re_set_registers): Convert to prototype-style function - definition. - (prune_impossible_nodes): Likewise. Use internal_function. - * resolv/inet_net_pton.c (inet_net_pton): Convert to - prototype-style function definition. - (inet_net_pton_ipv4): Likewise. - * stdlib/strtod_l.c (____STRTOF_INTERNAL): Likewise. - * sysdeps/pthread/aio_cancel.c (aio_cancel): Likewise. - * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise. - * sysdeps/pthread/timer_delete.c (timer_delete): Likewise. - * sysdeps/unix/sysv/linux/dl-openat64.c (openat64): Likewise. - Make variadic. - * time/strptime_l.c (localtime_r): Convert to prototype-style - function definition. - * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Likewise. - * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Likewise. - * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Likewise. - * wcsmbs/wcsrtombs.c (__wcsrtombs): Likewise. - ---- - sysdeps/unix/sysv/linux/dl-openat64.c | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - ---- a/sysdeps/unix/sysv/linux/dl-openat64.c -+++ b/sysdeps/unix/sysv/linux/dl-openat64.c -@@ -23,10 +23,7 @@ - - - int --openat64 (dfd, file, oflag) -- int dfd; -- const char *file; -- int oflag; -+openat64 (int dfd, const char *file, int oflag, ...) - { - assert (!__OPEN_NEEDS_MODE (oflag)); - diff --git a/packages/glibc/2.22/0004-unused-variables.patch b/packages/glibc/2.22/0004-unused-variables.patch deleted file mode 100644 index c9211d6..0000000 --- a/packages/glibc/2.22/0004-unused-variables.patch +++ /dev/null @@ -1,171 +0,0 @@ -commit 6565fcb6e189d67b5a3f321453daebb805056d73 -Author: Wilco Dijkstra -Date: Fri Sep 18 20:27:20 2015 +0100 - - Fix several build failures with GCC6 due to unused static variables. - - 2015-09-18 Wilco Dijkstra - - * resolv/base64.c (rcsid): Remove unused static. - * sysdeps/ieee754/dbl-64/atnat2.h (qpi1): Remove unused - static. (tqpi1): Likewise. - * sysdeps/ieee754/dbl-64/uexp.h (one): Likewise. - * sysdeps/ieee754/dbl-64/upow.h (sqrt_2): Likewise. - * sysdeps/ieee754/flt-32/e_log10f.c (one): Likewise. - * sysdeps/ieee754/flt-32/s_cosf.c (one): Likewise. - * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (zero): Likewise. - * sysdeps/ieee754/ldbl-128/s_erfl.c (half): Likewise. - * sysdeps/ieee754/ldbl-128/s_log1pl.c (maxlog): Likewise. - * timezone/private.h (time_t_min): Likewise. (time_t_max): - Likewise. - ---- - resolv/base64.c | 4 ---- - sysdeps/ieee754/dbl-64/atnat2.h | 4 ---- - sysdeps/ieee754/dbl-64/uexp.h | 2 +- - sysdeps/ieee754/dbl-64/upow.h | 2 -- - sysdeps/ieee754/flt-32/e_log10f.c | 2 -- - sysdeps/ieee754/flt-32/s_cosf.c | 2 -- - sysdeps/ieee754/ldbl-128/e_lgammal_r.c | 1 - - sysdeps/ieee754/ldbl-128/s_erfl.c | 1 - - sysdeps/ieee754/ldbl-128/s_log1pl.c | 1 - - timezone/private.h | 10 ---------- - 10 files changed, 1 insertion(+), 28 deletions(-) - ---- a/resolv/base64.c -+++ b/resolv/base64.c -@@ -40,10 +40,6 @@ - * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. - */ - --#if !defined(LINT) && !defined(CODECENTER) --static const char rcsid[] = "$BINDId: base64.c,v 8.7 1999/10/13 16:39:33 vixie Exp $"; --#endif /* not lint */ -- - #include - #include - #include ---- a/sysdeps/ieee754/dbl-64/atnat2.h -+++ b/sysdeps/ieee754/dbl-64/atnat2.h -@@ -65,10 +65,8 @@ - /**/ hpi1 = {{0x3c91a626, 0x33145c07} }, /* pi/2-hpi */ - /**/ mhpi = {{0xbff921fb, 0x54442d18} }, /* -pi/2 */ - /**/ qpi = {{0x3fe921fb, 0x54442d18} }, /* pi/4 */ --/**/ qpi1 = {{0x3c81a626, 0x33145c07} }, /* pi/4-qpi */ - /**/ mqpi = {{0xbfe921fb, 0x54442d18} }, /* -pi/4 */ - /**/ tqpi = {{0x4002d97c, 0x7f3321d2} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x3c9a7939, 0x4c9e8a0a} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0xc002d97c, 0x7f3321d2} }, /* -3pi/4 */ - /**/ u1 = {{0x3c314c2a, 0x00000000} }, /* 9.377e-19 */ - /**/ u2 = {{0x3bf955e4, 0x00000000} }, /* 8.584e-20 */ -@@ -129,10 +127,8 @@ - /**/ hpi1 = {{0x33145c07, 0x3c91a626} }, /* pi/2-hpi */ - /**/ mhpi = {{0x54442d18, 0xbff921fb} }, /* -pi/2 */ - /**/ qpi = {{0x54442d18, 0x3fe921fb} }, /* pi/4 */ --/**/ qpi1 = {{0x33145c07, 0x3c81a626} }, /* pi/4-qpi */ - /**/ mqpi = {{0x54442d18, 0xbfe921fb} }, /* -pi/4 */ - /**/ tqpi = {{0x7f3321d2, 0x4002d97c} }, /* 3pi/4 */ --/**/ tqpi1 = {{0x4c9e8a0a, 0x3c9a7939} }, /* 3pi/4-tqpi */ - /**/ mtqpi = {{0x7f3321d2, 0xc002d97c} }, /* -3pi/4 */ - /**/ u1 = {{0x00000000, 0x3c314c2a} }, /* 9.377e-19 */ - /**/ u2 = {{0x00000000, 0x3bf955e4} }, /* 8.584e-20 */ ---- a/sysdeps/ieee754/dbl-64/uexp.h -+++ b/sysdeps/ieee754/dbl-64/uexp.h -@@ -29,7 +29,7 @@ - - #include "mydefs.h" - --const static double one = 1.0, zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, -+const static double zero = 0.0, hhuge = 1.0e300, tiny = 1.0e-300, - err_0 = 1.000014, err_1 = 0.000016; - const static int4 bigint = 0x40862002, - badint = 0x40876000,smallint = 0x3C8fffff; ---- a/sysdeps/ieee754/dbl-64/upow.h -+++ b/sysdeps/ieee754/dbl-64/upow.h -@@ -34,7 +34,6 @@ - /**/ nZERO = {{0x80000000, 0}}, /* -0.0 */ - /**/ INF = {{0x7ff00000, 0x00000000}}, /* INF */ - /**/ nINF = {{0xfff00000, 0x00000000}}, /* -INF */ --/**/ sqrt_2 = {{0x3ff6a09e, 0x667f3bcc}}, /* sqrt(2) */ - /**/ ln2a = {{0x3fe62e42, 0xfefa3800}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x3d2ef357, 0x93c76730}}, /* ln(2)-ln2a */ - /**/ bigu = {{0x4297ffff, 0xfffffd2c}}, /* 1.5*2**42 -724*2**-10 */ -@@ -48,7 +47,6 @@ - /**/ nZERO = {{0, 0x80000000}}, /* -0.0 */ - /**/ INF = {{0x00000000, 0x7ff00000}}, /* INF */ - /**/ nINF = {{0x00000000, 0xfff00000}}, /* -INF */ --/**/ sqrt_2 = {{0x667f3bcc, 0x3ff6a09e}}, /* sqrt(2) */ - /**/ ln2a = {{0xfefa3800, 0x3fe62e42}}, /* ln(2) 43 bits */ - /**/ ln2b = {{0x93c76730, 0x3d2ef357}}, /* ln(2)-ln2a */ - /**/ bigu = {{0xfffffd2c, 0x4297ffff}}, /* 1.5*2**42 -724*2**-10 */ ---- a/sysdeps/ieee754/flt-32/e_log10f.c -+++ b/sysdeps/ieee754/flt-32/e_log10f.c -@@ -22,8 +22,6 @@ - log10_2hi = 3.0102920532e-01, /* 0x3e9a2080 */ - log10_2lo = 7.9034151668e-07; /* 0x355427db */ - --static const float zero = 0.0; -- - float - __ieee754_log10f(float x) - { ---- a/sysdeps/ieee754/flt-32/s_cosf.c -+++ b/sysdeps/ieee754/flt-32/s_cosf.c -@@ -21,8 +21,6 @@ - #include - #include - --static const float one=1.0; -- - #ifndef COSF - # define COSF_FUNC __cosf - #else ---- a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -+++ b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c -@@ -82,7 +82,6 @@ - static const long double MAXLGM = 1.0485738685148938358098967157129705071571E4928L; - DIAG_POP_NEEDS_COMMENT; - static const long double one = 1.0L; --static const long double zero = 0.0L; - static const long double huge = LDBL_MAX; - - /* log gamma(x) = ( x - 0.5 ) * log(x) - x + LS2PI + 1/x P(1/x^2) ---- a/sysdeps/ieee754/ldbl-128/s_erfl.c -+++ b/sysdeps/ieee754/ldbl-128/s_erfl.c -@@ -140,7 +140,6 @@ - - static const long double - tiny = 1e-4931L, -- half = 0.5L, - one = 1.0L, - two = 2.0L, - /* 2/sqrt(pi) - 1 */ ---- a/sysdeps/ieee754/ldbl-128/s_log1pl.c -+++ b/sysdeps/ieee754/ldbl-128/s_log1pl.c -@@ -117,7 +117,6 @@ - - static const long double sqrth = 0.7071067811865475244008443621048490392848L; - /* ln (2^16384 * (1 - 2^-113)) */ --static const long double maxlog = 1.1356523406294143949491931077970764891253E4L; - static const long double zero = 0.0L; - - long double ---- a/timezone/private.h -+++ b/timezone/private.h -@@ -326,16 +326,6 @@ - #define TYPE_SIGNED(type) (((type) -1) < 0) - #endif /* !defined TYPE_SIGNED */ - --/* The minimum and maximum finite time values. */ --static time_t const time_t_min = -- (TYPE_SIGNED(time_t) -- ? (time_t) -1 << (CHAR_BIT * sizeof (time_t) - 1) -- : 0); --static time_t const time_t_max = -- (TYPE_SIGNED(time_t) -- ? - (~ 0 < 0) - ((time_t) -1 << (CHAR_BIT * sizeof (time_t) - 1)) -- : -1); -- - #ifndef INT_STRLEN_MAXIMUM - /* - ** 302 / 1000 is log10(2.0) rounded up. diff --git a/packages/glibc/2.22/0005-misleading-indentation.patch b/packages/glibc/2.22/0005-misleading-indentation.patch deleted file mode 100644 index 8e08259..0000000 --- a/packages/glibc/2.22/0005-misleading-indentation.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 976ef870542580cf5fed896c2c652b3e1a95f9da -Author: Steve Ellcey -Date: Fri Dec 11 09:19:37 2015 -0800 - - Fix indentation. - - * sysdeps/ieee754/flt-32/k_rem_pio2f.c (__kernel_rem_pio2f): - Fix indentation. - ---- - sysdeps/ieee754/flt-32/k_rem_pio2f.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - ---- a/sysdeps/ieee754/flt-32/k_rem_pio2f.c -+++ b/sysdeps/ieee754/flt-32/k_rem_pio2f.c -@@ -65,7 +65,9 @@ - - /* compute q[0],q[1],...q[jk] */ - for (i=0;i<=jk;i++) { -- for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; q[i] = fw; -+ for(j=0,fw=0.0;j<=jx;j++) -+ fw += x[j]*f[jx+i-j]; -+ q[i] = fw; - } - - jz = jk; diff --git a/packages/glibc/2.22/0006-cve-2105-7547-getaddrinfo-stack.patch b/packages/glibc/2.22/0006-cve-2105-7547-getaddrinfo-stack.patch deleted file mode 100644 index 504edad..0000000 --- a/packages/glibc/2.22/0006-cve-2105-7547-getaddrinfo-stack.patch +++ /dev/null @@ -1,554 +0,0 @@ ---- - resolv/nss_dns/dns-host.c | 111 ++++++++++++++++++- - resolv/res_query.c | 3 - resolv/res_send.c | 264 ++++++++++++++++++++++++++++++++++------------ - 3 files changed, 309 insertions(+), 69 deletions(-) - ---- a/resolv/nss_dns/dns-host.c -+++ b/resolv/nss_dns/dns-host.c -@@ -1031,7 +1031,10 @@ - int h_namelen = 0; - - if (ancount == 0) -- return NSS_STATUS_NOTFOUND; -+ { -+ *h_errnop = HOST_NOT_FOUND; -+ return NSS_STATUS_NOTFOUND; -+ } - - while (ancount-- > 0 && cp < end_of_message && had_error == 0) - { -@@ -1208,7 +1211,14 @@ - /* Special case here: if the resolver sent a result but it only - contains a CNAME while we are looking for a T_A or T_AAAA record, - we fail with NOTFOUND instead of TRYAGAIN. */ -- return canon == NULL ? NSS_STATUS_TRYAGAIN : NSS_STATUS_NOTFOUND; -+ if (canon != NULL) -+ { -+ *h_errnop = HOST_NOT_FOUND; -+ return NSS_STATUS_NOTFOUND; -+ } -+ -+ *h_errnop = NETDB_INTERNAL; -+ return NSS_STATUS_TRYAGAIN; - } - - -@@ -1222,11 +1232,101 @@ - - enum nss_status status = NSS_STATUS_NOTFOUND; - -+ /* Combining the NSS status of two distinct queries requires some -+ compromise and attention to symmetry (A or AAAA queries can be -+ returned in any order). What follows is a breakdown of how this -+ code is expected to work and why. We discuss only SUCCESS, -+ TRYAGAIN, NOTFOUND and UNAVAIL, since they are the only returns -+ that apply (though RETURN and MERGE exist). We make a distinction -+ between TRYAGAIN (recoverable) and TRYAGAIN' (not-recoverable). -+ A recoverable TRYAGAIN is almost always due to buffer size issues -+ and returns ERANGE in errno and the caller is expected to retry -+ with a larger buffer. -+ -+ Lastly, you may be tempted to make significant changes to the -+ conditions in this code to bring about symmetry between responses. -+ Please don't change anything without due consideration for -+ expected application behaviour. Some of the synthesized responses -+ aren't very well thought out and sometimes appear to imply that -+ IPv4 responses are always answer 1, and IPv6 responses are always -+ answer 2, but that's not true (see the implemetnation of send_dg -+ and send_vc to see response can arrive in any order, particlarly -+ for UDP). However, we expect it holds roughly enough of the time -+ that this code works, but certainly needs to be fixed to make this -+ a more robust implementation. -+ -+ ---------------------------------------------- -+ | Answer 1 Status / | Synthesized | Reason | -+ | Answer 2 Status | Status | | -+ |--------------------------------------------| -+ | SUCCESS/SUCCESS | SUCCESS | [1] | -+ | SUCCESS/TRYAGAIN | TRYAGAIN | [5] | -+ | SUCCESS/TRYAGAIN' | SUCCESS | [1] | -+ | SUCCESS/NOTFOUND | SUCCESS | [1] | -+ | SUCCESS/UNAVAIL | SUCCESS | [1] | -+ | TRYAGAIN/SUCCESS | TRYAGAIN | [2] | -+ | TRYAGAIN/TRYAGAIN | TRYAGAIN | [2] | -+ | TRYAGAIN/TRYAGAIN' | TRYAGAIN | [2] | -+ | TRYAGAIN/NOTFOUND | TRYAGAIN | [2] | -+ | TRYAGAIN/UNAVAIL | TRYAGAIN | [2] | -+ | TRYAGAIN'/SUCCESS | SUCCESS | [3] | -+ | TRYAGAIN'/TRYAGAIN | TRYAGAIN | [3] | -+ | TRYAGAIN'/TRYAGAIN' | TRYAGAIN' | [3] | -+ | TRYAGAIN'/NOTFOUND | TRYAGAIN' | [3] | -+ | TRYAGAIN'/UNAVAIL | UNAVAIL | [3] | -+ | NOTFOUND/SUCCESS | SUCCESS | [3] | -+ | NOTFOUND/TRYAGAIN | TRYAGAIN | [3] | -+ | NOTFOUND/TRYAGAIN' | TRYAGAIN' | [3] | -+ | NOTFOUND/NOTFOUND | NOTFOUND | [3] | -+ | NOTFOUND/UNAVAIL | UNAVAIL | [3] | -+ | UNAVAIL/SUCCESS | UNAVAIL | [4] | -+ | UNAVAIL/TRYAGAIN | UNAVAIL | [4] | -+ | UNAVAIL/TRYAGAIN' | UNAVAIL | [4] | -+ | UNAVAIL/NOTFOUND | UNAVAIL | [4] | -+ | UNAVAIL/UNAVAIL | UNAVAIL | [4] | -+ ---------------------------------------------- -+ -+ [1] If the first response is a success we return success. -+ This ignores the state of the second answer and in fact -+ incorrectly sets errno and h_errno to that of the second -+ answer. However because the response is a success we ignore -+ *errnop and *h_errnop (though that means you touched errno on -+ success). We are being conservative here and returning the -+ likely IPv4 response in the first answer as a success. -+ -+ [2] If the first response is a recoverable TRYAGAIN we return -+ that instead of looking at the second response. The -+ expectation here is that we have failed to get an IPv4 response -+ and should retry both queries. -+ -+ [3] If the first response was not a SUCCESS and the second -+ response is not NOTFOUND (had a SUCCESS, need to TRYAGAIN, -+ or failed entirely e.g. TRYAGAIN' and UNAVAIL) then use the -+ result from the second response, otherwise the first responses -+ status is used. Again we have some odd side-effects when the -+ second response is NOTFOUND because we overwrite *errnop and -+ *h_errnop that means that a first answer of NOTFOUND might see -+ its *errnop and *h_errnop values altered. Whether it matters -+ in practice that a first response NOTFOUND has the wrong -+ *errnop and *h_errnop is undecided. -+ -+ [4] If the first response is UNAVAIL we return that instead of -+ looking at the second response. The expectation here is that -+ it will have failed similarly e.g. configuration failure. -+ -+ [5] Testing this code is complicated by the fact that truncated -+ second response buffers might be returned as SUCCESS if the -+ first answer is a SUCCESS. To fix this we add symmetry to -+ TRYAGAIN with the second response. If the second response -+ is a recoverable error we now return TRYAGIN even if the first -+ response was SUCCESS. */ -+ - if (anslen1 > 0) - status = gaih_getanswer_slice(answer1, anslen1, qname, - &pat, &buffer, &buflen, - errnop, h_errnop, ttlp, - &first); -+ - if ((status == NSS_STATUS_SUCCESS || status == NSS_STATUS_NOTFOUND - || (status == NSS_STATUS_TRYAGAIN - /* We want to look at the second answer in case of an -@@ -1242,8 +1342,15 @@ - &pat, &buffer, &buflen, - errnop, h_errnop, ttlp, - &first); -+ /* Use the second response status in some cases. */ - if (status != NSS_STATUS_SUCCESS && status2 != NSS_STATUS_NOTFOUND) - status = status2; -+ /* Do not return a truncated second response (unless it was -+ unavoidable e.g. unrecoverable TRYAGAIN). */ -+ if (status == NSS_STATUS_SUCCESS -+ && (status2 == NSS_STATUS_TRYAGAIN -+ && *errnop == ERANGE && *h_errnop != NO_RECOVERY)) -+ status = NSS_STATUS_TRYAGAIN; - } - - return status; ---- a/resolv/res_query.c -+++ b/resolv/res_query.c -@@ -396,6 +396,7 @@ - { - free (*answerp2); - *answerp2 = NULL; -+ *nanswerp2 = 0; - *answerp2_malloced = 0; - } - } -@@ -447,6 +448,7 @@ - { - free (*answerp2); - *answerp2 = NULL; -+ *nanswerp2 = 0; - *answerp2_malloced = 0; - } - -@@ -521,6 +523,7 @@ - { - free (*answerp2); - *answerp2 = NULL; -+ *nanswerp2 = 0; - *answerp2_malloced = 0; - } - if (saved_herrno != -1) ---- a/resolv/res_send.c -+++ b/resolv/res_send.c -@@ -1,3 +1,20 @@ -+/* Copyright (C) 2016 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 -+ 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, see -+ . */ -+ - /* - * Copyright (c) 1985, 1989, 1993 - * The Regents of the University of California. All rights reserved. -@@ -363,6 +380,8 @@ - #ifdef USE_HOOKS - if (__glibc_unlikely (statp->qhook || statp->rhook)) { - if (anssiz < MAXPACKET && ansp) { -+ /* Always allocate MAXPACKET, callers expect -+ this specific size. */ - u_char *buf = malloc (MAXPACKET); - if (buf == NULL) - return (-1); -@@ -638,6 +657,77 @@ - return (struct sockaddr *) (void *) &statp->nsaddr_list[n]; - } - -+/* The send_vc function is responsible for sending a DNS query over TCP -+ to the nameserver numbered NS from the res_state STATP i.e. -+ EXT(statp).nssocks[ns]. The function supports sending both IPv4 and -+ IPv6 queries at the same serially on the same socket. -+ -+ Please note that for TCP there is no way to disable sending both -+ queries, unlike UDP, which honours RES_SNGLKUP and RES_SNGLKUPREOP -+ and sends the queries serially and waits for the result after each -+ sent query. This implemetnation should be corrected to honour these -+ options. -+ -+ Please also note that for TCP we send both queries over the same -+ socket one after another. This technically violates best practice -+ since the server is allowed to read the first query, respond, and -+ then close the socket (to service another client). If the server -+ does this, then the remaining second query in the socket data buffer -+ will cause the server to send the client an RST which will arrive -+ asynchronously and the client's OS will likely tear down the socket -+ receive buffer resulting in a potentially short read and lost -+ response data. This will force the client to retry the query again, -+ and this process may repeat until all servers and connection resets -+ are exhausted and then the query will fail. It's not known if this -+ happens with any frequency in real DNS server implementations. This -+ implementation should be corrected to use two sockets by default for -+ parallel queries. -+ -+ The query stored in BUF of BUFLEN length is sent first followed by -+ the query stored in BUF2 of BUFLEN2 length. Queries are sent -+ serially on the same socket. -+ -+ Answers to the query are stored firstly in *ANSP up to a max of -+ *ANSSIZP bytes. If more than *ANSSIZP bytes are needed and ANSCP -+ is non-NULL (to indicate that modifying the answer buffer is allowed) -+ then malloc is used to allocate a new response buffer and ANSCP and -+ ANSP will both point to the new buffer. If more than *ANSSIZP bytes -+ are needed but ANSCP is NULL, then as much of the response as -+ possible is read into the buffer, but the results will be truncated. -+ When truncation happens because of a small answer buffer the DNS -+ packets header feild TC will bet set to 1, indicating a truncated -+ message and the rest of the socket data will be read and discarded. -+ -+ Answers to the query are stored secondly in *ANSP2 up to a max of -+ *ANSSIZP2 bytes, with the actual response length stored in -+ *RESPLEN2. If more than *ANSSIZP bytes are needed and ANSP2 -+ is non-NULL (required for a second query) then malloc is used to -+ allocate a new response buffer, *ANSSIZP2 is set to the new buffer -+ size and *ANSP2_MALLOCED is set to 1. -+ -+ The ANSP2_MALLOCED argument will eventually be removed as the -+ change in buffer pointer can be used to detect the buffer has -+ changed and that the caller should use free on the new buffer. -+ -+ Note that the answers may arrive in any order from the server and -+ therefore the first and second answer buffers may not correspond to -+ the first and second queries. -+ -+ It is not supported to call this function with a non-NULL ANSP2 -+ but a NULL ANSCP. Put another way, you can call send_vc with a -+ single unmodifiable buffer or two modifiable buffers, but no other -+ combination is supported. -+ -+ It is the caller's responsibility to free the malloc allocated -+ buffers by detecting that the pointers have changed from their -+ original values i.e. *ANSCP or *ANSP2 has changed. -+ -+ If errors are encountered then *TERRNO is set to an appropriate -+ errno value and a zero result is returned for a recoverable error, -+ and a less-than zero result is returned for a non-recoverable error. -+ -+ If no errors are encountered then *TERRNO is left unmodified and -+ a the length of the first response in bytes is returned. */ - static int - send_vc(res_state statp, - const u_char *buf, int buflen, const u_char *buf2, int buflen2, -@@ -647,11 +737,7 @@ - { - const HEADER *hp = (HEADER *) buf; - const HEADER *hp2 = (HEADER *) buf2; -- u_char *ans = *ansp; -- int orig_anssizp = *anssizp; -- // XXX REMOVE -- // int anssiz = *anssizp; -- HEADER *anhp = (HEADER *) ans; -+ HEADER *anhp = (HEADER *) *ansp; - struct sockaddr *nsap = get_nsaddr (statp, ns); - int truncating, connreset, n; - /* On some architectures compiler might emit a warning indicating -@@ -743,6 +829,8 @@ - * Receive length & response - */ - int recvresp1 = 0; -+ /* Skip the second response if there is no second query. -+ To do that we mark the second response as received. */ - int recvresp2 = buf2 == NULL; - uint16_t rlen16; - read_len: -@@ -779,40 +867,14 @@ - u_char **thisansp; - int *thisresplenp; - if ((recvresp1 | recvresp2) == 0 || buf2 == NULL) { -+ /* We have not received any responses -+ yet or we only have one response to -+ receive. */ - thisanssizp = anssizp; - thisansp = anscp ?: ansp; - assert (anscp != NULL || ansp2 == NULL); - thisresplenp = &resplen; - } else { -- if (*anssizp != MAXPACKET) { -- /* No buffer allocated for the first -- reply. We can try to use the rest -- of the user-provided buffer. */ --#if __GNUC_PREREQ (4, 7) -- DIAG_PUSH_NEEDS_COMMENT; -- DIAG_IGNORE_NEEDS_COMMENT (5, "-Wmaybe-uninitialized"); --#endif --#if _STRING_ARCH_unaligned -- *anssizp2 = orig_anssizp - resplen; -- *ansp2 = *ansp + resplen; --#else -- int aligned_resplen -- = ((resplen + __alignof__ (HEADER) - 1) -- & ~(__alignof__ (HEADER) - 1)); -- *anssizp2 = orig_anssizp - aligned_resplen; -- *ansp2 = *ansp + aligned_resplen; --#endif --#if __GNUC_PREREQ (4, 7) -- DIAG_POP_NEEDS_COMMENT; --#endif -- } else { -- /* The first reply did not fit into the -- user-provided buffer. Maybe the second -- answer will. */ -- *anssizp2 = orig_anssizp; -- *ansp2 = *ansp; -- } -- - thisanssizp = anssizp2; - thisansp = ansp2; - thisresplenp = resplen2; -@@ -820,10 +882,14 @@ - anhp = (HEADER *) *thisansp; - - *thisresplenp = rlen; -- if (rlen > *thisanssizp) { -- /* Yes, we test ANSCP here. If we have two buffers -- both will be allocatable. */ -- if (__glibc_likely (anscp != NULL)) { -+ /* Is the answer buffer too small? */ -+ if (*thisanssizp < rlen) { -+ /* If the current buffer is not the the static -+ user-supplied buffer then we can reallocate -+ it. */ -+ if (thisansp != NULL && thisansp != ansp) { -+ /* Always allocate MAXPACKET, callers expect -+ this specific size. */ - u_char *newp = malloc (MAXPACKET); - if (newp == NULL) { - *terrno = ENOMEM; -@@ -835,6 +901,9 @@ - if (thisansp == ansp2) - *ansp2_malloced = 1; - anhp = (HEADER *) newp; -+ /* A uint16_t can't be larger than MAXPACKET -+ thus it's safe to allocate MAXPACKET but -+ read RLEN bytes instead. */ - len = rlen; - } else { - Dprint(statp->options & RES_DEBUG, -@@ -997,6 +1066,66 @@ - return 1; - } - -+/* The send_dg function is responsible for sending a DNS query over UDP -+ to the nameserver numbered NS from the res_state STATP i.e. -+ EXT(statp).nssocks[ns]. The function supports IPv4 and IPv6 queries -+ along with the ability to send the query in parallel for both stacks -+ (default) or serially (RES_SINGLKUP). It also supports serial lookup -+ with a close and reopen of the socket used to talk to the server -+ (RES_SNGLKUPREOP) to work around broken name servers. -+ -+ The query stored in BUF of BUFLEN length is sent first followed by -+ the query stored in BUF2 of BUFLEN2 length. Queries are sent -+ in parallel (default) or serially (RES_SINGLKUP or RES_SNGLKUPREOP). -+ -+ Answers to the query are stored firstly in *ANSP up to a max of -+ *ANSSIZP bytes. If more than *ANSSIZP bytes are needed and ANSCP -+ is non-NULL (to indicate that modifying the answer buffer is allowed) -+ then malloc is used to allocate a new response buffer and ANSCP and -+ ANSP will both point to the new buffer. If more than *ANSSIZP bytes -+ are needed but ANSCP is NULL, then as much of the response as -+ possible is read into the buffer, but the results will be truncated. -+ When truncation happens because of a small answer buffer the DNS -+ packets header feild TC will bet set to 1, indicating a truncated -+ message, while the rest of the UDP packet is discarded. -+ -+ Answers to the query are stored secondly in *ANSP2 up to a max of -+ *ANSSIZP2 bytes, with the actual response length stored in -+ *RESPLEN2. If more than *ANSSIZP bytes are needed and ANSP2 -+ is non-NULL (required for a second query) then malloc is used to -+ allocate a new response buffer, *ANSSIZP2 is set to the new buffer -+ size and *ANSP2_MALLOCED is set to 1. -+ -+ The ANSP2_MALLOCED argument will eventually be removed as the -+ change in buffer pointer can be used to detect the buffer has -+ changed and that the caller should use free on the new buffer. -+ -+ Note that the answers may arrive in any order from the server and -+ therefore the first and second answer buffers may not correspond to -+ the first and second queries. -+ -+ It is not supported to call this function with a non-NULL ANSP2 -+ but a NULL ANSCP. Put another way, you can call send_vc with a -+ single unmodifiable buffer or two modifiable buffers, but no other -+ combination is supported. -+ -+ It is the caller's responsibility to free the malloc allocated -+ buffers by detecting that the pointers have changed from their -+ original values i.e. *ANSCP or *ANSP2 has changed. -+ -+ If an answer is truncated because of UDP datagram DNS limits then -+ *V_CIRCUIT is set to 1 and the return value non-zero to indicate to -+ the caller to retry with TCP. The value *GOTSOMEWHERE is set to 1 -+ if any progress was made reading a response from the nameserver and -+ is used by the caller to distinguish between ECONNREFUSED and -+ ETIMEDOUT (the latter if *GOTSOMEWHERE is 1). -+ -+ If errors are encountered then *TERRNO is set to an appropriate -+ errno value and a zero result is returned for a recoverable error, -+ and a less-than zero result is returned for a non-recoverable error. -+ -+ If no errors are encountered then *TERRNO is left unmodified and -+ a the length of the first response in bytes is returned. */ - static int - send_dg(res_state statp, - const u_char *buf, int buflen, const u_char *buf2, int buflen2, -@@ -1006,8 +1135,6 @@ - { - const HEADER *hp = (HEADER *) buf; - const HEADER *hp2 = (HEADER *) buf2; -- u_char *ans = *ansp; -- int orig_anssizp = *anssizp; - struct timespec now, timeout, finish; - struct pollfd pfd[1]; - int ptimeout; -@@ -1040,6 +1167,8 @@ - int need_recompute = 0; - int nwritten = 0; - int recvresp1 = 0; -+ /* Skip the second response if there is no second query. -+ To do that we mark the second response as received. */ - int recvresp2 = buf2 == NULL; - pfd[0].fd = EXT(statp).nssocks[ns]; - pfd[0].events = POLLOUT; -@@ -1203,55 +1332,56 @@ - int *thisresplenp; - - if ((recvresp1 | recvresp2) == 0 || buf2 == NULL) { -+ /* We have not received any responses -+ yet or we only have one response to -+ receive. */ - thisanssizp = anssizp; - thisansp = anscp ?: ansp; - assert (anscp != NULL || ansp2 == NULL); - thisresplenp = &resplen; - } else { -- if (*anssizp != MAXPACKET) { -- /* No buffer allocated for the first -- reply. We can try to use the rest -- of the user-provided buffer. */ --#if _STRING_ARCH_unaligned -- *anssizp2 = orig_anssizp - resplen; -- *ansp2 = *ansp + resplen; --#else -- int aligned_resplen -- = ((resplen + __alignof__ (HEADER) - 1) -- & ~(__alignof__ (HEADER) - 1)); -- *anssizp2 = orig_anssizp - aligned_resplen; -- *ansp2 = *ansp + aligned_resplen; --#endif -- } else { -- /* The first reply did not fit into the -- user-provided buffer. Maybe the second -- answer will. */ -- *anssizp2 = orig_anssizp; -- *ansp2 = *ansp; -- } -- - thisanssizp = anssizp2; - thisansp = ansp2; - thisresplenp = resplen2; - } - - if (*thisanssizp < MAXPACKET -- /* Yes, we test ANSCP here. If we have two buffers -- both will be allocatable. */ -- && anscp -+ /* If the current buffer is not the the static -+ user-supplied buffer then we can reallocate -+ it. */ -+ && (thisansp != NULL && thisansp != ansp) - #ifdef FIONREAD -+ /* Is the size too small? */ - && (ioctl (pfd[0].fd, FIONREAD, thisresplenp) < 0 - || *thisanssizp < *thisresplenp) - #endif - ) { -+ /* Always allocate MAXPACKET, callers expect -+ this specific size. */ - u_char *newp = malloc (MAXPACKET); - if (newp != NULL) { -- *anssizp = MAXPACKET; -- *thisansp = ans = newp; -+ *thisanssizp = MAXPACKET; -+ *thisansp = newp; - if (thisansp == ansp2) - *ansp2_malloced = 1; - } - } -+ /* We could end up with truncation if anscp was NULL -+ (not allowed to change caller's buffer) and the -+ response buffer size is too small. This isn't a -+ reliable way to detect truncation because the ioctl -+ may be an inaccurate report of the UDP message size. -+ Therefore we use this only to issue debug output. -+ To do truncation accurately with UDP we need -+ MSG_TRUNC which is only available on Linux. We -+ can abstract out the Linux-specific feature in the -+ future to detect truncation. */ -+ if (__glibc_unlikely (*thisanssizp < *thisresplenp)) { -+ Dprint(statp->options & RES_DEBUG, -+ (stdout, ";; response may be truncated (UDP)\n") -+ ); -+ } -+ - HEADER *anhp = (HEADER *) *thisansp; - socklen_t fromlen = sizeof(struct sockaddr_in6); - assert (sizeof(from) <= fromlen); diff --git a/packages/glibc/2.22/0007-Fix-combreloc-test-BSD-grep.patch b/packages/glibc/2.22/0007-Fix-combreloc-test-BSD-grep.patch deleted file mode 100644 index c0be460..0000000 --- a/packages/glibc/2.22/0007-Fix-combreloc-test-BSD-grep.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 61d5f9c09b3157db76bd1a393e248c262a8d9dd4 Mon Sep 17 00:00:00 2001 -From: Alexey Neyman -Date: Wed, 8 Mar 2017 14:31:10 -0800 -Subject: [PATCH] Fix combreloc test with BSD grep - -The test for "-z combreloc" fails when cross-compiling on a machine -that uses BSD grep (e.g. on macos). grep complains about empty -subexpression and exits with non-zero status, which is interpreted -by configure as "not found". As a result, support for "-z combreloc" -(HAVE_Z_COMBRELOC) is not detected, leading to link failure on SPARC. - - * configure.ac: Avoid empty subexpression in grep. - -Signed-off-by: Alexey Neyman ---- - configure | 2 +- - configure.ac | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/configure -+++ b/configure -@@ -6172,7 +6172,7 @@ - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } - then -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no ---- a/configure.ac -+++ b/configure.ac -@@ -1442,7 +1442,7 @@ - dnl introducing new options this is not easily doable. Instead use a tool - dnl which always is cross-platform: readelf. To detect whether -z combreloc - dnl look for a section named .rel.dyn. -- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/packages/glibc/2.22/0008-typedef-caddr.patch b/packages/glibc/2.22/0008-typedef-caddr.patch deleted file mode 100644 index 980939b..0000000 --- a/packages/glibc/2.22/0008-typedef-caddr.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- - posix/sys/types.h | 3 +++ - 1 file changed, 3 insertions(+) - ---- a/posix/sys/types.h -+++ b/posix/sys/types.h -@@ -113,7 +113,10 @@ - #ifdef __USE_MISC - # ifndef __daddr_t_defined - typedef __daddr_t daddr_t; -+# if ! defined(caddr_t) && ! defined(__caddr_t_defined) - typedef __caddr_t caddr_t; -+# define __caddr_t_defined -+# endif - # define __daddr_t_defined - # endif - #endif diff --git a/packages/glibc/2.22/0009-fix-rpc_parse-format.patch b/packages/glibc/2.22/0009-fix-rpc_parse-format.patch deleted file mode 100644 index 341d541..0000000 --- a/packages/glibc/2.22/0009-fix-rpc_parse-format.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 5874510faaf3cbd0bb112aaacab9f225002beed1 -Author: Joseph Myers -Date: Tue Nov 8 23:44:51 2016 +0000 - - Fix rpcgen buffer overrun (bug 20790). - - Building with GCC 7 produces an error building rpcgen: - - rpc_parse.c: In function 'get_prog_declaration': - rpc_parse.c:543:25: error: may write a terminating nul past the end of the destination [-Werror=format-length=] - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ~~~~^ - rpc_parse.c:543:5: note: format output between 5 and 14 bytes into a destination of size 10 - sprintf (name, "%s%d", ARGNAME, num); /* default name of argument */ - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - That buffer overrun is for the case where the .x file declares a - program with a million arguments. The strcpy two lines above can - generate a buffer overrun much more simply for a long argument name. - - The limit on length of line read by rpcgen (MAXLINESIZE == 1024) - provides a bound on the buffer size needed, so this patch just changes - the buffer size to MAXLINESIZE to avoid both possible buffer - overruns. A testcase is added that rpcgen does not crash with a - 500-character argument name, where it previously crashed. - - It would not at all surprise me if there are many other ways of - crashing rpcgen with either valid or invalid input; fuzz testing would - likely find various such bugs, though I don't think they are that - important to fix (rpcgen is not that likely to be used with untrusted - .x files as input). (As well as fuzz-findable bugs there are probably - also issues when various int variables get overflowed on very large - input.) The test infrastructure for rpcgen-not-crashing tests would - need extending if tests are to be added for cases where rpcgen should - produce an error, as opposed to cases where it should succeed. - - Tested for x86_64 and x86. - - [BZ #20790] - * sunrpc/rpc_parse.c (get_prog_declaration): Increase buffer size - to MAXLINESIZE. - * sunrpc/bug20790.x: New file. - * sunrpc/Makefile [$(run-built-tests) = yes] (rpcgen-tests): New - variable. - [$(run-built-tests) = yes] (tests-special): Add $(rpcgen-tests). - [$(run-built-tests) = yes] ($(rpcgen-tests)): New rule. - ---- - sunrpc/rpc_parse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/sunrpc/rpc_parse.c -+++ b/sunrpc/rpc_parse.c -@@ -521,7 +521,7 @@ - get_prog_declaration (declaration * dec, defkind dkind, int num /* arg number */ ) - { - token tok; -- char name[10]; /* argument name */ -+ char name[MAXLINESIZE]; /* argument name */ - - if (dkind == DEF_PROGRAM) - { diff --git a/packages/glibc/2.22/0010-explicit-boolean.patch b/packages/glibc/2.22/0010-explicit-boolean.patch deleted file mode 100644 index ff7cd87..0000000 --- a/packages/glibc/2.22/0010-explicit-boolean.patch +++ /dev/null @@ -1,35 +0,0 @@ -commit e223d1fe72e820d96f43831412ab267a1ace04d0 -Author: steve ellcey-CA Eng-Software -Date: Fri Oct 14 12:53:27 2016 -0700 - - Fix warnings from latest GCC. - - * sysdeps/ieee754/dbl-64/e_pow.c (checkint) Make conditions explicitly - boolean. - ---- - sysdeps/ieee754/dbl-64/e_pow.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - ---- a/sysdeps/ieee754/dbl-64/e_pow.c -+++ b/sysdeps/ieee754/dbl-64/e_pow.c -@@ -462,15 +462,15 @@ - return (n & 1) ? -1 : 1; /* odd or even */ - if (k > 20) - { -- if (n << (k - 20)) -+ if (n << (k - 20) != 0) - return 0; /* if not integer */ -- return (n << (k - 21)) ? -1 : 1; -+ return (n << (k - 21) != 0) ? -1 : 1; - } - if (n) - return 0; /*if not integer */ - if (k == 20) - return (m & 1) ? -1 : 1; -- if (m << (k + 12)) -+ if (m << (k + 12) != 0) - return 0; -- return (m << (k + 11)) ? -1 : 1; -+ return (m << (k + 11) != 0) ? -1 : 1; - } diff --git a/packages/glibc/2.22/0011-nis-bogus-conditional.patch b/packages/glibc/2.22/0011-nis-bogus-conditional.patch deleted file mode 100644 index e728368..0000000 --- a/packages/glibc/2.22/0011-nis-bogus-conditional.patch +++ /dev/null @@ -1,64 +0,0 @@ -commit f88759ea9bd3c8d8fef28f123ba9767cb0e421a3 -Author: Joseph Myers -Date: Wed Dec 21 23:44:01 2016 +0000 - - Fix nss_nisplus build with mainline GCC (bug 20978). - - glibc build with current mainline GCC fails because - nis/nss_nisplus/nisplus-alias.c contains code - - if (name != NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; - } - - char buf[strlen (name) + 9 + tablename_len]; - - producing an error about strlen being called on a pointer that is - always NULL (and a subsequent use of that pointer with a %s format in - snprintf). - - As Andreas noted, the bogus conditional comes from a 1997 change: - - - if (name == NULL || strlen(name) > 8) - - return NSS_STATUS_NOTFOUND; - - else - + if (name != NULL || strlen(name) <= 8) - - So the intention is clearly to return an error for NULL name. - - This patch duly inverts the sense of the conditional. It fixes the - build with GCC mainline, and passes usual glibc testsuite testing for - x86_64. However, I have not tried any actual substantive nisplus - testing, do not have an environment for such testing, and do not know - whether it is possible that strlen (name) or tablename_len might be - large so that the VLA for buf is actually a security issue. However, - if it is a security issue, there are plenty of other similar instances - in the nisplus code (that haven't been hidden by a bogus comparison - with NULL) - and nis_table.c:__create_ib_request uses strdupa on the - string passed to nis_list, so a local fix in the caller wouldn't - suffice anyway (see bug 20987). (Calls to strdupa and other such - macros that use alloca must be considered equally questionable - regarding stack overflow issues as direct calls to alloca and VLA - declarations.) - - [BZ #20978] - * nis/nss_nisplus/nisplus-alias.c (_nss_nisplus_getaliasbyname_r): - Compare name == NULL, not name != NULL. - ---- - nis/nss_nisplus/nisplus-alias.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/nis/nss_nisplus/nisplus-alias.c -+++ b/nis/nss_nisplus/nisplus-alias.c -@@ -291,7 +291,7 @@ - return status; - } - -- if (name != NULL) -+ if (name == NULL) - { - *errnop = EINVAL; - return NSS_STATUS_UNAVAIL; diff --git a/packages/glibc/2.22/0012-strftime-multiple-stmts.patch b/packages/glibc/2.22/0012-strftime-multiple-stmts.patch deleted file mode 100644 index 0f97e7d..0000000 --- a/packages/glibc/2.22/0012-strftime-multiple-stmts.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb -Author: Joseph Myers -Date: Tue Jun 27 17:12:13 2017 +0000 - - Fix strftime build with GCC 8. - - Building with current GCC mainline fails with: - - strftime_l.c: In function '__strftime_internal': - strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros] - digits = d > width ? d : width; \ - ^ - strftime_l.c:1260:6: note: in expansion of macro 'DO_NUMBER' - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - ^~~~~~~~~ - strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this 'else' clause - else - ^~~~ - - In fact this particular instance is harmless; the code looks like: - - if (modifier == L_('O')) - goto bad_format; - else - DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); - - and because of the goto, it doesn't matter that part of the expansion - isn't under the "else" conditional. But it's also clearly bad style - to rely on that. This patch changes DO_NUMBER and DO_NUMBER_SPACEPAD - to use do { } while (0) to avoid such problems. - - Tested (full testsuite) for x86_64 (GCC 6), and with - build-many-glibcs.py with GCC mainline, in conjunction with my libgcc - patch . - - * time/strftime_l.c (DO_NUMBER): Define using do { } while (0). - (DO_NUMBER_SPACEPAD): Likewise. - ---- - time/strftime_l.c | 22 ++++++++++++++++------ - 1 file changed, 16 insertions(+), 6 deletions(-) - ---- a/time/strftime_l.c -+++ b/time/strftime_l.c -@@ -738,12 +738,22 @@ - format_char = *f; - switch (format_char) - { --#define DO_NUMBER(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number --#define DO_NUMBER_SPACEPAD(d, v) \ -- digits = d > width ? d : width; \ -- number_value = v; goto do_number_spacepad -+#define DO_NUMBER(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number; \ -+ } \ -+ while (0) -+#define DO_NUMBER_SPACEPAD(d, v) \ -+ do \ -+ { \ -+ digits = d > width ? d : width; \ -+ number_value = v; \ -+ goto do_number_spacepad; \ -+ } \ -+ while (0) - - case L_('%'): - if (modifier != 0) diff --git a/packages/glibc/2.22/0013-if_nametoindex-size-check.patch b/packages/glibc/2.22/0013-if_nametoindex-size-check.patch deleted file mode 100644 index 7976fdd..0000000 --- a/packages/glibc/2.22/0013-if_nametoindex-size-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 2180fee114b778515b3f560e5ff1e795282e60b0 -Author: Steve Ellcey -Date: Wed Nov 15 08:58:48 2017 -0800 - - Check length of ifname before copying it into to ifreq structure. - - [BZ #22442] - * sysdeps/unix/sysv/linux/if_index.c (__if_nametoindex): - Check if ifname is too long. - ---- - sysdeps/unix/sysv/linux/if_index.c | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/sysdeps/unix/sysv/linux/if_index.c -+++ b/sysdeps/unix/sysv/linux/if_index.c -@@ -43,6 +43,12 @@ - if (fd < 0) - return 0; - -+ if (strlen (ifname) >= IFNAMSIZ) -+ { -+ __set_errno (ENODEV); -+ return 0; -+ } -+ - strncpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name)); - if (__ioctl (fd, SIOCGIFINDEX, &ifr) < 0) - { diff --git a/packages/glibc/2.22/0014-utmp-nonstring.patch b/packages/glibc/2.22/0014-utmp-nonstring.patch deleted file mode 100644 index 98f142c..0000000 --- a/packages/glibc/2.22/0014-utmp-nonstring.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit 7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c -Author: Martin Sebor -Date: Wed Nov 15 17:39:59 2017 -0700 - - The -Wstringop-truncation option new in GCC 8 detects common misuses - of the strncat and strncpy function that may result in truncating - the copied string before the terminating NUL. To avoid false positive - warnings for correct code that intentionally creates sequences of - characters that aren't guaranteed to be NUL-terminated, arrays that - are intended to store such sequences should be decorated with a new - nonstring attribute. This change add this attribute to Glibc and - uses it to suppress such false positives. - - ChangeLog: - * misc/sys/cdefs.h (__attribute_nonstring__): New macro. - * sysdeps/gnu/bits/utmp.h (struct utmp): Use it. - * sysdeps/unix/sysv/linux/s390/bits/utmp.h (struct utmp): Same. - ---- - misc/sys/cdefs.h | 9 +++++++++ - sysdeps/gnu/bits/utmp.h | 9 ++++++--- - sysdeps/unix/sysv/linux/s390/bits/utmp.h | 9 ++++++--- - 3 files changed, 21 insertions(+), 6 deletions(-) - ---- a/misc/sys/cdefs.h -+++ b/misc/sys/cdefs.h -@@ -399,6 +399,15 @@ - # endif - #endif - -+#if __GNUC_PREREQ (8, 0) -+/* Describes a char array whose address can safely be passed as the first -+ argument to strncpy and strncat, as the char array is not necessarily -+ a NUL-terminated string. */ -+# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -+#else -+# define __attribute_nonstring__ -+#endif -+ - #if (!defined _Static_assert && !defined __cplusplus \ - && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 201112 \ - && (!__GNUC_PREREQ (4, 6) || defined __STRICT_ANSI__)) ---- a/sysdeps/gnu/bits/utmp.h -+++ b/sysdeps/gnu/bits/utmp.h -@@ -59,10 +59,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled ---- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h -+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h -@@ -59,10 +59,13 @@ - { - short int ut_type; /* Type of login. */ - pid_t ut_pid; /* Process ID of login process. */ -- char ut_line[UT_LINESIZE]; /* Devicename. */ -+ char ut_line[UT_LINESIZE] -+ __attribute_nonstring__; /* Devicename. */ - char ut_id[4]; /* Inittab ID. */ -- char ut_user[UT_NAMESIZE]; /* Username. */ -- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ -+ char ut_user[UT_NAMESIZE] -+ __attribute_nonstring__; /* Username. */ -+ char ut_host[UT_HOSTSIZE] -+ __attribute_nonstring__; /* Hostname for remote login. */ - struct exit_status ut_exit; /* Exit status of a process marked - as DEAD_PROCESS. */ - /* The ut_session and ut_tv fields must be the same size when compiled diff --git a/packages/glibc/2.22/0015-getlogin_r-use-strnlen.patch b/packages/glibc/2.22/0015-getlogin_r-use-strnlen.patch deleted file mode 100644 index ff19964..0000000 --- a/packages/glibc/2.22/0015-getlogin_r-use-strnlen.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 4bae615022cb5a5da79ccda83cc6c9ba9f2d479c -Author: Joseph Myers -Date: Wed Nov 22 18:44:23 2017 +0000 - - Avoid use of strlen in getlogin_r (bug 22447). - - Building glibc with current mainline GCC fails, among other reasons, - because of an error for use of strlen on the nonstring ut_user field. - This patch changes the problem code in getlogin_r to use __strnlen - instead. It also needs to set the trailing NUL byte of the result - explicitly, because of the case where ut_user does not have such a - trailing NUL byte (but the result should always have one). - - Tested for x86_64. Also tested that, in conjunction with - , it fixes - the build for arm with mainline GCC. - - [BZ #22447] - * sysdeps/unix/getlogin_r.c (__getlogin_r): Use __strnlen not - strlen to compute length of ut_user and set trailing NUL byte of - result explicitly. - ---- - sysdeps/unix/getlogin_r.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - ---- a/sysdeps/unix/getlogin_r.c -+++ b/sysdeps/unix/getlogin_r.c -@@ -82,7 +82,7 @@ - - if (result == 0) - { -- size_t needed = strlen (ut->ut_user) + 1; -+ size_t needed = __strnlen (ut->ut_user, UT_NAMESIZE) + 1; - - if (needed > name_len) - { -@@ -91,7 +91,8 @@ - } - else - { -- memcpy (name, ut->ut_user, needed); -+ memcpy (name, ut->ut_user, needed - 1); -+ name[needed - 1] = 0; - result = 0; - } - } diff --git a/packages/glibc/2.22/0016-zic.c-use-memcpy.patch b/packages/glibc/2.22/0016-zic.c-use-memcpy.patch deleted file mode 100644 index ef768aa..0000000 --- a/packages/glibc/2.22/0016-zic.c-use-memcpy.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit e69897bf202e18034cbef26f363bae64de70a196 -Author: Paul Eggert -Date: Sun Nov 12 22:00:28 2017 -0800 - - timezone: pacify GCC -Wstringop-truncation - - Problem reported by Martin Sebor in: - https://sourceware.org/ml/libc-alpha/2017-11/msg00336.html - * timezone/zic.c (writezone): Use memcpy, not strncpy. - ---- - timezone/zic.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/timezone/zic.c -+++ b/timezone/zic.c -@@ -1713,7 +1713,7 @@ - } - #define DO(field) ((void) fwrite(tzh.field, sizeof tzh.field, 1, fp)) - tzh = tzh0; -- (void) strncpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); -+ memcpy(tzh.tzh_magic, TZ_MAGIC, sizeof tzh.tzh_magic); - tzh.tzh_version[0] = version; - convert(thistypecnt, tzh.tzh_ttisgmtcnt); - convert(thistypecnt, tzh.tzh_ttisstdcnt); diff --git a/packages/glibc/2.22/0017-Fix-cmpli-usage-in-power6-memset.patch b/packages/glibc/2.22/0017-Fix-cmpli-usage-in-power6-memset.patch deleted file mode 100644 index 5213378..0000000 --- a/packages/glibc/2.22/0017-Fix-cmpli-usage-in-power6-memset.patch +++ /dev/null @@ -1,49 +0,0 @@ -Author: Joseph Myers -Date: 2016-10-24 - -Building glibc for powerpc64 with recent (2.27.51.20161012) binutils, -with multi-arch enabled, I get the error: - -../sysdeps/powerpc/powerpc64/power6/memset.S: Assembler messages: -../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: operand out of range (5 is not between 0 and 1) -../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: operand out of range (128 is not between 0 and 31) -../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: missing operand - -Indeed, cmpli is documented as a four-operand instruction, and looking -at nearby code it seems likely cmpldi was intended. This patch fixes -this powerpc64 code accordingly, and makes a corresponding change to -the powerpc32 code. - -Note: this patch is not tested beyond verifying that the powerpc64 -code builds where it failed to build before the patch. In particular, -I have not done execution testing (the systems I usually use for -testing powerpc are pre-power6 so wouldn't use this code) or tested -the powerpc32 change. - ---- - sysdeps/powerpc/powerpc32/power6/memset.S (memset): Use cmplwi instead of cmpli. - sysdeps/powerpc/powerpc64/power6/memset.S (memset): Use cmpldi instead of cmpli. - ---- a/sysdeps/powerpc/powerpc32/power6/memset.S -+++ b/sysdeps/powerpc/powerpc32/power6/memset.S -@@ -394,7 +394,7 @@ L(cacheAlignedx): - /* A simple loop for the longer (>640 bytes) lengths. This form limits - the branch miss-predicted to exactly 1 at loop exit.*/ - L(cacheAligned512): -- cmpli cr1,rLEN,128 -+ cmplwi cr1,rLEN,128 - blt cr1,L(cacheAligned1) - dcbz 0,rMEMP - addi rLEN,rLEN,-128 - ---- a/sysdeps/powerpc/powerpc64/power6/memset.S -+++ b/sysdeps/powerpc/powerpc64/power6/memset.S -@@ -251,7 +251,7 @@ L(cacheAlignedx): - /* A simple loop for the longer (>640 bytes) lengths. This form limits - the branch miss-predicted to exactly 1 at loop exit.*/ - L(cacheAligned512): -- cmpli cr1,rLEN,128 -+ cmpldi cr1,rLEN,128 - blt cr1,L(cacheAligned1) - dcbz 0,rMEMP - addi rLEN,rLEN,-128 diff --git a/packages/glibc/2.22/chksum b/packages/glibc/2.22/chksum deleted file mode 100644 index 1ddffaf..0000000 --- a/packages/glibc/2.22/chksum +++ /dev/null @@ -1,12 +0,0 @@ -md5 glibc-2.22.tar.xz e51e02bf552a0a1fbbdc948fb2f5e83c -sha1 glibc-2.22.tar.xz 5be95334f197121d8b351059a1c6518305d88e2a -sha256 glibc-2.22.tar.xz eb731406903befef1d8f878a46be75ef862b9056ab0cde1626d08a7a05328948 -sha512 glibc-2.22.tar.xz a8719f3a4f8aa5fa81711116fdafbea5082c6dfd85bd8c4cdce60571910263ab422b35bb8b55a84d37ccb146442133ba60a84d453ca4a439c8ccd35419bd051b -md5 glibc-2.22.tar.bz2 3168120497c81b663a76c952f7722da2 -sha1 glibc-2.22.tar.bz2 2c0b9114b10b31c9c064f03e00bfeaecd3983eef -sha256 glibc-2.22.tar.bz2 c64b6fcae5945abbb9cb40c583bab9d7a827943203beb3dda1aeeed3b5e404c1 -sha512 glibc-2.22.tar.bz2 b786546b43b8ac69b18e1f4f74651b2d90253a3ae9f7b796b9cfb0b28b8c405747136f10b3ada14bb7b33f7c951985db6cef171a5e033393ebdead5985332d65 -md5 glibc-2.22.tar.gz 91dcaa30870c1ce5c9974c49c3af03eb -sha1 glibc-2.22.tar.gz 802c4522316005b3fee4605243c3249cfbfa7017 -sha256 glibc-2.22.tar.gz a62610c4084a0fd8cec58eee12ef9e61fdf809c31e7cecbbc28feb8719f08be5 -sha512 glibc-2.22.tar.gz 9f7905d6aae05481b2253c71d5b6e67797904cc64a26b2aafc42c7e94bd4078be16a7837314aa36e311d409aa75d80f1df9d9e170b8c8768ee82e3adf355b973 diff --git a/packages/glibc/2.22/version.desc b/packages/glibc/2.22/version.desc deleted file mode 100644 index fcfe389..0000000 --- a/packages/glibc/2.22/version.desc +++ /dev/null @@ -1 +0,0 @@ -obsolete='yes' -- cgit v0.10.2-6-g49f6