summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIlya Volynets <iluxa@gentoo.org>2004-06-05 01:47:46 +0000
committerIlya Volynets <iluxa@gentoo.org>2004-06-05 01:47:46 +0000
commit7c556ca4d393da21e7a12680d2639b6cde702761 (patch)
treee349f1d993c86000db12c706d60f632a7ef4a5b5 /sys-libs
parentAdded ~sparc keywords to help resolve bug #53019. (diff)
downloadhistorical-7c556ca4d393da21e7a12680d2639b6cde702761.tar.gz
historical-7c556ca4d393da21e7a12680d2639b6cde702761.tar.bz2
historical-7c556ca4d393da21e7a12680d2639b6cde702761.zip
Finalize n32 fixes. Add ALT_HEADERS variable
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/glibc/ChangeLog10
-rw-r--r--sys-libs/glibc/Manifest9
-rw-r--r--sys-libs/glibc/files/2.3.4/mips-sysdep-cancel.diff54
-rw-r--r--sys-libs/glibc/glibc-2.3.4.20040602.ebuild15
4 files changed, 79 insertions, 9 deletions
diff --git a/sys-libs/glibc/ChangeLog b/sys-libs/glibc/ChangeLog
index ef0fe8331e5c..27ff70054027 100644
--- a/sys-libs/glibc/ChangeLog
+++ b/sys-libs/glibc/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for sys-libs/glibc
# Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.171 2004/06/04 18:15:25 iluxa Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.172 2004/06/05 01:47:46 iluxa Exp $
+
+ 04 Jun 2004; Ilya A. Volynets-Evenbach <iluxa@gentoo.org>
+ +files/2.3.4/mips-sysdep-cancel.diff, glibc-2.3.4.20040602.ebuild:
+ Finalize n32 fixes (n64 is yet to be tested, but should be
+ piece of cake now)
+ Add ALT_HEADERS variable, which will allows us to point glibc
+ to something other then /usr/lib. This will be needed for
+ x-compilation support.
04 Jun 2004; Travis Tilley <lv@gentoo.org> glibc-2.3.3_pre20040529.ebuild:
stable on amd64
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
index 7daf8071f0b5..77762739b177 100644
--- a/sys-libs/glibc/Manifest
+++ b/sys-libs/glibc/Manifest
@@ -1,17 +1,17 @@
-MD5 a4f28719b81bef2de870ef2c3545e894 glibc-2.3.3_pre20040420-r1.ebuild 20354
+MD5 feddb555a68db8822720bd4019a63b24 glibc-2.3.3_pre20040420-r1.ebuild 20353
MD5 37180d536733ae205d0db321571cd5ca glibc-2.3.3_pre20040117-r1.ebuild 19232
MD5 6ac96ce0f33c3d794730111609c45576 glibc-2.3.2-r3.ebuild 17308
MD5 40b73d3cb79e611b0b6a3385f1601e32 glibc-2.3.3_pre20040207.ebuild 19594
MD5 c09629c691d99b48b52e8ee8083cd1da glibc-2.3.3_pre20031210.ebuild 19015
-MD5 a37f3efbd3eaa4a31c8e347b6d099d03 glibc-2.3.3_pre20040529.ebuild 21694
+MD5 8b7e7808eb2770c0232fa297a5896460 glibc-2.3.3_pre20040529.ebuild 21693
MD5 081030d4ac6e9b8879727089b52b28fd glibc-2.3.2-r10.ebuild 19418
MD5 03c72a7da4b62b7c73dbb67b70252a20 glibc-2.3.3_pre20040117.ebuild 18526
MD5 6ae51bfd7e5cc6af9b1ea678354a8760 glibc-2.3.2-r2.ebuild 17968
MD5 c1f9466ec8250dd47beb7a71f7c536fe glibc-2.3.1-r5.ebuild 10719
-MD5 9d44fcb6fd88d8ca58905482c1964ca4 ChangeLog 35067
+MD5 e3f7714bc146fa7c27b8c7eecd8a1f18 ChangeLog 35427
MD5 8e0c5284b715af1e90ed2c0e2184599c glibc-2.3.3_pre20040420.ebuild 19887
MD5 567094e03359ffc1c95af7356395228d metadata.xml 162
-MD5 c19ce6ed16d1933a67fa03b933fe35ff glibc-2.3.4.20040602.ebuild 15770
+MD5 3cabdcac98a09022f6fd32d93899af00 glibc-2.3.4.20040602.ebuild 16096
MD5 b141dc6e9c4183e869f6d95f0f015b99 glibc-2.2.5-r9.ebuild 10002
MD5 32383b07afc0abdbb3a8da5fe539a696 glibc-2.3.2-r9.ebuild 18657
MD5 98ea363167dacaaad23fd9a66ba98d5b files/nscd 844
@@ -133,3 +133,4 @@ MD5 175bde9b0017d4deb63cf55f38173e11 files/2.3.3/glibc-2.3.3_pre20040117-got-fix
MD5 ec83f3d86f23243a1fb334b8872d454f files/2.3.3/glibc-2.3.3-localedef-fix-trampoline.patch 2329
MD5 ab91cb5bad07e1e79f990d4933741d42 files/2.3.3/glibc-2.3.3_pre20040420-mips-incl-sgidefs.diff 8287
MD5 1b5df7c58ad160593192704cece47347 files/2.3.3/glibc-2.3.3-dl_execstack-PaX-support.patch 1791
+MD5 1185022e9a50560d1bf9116a0461e011 files/2.3.4/mips-sysdep-cancel.diff 2402
diff --git a/sys-libs/glibc/files/2.3.4/mips-sysdep-cancel.diff b/sys-libs/glibc/files/2.3.4/mips-sysdep-cancel.diff
new file mode 100644
index 000000000000..0e70b8ddf1ad
--- /dev/null
+++ b/sys-libs/glibc/files/2.3.4/mips-sysdep-cancel.diff
@@ -0,0 +1,54 @@
+Index: linuxthreads/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h
+===================================================================
+RCS file: /cvs/glibc/libc/linuxthreads/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h,v
+retrieving revision 1.2
+diff -u -r1.2 sysdep-cancel.h
+--- linuxthreads/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h 28 Jul 2003 18:45:37 -0000 1.2
++++ linuxthreads/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h 1 Jun 2004 17:19:08 -0000
+@@ -27,9 +27,6 @@
+ #ifdef __PIC__
+ # undef PSEUDO
+ # define PSEUDO(name, syscall_name, args) \
+- .align 2; \
+- 99: la t9,__syscall_error; \
+- jr t9; \
+ ENTRY (name) \
+ .set noreorder; \
+ .cpload t9; \
+@@ -44,25 +41,25 @@
+ ret; \
+ L(pseudo_cancel): \
+ SAVESTK_##args; \
+- sw ra, 28(sp); \
+- sw gp, 32(sp); \
++ sw gp, 28(sp); \
++ sw ra, 32(sp); \
+ PUSHARGS_##args; /* save syscall args */ \
+ CENABLE; \
+- lw gp, 32(sp); \
+- sw v0, 44(sp); /* save mask */ \
++ lw gp, 28(sp); \
++ sw v0, 36(sp); /* save mask */ \
+ POPARGS_##args; /* restore syscall args */ \
+ .set noreorder; \
+ li v0, SYS_ify (syscall_name); \
+ syscall; \
+ .set reorder; \
+- sw v0, 36(sp); /* save syscall result */ \
+- sw a3, 40(sp); /* save syscall error flag */ \
+- lw a0, 44(sp); /* pass mask as arg1 */ \
++ sw v0, 40(sp); /* save syscall result */ \
++ sw a3, 44(sp); /* save syscall error flag */ \
++ lw a0, 36(sp); /* pass mask as arg1 */ \
+ CDISABLE; \
+- lw gp, 32(sp); \
+- lw v0, 36(sp); /* restore syscall result */ \
+- lw a3, 40(sp); /* restore syscall error flag */ \
+- lw ra, 28(sp); /* restore return address */ \
++ lw gp, 28(sp); \
++ lw v0, 40(sp); /* restore syscall result */ \
++ lw a3, 44(sp); /* restore syscall error flag */ \
++ lw ra, 32(sp); /* restore return address */ \
+ RESTORESTK; \
+ bne a3, zero, SYSCALL_ERROR_LABEL; \
+ L(pseudo_end):
diff --git a/sys-libs/glibc/glibc-2.3.4.20040602.ebuild b/sys-libs/glibc/glibc-2.3.4.20040602.ebuild
index cfc9cc1f0e80..c68dbccecd0e 100644
--- a/sys-libs/glibc/glibc-2.3.4.20040602.ebuild
+++ b/sys-libs/glibc/glibc-2.3.4.20040602.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.4.20040602.ebuild,v 1.11 2004/06/04 18:20:40 iluxa Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.4.20040602.ebuild,v 1.12 2004/06/05 01:47:46 iluxa Exp $
IUSE="nls pic build nptl erandom hardened makecheck multilib"
@@ -66,6 +66,12 @@ PROVIDE="virtual/glibc"
# theoretical x-compiler support
[ -z "${CCHOST}" ] && CCHOST="${CHOST}"
+# We need to be able to set alternative headers for
+# compiling for non-native platform
+# Will also come useful for testing kernel-headers without screwing up
+# whole system
+[ -z "${ALT_HEADERS}" ] && ALT_HEADERS="/usr/include"
+
setup_flags() {
# -freorder-blocks for all but ia64 s390 s390x
use ppc || append-flags "-freorder-blocks"
@@ -256,7 +262,7 @@ src_unpack() {
# 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).
- cd ${S}; epatch ${FILESDIR}/2.3.3/${PN}-2.3.3-dl_execstack-PaX-support.patch
+ use mips || ( cd ${S}; epatch ${FILESDIR}/2.3.3/${PN}-2.3.3-dl_execstack-PaX-support.patch )
# Program header support for PaX.
cd ${S}; epatch ${FILESDIR}/2.3.3/${PN}-2.3.3_pre20040117-pt_pax.diff
@@ -289,6 +295,7 @@ src_unpack() {
epatch ${FILESDIR}/2.3.3/mips-syscall.h.diff
epatch ${FILESDIR}/2.3.3/semtimedop.diff
epatch ${FILESDIR}/2.3.3/mips-sysify.diff
+ epatch ${FILESDIR}/2.3.4/mips-sysdep-cancel.diff
# Need to install into /lib for n32-only userland for now.
# Propper solution is to make all userland /lib{32|64}-aware.
use multilib || epatch ${FILESDIR}/2.3.3/mips-nolib3264.diff
@@ -379,14 +386,14 @@ src_compile() {
--disable-profile \
--without-gd \
--without-cvs \
- --with-headers=/usr/include \
+ --with-headers=${ALT_HEADERS} \
--prefix=/usr \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--libexecdir=/usr/lib/misc \
${myconf} || die
- make || die
+ make PARALLELMFLAGS="${MAKEOPTS}" || die
}
src_install() {