aboutsummaryrefslogtreecommitdiff
path: root/packages/glibc
diff options
context:
space:
mode:
authorChris Packham <judge.packham@gmail.com>2022-05-08 14:06:21 +1200
committerChris Packham <judge.packham@gmail.com>2022-05-10 19:46:53 +1200
commit6d5227b63b096b052dde8717822db259971db515 (patch)
tree367194d0497ac11587d4740d8c180009605a9e27 /packages/glibc
parent53bbdc74252f68a3800d222dddee69e63b617bf9 (diff)
downloadcrosstool-ng-6d5227b63b096b052dde8717822db259971db515.tar.gz
crosstool-ng-6d5227b63b096b052dde8717822db259971db515.tar.bz2
crosstool-ng-6d5227b63b096b052dde8717822db259971db515.zip
Remove obsolete glibc 2.12.1
glibc 2.12.1 was marked as obsolete. Now that the 1.25.0 release is out this version can be removed completely. As glibc 2.12.1 was the last remaining version supported by glibc-ports support for glibc-ports is also removed. Signed-off-by: Chris Packham <judge.packham@gmail.com>
Diffstat (limited to 'packages/glibc')
-rw-r--r--packages/glibc/2.12.1/0000-respect-env-CPPFLAGS.patch28
-rw-r--r--packages/glibc/2.12.1/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch75
-rw-r--r--packages/glibc/2.12.1/0002-fix-signed-shift-overlow.patch97
-rw-r--r--packages/glibc/2.12.1/0003-unused-variables.patch159
-rw-r--r--packages/glibc/2.12.1/0004-misleading-indentation.patch26
-rw-r--r--packages/glibc/2.12.1/0005-dl-open-array-bounds.patch29
-rw-r--r--packages/glibc/2.12.1/0006-i386-x86_64-revert-clone-cfi.patch51
-rw-r--r--packages/glibc/2.12.1/0007-disable-ldconfig.patch19
-rw-r--r--packages/glibc/2.12.1/0008-Fix-combreloc-test-BSD-grep.patch41
-rw-r--r--packages/glibc/2.12.1/0009-queue-header-updates.patch86
-rw-r--r--packages/glibc/2.12.1/0010-manual-no-perl.patch27
-rw-r--r--packages/glibc/2.12.1/0011-localedef-fix-trampoline.patch56
-rw-r--r--packages/glibc/2.12.1/0012-resolv-dynamic.patch42
-rw-r--r--packages/glibc/2.12.1/0013-localedef-mmap.patch42
-rw-r--r--packages/glibc/2.12.1/0014-fadvise64_64.patch27
-rw-r--r--packages/glibc/2.12.1/0015-section-comments.patch27
-rw-r--r--packages/glibc/2.12.1/0016-no-inline-gmon.patch36
-rw-r--r--packages/glibc/2.12.1/0017-check_native-headers.patch20
-rw-r--r--packages/glibc/2.12.1/0018-fix-pr631.patch48
-rw-r--r--packages/glibc/2.12.1/0019-assume-pipe2.patch43
-rw-r--r--packages/glibc/2.12.1/0020-china.patch35
-rw-r--r--packages/glibc/2.12.1/0021-new-valencian-locale.patch118
-rw-r--r--packages/glibc/2.12.1/0022-macos-cross-rpcgen.patch34
-rw-r--r--packages/glibc/2.12.1/0023-nscd-one-fork.patch43
-rw-r--r--packages/glibc/2.12.1/0024-hppa-nptl-carlos.patch249
-rw-r--r--packages/glibc/2.12.1/0025-dl_execstack-PaX-support.patch69
-rw-r--r--packages/glibc/2.12.1/0026-pre20040117-pt_pax.patch35
-rw-r--r--packages/glibc/2.12.1/0027-tests-sandbox-libdl-paths.patch196
-rw-r--r--packages/glibc/2.12.1/0028-fnmatch.patch62
-rw-r--r--packages/glibc/2.12.1/0029-dont-build-timezone.patch17
-rw-r--r--packages/glibc/2.12.1/0030-alpha-xstat.patch18
-rw-r--r--packages/glibc/2.12.1/0031-alpha-creat.patch17
-rw-r--r--packages/glibc/2.12.1/0032-alpha_alpha-add-fdatasync-support.patch122
-rw-r--r--packages/glibc/2.12.1/0033-ppc-atomic.patch412
-rw-r--r--packages/glibc/2.12.1/0034-mips_shn_undef-hack.patch19
-rw-r--r--packages/glibc/2.12.1/0035-alpha-atfcts.patch16
-rw-r--r--packages/glibc/2.12.1/0036-syslog.patch15
-rw-r--r--packages/glibc/2.12.1/0037-debug-readlink_chk-readklinkat_chk.patch27
-rw-r--r--packages/glibc/2.12.1/0038-march-i686.patch37
-rw-r--r--packages/glibc/2.12.1/0039-typedef-caddr.patch31
-rw-r--r--packages/glibc/2.12.1/0040-fix-rpc_parse-format.patch62
-rw-r--r--packages/glibc/2.12.1/0041-make-382.patch19
-rw-r--r--packages/glibc/2.12.1/0042-nis-bogus-conditional.patch64
-rw-r--r--packages/glibc/2.12.1/0043-obstack-common.patch32
-rw-r--r--packages/glibc/2.12.1/0044-new-tools.patch72
-rw-r--r--packages/glibc/2.12.1/0045-strftime-multiple-stmts.patch73
-rw-r--r--packages/glibc/2.12.1/0046-if_nametoindex-size-check.patch29
-rw-r--r--packages/glibc/2.12.1/0047-utmp-nonstring.patch80
-rw-r--r--packages/glibc/2.12.1/0048-getlogin_r-use-strnlen.patch47
-rw-r--r--packages/glibc/2.12.1/0049-zic.c-use-memcpy.patch25
-rw-r--r--packages/glibc/2.12.1/0050-do-not-use-libgcc_eh.patch292
-rw-r--r--packages/glibc/2.12.1/chksum12
-rw-r--r--packages/glibc/2.12.1/version.desc1
53 files changed, 0 insertions, 3359 deletions
diff --git a/packages/glibc/2.12.1/0000-respect-env-CPPFLAGS.patch b/packages/glibc/2.12.1/0000-respect-env-CPPFLAGS.patch
deleted file mode 100644
index ddeb71be..00000000
--- a/packages/glibc/2.12.1/0000-respect-env-CPPFLAGS.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Respect environment CPPFLAGS when we run ./configure so we can inject
-random -D things without having to set CFLAGS/ASFLAGS
-
----
- Makeconfig | 1 +
- config.make.in | 1 +
- 2 files changed, 2 insertions(+)
-
---- a/Makeconfig
-+++ b/Makeconfig
-@@ -697,6 +697,7 @@
- $(foreach lib,$(libof-$(basename $(@F))) \
- $(libof-$(<F)) $(libof-$(@F)),$(CPPFLAGS-$(lib))) \
- $(CPPFLAGS-$(<F)) $(CPPFLAGS-$(@F)) $(CPPFLAGS-$(basename $(@F)))
-+CPPFLAGS += $(CPPFLAGS-config)
- override CFLAGS = -std=gnu99 $(gnu89-inline-CFLAGS) \
- $(filter-out %frame-pointer,$(+cflags)) $(+gccwarn-c) \
- $(sysdep-CFLAGS) $(CFLAGS-$(suffix $@)) $(CFLAGS-$(<F)) \
---- a/config.make.in
-+++ b/config.make.in
-@@ -107,6 +107,7 @@
- CXX = @CXX@
- BUILD_CC = @BUILD_CC@
- CFLAGS = @CFLAGS@
-+CPPFLAGS-config = @CPPFLAGS@
- ASFLAGS-config = @ASFLAGS_config@
- AR = @AR@
- RANLIB = @RANLIB@
diff --git a/packages/glibc/2.12.1/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch b/packages/glibc/2.12.1/0001-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch
deleted file mode 100644
index 30a70a2f..00000000
--- a/packages/glibc/2.12.1/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 <yvan.roux@linaro.org>
-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.12.1/0002-fix-signed-shift-overlow.patch b/packages/glibc/2.12.1/0002-fix-signed-shift-overlow.patch
deleted file mode 100644
index 5f76afe9..00000000
--- a/packages/glibc/2.12.1/0002-fix-signed-shift-overlow.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-commit 5542236837c5c41435f8282ec92799f480c36f18
-Author: Paul Eggert <eggert@cs.ucla.edu>
-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.12.1/0003-unused-variables.patch b/packages/glibc/2.12.1/0003-unused-variables.patch
deleted file mode 100644
index 18adb17f..00000000
--- a/packages/glibc/2.12.1/0003-unused-variables.patch
+++ /dev/null
@@ -1,159 +0,0 @@
-commit 6565fcb6e189d67b5a3f321453daebb805056d73
-Author: Wilco Dijkstra <wdijkstr@arm.com>
-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 <wdijkstr@arm.com>
-
- * 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 <sys/types.h>
- #include <sys/param.h>
- #include <sys/socket.h>
---- 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.12.1/0004-misleading-indentation.patch b/packages/glibc/2.12.1/0004-misleading-indentation.patch
deleted file mode 100644
index 35bcb1b8..00000000
--- a/packages/glibc/2.12.1/0004-misleading-indentation.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-commit 976ef870542580cf5fed896c2c652b3e1a95f9da
-Author: Steve Ellcey <sellcey@mips.com>
-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.12.1/0005-dl-open-array-bounds.patch b/packages/glibc/2.12.1/0005-dl-open-array-bounds.patch
deleted file mode 100644
index d1d3fb7f..00000000
--- a/packages/glibc/2.12.1/0005-dl-open-array-bounds.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-commit 328c44c3670ebf6c1bd790acddce65a12998cd6c
-Author: Roland McGrath <roland@hack.frob.com>
-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
-@@ -555,8 +555,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.12.1/0006-i386-x86_64-revert-clone-cfi.patch b/packages/glibc/2.12.1/0006-i386-x86_64-revert-clone-cfi.patch
deleted file mode 100644
index f872bac4..00000000
--- a/packages/glibc/2.12.1/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.12.1/0007-disable-ldconfig.patch b/packages/glibc/2.12.1/0007-disable-ldconfig.patch
deleted file mode 100644
index d60cb409..00000000
--- a/packages/glibc/2.12.1/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.12.1/0008-Fix-combreloc-test-BSD-grep.patch b/packages/glibc/2.12.1/0008-Fix-combreloc-test-BSD-grep.patch
deleted file mode 100644
index 35bb601b..00000000
--- a/packages/glibc/2.12.1/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 <stilor@att.net>
-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 <stilor@att.net>
----
- configure | 2 +-
- configure.in | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
---- a/configure
-+++ b/configure
-@@ -6732,7 +6732,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
-@@ -1687,7 +1687,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.1/0009-queue-header-updates.patch b/packages/glibc/2.12.1/0009-queue-header-updates.patch
deleted file mode 100644
index f6515e2b..00000000
--- a/packages/glibc/2.12.1/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.12.1/0010-manual-no-perl.patch b/packages/glibc/2.12.1/0010-manual-no-perl.patch
deleted file mode 100644
index 14ddc6d5..00000000
--- a/packages/glibc/2.12.1/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.12.1/0011-localedef-fix-trampoline.patch b/packages/glibc/2.12.1/0011-localedef-fix-trampoline.patch
deleted file mode 100644
index 3b8fd6e8..00000000
--- a/packages/glibc/2.12.1/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 <james@nocrew.org>
-# DP: Patch Author: (probably) Jakub Jelinek <jakub@redhat.com>
-# 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.12.1/0012-resolv-dynamic.patch b/packages/glibc/2.12.1/0012-resolv-dynamic.patch
deleted file mode 100644
index fcc2f80a..00000000
--- a/packages/glibc/2.12.1/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 <arpa/nameser.h>
- #include <resolv.h>
- #include <bits/libc-lock.h>
-+#include <sys/stat.h>
-
-
- /* 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.12.1/0013-localedef-mmap.patch b/packages/glibc/2.12.1/0013-localedef-mmap.patch
deleted file mode 100644
index 74e586ee..00000000
--- a/packages/glibc/2.12.1/0013-localedef-mmap.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-sniped from Debian
-http://bugs.gentoo.org/289615
-
-2009-10-27 Aurelien Jarno <aurelien@aurel32.net>
-
- * 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.12.1/0014-fadvise64_64.patch b/packages/glibc/2.12.1/0014-fadvise64_64.patch
deleted file mode 100644
index 191d8330..00000000
--- a/packages/glibc/2.12.1/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.12.1/0015-section-comments.patch b/packages/glibc/2.12.1/0015-section-comments.patch
deleted file mode 100644
index 5960ed05..00000000
--- a/packages/glibc/2.12.1/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.12.1/0016-no-inline-gmon.patch b/packages/glibc/2.12.1/0016-no-inline-gmon.patch
deleted file mode 100644
index ed027040..00000000
--- a/packages/glibc/2.12.1/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 &lt;kazu@codesourcery.com&gt;
-
- * 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.12.1/0017-check_native-headers.patch b/packages/glibc/2.12.1/0017-check_native-headers.patch
deleted file mode 100644
index 2b1b6198..00000000
--- a/packages/glibc/2.12.1/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 <stddef.h>
- #include <stdint.h>
- #include <stdlib.h>
-+#include <string.h>
- #include <time.h>
- #include <unistd.h>
- #include <net/if.h>
diff --git a/packages/glibc/2.12.1/0018-fix-pr631.patch b/packages/glibc/2.12.1/0018-fix-pr631.patch
deleted file mode 100644
index 636c45de..00000000
--- a/packages/glibc/2.12.1/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.12.1/0019-assume-pipe2.patch b/packages/glibc/2.12.1/0019-assume-pipe2.patch
deleted file mode 100644
index 0074ea65..00000000
--- a/packages/glibc/2.12.1/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 <grp.h>
-#include <stdio.h>
-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 <fcntl.h>
- #include <sys/socket.h>
- #include <kernel-features.h>
-
- #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.12.1/0020-china.patch b/packages/glibc/2.12.1/0020-china.patch
deleted file mode 100644
index b323cf67..00000000
--- a/packages/glibc/2.12.1/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.12.1/0021-new-valencian-locale.patch b/packages/glibc/2.12.1/0021-new-valencian-locale.patch
deleted file mode 100644
index bddc4c79..00000000
--- a/packages/glibc/2.12.1/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.12.1/0022-macos-cross-rpcgen.patch b/packages/glibc/2.12.1/0022-macos-cross-rpcgen.patch
deleted file mode 100644
index 155b4f59..00000000
--- a/packages/glibc/2.12.1/0022-macos-cross-rpcgen.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-commit ae7080d30c68cfa0c81ce3422dca948f64a94f50
-Author: Jia Liu <proljc@gmail.com>
-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 <proljc@gmail.com>
- Signed-off-by: Mike Frysinger <vapier@gentoo.org>
-
----
- 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 <sys/types.h>
- #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.1/0023-nscd-one-fork.patch b/packages/glibc/2.12.1/0023-nscd-one-fork.patch
deleted file mode 100644
index 47217b3b..00000000
--- a/packages/glibc/2.12.1/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.12.1/0024-hppa-nptl-carlos.patch b/packages/glibc/2.12.1/0024-hppa-nptl-carlos.patch
deleted file mode 100644
index a01ac9b5..00000000
--- a/packages/glibc/2.12.1/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
-@@ -390,14 +390,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
-@@ -264,9 +264,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
-
-@@ -425,6 +425,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.12.1/0025-dl_execstack-PaX-support.patch b/packages/glibc/2.12.1/0025-dl_execstack-PaX-support.patch
deleted file mode 100644
index bfd75579..00000000
--- a/packages/glibc/2.12.1/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. <azarah@gentoo.org> (12 Nov 2003).
-
- Patch also NPTL. Bug #116086. <kevquinn@gentoo.org> (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.12.1/0026-pre20040117-pt_pax.patch b/packages/glibc/2.12.1/0026-pre20040117-pt_pax.patch
deleted file mode 100644
index ec17d24a..00000000
--- a/packages/glibc/2.12.1/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.12.1/0027-tests-sandbox-libdl-paths.patch b/packages/glibc/2.12.1/0027-tests-sandbox-libdl-paths.patch
deleted file mode 100644
index 1c4ee594..00000000
--- a/packages/glibc/2.12.1/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 - <<EOF
- String1 - Lang1: 1st string
---- a/intl/tst-translit.sh
-+++ b/intl/tst-translit.sh
-@@ -36,7 +36,10 @@
- LOCPATH=${common_objpfx}localedata
- export LOCPATH
-
--${common_objpfx}elf/ld.so --library-path $common_objpfx \
-+# 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 $library_path \
- ${objpfx}tst-translit > ${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.12.1/0028-fnmatch.patch b/packages/glibc/2.12.1/0028-fnmatch.patch
deleted file mode 100644
index 992645a9..00000000
--- a/packages/glibc/2.12.1/0028-fnmatch.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-http://sourceware.org/ml/libc-hacker/2002-11/msg00071.html
-
-When fnmatch detects an invalid multibyte character it should fall back to
-single byte matching, so that "*" has a chance to match such a string.
-
-Andreas.
-
-2005-04-12 Andreas Schwab <schwab@suse.de>
-
- * posix/fnmatch.c (fnmatch): If conversion to wide character
- fails fall back to single byte matching.
-
----
- posix/fnmatch.c | 16 ++++++++--------
- 1 file changed, 8 insertions(+), 8 deletions(-)
-
---- a/posix/fnmatch.c
-+++ b/posix/fnmatch.c
-@@ -327,6 +327,7 @@
- # if HANDLE_MULTIBYTE
- if (__builtin_expect (MB_CUR_MAX, 1) != 1)
- {
-+ const char *orig_pattern = pattern;
- mbstate_t ps;
- size_t n;
- const char *p;
-@@ -382,10 +383,8 @@
- wstring = (wchar_t *) alloca ((n + 1) * sizeof (wchar_t));
- n = mbsrtowcs (wstring, &p, n + 1, &ps);
- if (__builtin_expect (n == (size_t) -1, 0))
-- /* Something wrong.
-- XXX Do we have to set `errno' to something which mbsrtows hasn't
-- already done? */
-- return -1;
-+ /* Something wrong. Fall back to single byte matching. */
-+ goto try_singlebyte;
- if (p)
- {
- memset (&ps, '\0', sizeof (ps));
-@@ -397,10 +396,8 @@
- prepare_wstring:
- n = mbsrtowcs (NULL, &string, 0, &ps);
- if (__builtin_expect (n == (size_t) -1, 0))
-- /* Something wrong.
-- XXX Do we have to set `errno' to something which mbsrtows hasn't
-- already done? */
-- return -1;
-+ /* Something wrong. Fall back to single byte matching. */
-+ goto try_singlebyte;
- wstring = (wchar_t *) alloca ((n + 1) * sizeof (wchar_t));
- assert (mbsinit (&ps));
- (void) mbsrtowcs (wstring, &string, n + 1, &ps);
-@@ -408,6 +405,9 @@
-
- return internal_fnwmatch (wpattern, wstring, wstring + n,
- flags & FNM_PERIOD, flags, NULL);
-+
-+ try_singlebyte:
-+ pattern = orig_pattern;
- }
- # endif /* mbstate_t and mbsrtowcs or _LIBC. */
-
diff --git a/packages/glibc/2.12.1/0029-dont-build-timezone.patch b/packages/glibc/2.12.1/0029-dont-build-timezone.patch
deleted file mode 100644
index b0fb8fc0..00000000
--- a/packages/glibc/2.12.1/0029-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.12.1/0030-alpha-xstat.patch b/packages/glibc/2.12.1/0030-alpha-xstat.patch
deleted file mode 100644
index 4fa9517e..00000000
--- a/packages/glibc/2.12.1/0030-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.12.1/0031-alpha-creat.patch b/packages/glibc/2.12.1/0031-alpha-creat.patch
deleted file mode 100644
index 6ef52782..00000000
--- a/packages/glibc/2.12.1/0031-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 <sysdep.h>
-+#ifndef __NR_creat
-+#include "../../../../../io/creat64.c"
-+#endif
diff --git a/packages/glibc/2.12.1/0032-alpha_alpha-add-fdatasync-support.patch b/packages/glibc/2.12.1/0032-alpha_alpha-add-fdatasync-support.patch
deleted file mode 100644
index df9f1b20..00000000
--- a/packages/glibc/2.12.1/0032-alpha_alpha-add-fdatasync-support.patch
+++ /dev/null
@@ -1,122 +0,0 @@
-2009-07-25 Aurelien Jarno <aurelien@aurel32.net>
-
- * 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
-
-+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 <errno.h>
-+#include <unistd.h>
-+
-+#include <sysdep-cancel.h>
-+#include <sys/syscall.h>
-+#include <bp-checks.h>
-+
-+#include <kernel-features.h>
-+
-+#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.12.1/0033-ppc-atomic.patch b/packages/glibc/2.12.1/0033-ppc-atomic.patch
deleted file mode 100644
index a38c1c53..00000000
--- a/packages/glibc/2.12.1/0033-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.12.1/0034-mips_shn_undef-hack.patch b/packages/glibc/2.12.1/0034-mips_shn_undef-hack.patch
deleted file mode 100644
index 2f9d6568..00000000
--- a/packages/glibc/2.12.1/0034-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.12.1/0035-alpha-atfcts.patch b/packages/glibc/2.12.1/0035-alpha-atfcts.patch
deleted file mode 100644
index 2eff9188..00000000
--- a/packages/glibc/2.12.1/0035-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.12.1/0036-syslog.patch b/packages/glibc/2.12.1/0036-syslog.patch
deleted file mode 100644
index a2d9722a..00000000
--- a/packages/glibc/2.12.1/0036-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.12.1/0037-debug-readlink_chk-readklinkat_chk.patch b/packages/glibc/2.12.1/0037-debug-readlink_chk-readklinkat_chk.patch
deleted file mode 100644
index 0b930f38..00000000
--- a/packages/glibc/2.12.1/0037-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.12.1/0038-march-i686.patch b/packages/glibc/2.12.1/0038-march-i686.patch
deleted file mode 100644
index e5ad2e07..00000000
--- a/packages/glibc/2.12.1/0038-march-i686.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-2007-02-15 Khem Raj <kraj@xxxxxxxxxx>
-
- * 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 <dl-sysdep.h>
- #include <tls.h>
-
-+#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.1/0039-typedef-caddr.patch b/packages/glibc/2.12.1/0039-typedef-caddr.patch
deleted file mode 100644
index 5139bbd5..00000000
--- a/packages/glibc/2.12.1/0039-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.1/0040-fix-rpc_parse-format.patch b/packages/glibc/2.12.1/0040-fix-rpc_parse-format.patch
deleted file mode 100644
index 906fb706..00000000
--- a/packages/glibc/2.12.1/0040-fix-rpc_parse-format.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-commit 5874510faaf3cbd0bb112aaacab9f225002beed1
-Author: Joseph Myers <joseph@codesourcery.com>
-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.1/0041-make-382.patch b/packages/glibc/2.12.1/0041-make-382.patch
deleted file mode 100644
index 9ce2d882..00000000
--- a/packages/glibc/2.12.1/0041-make-382.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=blob_plain;f=source/base/glibc/make-3.82-fix.patch;hb=8217c32ecc2e14962847ba3d8a272eb64a3dba4f
-
----
- manual/Makefile | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
---- a/manual/Makefile
-+++ b/manual/Makefile
-@@ -237,7 +237,9 @@
- .PHONY: stubs
- stubs: $(objpfx)stubs
- endif
--$(objpfx)stubs ../po/manual.pot $(objpfx)stamp%:
-+$(objpfx)stubs ../po/manual.pot:
-+ touch $@
-+$(objpfx)stamp%:
- $(make-target-directory)
- touch $@
-
diff --git a/packages/glibc/2.12.1/0042-nis-bogus-conditional.patch b/packages/glibc/2.12.1/0042-nis-bogus-conditional.patch
deleted file mode 100644
index 732b859b..00000000
--- a/packages/glibc/2.12.1/0042-nis-bogus-conditional.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-commit f88759ea9bd3c8d8fef28f123ba9767cb0e421a3
-Author: Joseph Myers <joseph@codesourcery.com>
-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.1/0043-obstack-common.patch b/packages/glibc/2.12.1/0043-obstack-common.patch
deleted file mode 100644
index 1993be24..00000000
--- a/packages/glibc/2.12.1/0043-obstack-common.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-commit 39b1f6172a2f9ddc74a8f82d6e84dd13b22dbaf2
-Author: Peter Collingbourne <pcc@google.com>
-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 <pcc@google.com>
-
- * 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.1/0044-new-tools.patch b/packages/glibc/2.12.1/0044-new-tools.patch
deleted file mode 100644
index cfa03b0c..00000000
--- a/packages/glibc/2.12.1/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
-@@ -5079,7 +5079,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;;
-
-@@ -5142,7 +5142,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;;
-
-@@ -5269,7 +5269,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;;
-
-@@ -5329,7 +5329,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
-@@ -960,11 +960,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.]*\)],
-@@ -972,10 +972,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.1/0045-strftime-multiple-stmts.patch b/packages/glibc/2.12.1/0045-strftime-multiple-stmts.patch
deleted file mode 100644
index e544b337..00000000
--- a/packages/glibc/2.12.1/0045-strftime-multiple-stmts.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb
-Author: Joseph Myers <joseph@codesourcery.com>
-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 <https://gcc.gnu.org/ml/gcc-patches/2017-06/msg02032.html>.
-
- * 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.1/0046-if_nametoindex-size-check.patch b/packages/glibc/2.12.1/0046-if_nametoindex-size-check.patch
deleted file mode 100644
index 5803db57..00000000
--- a/packages/glibc/2.12.1/0046-if_nametoindex-size-check.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-commit 2180fee114b778515b3f560e5ff1e795282e60b0
-Author: Steve Ellcey <sellcey@caviumnetworks.com>
-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.1/0047-utmp-nonstring.patch b/packages/glibc/2.12.1/0047-utmp-nonstring.patch
deleted file mode 100644
index b7897244..00000000
--- a/packages/glibc/2.12.1/0047-utmp-nonstring.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-commit 7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c
-Author: Martin Sebor <msebor@redhat.com>
-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 <bits/wordsize.h>
-
- #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.1/0048-getlogin_r-use-strnlen.patch b/packages/glibc/2.12.1/0048-getlogin_r-use-strnlen.patch
deleted file mode 100644
index 15a16bda..00000000
--- a/packages/glibc/2.12.1/0048-getlogin_r-use-strnlen.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-commit 4bae615022cb5a5da79ccda83cc6c9ba9f2d479c
-Author: Joseph Myers <joseph@codesourcery.com>
-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
- <https://sourceware.org/ml/libc-alpha/2017-11/msg00797.html>, 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.1/0049-zic.c-use-memcpy.patch b/packages/glibc/2.12.1/0049-zic.c-use-memcpy.patch
deleted file mode 100644
index 4c89446e..00000000
--- a/packages/glibc/2.12.1/0049-zic.c-use-memcpy.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-commit e69897bf202e18034cbef26f363bae64de70a196
-Author: Paul Eggert <eggert@cs.ucla.edu>
-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.1/0050-do-not-use-libgcc_eh.patch b/packages/glibc/2.12.1/0050-do-not-use-libgcc_eh.patch
deleted file mode 100644
index 08192b35..00000000
--- a/packages/glibc/2.12.1/0050-do-not-use-libgcc_eh.patch
+++ /dev/null
@@ -1,292 +0,0 @@
-commit 95f5a9a866695da4e038aa4e6ccbbfd5d9cf63b7
-Author: Joseph Myers <joseph@codesourcery.com>
-Date: Tue Jul 3 19:14:59 2012 +0000
-
- Avoid use of libgcc_s and libgcc_eh when building glibc.
-
----
- Makeconfig | 69 ++++++++++++++++++++++++++++++++++++++++++++++-------
- Rules | 39 +++++++++++++++++++++++------
- elf/Makefile | 6 +++-
- elf/static-stubs.c | 46 +++++++++++++++++++++++++++++++++++
- 4 files changed, 142 insertions(+), 18 deletions(-)
-
---- a/Makeconfig
-+++ b/Makeconfig
-@@ -429,9 +429,9 @@
- LDFLAGS-rtld += $(hashstyle-LDFLAGS)
- endif
-
--# Command for linking programs with the C library.
-+# Commands for linking programs with the C library.
- ifndef +link
--+link = $(CC) -nostdlib -nostartfiles -o $@ \
-++link-before-libc = $(CC) -nostdlib -nostartfiles -o $@ \
- $(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
- $(combreloc-LDFLAGS) $(relro-LDFLAGS) $(hashstyle-LDFLAGS) \
- $(addprefix $(csu-objpfx),$(start-installed-name)) \
-@@ -440,7 +440,10 @@
- $(start-installed-name))\
- $(+preinit) $(link-extra-libs) \
- $(common-objpfx)libc% $(+postinit),$^) \
-- $(link-extra-libs) $(link-libc) $(+postctor) $(+postinit)
-+ $(link-extra-libs)
-++link-after-libc = $(+postctor) $(+postinit)
-++link = $(+link-before-libc) $(link-libc) $(+link-after-libc)
-++link-tests = $(+link-before-libc) $(link-libc-tests) $(+link-after-libc)
- endif
- # Command for linking PIE programs with the C library.
- ifndef +link-pie
-@@ -457,7 +460,7 @@
- endif
- # Command for statically linking programs with the C library.
- ifndef +link-static
--+link-static = $(CC) -nostdlib -nostartfiles -static -o $@ \
-++link-static-before-libc = $(CC) -nostdlib -nostartfiles -static -o $@ \
- $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
- $(addprefix $(csu-objpfx),$(static-start-installed-name)) \
- $(+preinit) $(+prector) \
-@@ -465,7 +468,12 @@
- $(start-installed-name))\
- $(+preinit) $(link-extra-libs-static) \
- $(common-objpfx)libc% $(+postinit),$^) \
-- $(link-extra-libs-static) $(link-libc-static) $(+postctor) $(+postinit)
-+ $(link-extra-libs-static) $(link-libc-static)
-++link-static-after-libc = $(+postctor) $(+postinit)
-++link-static = $(+link-static-before-libc) $(link-libc-static) \
-+ $(+link-static-after-libc)
-++link-static-tests = $(+link-static-before-libc) $(link-libc-static-tests) \
-+ $(+link-static-after-libc)
- endif
- # Command for statically linking bounded-pointer programs with the C library.
- ifndef +link-bounded
-@@ -490,10 +498,12 @@
- # We need the versioned name of libc.so in the deps of $(others) et al
- # so that the symlink to libc.so is created before anything tries to
- # run the linked programs.
--link-libc = -Wl,-rpath-link=$(rpath-link) \
-+link-libc-before-gnulib = -Wl,-rpath-link=$(rpath-link) \
- $(common-objpfx)libc.so$(libc.so-version) \
- $(common-objpfx)$(patsubst %,$(libtype.oS),c) \
-- $(as-needed) $(common-objpfx)elf/ld.so $(no-as-needed) $(gnulib)
-+ $(as-needed) $(common-objpfx)elf/ld.so $(no-as-needed)
-+link-libc = $(link-libc-before-gnulib) $(gnulib)
-+link-libc-tests = $(link-libc-before-gnulib) $(gnulib-tests)
- # This is how to find at build-time things that will be installed there.
- rpath-dirs = math elf dlfcn nss nis rt resolv crypt
- endif
-@@ -504,6 +514,7 @@
- nssobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)nss)
- resolvobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)resolv)
- link-libc = $(common-objpfx)libc.a $(otherlibs) $(gnulib) $(common-objpfx)libc.a $(gnulib)
-+link-libc-tests = $(common-objpfx)libc.a $(otherlibs) $(gnulib-tests) $(common-objpfx)libc.a $(gnulib-tests)
- endif
- endif
-
-@@ -532,14 +543,50 @@
- # The static libraries.
- ifeq (yes,$(build-static))
- link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(otherlibs) $(common-objpfx)libc.a
-+link-libc-static-tests = $(common-objpfx)libc.a $(static-gnulib-tests) $(otherlibs) $(common-objpfx)libc.a
- else
- ifeq (yes,$(build-shared))
- # We can try to link the programs with lib*_pic.a...
- link-libc-static = $(static-gnulib) $(common-objpfx)libc_pic.a
-+link-libc-static-tests = $(static-gnulib-tests) $(common-objpfx)libc_pic.a
- endif
- endif
- link-libc-bounded = $(common-objpfx)libc_b.a $(gnulib) $(common-objpfx)libc_b.a
-
-+# How to link against libgcc. Some libgcc functions, such as those
-+# for "long long" arithmetic or software floating point, can always be
-+# built without use of C library headers and do not have any global
-+# state so can safely be linked statically into any executable or
-+# shared library requiring them; these functions are in libgcc.a.
-+# Other functions, relating to exception handling, may require C
-+# library headers to build and it may not be safe to have more than
-+# one copy of them in a process; these functions are only in
-+# libgcc_s.so and libgcc_eh.a.
-+#
-+# To avoid circular dependencies when bootstrapping, it is desirable
-+# to avoid use of libgcc_s and libgcc_eh in building glibc. Where any
-+# glibc functionality (in particular, thread cancellation) requires
-+# exception handling, this is implemented through dlopen of libgcc_s
-+# to avoid unnecessary dependencies on libgcc_s by programs not using
-+# that functionality; executables built with glibc do not use
-+# exception handling other than through thread cancellation.
-+#
-+# Undefined references to functions from libgcc_eh or libgcc_s may
-+# arise for code built with -fexceptions. In the case of statically
-+# linked programs installed by glibc, unwinding will never actually
-+# occur at runtime and the use of elf/static-stubs.c to resolve these
-+# references is safe. In the case of statically linked test programs
-+# and test programs built with -fexceptions, unwinding may occur in
-+# some cases and it is preferable to link with libgcc_eh or libgcc_s
-+# so that the testing is as similar as possible to how programs will
-+# be built with the installed glibc.
-+#
-+# Some architectures have architecture-specific systems for exception
-+# handling that may involve undefined references to
-+# architecture-specific functions. On those architectures,
-+# gnulib-arch and static-gnulib-arch may be defined in sysdeps
-+# makefiles to use additional libraries for linking executables and
-+# shared libraries built by glibc.
- ifndef gnulib
- ifneq ($(have-cc-with-libunwind),yes)
- libunwind =
-@@ -551,8 +598,12 @@
- else
- libgcc_eh := -Wl,--as-needed -lgcc_s$(libgcc_s_suffix) $(libunwind) -Wl,--no-as-needed
- endif
--gnulib := -lgcc $(libgcc_eh)
--static-gnulib := -lgcc -lgcc_eh $(libunwind)
-+gnulib-arch =
-+gnulib = -lgcc $(gnulib-arch)
-+gnulib-tests := -lgcc $(libgcc_eh)
-+static-gnulib-arch =
-+static-gnulib = -lgcc $(static-gnulib-arch)
-+static-gnulib-tests := -lgcc -lgcc_eh $(libunwind)
- libc.so-gnulib := -lgcc
- endif
- ifeq ($(elf),yes)
---- a/Rules
-+++ b/Rules
-@@ -104,29 +104,52 @@
- endif
-
- ifeq ($(build-programs),yes)
--binaries-all = $(others) $(sysdep-others) $(tests) $(xtests) $(test-srcs)
--binaries-static = $(others-static) $(tests-static) $(xtests-static)
-+binaries-all-notests = $(others) $(sysdep-others)
-+binaries-all-tests = $(tests) $(xtests) $(test-srcs)
-+binaries-all = $(binaries-all-notests) $(binaries-all-tests)
-+binaries-static-notests = $(others-static)
-+binaries-static-tests = $(tests-static) $(xtests-static)
-+binaries-static = $(binaries-static-notests) $(binaries-static-tests)
- else
--binaries-all = $(tests) $(xtests) $(test-srcs)
-+binaries-all-notests =
-+binaries-all-tests = $(tests) $(xtests) $(test-srcs)
-+binaries-all = $(binaries-all-tests)
-+binaries-static-notests =
-+binaries-static-tests =
- binaries-static =
- endif
-
--binaries-shared = $(filter-out $(binaries-static), $(binaries-all))
-+binaries-shared-tests = $(filter-out $(binaries-static), $(binaries-all-tests))
-+binaries-shared-notests = $(filter-out $(binaries-static), $(binaries-all-notests))
-
--ifneq "$(strip $(binaries-shared))" ""
--$(addprefix $(objpfx),$(binaries-shared)): %: %.o \
-+ifneq "$(strip $(binaries-shared-notests))" ""
-+$(addprefix $(objpfx),$(binaries-shared-notests)): %: %.o \
- $(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
- $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
- $(+link)
- endif
-
--ifneq "$(strip $(binaries-static))" ""
--$(addprefix $(objpfx),$(binaries-static)): %: %.o \
-+ifneq "$(strip $(binaries-shared-tests))" ""
-+$(addprefix $(objpfx),$(binaries-shared-tests)): %: %.o \
-+ $(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
-+ $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
-+ $(+link-tests)
-+endif
-+
-+ifneq "$(strip $(binaries-static-notests))" ""
-+$(addprefix $(objpfx),$(binaries-static-notests)): %: %.o \
- $(sort $(filter $(common-objpfx)lib%,$(link-libc-static))) \
- $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
- $(+link-static)
- endif
-
-+ifneq "$(strip $(binaries-static-tests))" ""
-+$(addprefix $(objpfx),$(binaries-static-tests)): %: %.o \
-+ $(sort $(filter $(common-objpfx)lib%,$(link-libc-static-tests))) \
-+ $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
-+ $(+link-static-tests)
-+endif
-+
- ifeq ($(build-bounded),yes)
- binaries-bounded = $(addsuffix -bp,$(tests) $(xtests) $(test-srcs))
- $(addprefix $(objpfx),$(binaries-bounded)): %-bp: %.ob \
---- a/elf/Makefile
-+++ b/elf/Makefile
-@@ -157,6 +157,8 @@
- install-bin = sprof
- others-static = sln
- install-rootsbin = sln
-+sln-modules := static-stubs
-+extra-objs += $(sln-modules:=.o)
-
- ifeq (yes,$(use-ldconfig))
- ifeq (yes,$(build-shared))
-@@ -164,7 +166,7 @@
- others += ldconfig
- install-rootsbin += ldconfig
-
--ldconfig-modules := cache readlib xmalloc xstrdup chroot_canon
-+ldconfig-modules := cache readlib xmalloc xstrdup chroot_canon static-stubs
- extra-objs += $(ldconfig-modules:=.o)
-
- # To find xmalloc.c and xstrdup.c
-@@ -455,6 +457,8 @@
-
- $(objpfx)sprof: $(libdl)
-
-+$(objpfx)sln: $(sln-modules:%=$(objpfx)%.o)
-+
- $(objpfx)ldconfig: $(ldconfig-modules:%=$(objpfx)%.o)
- SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"'
- CFLAGS-ldconfig.c = $(SYSCONF-FLAGS) -D'LIBDIR="$(libdir)"' \
---- /dev/null
-+++ b/elf/static-stubs.c
-@@ -0,0 +1,46 @@
-+/* Stub implementations of functions to link into statically linked
-+ programs without needing libgcc_eh.
-+ Copyright (C) 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
-+ 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
-+ <http://www.gnu.org/licenses/>. */
-+
-+/* Avoid backtrace (and so _Unwind_Backtrace) dependencies from
-+ sysdeps/unix/sysv/linux/libc_fatal.c. */
-+#include <sysdeps/posix/libc_fatal.c>
-+
-+#include <stdlib.h>
-+#include <unwind.h>
-+
-+/* These programs do not use thread cancellation, so _Unwind_Resume
-+ and the personality routine are never actually called. */
-+
-+void
-+_Unwind_Resume (struct _Unwind_Exception *exc __attribute__ ((unused)))
-+{
-+ abort ();
-+}
-+
-+_Unwind_Reason_Code
-+__gcc_personality_v0 (int version __attribute__ ((unused)),
-+ _Unwind_Action actions __attribute__ ((unused)),
-+ _Unwind_Exception_Class exception_class
-+ __attribute__ ((unused)),
-+ struct _Unwind_Exception *ue_header
-+ __attribute__ ((unused)),
-+ struct _Unwind_Context *context __attribute__ ((unused)))
-+{
-+ abort ();
-+}
diff --git a/packages/glibc/2.12.1/chksum b/packages/glibc/2.12.1/chksum
deleted file mode 100644
index 3be4a1a4..00000000
--- a/packages/glibc/2.12.1/chksum
+++ /dev/null
@@ -1,12 +0,0 @@
-md5 glibc-2.12.1.tar.xz 4802b783766b5b487c601a19b5ce35f1
-sha1 glibc-2.12.1.tar.xz c278d7f163b302f783e47f0d3287c85cf5f00c62
-sha256 glibc-2.12.1.tar.xz 9e633fb278b411a90636cc1c4bf1ffddcc8b0d214f5bacd74bfcdaac81d6035e
-sha512 glibc-2.12.1.tar.xz f374c2f277052ae5b426a97e0d19a896582a61ddad17a5e1cafcff6ad5b19624cf104c20267d9a54c565177c5517c232c6088001978c642c3c21f3fab6d555a0
-md5 glibc-2.12.1.tar.bz2 be0ea9e587f08c87604fe10a91f72afd
-sha1 glibc-2.12.1.tar.bz2 ef5ca1e765719d3290bd24f94705f27534f3744b
-sha256 glibc-2.12.1.tar.bz2 759f115c52bc12c5bb453af559dcd456d32138250b7cc96e47804e3d0ec97407
-sha512 glibc-2.12.1.tar.bz2 e01eaf0c93b20549e159adf7e838458216245c6781d225de908804b275a967712d4f4dfe5b5aefc3e16b75a8593f2aba2f7bc287c89a6c39c9e929cd228766d1
-md5 glibc-2.12.1.tar.gz a8e77cd873125d9b46ca2e46ee1a13d0
-sha1 glibc-2.12.1.tar.gz 9e252bad90b7a19256e578acf0f4ab1ff40b9fb9
-sha256 glibc-2.12.1.tar.gz 5ae2edf67169aac932a281cbe636f8be42a854cc3d8b7f325c53b949eab72d48
-sha512 glibc-2.12.1.tar.gz 6be9cd92515801f4f3694676b4c0c690b8031e74a6f233a42dfac5d8aaaddb6f2cbe78d7a9f81d97f58eb5144b56d1f655e33c6f94f5d7b5404fc5a12de8a8cc
diff --git a/packages/glibc/2.12.1/version.desc b/packages/glibc/2.12.1/version.desc
deleted file mode 100644
index fcfe3891..00000000
--- a/packages/glibc/2.12.1/version.desc
+++ /dev/null
@@ -1 +0,0 @@
-obsolete='yes'