summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Huddleston <eradicator@gentoo.org>2005-07-14 07:39:49 +0000
committerJeremy Huddleston <eradicator@gentoo.org>2005-07-14 07:39:49 +0000
commitf59a3b179981d283e994290e5daefb8cebf59156 (patch)
tree8e390f3b07b3830d288ecd618905c21d59dd1df2 /sys-libs/glibc/files/2.2.5
parentKeyworded ~mips (diff)
downloadhistorical-f59a3b179981d283e994290e5daefb8cebf59156.tar.gz
historical-f59a3b179981d283e994290e5daefb8cebf59156.tar.bz2
historical-f59a3b179981d283e994290e5daefb8cebf59156.zip
Cleaning out some old cruft.
Package-Manager: portage-2.0.51.22-r1
Diffstat (limited to 'sys-libs/glibc/files/2.2.5')
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-alpha-gcc3-fix.diff11
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-alpha-pcdyn-fix.diff19
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-arm-errlist-fix.diff51
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-arm-sysdeps-fix.diff13
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-divdi3.diff407
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-dns-network-overflow.diff13
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-gcc311.patch12
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-getgrouplist.patch29
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-ppc-semctl.diff56
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-ppc-sqrtl.diff19
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-sandbox.diff11
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc-mathinline.patch30
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc-misc.diff339
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc32-semctl.patch209
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc64-fixups.diff46
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-sunrpc-overflow.diff88
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5-threadsig.diff17
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5.divbyzero.patch33
-rw-r--r--sys-libs/glibc/files/2.2.5/glibc-2.2.5.restrict_arr.patch22
19 files changed, 0 insertions, 1425 deletions
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-alpha-gcc3-fix.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-alpha-gcc3-fix.diff
deleted file mode 100644
index f51c7e32efcf..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-alpha-gcc3-fix.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- glibc-2.2.5/linuxthreads/sysdeps/alpha/pt-machine.h Mon Jul 23 17:52:42 2001
-+++ glibc-2.2.5-alpha-gcc3-fix/linuxthreads/sysdeps/alpha/pt-machine.h Sat Sep 7 14:58:23 2002
-@@ -71,7 +71,7 @@
- #define THREAD_SELF \
- ({ \
- register pthread_descr __self __asm__("$0"); \
-- __asm__ ("call_pal %1" : "=r"(__self) : "i"(PAL_rduniq) : "$0"); \
-+ __asm__ ("call_pal %1" : "=r"(__self) : "i"(PAL_rduniq)); \
- __self; \
- })
-
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-alpha-pcdyn-fix.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-alpha-pcdyn-fix.diff
deleted file mode 100644
index ce51ee3fc892..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-alpha-pcdyn-fix.diff
+++ /dev/null
@@ -1,19 +0,0 @@
---- glibc-2.2.5/sysdeps/alpha/divrem.h Fri Jul 6 06:55:45 2001
-+++ glibc-2.2.5-alpha/sysdeps/alpha/divrem.h Fri Sep 6 17:32:35 2002
-@@ -86,6 +86,7 @@
-
- .align 3
- UFUNC_NAME:
-+$udiv_entry:
- lda sp, -STACK(sp)
- .frame sp, STACK, retaddr, 0
- #ifdef PROF
-@@ -206,7 +207,7 @@
- cmovge AT, AT, arg2
-
- /* Do the unsigned division. */
-- bsr retaddr, UFUNC_NAME
-+ bsr retaddr, $udiv_entry
-
- /* Restore originals and adjust the sign of the result. */
- ldq arg1, 0(sp)
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-arm-errlist-fix.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-arm-errlist-fix.diff
deleted file mode 100644
index 90799ae65cd9..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-arm-errlist-fix.diff
+++ /dev/null
@@ -1,51 +0,0 @@
-2002-07-22 Philip Blundell <philb@gnu.org>
-
- * sysdeps/unix/sysv/linux/arm/errlist.c: Remove extra weak alias
- definiton of _old_sys_nerr. Define _old_sys_errlist as strong
- alias.
-
-2002-05-19 Ulrich Drepper <drepper@redhat.com>
-
- * sysdeps/unix/sysv/linux/errlist.c: Remove extra weak alias
- definiton of _old_sys_nerr. Define _old_sys_errlist as strong
- alias.
-
---- sysdeps/unix/sysv/linux/errlist.c 6 Jul 2001 04:56:12 -0000 1.8
-+++ sysdeps/unix/sysv/linux/errlist.c 3 Jun 2002 06:49:30 -0000 1.8.2.1
-@@ -1,4 +1,4 @@
--/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
-+/* Copyright (C) 1998, 2000, 2002 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
-@@ -41,7 +41,7 @@
- strong_alias (__old_sys_nerr, _old_sys_nerr);
- compat_symbol (libc, __old_sys_nerr, _sys_nerr, GLIBC_2_0);
- compat_symbol (libc, _old_sys_nerr, sys_nerr, GLIBC_2_0);
--weak_alias (__old_sys_errlist, _old_sys_errlist);
-+strong_alias (__old_sys_errlist, _old_sys_errlist);
- compat_symbol (libc, __old_sys_errlist, _sys_errlist, GLIBC_2_0);
- compat_symbol (libc, _old_sys_errlist, sys_errlist, GLIBC_2_0);
- #endif
-
---- sysdeps/unix/sysv/linux/arm/errlist.c 6 Jul 2001 04:56:13 -0000 1.4
-+++ sysdeps/unix/sysv/linux/arm/errlist.c 24 Jul 2002 11:17:01 -0000 1.5
-@@ -1,4 +1,4 @@
--/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
-+/* Copyright (C) 1998, 2000, 2002 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
-@@ -38,10 +38,9 @@ extern const char *const *__old_sys_errl
- const int __old_sys_nerr = OLD_ERRLIST_SIZE;
-
- strong_alias (__old_sys_nerr, _old_sys_nerr);
--weak_alias (__old_sys_nerr, _old_sys_nerr)
- compat_symbol (libc, __old_sys_nerr, _sys_nerr, GLIBC_2_0);
- compat_symbol (libc, _old_sys_nerr, sys_nerr, GLIBC_2_0);
--weak_alias (__old_sys_errlist, _old_sys_errlist);
-+strong_alias (__old_sys_errlist, _old_sys_errlist);
- compat_symbol (libc, __old_sys_errlist, _sys_errlist, GLIBC_2_0);
- compat_symbol (libc, _old_sys_errlist, sys_errlist, GLIBC_2_0);
- #endif
-
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-arm-sysdeps-fix.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-arm-sysdeps-fix.diff
deleted file mode 100644
index 42b398ee83d8..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-arm-sysdeps-fix.diff
+++ /dev/null
@@ -1,13 +0,0 @@
---- sysdeps/unix/sysv/linux/configure.orig Mon Sep 23 21:31:29 2002
-+++ sysdeps/unix/sysv/linux/configure Mon Sep 23 21:30:09 2002
-@@ -60,6 +60,10 @@
- libc_cv_gcc_unwind_find_fde=yes
- arch_minimum_kernel=2.0.10
- ;;
-+ arm*)
-+ arch_minimum_kernel=2.4.0
-+ libc_cv_gcc_unwind_find_fde=yes
-+ ;;
- ia64*)
- arch_minimum_kernel=2.4.0
- ;;
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-divdi3.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-divdi3.diff
deleted file mode 100644
index 084e26fa4a19..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-divdi3.diff
+++ /dev/null
@@ -1,407 +0,0 @@
---- libc/sysdeps/i386/Makefile.jj Fri Sep 17 18:59:13 1999
-+++ libc/sysdeps/i386/Makefile Thu Feb 28 19:04:03 2002
-@@ -9,6 +9,12 @@ ifeq ($(subdir),csu)
- # On i686 we must avoid generating the trampoline functions generated
- # to get the GOT pointer.
- CFLAGS-initfini.s += -march=i386 -mcpu=i386
-+
-+ifeq (yes,$(build-shared))
-+# Compatibility
-+sysdep_routines += divdi3
-+shared-only-routines += divdi3
-+endif
- endif
-
- ifeq ($(subdir),db2)
---- libc/sysdeps/m68k/Makefile.jj Thu Aug 23 18:49:59 2001
-+++ libc/sysdeps/m68k/Makefile Thu Feb 28 19:04:29 2002
-@@ -33,6 +33,14 @@ CFLAGS-setjmp.c := -fno-omit-frame-point
- # The 68k `long double' is a distinct type we support.
- long-double-fcts = yes
-
-+ifeq ($(subdir),csu)
-+ifeq (yes,$(build-shared))
-+# Compatibility
-+sysdep_routines += divdi3
-+shared-only-routines += divdi3
-+endif
-+endif
-+
- ifeq ($(subdir),elf)
- CFLAGS-rtld.c += -Wno-uninitialized -Wno-unused
- endif
---- libc/sysdeps/s390/s390-32/Makefile.jj Fri Mar 16 09:59:44 2001
-+++ libc/sysdeps/s390/s390-32/Makefile Thu Feb 28 19:04:44 2002
-@@ -1,5 +1,13 @@
- pic-ccflag = -fpic
-
-+ifeq ($(subdir),csu)
-+ifeq (yes,$(build-shared))
-+# Compatibility
-+sysdep_routines += divdi3
-+shared-only-routines += divdi3
-+endif
-+endif
-+
- ifeq ($(subdir),gmon)
- sysdep_routines += s390-mcount
- endif
---- libc/sysdeps/powerpc/Makefile.orig 2000-11-27 17:32:47.000000000 -0600
-+++ libc/sysdeps/powerpc/Makefile 2002-10-02 20:43:26.000000000 -0500
-@@ -24,6 +24,13 @@
- endif
-
- ifeq ($(subdir),csu)
-+
-+ifeq (yes,$(build-shared))
-+# Compatibility
-+sysdep_routines += divdi3
-+shared-only-routines += divdi3
-+endif
-+
- ifneq ($(elf),no)
- # The initfini generation code doesn't work in the presence of -fPIC, so
- # we use -fpic instead which is much better.
---- libc/sysdeps/powerpc/Versions.orig 2000-02-28 15:27:57.000000000 -0600
-+++ libc/sysdeps/powerpc/Versions 2002-10-02 20:43:20.000000000 -0500
-@@ -1,3 +1,10 @@
-+libc {
-+ GLIBC_2.0 {
-+ # Functions from libgcc.
-+ __divdi3; __moddi3; __udivdi3; __umoddi3;
-+ }
-+}
-+
- libm {
- GLIBC_2.1 {
- # symbols used in macros from sysdeps/powerpc/bits/fenv.h
---- libc/sysdeps/wordsize-32/divdi3.c.jj Thu Feb 28 18:53:16 2002
-+++ libc/sysdeps/wordsize-32/divdi3.c Thu Feb 28 19:02:18 2002
-@@ -0,0 +1,327 @@
-+/* 64-bit multiplication and division
-+ Copyright (C) 1989, 1992-1999, 2000, 2001, 2002
-+ 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 <endian.h>
-+#include <stdlib.h>
-+#include <bits/wordsize.h>
-+
-+#if __WORDSIZE != 32
-+#error This is for 32-bit targets only
-+#endif
-+
-+typedef unsigned int UQItype __attribute__ ((mode (QI)));
-+typedef int SItype __attribute__ ((mode (SI)));
-+typedef unsigned int USItype __attribute__ ((mode (SI)));
-+typedef int DItype __attribute__ ((mode (DI)));
-+typedef unsigned int UDItype __attribute__ ((mode (DI)));
-+#define Wtype SItype
-+#define HWtype SItype
-+#define DWtype DItype
-+#define UWtype USItype
-+#define UHWtype USItype
-+#define UDWtype UDItype
-+#define W_TYPE_SIZE 32
-+
-+#include <stdlib/longlong.h>
-+
-+#if __BYTE_ORDER == __BIG_ENDIAN
-+struct DWstruct { Wtype high, low;};
-+#elif __BYTE_ORDER == __LITTLE_ENDIAN
-+struct DWstruct { Wtype low, high;};
-+#else
-+#error Unhandled endianity
-+#endif
-+typedef union { struct DWstruct s; DWtype ll; } DWunion;
-+
-+static UDWtype
-+__udivmoddi4 (UDWtype n, UDWtype d, UDWtype *rp)
-+{
-+ DWunion ww;
-+ DWunion nn, dd;
-+ DWunion rr;
-+ UWtype d0, d1, n0, n1, n2;
-+ UWtype q0, q1;
-+ UWtype b, bm;
-+
-+ nn.ll = n;
-+ dd.ll = d;
-+
-+ d0 = dd.s.low;
-+ d1 = dd.s.high;
-+ n0 = nn.s.low;
-+ n1 = nn.s.high;
-+
-+#if !UDIV_NEEDS_NORMALIZATION
-+ if (d1 == 0)
-+ {
-+ if (d0 > n1)
-+ {
-+ /* 0q = nn / 0D */
-+
-+ udiv_qrnnd (q0, n0, n1, n0, d0);
-+ q1 = 0;
-+
-+ /* Remainder in n0. */
-+ }
-+ else
-+ {
-+ /* qq = NN / 0d */
-+
-+ if (d0 == 0)
-+ d0 = 1 / d0; /* Divide intentionally by zero. */
-+
-+ udiv_qrnnd (q1, n1, 0, n1, d0);
-+ udiv_qrnnd (q0, n0, n1, n0, d0);
-+
-+ /* Remainder in n0. */
-+ }
-+
-+ if (rp != 0)
-+ {
-+ rr.s.low = n0;
-+ rr.s.high = 0;
-+ *rp = rr.ll;
-+ }
-+ }
-+
-+#else /* UDIV_NEEDS_NORMALIZATION */
-+
-+ if (d1 == 0)
-+ {
-+ if (d0 > n1)
-+ {
-+ /* 0q = nn / 0D */
-+
-+ count_leading_zeros (bm, d0);
-+
-+ if (bm != 0)
-+ {
-+ /* Normalize, i.e. make the most significant bit of the
-+ denominator set. */
-+
-+ d0 = d0 << bm;
-+ n1 = (n1 << bm) | (n0 >> (W_TYPE_SIZE - bm));
-+ n0 = n0 << bm;
-+ }
-+
-+ udiv_qrnnd (q0, n0, n1, n0, d0);
-+ q1 = 0;
-+
-+ /* Remainder in n0 >> bm. */
-+ }
-+ else
-+ {
-+ /* qq = NN / 0d */
-+
-+ if (d0 == 0)
-+ d0 = 1 / d0; /* Divide intentionally by zero. */
-+
-+ count_leading_zeros (bm, d0);
-+
-+ if (bm == 0)
-+ {
-+ /* From (n1 >= d0) /\ (the most significant bit of d0 is set),
-+ conclude (the most significant bit of n1 is set) /\ (the
-+ leading quotient digit q1 = 1).
-+
-+ This special case is necessary, not an optimization.
-+ (Shifts counts of W_TYPE_SIZE are undefined.) */
-+
-+ n1 -= d0;
-+ q1 = 1;
-+ }
-+ else
-+ {
-+ /* Normalize. */
-+
-+ b = W_TYPE_SIZE - bm;
-+
-+ d0 = d0 << bm;
-+ n2 = n1 >> b;
-+ n1 = (n1 << bm) | (n0 >> b);
-+ n0 = n0 << bm;
-+
-+ udiv_qrnnd (q1, n1, n2, n1, d0);
-+ }
-+
-+ /* n1 != d0... */
-+
-+ udiv_qrnnd (q0, n0, n1, n0, d0);
-+
-+ /* Remainder in n0 >> bm. */
-+ }
-+
-+ if (rp != 0)
-+ {
-+ rr.s.low = n0 >> bm;
-+ rr.s.high = 0;
-+ *rp = rr.ll;
-+ }
-+ }
-+#endif /* UDIV_NEEDS_NORMALIZATION */
-+
-+ else
-+ {
-+ if (d1 > n1)
-+ {
-+ /* 00 = nn / DD */
-+
-+ q0 = 0;
-+ q1 = 0;
-+
-+ /* Remainder in n1n0. */
-+ if (rp != 0)
-+ {
-+ rr.s.low = n0;
-+ rr.s.high = n1;
-+ *rp = rr.ll;
-+ }
-+ }
-+ else
-+ {
-+ /* 0q = NN / dd */
-+
-+ count_leading_zeros (bm, d1);
-+ if (bm == 0)
-+ {
-+ /* From (n1 >= d1) /\ (the most significant bit of d1 is set),
-+ conclude (the most significant bit of n1 is set) /\ (the
-+ quotient digit q0 = 0 or 1).
-+
-+ This special case is necessary, not an optimization. */
-+
-+ /* The condition on the next line takes advantage of that
-+ n1 >= d1 (true due to program flow). */
-+ if (n1 > d1 || n0 >= d0)
-+ {
-+ q0 = 1;
-+ sub_ddmmss (n1, n0, n1, n0, d1, d0);
-+ }
-+ else
-+ q0 = 0;
-+
-+ q1 = 0;
-+
-+ if (rp != 0)
-+ {
-+ rr.s.low = n0;
-+ rr.s.high = n1;
-+ *rp = rr.ll;
-+ }
-+ }
-+ else
-+ {
-+ UWtype m1, m0;
-+ /* Normalize. */
-+
-+ b = W_TYPE_SIZE - bm;
-+
-+ d1 = (d1 << bm) | (d0 >> b);
-+ d0 = d0 << bm;
-+ n2 = n1 >> b;
-+ n1 = (n1 << bm) | (n0 >> b);
-+ n0 = n0 << bm;
-+
-+ udiv_qrnnd (q0, n1, n2, n1, d1);
-+ umul_ppmm (m1, m0, q0, d0);
-+
-+ if (m1 > n1 || (m1 == n1 && m0 > n0))
-+ {
-+ q0--;
-+ sub_ddmmss (m1, m0, m1, m0, d1, d0);
-+ }
-+
-+ q1 = 0;
-+
-+ /* Remainder in (n1n0 - m1m0) >> bm. */
-+ if (rp != 0)
-+ {
-+ sub_ddmmss (n1, n0, n1, n0, m1, m0);
-+ rr.s.low = (n1 << b) | (n0 >> bm);
-+ rr.s.high = n1 >> bm;
-+ *rp = rr.ll;
-+ }
-+ }
-+ }
-+ }
-+
-+ ww.s.low = q0;
-+ ww.s.high = q1;
-+ return ww.ll;
-+}
-+
-+DWtype
-+__divdi3 (DWtype u, DWtype v)
-+{
-+ Wtype c = 0;
-+ DWtype w;
-+
-+ if (u < 0)
-+ {
-+ c = ~c;
-+ u = -u;
-+ }
-+ if (v < 0)
-+ {
-+ c = ~c;
-+ v = -v;
-+ }
-+ w = __udivmoddi4 (u, v, NULL);
-+ if (c)
-+ w = -w;
-+ return w;
-+}
-+
-+DWtype
-+__moddi3 (DWtype u, DWtype v)
-+{
-+ Wtype c = 0;
-+ DWtype w;
-+
-+ if (u < 0)
-+ {
-+ c = ~c;
-+ u = -u;
-+ }
-+ if (v < 0)
-+ {
-+ c = ~c;
-+ v = -v;
-+ }
-+ __udivmoddi4 (u, v, &w);
-+ if (c)
-+ w = -w;
-+ return w;
-+}
-+
-+UDWtype
-+__udivdi3 (UDWtype u, UDWtype v)
-+{
-+ return __udivmoddi4 (u, v, NULL);
-+}
-+
-+UDWtype
-+__umoddi3 (UDWtype u, UDWtype v)
-+{
-+ UDWtype w;
-+
-+ __udivmoddi4 (u, v, &w);
-+ return w;
-+}
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-dns-network-overflow.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-dns-network-overflow.diff
deleted file mode 100644
index 5704c8a6259d..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-dns-network-overflow.diff
+++ /dev/null
@@ -1,13 +0,0 @@
---- libc/resolv/nss_dns/dns-network.c Fri Jul 12 10:18:13 2002
-+++ libc/resolv/nss_dns/dns-network.c Fri Jul 12 10:20:10 2002
-@@ -328,7 +328,9 @@
- }
- cp += n;
- *alias_pointer++ = bp;
-- bp += strlen (bp) + 1;
-+ n = strlen (bp) + 1;
-+ bp += n;
-+ linebuflen -= n;
- result->n_addrtype = class == C_IN ? AF_INET : AF_UNSPEC;
- ++have_answer;
- }
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-gcc311.patch b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-gcc311.patch
deleted file mode 100644
index 04fb23de1e44..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-gcc311.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- glibc-2.2.5/sysdeps/unix/sysv/linux/errlist.c Fri Jul 5 22:35:57 2002
-+++ glibc-2.2.5.azarah/sysdeps/unix/sysv/linux/errlist.c Fri Jul 5 22:41:51 2002
-@@ -37,8 +37,8 @@
-
- const int __old_sys_nerr = OLD_ERRLIST_SIZE;
-
--strong_alias (__old_sys_nerr, _old_sys_nerr);
- weak_alias (__old_sys_nerr, _old_sys_nerr)
-+strong_alias (__old_sys_nerr, _old_sys_nerr);
- compat_symbol (libc, __old_sys_nerr, _sys_nerr, GLIBC_2_0);
- compat_symbol (libc, _old_sys_nerr, sys_nerr, GLIBC_2_0);
- weak_alias (__old_sys_errlist, _old_sys_errlist);
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-getgrouplist.patch b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-getgrouplist.patch
deleted file mode 100644
index e8544ece803d..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-getgrouplist.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- glibc-2.2.5/grp/initgroups.c.orig 2003-11-13 13:03:29.620138976 -0500
-+++ glibc-2.2.5/grp/initgroups.c 2003-11-13 13:05:03.693837600 -0500
-@@ -23,6 +23,7 @@
- #include <stdlib.h>
- #include <string.h>
- #include <unistd.h>
-+#include <sys/param.h>
- #include <sys/types.h>
- #include <nsswitch.h>
-
-@@ -207,6 +208,9 @@
- return -1;
-
- result = internal_getgrouplist (user, group, &size, &newgroups, -1);
-+
-+ memcpy (groups, newgroups, MIN (*ngroups, result) * sizeof (gid_t));
-+
- if (result > *ngroups)
- {
- *ngroups = result;
-@@ -214,8 +218,6 @@
- }
- else
- *ngroups = result;
--
-- memcpy (groups, newgroups, *ngroups * sizeof (gid_t));
-
- free (newgroups);
- return result;
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-ppc-semctl.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-ppc-semctl.diff
deleted file mode 100644
index 3e42db95b972..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-ppc-semctl.diff
+++ /dev/null
@@ -1,56 +0,0 @@
---- sysdeps/unix/sysv/linux/semctl.c 6 Jul 2001 04:56:13 -0000 1.12
-+++ sysdeps/unix/sysv/linux/semctl.c 28 Apr 2002 21:03:16 -0000
-@@ -69,8 +69,23 @@ __old_semctl (int semid, int semnum, int
-
- va_start (ap, cmd);
-
-- /* Get the argument. */
-- arg = va_arg (ap, union semun);
-+ /* Get the argument only if required. */
-+ arg.buf = NULL;
-+ switch (cmd)
-+ {
-+ case SETVAL: /* arg.val */
-+ case GETALL: /* arg.array */
-+ case SETALL:
-+ case IPC_STAT: /* arg.buf */
-+ case IPC_SET:
-+ case SEM_STAT:
-+ case IPC_INFO: /* arg.__buf */
-+ case SEM_INFO:
-+ va_start (ap, cmd);
-+ arg = va_arg (ap, union semun);
-+ va_end (ap);
-+ break;
-+ }
-
- va_end (ap);
-
-@@ -88,8 +103,23 @@ __new_semctl (int semid, int semnum, int
-
- va_start (ap, cmd);
-
-- /* Get the argument. */
-- arg = va_arg (ap, union semun);
-+ /* Get the argument only if required. */
-+ arg.buf = NULL;
-+ switch (cmd)
-+ {
-+ case SETVAL: /* arg.val */
-+ case GETALL: /* arg.array */
-+ case SETALL:
-+ case IPC_STAT: /* arg.buf */
-+ case IPC_SET:
-+ case SEM_STAT:
-+ case IPC_INFO: /* arg.__buf */
-+ case SEM_INFO:
-+ va_start (ap, cmd);
-+ arg = va_arg (ap, union semun);
-+ va_end (ap);
-+ break;
-+ }
-
- va_end (ap);
-
-
-
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-ppc-sqrtl.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-ppc-sqrtl.diff
deleted file mode 100644
index ed8c3b40550a..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-ppc-sqrtl.diff
+++ /dev/null
@@ -1,19 +0,0 @@
---- sysdeps/powerpc/fpu/w_sqrt.c 6 Jul 2001 04:56:02 -0000 1.2
-+++ sysdeps/powerpc/fpu/w_sqrt.c 10 May 2002 08:40:46 -0000
-@@ -1,5 +1,5 @@
- /* Single-precision floating point square root.
-- Copyright (C) 1997 Free Software Foundation, Inc.
-+ Copyright (C) 1997, 2002 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
-@@ -139,3 +139,8 @@ weak_alias (__sqrt, sqrt)
- /* Strictly, this is wrong, but the only places where _ieee754_sqrt is
- used will not pass in a negative result. */
- strong_alias(__sqrt,__ieee754_sqrt)
-+
-+#ifdef NO_LONG_DOUBLE
-+weak_alias (__sqrt, __sqrtl)
-+weak_alias (__sqrt, sqrtl)
-+#endif
-
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sandbox.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sandbox.diff
deleted file mode 100644
index a963a5f8831e..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sandbox.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- libc/elf/do-lookup.h 2001/08/26 22:24:08 1.16
-+++ libc/elf/do-lookup.h 2002/04/03 04:03:39 1.16.2.1
-@@ -128,7 +128,7 @@
- if (verstab != NULL)
- {
- ElfW(Half) ndx = verstab[symidx] & 0x7fff;
-- if (ndx > 2) /* map->l_versions[ndx].hash != 0) */
-+ if (ndx >= 2) /* map->l_versions[ndx].hash != 0) */
- {
- /* Don't accept hidden symbols. */
- if ((verstab[symidx] & 0x8000) == 0 && num_versions++ == 0)
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc-mathinline.patch b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc-mathinline.patch
deleted file mode 100644
index 0560a68cfd60..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc-mathinline.patch
+++ /dev/null
@@ -1,30 +0,0 @@
---- glibc-2.2.5/sysdeps/sparc/fpu/bits/mathinline.h 2001-11-28 21:13:08.000000000 +0000
-+++ glibc-2.3.1/sysdeps/sparc/fpu/bits/mathinline.h 2002-05-16 01:16:23.000000000 +0100
-@@ -1,5 +1,5 @@
- /* Inline math functions for SPARC.
-- Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
-+ Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Jakub Jelinek <jakub@redhat.com>.
-
-@@ -213,16 +213,16 @@
-
- # ifndef __NO_MATH_INLINES
-
--__MATH_INLINE double fdim (double __x, double __y);
-+__MATH_INLINE double fdim (double __x, double __y) __THROW;
- __MATH_INLINE double
--fdim (double __x, double __y)
-+fdim (double __x, double __y) __THROW
- {
- return __x < __y ? 0 : __x - __y;
- }
-
--__MATH_INLINE float fdimf (float __x, float __y);
-+__MATH_INLINE float fdimf (float __x, float __y) __THROW;
- __MATH_INLINE float
--fdimf (float __x, float __y)
-+fdimf (float __x, float __y) __THROW
- {
- return __x < __y ? 0 : __x - __y;
- }
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc-misc.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc-misc.diff
deleted file mode 100644
index dc5f08bf50b7..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc-misc.diff
+++ /dev/null
@@ -1,339 +0,0 @@
-#! /bin/sh -e
-
-# DP: Misc. SPARC fixes.
-
-if [ $# -ne 2 ]; then
- echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
- exit 1
-fi
-case "$1" in
- -patch) patch -d "$2" -f --no-backup-if-mismatch -p1 < $0;;
- -unpatch) patch -d "$2" -f --no-backup-if-mismatch -R -p1 < $0;;
- *)
- echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
- exit 1
-esac
-exit 0
-
-2002-05-16 David S. Miller <davem@redhat.com>
-
- * sysdeps/sparc/sparc32/dl-machine.h (LOAD_PIC_REG): Define.
- (elf_machine_dynamic): Use it to force PIC register to be loaded.
- (elf_machine_load_address): Likewise.
- * sysdeps/sparc/sparc64/dl-machine.h: Mirror sparc32 changes.
-
- * sysdeps/sparc/sparc64/strncmp.S: When second argument pointer
- is unaligned, do not forget to fully initialize %g1 magic value.
-
- * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (LOC): Fix CPP
- pasting.
-
- * sysdeps/unix/sysv/linux/sparc/sys/procfs.h: Fix 64-bit elf
- register definitions and provide 32-bit variants of structures
- during 64-bit builds.
-
- * soft-fp/op-1.h (_FP_FRAC_CLEAR_OVERP_1): Define.
- * soft-fp/op-2.h (_FP_FRAC_CLEAR_OVERP_2): Define.
- * soft-fp/op-4.h (_FP_FRAC_CLEAR_OVERP_4): Define.
- * soft-fp/op-common.h (_FP_PACK_CANONICAL): After rounding, if
- _FP_FRAC_OVERP_X is set, use _FP_FRAC_CLEAR_OVERP_X to clear it.
- (_FP_FROM_INT): Perform right shifts on unsigned integer type.
- Do not clear implicit one bit here, it must be done post-rounding.
- Only pad to the left using left shift if value uses less than the
- available fractional bits.
-
-diff -urN glibc-2.2.5.orig/soft-fp/op-1.h glibc-2.2.5/soft-fp/op-1.h
---- glibc-2.2.5.orig/soft-fp/op-1.h Mon Jun 17 21:48:12 2002
-+++ glibc-2.2.5/soft-fp/op-1.h Mon Jun 17 22:27:52 2002
-@@ -55,6 +55,7 @@
- #define _FP_FRAC_NEGP_1(X) ((_FP_WS_TYPE)X##_f < 0)
- #define _FP_FRAC_ZEROP_1(X) (X##_f == 0)
- #define _FP_FRAC_OVERP_1(fs,X) (X##_f & _FP_OVERFLOW_##fs)
-+#define _FP_FRAC_CLEAR_OVERP_1(fs,X) (X##_f &= ~_FP_OVERFLOW_##fs)
- #define _FP_FRAC_EQ_1(X, Y) (X##_f == Y##_f)
- #define _FP_FRAC_GE_1(X, Y) (X##_f >= Y##_f)
- #define _FP_FRAC_GT_1(X, Y) (X##_f > Y##_f)
-diff -urN glibc-2.2.5.orig/soft-fp/op-2.h glibc-2.2.5/soft-fp/op-2.h
---- glibc-2.2.5.orig/soft-fp/op-2.h Mon Jun 17 21:48:12 2002
-+++ glibc-2.2.5/soft-fp/op-2.h Mon Jun 17 22:27:52 2002
-@@ -112,6 +112,7 @@
- #define _FP_FRAC_NEGP_2(X) ((_FP_WS_TYPE)X##_f1 < 0)
- #define _FP_FRAC_ZEROP_2(X) ((X##_f1 | X##_f0) == 0)
- #define _FP_FRAC_OVERP_2(fs,X) (_FP_FRAC_HIGH_##fs(X) & _FP_OVERFLOW_##fs)
-+#define _FP_FRAC_CLEAR_OVERP_2(fs,X) (_FP_FRAC_HIGH_##fs(X) &= ~_FP_OVERFLOW_##fs)
- #define _FP_FRAC_EQ_2(X, Y) (X##_f1 == Y##_f1 && X##_f0 == Y##_f0)
- #define _FP_FRAC_GT_2(X, Y) \
- (X##_f1 > Y##_f1 || X##_f1 == Y##_f1 && X##_f0 > Y##_f0)
-diff -urN glibc-2.2.5.orig/soft-fp/op-4.h glibc-2.2.5/soft-fp/op-4.h
---- glibc-2.2.5.orig/soft-fp/op-4.h Mon Jun 17 21:48:12 2002
-+++ glibc-2.2.5/soft-fp/op-4.h Mon Jun 17 22:27:52 2002
-@@ -129,6 +129,7 @@
- #define _FP_FRAC_ZEROP_4(X) ((X##_f[0] | X##_f[1] | X##_f[2] | X##_f[3]) == 0)
- #define _FP_FRAC_NEGP_4(X) ((_FP_WS_TYPE)X##_f[3] < 0)
- #define _FP_FRAC_OVERP_4(fs,X) (_FP_FRAC_HIGH_##fs(X) & _FP_OVERFLOW_##fs)
-+#define _FP_FRAC_CLEAR_OVERP_4(fs,X) (_FP_FRAC_HIGH_##fs(X) &= ~_FP_OVERFLOW_##fs)
-
- #define _FP_FRAC_EQ_4(X,Y) \
- (X##_f[0] == Y##_f[0] && X##_f[1] == Y##_f[1] \
-diff -urN glibc-2.2.5.orig/soft-fp/op-common.h glibc-2.2.5/soft-fp/op-common.h
---- glibc-2.2.5.orig/soft-fp/op-common.h Mon Jun 17 21:48:12 2002
-+++ glibc-2.2.5/soft-fp/op-common.h Mon Jun 17 22:27:52 2002
-@@ -89,11 +89,10 @@
- _FP_ROUND(wc, X); \
- if (_FP_FRAC_OVERP_##wc(fs, X)) \
- { \
-- _FP_FRAC_SRL_##wc(X, (_FP_WORKBITS+1)); \
-+ _FP_FRAC_CLEAR_OVERP_##wc(fs, X); \
- X##_e++; \
- } \
-- else \
-- _FP_FRAC_SRL_##wc(X, _FP_WORKBITS); \
-+ _FP_FRAC_SRL_##wc(X, _FP_WORKBITS); \
- if (X##_e >= _FP_EXPMAX_##fs) \
- { \
- /* overflow */ \
-@@ -682,25 +681,27 @@
- do { \
- if (r) \
- { \
-+ unsigned rtype ur_; \
- X##_c = FP_CLS_NORMAL; \
- \
- if ((X##_s = (r < 0))) \
- r = -r; \
- \
-+ ur_ = (unsigned rtype) r; \
- if (rsize <= _FP_W_TYPE_SIZE) \
-- __FP_CLZ(X##_e, r); \
-+ __FP_CLZ(X##_e, ur_); \
- else \
-- __FP_CLZ_2(X##_e, (_FP_W_TYPE)(r >> _FP_W_TYPE_SIZE), \
-- (_FP_W_TYPE)r); \
-+ __FP_CLZ_2(X##_e, (_FP_W_TYPE)(ur_ >> _FP_W_TYPE_SIZE), \
-+ (_FP_W_TYPE)ur_); \
- if (rsize < _FP_W_TYPE_SIZE) \
- X##_e -= (_FP_W_TYPE_SIZE - rsize); \
- X##_e = rsize - X##_e - 1; \
- \
- if (_FP_FRACBITS_##fs < rsize && _FP_WFRACBITS_##fs < X##_e) \
-- __FP_FRAC_SRS_1(r, (X##_e - _FP_WFRACBITS_##fs), rsize); \
-- r &= ~((rtype)1 << X##_e); \
-- _FP_FRAC_DISASSEMBLE_##wc(X, ((unsigned rtype)r), rsize); \
-- _FP_FRAC_SLL_##wc(X, (_FP_WFRACBITS_##fs - X##_e - 1)); \
-+ __FP_FRAC_SRS_1(ur_, (X##_e - _FP_WFRACBITS_##fs + 1), rsize);\
-+ _FP_FRAC_DISASSEMBLE_##wc(X, ur_, rsize); \
-+ if ((_FP_WFRACBITS_##fs - X##_e - 1) > 0) \
-+ _FP_FRAC_SLL_##wc(X, (_FP_WFRACBITS_##fs - X##_e - 1)); \
- } \
- else \
- { \
-diff -urN glibc-2.2.5.orig/sysdeps/sparc/sparc32/dl-machine.h glibc-2.2.5/sysdeps/sparc/sparc32/dl-machine.h
---- glibc-2.2.5.orig/sysdeps/sparc/sparc32/dl-machine.h Mon Jun 17 21:48:12 2002
-+++ glibc-2.2.5/sysdeps/sparc/sparc32/dl-machine.h Mon Jun 17 22:27:52 2002
-@@ -42,7 +42,6 @@
- #define LD_SO_PRELOAD ((_dl_hwcap & HWCAP_SPARC_V9) ? "/etc/ld.so.preload32" \
- : "/etc/ld.so.preload")
-
--
- /* Return nonzero iff ELF header is compatible with the running host. */
- static inline int
- elf_machine_matches_host (const Elf32_Ehdr *ehdr)
-@@ -64,6 +63,17 @@
- return 0;
- }
-
-+/* We have to do this because elf_machine_{dynamic,load_address} can be
-+ invoked from functions that have no GOT references, and thus the compiler
-+ has no obligation to load the PIC register. */
-+#define LOAD_PIC_REG(PIC_REG) \
-+do { register Elf32_Addr pc __asm("o7"); \
-+ __asm("sethi %%hi(_GLOBAL_OFFSET_TABLE_-4), %1\n\t" \
-+ "call 1f\n\t" \
-+ "add %1, %%lo(_GLOBAL_OFFSET_TABLE_+4), %1\n" \
-+ "1:\tadd %1, %0, %1" \
-+ : "=r" (pc), "=r" (PIC_REG)); \
-+} while (0)
-
- /* Return the link-time address of _DYNAMIC. Conveniently, this is the
- first element of the GOT. This must be inlined in a function which
-@@ -72,6 +82,9 @@
- elf_machine_dynamic (void)
- {
- register Elf32_Addr *got asm ("%l7");
-+
-+ LOAD_PIC_REG (got);
-+
- return *got;
- }
-
-@@ -80,6 +93,8 @@
- elf_machine_load_address (void)
- {
- register Elf32_Addr pc __asm("%o7"), pic __asm("%l7"), got;
-+
-+ LOAD_PIC_REG (pic);
-
- /* Utilize the fact that a local .got entry will be partially
- initialized at startup awaiting its RELATIVE fixup. */
-diff -urN glibc-2.2.5.orig/sysdeps/sparc/sparc64/dl-machine.h glibc-2.2.5/sysdeps/sparc/sparc64/dl-machine.h
---- glibc-2.2.5.orig/sysdeps/sparc/sparc64/dl-machine.h Mon Jun 17 21:48:12 2002
-+++ glibc-2.2.5/sysdeps/sparc/sparc64/dl-machine.h Mon Jun 17 22:27:52 2002
-@@ -34,6 +34,18 @@
- return ehdr->e_machine == EM_SPARCV9;
- }
-
-+/* We have to do this because elf_machine_{dynamic,load_address} can be
-+ invoked from functions that have no GOT references, and thus the compiler
-+ has no obligation to load the PIC register. */
-+#define LOAD_PIC_REG(PIC_REG) \
-+do { Elf64_Addr tmp; \
-+ __asm("sethi %%hi(_GLOBAL_OFFSET_TABLE_-4), %1\n\t" \
-+ "rd %%pc, %0\n\t" \
-+ "add %1, %%lo(_GLOBAL_OFFSET_TABLE_+4), %1\n\t" \
-+ "add %0, %1, %0" \
-+ : "=r" (PIC_REG), "=r" (tmp)); \
-+} while (0)
-+
- /* Return the link-time address of _DYNAMIC. Conveniently, this is the
- first element of the GOT. This must be inlined in a function which
- uses global data. */
-@@ -42,6 +54,8 @@
- {
- register Elf64_Addr *elf_pic_register __asm__("%l7");
-
-+ LOAD_PIC_REG (elf_pic_register);
-+
- return *elf_pic_register;
- }
-
-@@ -50,6 +64,8 @@
- elf_machine_load_address (void)
- {
- register Elf64_Addr *elf_pic_register __asm__("%l7");
-+
-+ LOAD_PIC_REG (elf_pic_register);
-
- /* We used to utilize the fact that a local .got entry will
- be partially initialized at startup awaiting its RELATIVE
-diff -urN glibc-2.2.5.orig/sysdeps/sparc/sparc64/strncmp.S glibc-2.2.5/sysdeps/sparc/sparc64/strncmp.S
---- glibc-2.2.5.orig/sysdeps/sparc/sparc64/strncmp.S Mon Jun 17 21:48:12 2002
-+++ glibc-2.2.5/sysdeps/sparc/sparc64/strncmp.S Mon Jun 17 22:27:52 2002
-@@ -290,14 +290,15 @@
- ldxa [%o0] ASI_PNF, %g4 /* Load */
- 11: sllx %g3, 3, %g5 /* IEU0 Group */
- mov 64, %g7 /* IEU1 */
-- sub %o1, %g3, %o1 /* IEU0 Group */
-+ or %g1, %g2, %g1 /* IEU0 Group */
-+ sub %o1, %g3, %o1 /* IEU1 */
-
-- sub %g7, %g5, %g7 /* IEU1 */
-+ sub %g7, %g5, %g7 /* IEU0 Group */
- ldxa [%o1] ASI_PNF, %o4 /* Load */
-- sllx %g1, 7, %g2 /* IEU0 Group */
-- add %o1, 8, %o1 /* IEU1 */
-+ sllx %g1, 7, %g2 /* IEU1 */
-+ add %o1, 8, %o1 /* IEU0 Group */
- /* %g1 = 0101010101010101
-- %g2 = 8080808080800880
-+ %g2 = 8080808080808080
- %g3 = %o1 alignment
- %g5 = number of bits to shift left
- %g7 = number of bits to shift right */
-diff -urN glibc-2.2.5.orig/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h glibc-2.2.5/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
---- glibc-2.2.5.orig/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h Mon Jun 17 21:48:12 2002
-+++ glibc-2.2.5/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h Mon Jun 17 22:27:52 2002
-@@ -48,7 +48,7 @@
- #define END(name) \
- .size name, . - name
-
--#define LOC(name) . ## L ## name
-+#define LOC(name) .##L##name
-
- #ifdef PIC
- #define SYSCALL_ERROR_HANDLER \
-diff -urN glibc-2.2.5.orig/sysdeps/unix/sysv/linux/sparc/sys/procfs.h glibc-2.2.5/sysdeps/unix/sysv/linux/sparc/sys/procfs.h
---- glibc-2.2.5.orig/sysdeps/unix/sysv/linux/sparc/sys/procfs.h Mon Jun 17 21:48:12 2002
-+++ glibc-2.2.5/sysdeps/unix/sysv/linux/sparc/sys/procfs.h Mon Jun 17 22:27:52 2002
-@@ -35,7 +35,7 @@
-
- #if __WORDSIZE == 64
-
--#define ELF_NGREG 20
-+#define ELF_NGREG 36
-
- typedef struct
- {
-@@ -138,6 +138,73 @@
-
- typedef struct elf_prstatus prstatus_t;
- typedef struct elf_prpsinfo prpsinfo_t;
-+
-+#if __WORDSIZE == 64
-+
-+/* Provide 32-bit variants so that BFD can read 32-bit
-+ core files. */
-+#define ELF_NGREG32 38
-+typedef struct
-+ {
-+ union
-+ {
-+ unsigned int pr_regs[32];
-+ double pr_dregs[16];
-+ } pr_fr;
-+ unsigned int __unused;
-+ unsigned int pr_fsr;
-+ unsigned char pr_qcnt;
-+ unsigned char pr_q_entrysize;
-+ unsigned char pr_en;
-+ unsigned int pr_q[64];
-+ } elf_fpregset_t32;
-+
-+typedef unsigned int elf_greg_t32;
-+typedef elf_greg_t32 elf_gregset_t32[ELF_NGREG32];
-+
-+struct elf_prstatus32
-+ {
-+ struct elf_siginfo pr_info; /* Info associated with signal. */
-+ short int pr_cursig; /* Current signal. */
-+ unsigned int pr_sigpend; /* Set of pending signals. */
-+ unsigned int pr_sighold; /* Set of held signals. */
-+ __pid_t pr_pid;
-+ __pid_t pr_ppid;
-+ __pid_t pr_pgrp;
-+ __pid_t pr_sid;
-+ struct
-+ {
-+ int tv_sec, tv_usec;
-+ } pr_utime, /* User time. */
-+ pr_stime, /* System time. */
-+ pr_cutime, /* Cumulative user time. */
-+ pr_cstime; /* Cumulative system time. */
-+ elf_gregset_t32 pr_reg; /* GP registers. */
-+ int pr_fpvalid; /* True if math copro being used. */
-+ };
-+
-+struct elf_prpsinfo32
-+ {
-+ char pr_state; /* Numeric process state. */
-+ char pr_sname; /* Char for pr_state. */
-+ char pr_zomb; /* Zombie. */
-+ char pr_nice; /* Nice val. */
-+ unsigned int pr_flag; /* Flags. */
-+ unsigned short int pr_uid;
-+ unsigned short int pr_gid;
-+ int pr_pid, pr_ppid, pr_pgrp, pr_sid;
-+ /* Lots missing */
-+ char pr_fname[16]; /* Filename of executable. */
-+ char pr_psargs[ELF_PRARGSZ]; /* Initial part of arg list. */
-+ };
-+
-+typedef elf_gregset_t32 prgregset32_t;
-+typedef elf_fpregset_t32 prfpregset32_t;
-+
-+typedef struct elf_prstatus32 prstatus32_t;
-+typedef struct elf_prpsinfo32 prpsinfo32_t;
-+
-+#endif /* sparc64 */
-
- __END_DECLS
-
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc32-semctl.patch b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc32-semctl.patch
deleted file mode 100644
index 9017b8bed5d3..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc32-semctl.patch
+++ /dev/null
@@ -1,209 +0,0 @@
---- libc/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c.jj Fri Feb 11 20:44:42 2000
-+++ libc/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c Thu Apr 25 22:52:00 2002
-@@ -1 +1,205 @@
--#include <sysdeps/unix/sysv/linux/i386/semctl.c>
-+/* Semctl for architectures where word sized unions are passed indirectly
-+ Copyright (C) 1995, 1997, 1998, 2000, 2002 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+ Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
-+
-+ 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 <stdarg.h>
-+#include <sys/sem.h>
-+#include <ipc_priv.h>
-+
-+#include <sysdep.h>
-+#include <string.h>
-+#include <sys/syscall.h>
-+
-+#include "kernel-features.h"
-+#include <shlib-compat.h>
-+
-+struct __old_semid_ds
-+{
-+ struct __old_ipc_perm sem_perm; /* operation permission struct */
-+ __time_t sem_otime; /* last semop() time */
-+ __time_t sem_ctime; /* last time changed by semctl() */
-+ struct sem *__sembase; /* ptr to first semaphore in array */
-+ struct sem_queue *__sem_pending; /* pending operations */
-+ struct sem_queue *__sem_pending_last; /* last pending operation */
-+ struct sem_undo *__undo; /* ondo requests on this array */
-+ unsigned short int sem_nsems; /* number of semaphores in set */
-+};
-+
-+/* Define a `union semun' suitable for Linux here. */
-+union semun
-+{
-+ int val; /* value for SETVAL */
-+ struct semid_ds *buf; /* buffer for IPC_STAT & IPC_SET */
-+ unsigned short int *array; /* array for GETALL & SETALL */
-+ struct seminfo *__buf; /* buffer for IPC_INFO */
-+};
-+
-+#include <bp-checks.h>
-+#include <bp-semctl.h> /* definition of CHECK_SEMCTL needs union semum */
-+
-+#ifdef __NR_getuid32
-+# if __ASSUME_32BITUIDS == 0
-+/* This variable is shared with all files that need to check for 32bit
-+ uids. */
-+extern int __libc_missing_32bit_uids;
-+# endif
-+#endif
-+
-+/* Return identifier for array of NSEMS semaphores associated with
-+ KEY. */
-+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)
-+int __old_semctl (int semid, int semnum, int cmd, ...);
-+#endif
-+int __new_semctl (int semid, int semnum, int cmd, ...);
-+
-+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)
-+int
-+__old_semctl (int semid, int semnum, int cmd, ...)
-+{
-+ union semun arg;
-+ va_list ap;
-+
-+ /* Get the argument only if required. */
-+ arg.buf = NULL;
-+ switch (cmd)
-+ {
-+ case SETVAL: /* arg.val */
-+ case GETALL: /* arg.array */
-+ case SETALL:
-+ case IPC_STAT: /* arg.buf */
-+ case IPC_SET:
-+ case SEM_STAT:
-+ case IPC_INFO: /* arg.__buf */
-+ case SEM_INFO:
-+ va_start (ap, cmd);
-+ arg = va_arg (ap, union semun);
-+ va_end (ap);
-+ break;
-+ }
-+
-+ return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd,
-+ CHECK_SEMCTL (&arg, semid, cmd));
-+}
-+compat_symbol (libc, __old_semctl, semctl, GLIBC_2_0);
-+#endif
-+
-+int
-+__new_semctl (int semid, int semnum, int cmd, ...)
-+{
-+ union semun arg;
-+ va_list ap;
-+
-+ /* Get the argument only if required. */
-+ arg.buf = NULL;
-+ switch (cmd)
-+ {
-+ case SETVAL: /* arg.val */
-+ case GETALL: /* arg.array */
-+ case SETALL:
-+ case IPC_STAT: /* arg.buf */
-+ case IPC_SET:
-+ case SEM_STAT:
-+ case IPC_INFO: /* arg.__buf */
-+ case SEM_INFO:
-+ va_start (ap, cmd);
-+ arg = va_arg (ap, union semun);
-+ va_end (ap);
-+ break;
-+ }
-+
-+#if __ASSUME_32BITUIDS > 0
-+ return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd | __IPC_64,
-+ CHECK_SEMCTL (&arg, semid, cmd | __IPC_64));
-+#else
-+ switch (cmd) {
-+ case SEM_STAT:
-+ case IPC_STAT:
-+ case IPC_SET:
-+ break;
-+ default:
-+ return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd,
-+ CHECK_SEMCTL (&arg, semid, cmd));
-+ }
-+
-+ {
-+ int result;
-+ struct __old_semid_ds old;
-+ struct semid_ds *buf;
-+
-+#ifdef __NR_getuid32
-+ if (__libc_missing_32bit_uids <= 0)
-+ {
-+ if (__libc_missing_32bit_uids < 0)
-+ {
-+ int save_errno = errno;
-+
-+ /* Test presence of new IPC by testing for getuid32 syscall. */
-+ result = INLINE_SYSCALL (getuid32, 0);
-+ if (result == -1 && errno == ENOSYS)
-+ __libc_missing_32bit_uids = 1;
-+ else
-+ __libc_missing_32bit_uids = 0;
-+ __set_errno(save_errno);
-+ }
-+ if (__libc_missing_32bit_uids <= 0)
-+ {
-+ result = INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd | __IPC_64,
-+ CHECK_SEMCTL (&arg, semid, cmd | __IPC_64));
-+ return result;
-+ }
-+ }
-+#endif
-+
-+ buf = arg.buf;
-+ arg.buf = (struct semid_ds *)&old;
-+ if (cmd == IPC_SET)
-+ {
-+ old.sem_perm.uid = buf->sem_perm.uid;
-+ old.sem_perm.gid = buf->sem_perm.gid;
-+ old.sem_perm.mode = buf->sem_perm.mode;
-+ if (old.sem_perm.uid != buf->sem_perm.uid ||
-+ old.sem_perm.gid != buf->sem_perm.gid)
-+ {
-+ __set_errno (EINVAL);
-+ return -1;
-+ }
-+ }
-+ result = INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd,
-+ CHECK_SEMCTL (&arg, semid, cmd));
-+ if (result != -1 && cmd != IPC_SET)
-+ {
-+ memset(buf, 0, sizeof(*buf));
-+ buf->sem_perm.__key = old.sem_perm.__key;
-+ buf->sem_perm.uid = old.sem_perm.uid;
-+ buf->sem_perm.gid = old.sem_perm.gid;
-+ buf->sem_perm.cuid = old.sem_perm.cuid;
-+ buf->sem_perm.cgid = old.sem_perm.cgid;
-+ buf->sem_perm.mode = old.sem_perm.mode;
-+ buf->sem_perm.__seq = old.sem_perm.__seq;
-+ buf->sem_otime = old.sem_otime;
-+ buf->sem_ctime = old.sem_ctime;
-+ buf->sem_nsems = old.sem_nsems;
-+ }
-+ return result;
-+ }
-+#endif
-+}
-+
-+versioned_symbol (libc, __new_semctl, semctl, GLIBC_2_2);
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc64-fixups.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc64-fixups.diff
deleted file mode 100644
index 181f13c52d49..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sparc64-fixups.diff
+++ /dev/null
@@ -1,46 +0,0 @@
-#! /bin/sh -e
-
-# DP: Fix ldconfig so that lib64 searches are implicit.
-
-if [ $# -ne 2 ]; then
- echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
- exit 1
-fi
-case "$1" in
- -patch) patch -d "$2" -f --no-backup-if-mismatch -p1 < $0;;
- -unpatch) patch -d "$2" -f --no-backup-if-mismatch -R -p1 < $0;;
- *)
- echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
- exit 1
-esac
-exit 0
-
---- glibc-2.2.3/elf/ldconfig.c~ Tue Mar 20 11:44:35 2001
-+++ glibc-2.2.3/elf/ldconfig.c Tue Apr 24 18:14:05 2001
-@@ -287,6 +287,26 @@
- dir_entries = entry;
- else if (ptr == NULL)
- prev->next = entry;
-+#ifdef __sparc__
-+#define MSUBDIR "64"
-+ if (ptr == NULL) {
-+ int si = strlen(entry->path) - strlen(MSUBDIR);
-+ if (strcmp (entry->path + (si <= 0 ? 0 : si), MSUBDIR) != 0) {
-+ /* Handle subdirectory later. */
-+ struct dir_entry *new_entry;
-+
-+ new_entry = xmalloc (sizeof (struct dir_entry));
-+ new_entry->path = xmalloc(strlen(entry->path)+strlen(MSUBDIR)+1);
-+ new_entry->flag = entry->flag;
-+ new_entry->next = NULL;
-+ sprintf(new_entry->path, "%s%s", entry->path, MSUBDIR);
-+ if (opt_verbose)
-+ printf("Adding implicit multilib directory:\n\t%s\n", new_entry->path);
-+ add_single_dir (new_entry, 0);
-+ }
-+ }
-+#undef MSUBDIR
-+#endif
- }
-
- /* Add one directory to the list of directories to process. */
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sunrpc-overflow.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sunrpc-overflow.diff
deleted file mode 100644
index eb7e59c0ceb3..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-sunrpc-overflow.diff
+++ /dev/null
@@ -1,88 +0,0 @@
---- glibc-2.2.5.orig/malloc/malloc.c Wed Sep 19 05:23:27 2001
-+++ glibc-2.2.5/malloc/malloc.c Tue Aug 13 11:16:26 2002
-@@ -3795,14 +3795,26 @@
- {
- arena *ar_ptr;
- mchunkptr p, oldtop;
-- INTERNAL_SIZE_T sz, csz, oldtopsize;
-+ INTERNAL_SIZE_T bytes, sz, csz, oldtopsize;
- Void_t* mem;
-
- #if defined _LIBC || defined MALLOC_HOOKS
- __malloc_ptr_t (*hook) __MALLOC_PMT ((size_t, __const __malloc_ptr_t)) =
- __malloc_hook;
-+
-+ /* size_t is unsigned so the behavior on overflow is defined. */
-+ bytes = n * elem_size;
-+#define HALF_INTERNAL_SIZE_T \
-+ (((INTERNAL_SIZE_T) 1) << (8 * sizeof (INTERNAL_SIZE_T) / 2))
-+ if (__builtin_expect ((n | elem_size) >= HALF_INTERNAL_SIZE_T, 0)) {
-+ if (elem_size != 0 && bytes / elem_size != n) {
-+ __set_errno (ENOMEM);
-+ return 0;
-+ }
-+ }
-+
- if (hook != NULL) {
-- sz = n * elem_size;
-+ sz = bytes;
- #if defined __GNUC__ && __GNUC__ >= 2
- mem = (*hook)(sz, RETURN_ADDRESS (0));
- #else
-@@ -3819,7 +3831,7 @@
- }
- #endif
-
-- if(request2size(n * elem_size, sz))
-+ if(request2size(bytes, sz))
- return 0;
- arena_get(ar_ptr, sz);
- if(!ar_ptr)
-@@ -3862,7 +3874,7 @@
- }
- if (p == 0) return 0;
- }
-- mem = BOUNDED_N(chunk2mem(p), n * elem_size);
-+ mem = BOUNDED_N(chunk2mem(p), bytes);
-
- /* Two optional cases in which clearing not necessary */
-
-@@ -4899,9 +4911,9 @@
- {
- void *mem;
-
-- /* Test whether the SIZE argument is valid. It must be a power of
-- two multiple of sizeof (void *). */
-- if (size % sizeof (void *) != 0 || (size & (size - 1)) != 0)
-+ /* Test whether the ALIGNMENT argument is valid. It must be a power
-+ of two multiple of sizeof (void *). */
-+ if (alignment % sizeof (void *) != 0 || (alignment & (alignment - 1)) != 0)
- return EINVAL;
-
- mem = __libc_memalign (alignment, size);
-diff -urN glibc-2.2.5.orig/sunrpc/xdr_array.c glibc-2.2.5/sunrpc/xdr_array.c
---- glibc-2.2.5.orig/sunrpc/xdr_array.c Fri Sep 7 13:59:19 2001
-+++ glibc-2.2.5/sunrpc/xdr_array.c Thu Aug 1 16:48:38 2002
-@@ -45,6 +45,7 @@
- #include <rpc/types.h>
- #include <rpc/xdr.h>
- #include <libintl.h>
-+#include <limits.h>
-
- #ifdef USE_IN_LIBIO
- # include <wchar.h>
-@@ -81,7 +82,9 @@
- return FALSE;
- }
- c = *sizep;
-- if ((c > maxsize) && (xdrs->x_op != XDR_FREE))
-+
-+ /* Make sure that "c * elsize" doesn't overflow */
-+ if ((c > maxsize || UINT_MAX/elsize < c) && (xdrs->x_op != XDR_FREE))
- {
- return FALSE;
- }
-
-
-
-
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-threadsig.diff b/sys-libs/glibc/files/2.2.5/glibc-2.2.5-threadsig.diff
deleted file mode 100644
index 4618113179ad..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5-threadsig.diff
+++ /dev/null
@@ -1,17 +0,0 @@
-2002-02-17 Andreas Schwab <schwab@suse.de>
-
-* signals.c (sigwait): Check for old sighandler being SIG_ERR,
- not NULL.
-
---- linuxthreads/signals.c.~1.23.~ Mon Jan 14 16:16:45 2002
-+++ linuxthreads/signals.c Sun Feb 17 00:51:41 2002
-@@ -198,7 +198,7 @@
- s != __pthread_sig_cancel &&
- s != __pthread_sig_debug) {
- sigdelset(&mask, s);
-- if (sighandler[s].old == NULL ||
-+ if (sighandler[s].old == (arch_sighandler_t) SIG_ERR ||
- sighandler[s].old == (arch_sighandler_t) SIG_DFL ||
- sighandler[s].old == (arch_sighandler_t) SIG_IGN) {
- sa.sa_handler = pthread_null_sighandler;
-
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5.divbyzero.patch b/sys-libs/glibc/files/2.2.5/glibc-2.2.5.divbyzero.patch
deleted file mode 100644
index 4dbd2d925af3..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5.divbyzero.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-diff -uNr glibc-2.2.5.orig/iconv/skeleton.c glibc-2.2.5/iconv/skeleton.c
---- glibc-2.2.5.orig/iconv/skeleton.c 2001-07-06 14:54:47.000000000 +1000
-+++ glibc-2.2.5/iconv/skeleton.c 2002-08-09 20:28:32.000000000 +1000
-@@ -193,15 +193,20 @@
- character set we can define RESET_INPUT_BUFFER in a very fast way. */
- #if !defined RESET_INPUT_BUFFER && !defined SAVE_RESET_STATE
- # if MIN_NEEDED_FROM == MAX_NEEDED_FROM && MIN_NEEDED_TO == MAX_NEEDED_TO
--/* We have to use these `if's here since the compiler cannot know that
-- (outbuf - outerr) is always divisible by MIN_NEEDED_TO. */
--# define RESET_INPUT_BUFFER \
-- if (MIN_NEEDED_FROM % MIN_NEEDED_TO == 0) \
-- *inptrp -= (outbuf - outerr) * (MIN_NEEDED_FROM / MIN_NEEDED_TO); \
-- else if (MIN_NEEDED_TO % MIN_NEEDED_FROM == 0) \
-- *inptrp -= (outbuf - outerr) / (MIN_NEEDED_TO / MIN_NEEDED_FROM); \
-- else \
-- *inptrp -= ((outbuf - outerr) / MIN_NEEDED_TO) * MIN_NEEDED_FROM
-+/* We have to use these `#if's here since the compiler cannot know that
-+ (outbuf - outerr) is always divisible by MIN_NEEDED_TO. We have to
-+ use preprocessor arithmetic and no C code because gcc 3.2 complains
-+ about division by zero even in obviously dead code. */
-+# if MIN_NEEDED_FROM % MIN_NEEDED_TO == 0
-+# define RESET_INPUT_BUFFER \
-+ *inptrp -= (outbuf - outerr) * (MIN_NEEDED_FROM / MIN_NEEDED_TO)
-+# elif MIN_NEEDED_TO % MIN_NEEDED_FROM == 0
-+# define RESET_INPUT_BUFFER \
-+ *inptrp -= (outbuf - outerr) / (MIN_NEEDED_TO / MIN_NEEDED_FROM)
-+# else
-+# define RESET_INPUT_BUFFER \
-+ *inptrp -= ((outbuf - outerr) / MIN_NEEDED_TO) * MIN_NEEDED_FROM
-+# endif
- # endif
- #endif
-
diff --git a/sys-libs/glibc/files/2.2.5/glibc-2.2.5.restrict_arr.patch b/sys-libs/glibc/files/2.2.5/glibc-2.2.5.restrict_arr.patch
deleted file mode 100644
index fe828bb9a49d..000000000000
--- a/sys-libs/glibc/files/2.2.5/glibc-2.2.5.restrict_arr.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff -uNr glibc-2.2.5.orig/posix/regex.h glibc-2.2.5/posix/regex.h
---- glibc-2.2.5.orig/posix/regex.h 2001-07-06 14:55:38.000000000 +1000
-+++ glibc-2.2.5/posix/regex.h 2002-08-09 20:06:19.000000000 +1000
-@@ -529,10 +529,14 @@
- # endif
- # endif
- #endif
--/* For now unconditionally define __restrict_arr to expand to nothing.
-- Ideally we would have a test for the compiler which allows defining
-- it to restrict. */
--#define __restrict_arr
-+/* gcc 3.1 and up support the [restrict] syntax. */
-+#ifndef __restrict_arr
-+# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1)
-+# define __restrict_arr __restrict
-+# else
-+# define __restrict_arr
-+# endif
-+#endif
-
- /* POSIX compatibility. */
- extern int regcomp _RE_ARGS ((regex_t *__restrict __preg,