summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys-libs/glibc/ChangeLog9
-rw-r--r--sys-libs/glibc/files/2.3.2/glibc-2.3.2-alpha-sysdeps.patch24
-rw-r--r--sys-libs/glibc/glibc-2.3.2-r12.ebuild50
3 files changed, 70 insertions, 13 deletions
diff --git a/sys-libs/glibc/ChangeLog b/sys-libs/glibc/ChangeLog
index 6e1497b57b58..4fd916191b46 100644
--- a/sys-libs/glibc/ChangeLog
+++ b/sys-libs/glibc/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for sys-libs/glibc
-# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.298 2004/12/23 20:16:59 eradicator Exp $
+# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.299 2005/01/03 22:42:26 vapier Exp $
+
+ 03 Jan 2005; Mike Frysinger <vapier@gentoo.org>
+ +files/2.3.2/glibc-2.3.2-alpha-sysdeps.patch, glibc-2.3.2-r12.ebuild:
+ Backport USE=userlocale support. Fix building on alpha with 2.6 headers with
+ patch from upstream #52764 by 0g.
23 Dec 2004; Jeremy Huddleston <eradicator@gentoo.org>
glibc-2.3.4.20040808-r1.ebuild, glibc-2.3.4.20041102.ebuild:
diff --git a/sys-libs/glibc/files/2.3.2/glibc-2.3.2-alpha-sysdeps.patch b/sys-libs/glibc/files/2.3.2/glibc-2.3.2-alpha-sysdeps.patch
new file mode 100644
index 000000000000..f03dac68ed75
--- /dev/null
+++ b/sys-libs/glibc/files/2.3.2/glibc-2.3.2-alpha-sysdeps.patch
@@ -0,0 +1,24 @@
+===================================================================
+RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/alpha/sysdep.h,v
+retrieving revision 1.16
+retrieving revision 1.17
+diff -u -r1.16 -r1.17
+--- libc/sysdeps/unix/sysv/linux/alpha/sysdep.h 2003/06/20 16:24:36 1.16
++++ libc/sysdeps/unix/sysv/linux/alpha/sysdep.h 2004/03/23 23:31:47 1.17
+@@ -65,6 +65,16 @@
+ # define __NR_semtimedop 423
+ #endif
+
++/* This is a kludge to make syscalls.list find these under the names
++ pread and pwrite, since some kernel headers define those names
++ and some define the *64 names for the same system calls. */
++#if !defined __NR_pread && defined __NR_pread64
++# define __NR_pread __NR_pread64
++#endif
++#if !defined __NR_pwrite && defined __NR_pwrite64
++# define __NR_pwrite __NR_pwrite64
++#endif
++
+ /*
+ * In order to get the hidden arguments for rt_sigaction set up
+ * properly, we need to call the assembly version. This shouldn't
diff --git a/sys-libs/glibc/glibc-2.3.2-r12.ebuild b/sys-libs/glibc/glibc-2.3.2-r12.ebuild
index c5312d748e02..934aa13a2eac 100644
--- a/sys-libs/glibc/glibc-2.3.2-r12.ebuild
+++ b/sys-libs/glibc/glibc-2.3.2-r12.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2004 Gentoo Foundation
+# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.2-r12.ebuild,v 1.3 2004/12/07 15:17:38 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.2-r12.ebuild,v 1.4 2005/01/03 22:42:26 vapier Exp $
inherit eutils flag-o-matic gcc
@@ -40,7 +40,7 @@ LICENSE="LGPL-2"
&& SLOT="${CTARGET}-2.2" \
|| SLOT="2.2"
KEYWORDS="alpha amd64 arm hppa ia64 mips ppc s390 sh sparc x86"
-IUSE="nls pic build nptl debug"
+IUSE="nls pic build nptl debug userlocales"
RESTRICT="nostrip" # we'll handle stripping ourself #46186
# We need new cleanup attribute support from gcc for NPTL among things ...
@@ -141,6 +141,35 @@ use_nptl() {
return 1
}
+install_locales() {
+ einfo "Installing Locale data..."
+ make PARALLELMFLAGS="${MAKEOPTS}" \
+ install_root=${D} \
+ localedata/install-locales -C ${buildtarget} || die
+ keepdir /usr/lib/locale/ru_RU/LC_MESSAGES
+}
+
+setup_locales() {
+ if ! use userlocales ; then
+ einfo "userlocales not enabled, installing -ALL- locales..."
+ elif [ -e /etc/locales.build ]; then
+ einfo "Installing locales in /etc/locales.build..."
+ echo 'SUPPORTED-LOCALES=\' > SUPPORTED.locales
+ cat /etc/locales.build | grep -v -e ^$ -e ^\# | sed 's/$/\ \\/g' \
+ >> SUPPORTED.locales
+ cat SUPPORTED.locales > ${S}/localedata/SUPPORTED || die
+ elif [ -e ${FILESDIR}/locales.build ]; then
+ einfo "Installing locales in ${FILESDIR}/locales.build..."
+ echo 'SUPPORTED-LOCALES=\' > SUPPORTED.locales
+ cat ${FILESDIR}/locales.build | grep -v -e ^$ -e ^\# | sed 's/$/\ \\/g' \
+ >> SUPPORTED.locales
+ cat SUPPORTED.locales > ${S}/localedata/SUPPORTED || die
+ else
+ einfo "Installing -ALL- locales..."
+ fi
+ install_locales || die
+}
+
glibc_setup() {
# Check if we are going to downgrade, we don't like that
#local old_version
@@ -373,6 +402,9 @@ src_unpack() {
# Fix compilation with >=gcc-3.2.3 (01 Nov 2003 agriffis)
epatch ${FILESDIR}/2.3.2/${P}-alpha-pwrite.patch
epatch ${FILESDIR}/2.3.2/${P}-alpha-crti.patch
+
+ # Fix building with 2.6 headers #52764
+ epatch ${FILESDIR}/2.3.2/${P}-alpha-sysdeps.patch
fi
if [ "${ARCH}" = "amd64" ]
@@ -606,14 +638,7 @@ EOF
info -C ${buildtarget} || die
fi
- einfo "Installing Locale data..."
- make PARALLELMFLAGS="${MAKEOPTS}" \
- install_root=${D} \
- localedata/install-locales -C ${buildtarget} || die
-
- # Compatibility hack: this locale has vanished from glibc,
- # but some other programs are still using it.
- keepdir /usr/lib/locale/ru_RU/LC_MESSAGES
+ setup_locales
einfo "Installing man pages and docs..."
# Install linuxthreads man pages
@@ -636,6 +661,9 @@ EOF
install_root=${D} \
timezone/install-others -C ${buildtarget} || die
fi
+ insinto /etc
+ # This is our new config file for building locales
+ doins ${FILESDIR}/locales.build
if use pic
then