summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Huddleston <eradicator@gentoo.org>2005-04-07 22:01:17 +0000
committerJeremy Huddleston <eradicator@gentoo.org>2005-04-07 22:01:17 +0000
commitb4d131f7a5596d283ace011490bb2c622b7a99cd (patch)
treed9efc5e395a157c2406fe30d16ad908c058ab706 /sys-libs
parentBeautification of eclass output. (diff)
downloadgentoo-2-b4d131f7a5596d283ace011490bb2c622b7a99cd.tar.gz
gentoo-2-b4d131f7a5596d283ace011490bb2c622b7a99cd.tar.bz2
gentoo-2-b4d131f7a5596d283ace011490bb2c622b7a99cd.zip
Stop excluding the gcc4 patch. Put code in pkg_postinst to remove nptl libpthread-*.so if we have linuxthreads glibc. Sometimes it doesn't get emerged and can cause problems like bug #87671.
(Portage version: 2.0.51.19)
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/glibc/ChangeLog8
-rw-r--r--sys-libs/glibc/glibc-2.3.4.20050125-r1.ebuild29
2 files changed, 24 insertions, 13 deletions
diff --git a/sys-libs/glibc/ChangeLog b/sys-libs/glibc/ChangeLog
index 839f95975425..129fbef2d895 100644
--- a/sys-libs/glibc/ChangeLog
+++ b/sys-libs/glibc/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sys-libs/glibc
# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.335 2005/04/07 03:58:29 dostrow Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.336 2005/04/07 22:01:17 eradicator Exp $
+
+ 07 Apr 2005; Jeremy Huddleston <eradicator@gentoo.org>
+ glibc-2.3.4.20050125-r1.ebuild:
+ Stop excluding the gcc4 patch. Put code in pkg_postinst to remove nptl
+ libpthread-*.so if we have linuxthreads glibc. Sometimes it doesn't get
+ emerged and can cause problems like bug #87671.
07 Apr 2005; Mike Frysinger <vapier@gentoo.org>
glibc-2.3.4.20050125-r1.ebuild:
diff --git a/sys-libs/glibc/glibc-2.3.4.20050125-r1.ebuild b/sys-libs/glibc/glibc-2.3.4.20050125-r1.ebuild
index ab5629cc45b4..f63b838aae8a 100644
--- a/sys-libs/glibc/glibc-2.3.4.20050125-r1.ebuild
+++ b/sys-libs/glibc/glibc-2.3.4.20050125-r1.ebuild
@@ -1,6 +1,6 @@
# 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.4.20050125-r1.ebuild,v 1.36 2005/04/07 00:59:09 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.4.20050125-r1.ebuild,v 1.37 2005/04/07 22:01:17 eradicator Exp $
# Here's how the cross-compile logic breaks down ...
# CTARGET - machine that will target the binaries
@@ -203,8 +203,6 @@ toolchain-glibc_src_unpack() {
cd ${S}
- [[ -d glibc-compat ]] && rm -r glibc-compat
-
if [[ -n ${BRANCH_UPDATE} ]] ; then
epatch ${WORKDIR}/${PN}-${GLIBC_RELEASE_VER}-branch-update-${BRANCH_UPDATE}.patch
@@ -503,6 +501,19 @@ toolchain-glibc_src_install() {
}
toolchain-glibc_pkg_postinst() {
+ # Mixing nptlonly and -nptlonly glibc can prove dangerous if libpthread
+ # isn't removed in unmerge which happens sometimes. See bug #87671
+ if ! is_crosscompile && want_linuxthreads ; then
+ for libdir in $(get_all_libdirs) ; do
+ for f in ${ROOT}/${libdir}/libpthread-2.* ${ROOT}/${libdir}/libpthread-0.6* ; do
+ if [[ -f ${f} ]] ; then
+ rm -f ${f}
+ ldconfig
+ fi
+ done
+ done
+ fi
+
# Correct me if I am wrong here, but my /etc/localtime is a file
# created by zic ....
# I am thinking that it should only be recreated if no /etc/localtime
@@ -523,13 +534,9 @@ toolchain-glibc_pkg_postinst() {
${ROOT}/usr/sbin/iconvconfig --prefix=${ROOT}
fi
- if [ ! -e "${ROOT}/ld.so.1" ] && use ppc64
- then
- pushd ${ROOT}
+ if [ ! -e "${ROOT}/lib/ld.so.1" ] && use ppc64 && ! has_multilib_profile ; then
## SHOULDN'T THIS BE lib64??
- cd ${ROOT}/lib
- ln -s ld64.so.1 ld.so.1
- popd
+ ln -s ld64.so.1 ${ROOT}/lib/ld.so.1
fi
# Reload init ...
@@ -827,7 +834,7 @@ glibc_do_configure() {
# set addons
pushd ${S} > /dev/null
- ADDONS=$(echo */configure | sed -e 's!/configure!!g;s!\(linuxthreads\|nptl\|rtkaio\)\( \|$\)!!g;s! \+$!!;s! !,!g;s!^!,!;/^,\*$/d')
+ ADDONS=$(echo */configure | sed -e 's!/configure!!g;s!\(linuxthreads\|nptl\|rtkaio\|glibc-compat\)\( \|$\)!!g;s! \+$!!;s! !,!g;s!^!,!;/^,\*$/d')
popd > /dev/null
use nls || myconf="${myconf} --disable-nls"
@@ -1115,8 +1122,6 @@ src_unpack() {
use nomalloccheck || GLIBC_PATCH_EXCLUDE="${GLIBC_PATCH_EXCLUDE} 5020_all_nomalloccheck.patch"
- [[ $(gcc-major-version) == "4" ]] || GLIBC_PATCH_EXCLUDE="${GLIBC_PATCH_EXCLUDE} 5040_all_2.3.4-gcc4.patch"
-
toolchain-glibc_src_unpack
case $(tc-arch) in