diff options
author | Mike Frysinger <vapier@gentoo.org> | 2006-01-13 12:15:53 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2006-01-13 12:15:53 +0000 |
commit | 7b28d8981d4446c2194b623850821481c3d89e1a (patch) | |
tree | 13206a8a487f73138321b4a8698f40d1796a85de /sys-libs/glibc | |
parent | ia64 love (diff) | |
download | historical-7b28d8981d4446c2194b623850821481c3d89e1a.tar.gz historical-7b28d8981d4446c2194b623850821481c3d89e1a.tar.bz2 historical-7b28d8981d4446c2194b623850821481c3d89e1a.zip |
Fix double stripping on multilib systems #118207.
Package-Manager: portage-2.1_pre3-r1
Diffstat (limited to 'sys-libs/glibc')
-rw-r--r-- | sys-libs/glibc/ChangeLog | 7 | ||||
-rw-r--r-- | sys-libs/glibc/Manifest | 20 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-2.3.5-r1.ebuild | 49 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-2.3.5-r2.ebuild | 49 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-2.3.5-r3.ebuild | 47 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-2.3.6-r1.ebuild | 47 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-2.3.6-r2.ebuild | 55 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-2.3.6.ebuild | 47 |
8 files changed, 200 insertions, 121 deletions
diff --git a/sys-libs/glibc/ChangeLog b/sys-libs/glibc/ChangeLog index 9317144ab7c8..f422bb464cec 100644 --- a/sys-libs/glibc/ChangeLog +++ b/sys-libs/glibc/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for sys-libs/glibc # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.421 2006/01/07 16:39:57 corsair Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.422 2006/01/13 12:15:53 vapier Exp $ + + 13 Jan 2006; Mike Frysinger <vapier@gentoo.org> glibc-2.3.5-r1.ebuild, + glibc-2.3.5-r2.ebuild, glibc-2.3.5-r3.ebuild, glibc-2.3.6.ebuild, + glibc-2.3.6-r1.ebuild, glibc-2.3.6-r2.ebuild: + Fix double stripping on multilib systems #118207. 07 Jan 2006; Markus Rothe <corsair@gentoo.org> glibc-2.3.6-r2.ebuild: Added ~ppc64 diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest index 46ab2bb96268..3663e493ec90 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -1,7 +1,7 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 -MD5 c014e025d82fd893849cc310469efa6c ChangeLog 87943 +MD5 c3aef7d3f6525c2bb371438cbefc9f7d ChangeLog 88184 MD5 941f13d27badc76c1e3704c59acaff26 files/2.3.1/glibc-2.3.1-ctype-compat-v3.patch 2823 MD5 67b125cec4f1f0d26ce4df706451fee6 files/2.3.1/glibc-2.3.1-fpu-cw-mips.patch 433 MD5 1c4e567ed001f9489e11ee06c1ced0b7 files/2.3.1/glibc-2.3.1-libc_wait-compat.patch 1053 @@ -132,20 +132,20 @@ MD5 e67d64767c058da9a992f207155d0650 glibc-2.3.4.20040808-r1.ebuild 27869 MD5 c9960e58c934162d756bc22d4e0047a9 glibc-2.3.4.20041102-r1.ebuild 34434 MD5 d0501b95beefec42d574b34ef0d0cecb glibc-2.3.4.20041102-r2.ebuild 41390 MD5 dcc9e5194707e88476804f3a43d65517 glibc-2.3.4.20050125-r1.ebuild 39583 -MD5 2eb2b01004d8f68600c5e1aed8fed4ef glibc-2.3.5-r1.ebuild 40647 -MD5 d3760592fdf5d357bf2a4efe96fd285d glibc-2.3.5-r2.ebuild 38973 -MD5 1fee57ba606b9bd25536225f59a2863b glibc-2.3.5-r3.ebuild 39066 +MD5 2c351f21ac2aa94aa3801eeb528dac83 glibc-2.3.5-r1.ebuild 40914 +MD5 b9ee683d414edf5d7ac7b7a7d1d28462 glibc-2.3.5-r2.ebuild 39240 +MD5 8b3c88826ef7d6a8e86e938744ac743b glibc-2.3.5-r3.ebuild 39331 MD5 702c30c61eb97343e09dfde1033342b6 glibc-2.3.5.20050421.ebuild 40128 MD5 7b8266a1773efaae98829ae076e68fe4 glibc-2.3.5.20050722.ebuild 39275 MD5 23af2c26bf05b7b899e05875ebc22af5 glibc-2.3.5.ebuild 40252 -MD5 a09787da5d30d21f39b8865073910774 glibc-2.3.6-r1.ebuild 41913 -MD5 0b741711a143f0dc53840407b1802c5b glibc-2.3.6-r2.ebuild 41932 -MD5 71b3e23c1ecdb8f7a13538ccaaa8eb16 glibc-2.3.6.ebuild 40241 +MD5 eda74bd287fa9fdba859a75db1db5029 glibc-2.3.6-r1.ebuild 42180 +MD5 5aa867ba2a4d45b2c00ab43022b8ceac glibc-2.3.6-r2.ebuild 42683 +MD5 011c18760e5b8e0e104ee159bad15982 glibc-2.3.6.ebuild 40508 MD5 567094e03359ffc1c95af7356395228d metadata.xml 162 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) -iD8DBQFDxFn72+ySkm8kpY0RArKZAJ4zetCe6hzF7OlFP/zS+H6/dY0d2ACgnGzM -+U/OctTjymyizWrJU1dK4bI= -=QvfD +iD8DBQFDx5pf2+ySkm8kpY0RArJ5AJ0VSU9i1/2mgDIuvJeysUxVd+ZcPgCfev6A +R7qq+1m9NDXLYkEUIiHYRU0= +=r4+M -----END PGP SIGNATURE----- diff --git a/sys-libs/glibc/glibc-2.3.5-r1.ebuild b/sys-libs/glibc/glibc-2.3.5-r1.ebuild index 2b8f793629be..554acbbbabb6 100644 --- a/sys-libs/glibc/glibc-2.3.5-r1.ebuild +++ b/sys-libs/glibc/glibc-2.3.5-r1.ebuild @@ -1,6 +1,6 @@ -# Copyright 1999-2005 Gentoo Foundation +# Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.5-r1.ebuild,v 1.47 2005/12/17 00:46:54 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.5-r1.ebuild,v 1.48 2006/01/13 12:15:53 vapier Exp $ # Here's how the cross-compile logic breaks down ... # CTARGET - machine that will target the binaries @@ -379,23 +379,6 @@ toolchain-glibc_src_install() { rm -rf ${D}/nptl fi - # Now, strip everything but the thread libs #46186, as well as the dynamic - # linker, else we cannot set breakpoints in shared libraries. - # Fix for ld-* by Lonnie Princehouse. - mkdir -p ${T}/thread-backup - for x in ${D}$(alt_libdir)/lib{pthread,thread_db}* \ - ${D}$(alt_libdir)/ld-* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/ - done - if want_linuxthreads && want_nptl ; then - mkdir -p ${T}/thread-backup/tls - for x in ${D}$(alt_libdir)/tls/lib{pthread,thread_db}* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/tls - done - fi - env -uRESTRICT CHOST=${CTARGET} prepallstrip - cp -a -- ${T}/thread-backup/* ${D}$(alt_libdir)/ || die - if use pic && [[ $(tc-arch) != "amd64" ]] ; then find ${S}/${buildtarget}/ -name "soinit.os" -exec cp {} ${D}$(alt_libdir)/soinit.o \; find ${S}/${buildtarget}/ -name "sofini.os" -exec cp {} ${D}$(alt_libdir)/sofini.o \; @@ -1247,6 +1230,32 @@ src_test() { toolchain-glibc_src_test } +src_strip() { + # Now, strip everything but the thread libs #46186, as well as the dynamic + # linker, else we cannot set breakpoints in shared libraries due to bugs in + # gdb. Also want to grab stuff in tls subdir. whee. +#when new portage supports this ... +# env \ +# -uRESTRICT \ +# CHOST=${CTARGET} \ +# STRIP_MASK="/*/{,tls/}{ld-,lib{pthread,thread_db}}*" \ +# prepallstrip + pushd "${D}" > /dev/null + + mkdir -p "${T}"/strip-backup + for x in $(find "${D}" -maxdepth 3 \ + '(' -name 'ld-*' -o -name 'libpthread*' -o -name 'libthread_db*' ')' \ + -a '(' '!' -name '*.a' ')' -type f -printf '%P ') + do + mkdir -p "${T}/strip-backup/${x%/*}" + cp -a -- "${D}/${x}" "${T}/strip-backup/${x}" || die "backing up ${x}" + done + env -uRESTRICT CHOST=${CTARGET} prepallstrip + cp -a -- "${T}"/strip-backup/* "${D}"/ || die "restoring non-stripped libs" + + popd > /dev/null +} + src_install() { setup_env @@ -1262,6 +1271,7 @@ src_install() { done ABI=${OABI} unset OABI + src_strip return 0 fi unset MLTEST @@ -1282,6 +1292,7 @@ src_install() { fi toolchain-glibc_src_install + [[ -z ${OABI} ]] && src_strip # Handle stupid lib32 BS on amd64 and ppc64 if [[ -n ${OLD_LIBDIR} ]] ; then diff --git a/sys-libs/glibc/glibc-2.3.5-r2.ebuild b/sys-libs/glibc/glibc-2.3.5-r2.ebuild index e0a7ba45fa9d..83fd946346a0 100644 --- a/sys-libs/glibc/glibc-2.3.5-r2.ebuild +++ b/sys-libs/glibc/glibc-2.3.5-r2.ebuild @@ -1,6 +1,6 @@ -# Copyright 1999-2005 Gentoo Foundation +# Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.5-r2.ebuild,v 1.22 2005/12/17 00:46:54 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.5-r2.ebuild,v 1.23 2006/01/13 12:15:53 vapier Exp $ # Here's how the cross-compile logic breaks down ... # CTARGET - machine that will target the binaries @@ -367,23 +367,6 @@ toolchain-glibc_src_install() { rm -rf ${D}/nptl fi - # Now, strip everything but the thread libs #46186, as well as the dynamic - # linker, else we cannot set breakpoints in shared libraries. - # Fix for ld-* by Lonnie Princehouse. - mkdir -p ${T}/thread-backup - for x in ${D}$(alt_libdir)/lib{pthread,thread_db}* \ - ${D}$(alt_libdir)/ld-* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/ - done - if want_linuxthreads && want_nptl ; then - mkdir -p ${T}/thread-backup/tls - for x in ${D}$(alt_libdir)/tls/lib{pthread,thread_db}* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/tls - done - fi - env -uRESTRICT CHOST=${CTARGET} prepallstrip - cp -a -- ${T}/thread-backup/* ${D}$(alt_libdir)/ || die - if use pic && [[ $(tc-arch) != "amd64" ]] ; then find ${S}/${buildtarget}/ -name "soinit.os" -exec cp {} ${D}$(alt_libdir)/soinit.o \; find ${S}/${buildtarget}/ -name "sofini.os" -exec cp {} ${D}$(alt_libdir)/sofini.o \; @@ -1196,6 +1179,32 @@ src_test() { toolchain-glibc_src_test } +src_strip() { + # Now, strip everything but the thread libs #46186, as well as the dynamic + # linker, else we cannot set breakpoints in shared libraries due to bugs in + # gdb. Also want to grab stuff in tls subdir. whee. +#when new portage supports this ... +# env \ +# -uRESTRICT \ +# CHOST=${CTARGET} \ +# STRIP_MASK="/*/{,tls/}{ld-,lib{pthread,thread_db}}*" \ +# prepallstrip + pushd "${D}" > /dev/null + + mkdir -p "${T}"/strip-backup + for x in $(find "${D}" -maxdepth 3 \ + '(' -name 'ld-*' -o -name 'libpthread*' -o -name 'libthread_db*' ')' \ + -a '(' '!' -name '*.a' ')' -type f -printf '%P ') + do + mkdir -p "${T}/strip-backup/${x%/*}" + cp -a -- "${D}/${x}" "${T}/strip-backup/${x}" || die "backing up ${x}" + done + env -uRESTRICT CHOST=${CTARGET} prepallstrip + cp -a -- "${T}"/strip-backup/* "${D}"/ || die "restoring non-stripped libs" + + popd > /dev/null +} + src_install() { setup_env @@ -1215,6 +1224,7 @@ src_install() { done ABI=${OABI} unset OABI + src_strip return 0 fi fi @@ -1234,6 +1244,7 @@ src_install() { fi toolchain-glibc_src_install + [[ -z ${OABI} ]] && src_strip # Handle stupid lib32 BS on amd64 and ppc64 if [[ -n ${OLD_LIBDIR} ]] ; then diff --git a/sys-libs/glibc/glibc-2.3.5-r3.ebuild b/sys-libs/glibc/glibc-2.3.5-r3.ebuild index 2d7609e960ac..b01329dc382a 100644 --- a/sys-libs/glibc/glibc-2.3.5-r3.ebuild +++ b/sys-libs/glibc/glibc-2.3.5-r3.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.5-r3.ebuild,v 1.12 2006/01/05 19:02:57 gustavoz Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.5-r3.ebuild,v 1.13 2006/01/13 12:15:53 vapier Exp $ # Here's how the cross-compile logic breaks down ... # CTARGET - machine that will target the binaries @@ -372,23 +372,6 @@ toolchain-glibc_src_install() { rm -rf ${D}/nptl fi - # Now, strip everything but the thread libs #46186, as well as the dynamic - # linker, else we cannot set breakpoints in shared libraries. - # Fix for ld-* by Lonnie Princehouse. - mkdir -p ${T}/thread-backup - for x in ${D}$(alt_libdir)/lib{pthread,thread_db}* \ - ${D}$(alt_libdir)/ld-* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/ - done - if want_linuxthreads && want_nptl ; then - mkdir -p ${T}/thread-backup/tls - for x in ${D}$(alt_libdir)/tls/lib{pthread,thread_db}* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/tls - done - fi - env -uRESTRICT CHOST=${CTARGET} prepallstrip - cp -a -- ${T}/thread-backup/* ${D}$(alt_libdir)/ || die - if use pic && [[ $(tc-arch) != "amd64" ]] ; then find ${S}/${buildtarget}/ -name "soinit.os" -exec cp {} ${D}$(alt_libdir)/soinit.o \; find ${S}/${buildtarget}/ -name "sofini.os" -exec cp {} ${D}$(alt_libdir)/sofini.o \; @@ -1200,6 +1183,32 @@ src_test() { toolchain-glibc_src_test } +src_strip() { + # Now, strip everything but the thread libs #46186, as well as the dynamic + # linker, else we cannot set breakpoints in shared libraries due to bugs in + # gdb. Also want to grab stuff in tls subdir. whee. +#when new portage supports this ... +# env \ +# -uRESTRICT \ +# CHOST=${CTARGET} \ +# STRIP_MASK="/*/{,tls/}{ld-,lib{pthread,thread_db}}*" \ +# prepallstrip + pushd "${D}" > /dev/null + + mkdir -p "${T}"/strip-backup + for x in $(find "${D}" -maxdepth 3 \ + '(' -name 'ld-*' -o -name 'libpthread*' -o -name 'libthread_db*' ')' \ + -a '(' '!' -name '*.a' ')' -type f -printf '%P ') + do + mkdir -p "${T}/strip-backup/${x%/*}" + cp -a -- "${D}/${x}" "${T}/strip-backup/${x}" || die "backing up ${x}" + done + env -uRESTRICT CHOST=${CTARGET} prepallstrip + cp -a -- "${T}"/strip-backup/* "${D}"/ || die "restoring non-stripped libs" + + popd > /dev/null +} + src_install() { setup_env @@ -1219,6 +1228,7 @@ src_install() { done ABI=${OABI} unset OABI + src_strip return 0 fi fi @@ -1238,6 +1248,7 @@ src_install() { fi toolchain-glibc_src_install + [[ -z ${OABI} ]] && src_strip # Handle stupid lib32 BS on amd64 and ppc64 if [[ -n ${OLD_LIBDIR} ]] ; then diff --git a/sys-libs/glibc/glibc-2.3.6-r1.ebuild b/sys-libs/glibc/glibc-2.3.6-r1.ebuild index cc761574eb44..7976a7512ad9 100644 --- a/sys-libs/glibc/glibc-2.3.6-r1.ebuild +++ b/sys-libs/glibc/glibc-2.3.6-r1.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.6-r1.ebuild,v 1.10 2006/01/07 03:25:09 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.6-r1.ebuild,v 1.11 2006/01/13 12:15:53 vapier Exp $ # Here's how the cross-compile logic breaks down ... # CTARGET - machine that will target the binaries @@ -418,23 +418,6 @@ toolchain-glibc_src_install() { rm -rf ${D}/nptl fi - # Now, strip everything but the thread libs #46186, as well as the dynamic - # linker, else we cannot set breakpoints in shared libraries. - # Fix for ld-* by Lonnie Princehouse. - mkdir -p ${T}/thread-backup - for x in ${D}$(alt_libdir)/lib{pthread,thread_db}* \ - ${D}$(alt_libdir)/ld-* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/ - done - if want_linuxthreads && want_nptl ; then - mkdir -p ${T}/thread-backup/tls - for x in ${D}$(alt_libdir)/tls/lib{pthread,thread_db}* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/tls - done - fi - env -uRESTRICT CHOST=${CTARGET} prepallstrip - cp -a -- ${T}/thread-backup/* ${D}$(alt_libdir)/ || die - if use pic && [[ $(tc-arch) != "amd64" ]] ; then find ${S}/${buildtarget}/ -name "soinit.os" -exec cp {} ${D}$(alt_libdir)/soinit.o \; find ${S}/${buildtarget}/ -name "sofini.os" -exec cp {} ${D}$(alt_libdir)/sofini.o \; @@ -1273,6 +1256,32 @@ src_test() { toolchain-glibc_src_test } +src_strip() { + # Now, strip everything but the thread libs #46186, as well as the dynamic + # linker, else we cannot set breakpoints in shared libraries due to bugs in + # gdb. Also want to grab stuff in tls subdir. whee. +#when new portage supports this ... +# env \ +# -uRESTRICT \ +# CHOST=${CTARGET} \ +# STRIP_MASK="/*/{,tls/}{ld-,lib{pthread,thread_db}}*" \ +# prepallstrip + pushd "${D}" > /dev/null + + mkdir -p "${T}"/strip-backup + for x in $(find "${D}" -maxdepth 3 \ + '(' -name 'ld-*' -o -name 'libpthread*' -o -name 'libthread_db*' ')' \ + -a '(' '!' -name '*.a' ')' -type f -printf '%P ') + do + mkdir -p "${T}/strip-backup/${x%/*}" + cp -a -- "${D}/${x}" "${T}/strip-backup/${x}" || die "backing up ${x}" + done + env -uRESTRICT CHOST=${CTARGET} prepallstrip + cp -a -- "${T}"/strip-backup/* "${D}"/ || die "restoring non-stripped libs" + + popd > /dev/null +} + src_install() { setup_env @@ -1292,6 +1301,7 @@ src_install() { done ABI=${OABI} unset OABI + src_strip return 0 fi fi @@ -1315,6 +1325,7 @@ src_install() { else toolchain-glibc_src_install fi + [[ -z ${OABI} ]] && src_strip # Handle stupid lib32 BS on amd64 and ppc64 if [[ -n ${OLD_LIBDIR} ]] ; then diff --git a/sys-libs/glibc/glibc-2.3.6-r2.ebuild b/sys-libs/glibc/glibc-2.3.6-r2.ebuild index 126ad8bf5d73..90d2e166966c 100644 --- a/sys-libs/glibc/glibc-2.3.6-r2.ebuild +++ b/sys-libs/glibc/glibc-2.3.6-r2.ebuild @@ -1,6 +1,14 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.6-r2.ebuild,v 1.5 2006/01/07 16:39:58 corsair Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.6-r2.ebuild,v 1.6 2006/01/13 12:15:53 vapier Exp $ + +# TODO: +# - fix warning from glibc build system: +# /var/tmp/portage/glibc-2.3.6-r2/work/build-x86-x86_64-pc-linux-gnu-nptl/elf/ldconfig: Can't open configuration file /etc/ld.so.conf: No such file or directory +# - fix warning from ebuild (amd64 multilib): +# mv: cannot stat `/var/tmp/portage/glibc-2.3.6-r2/image//usr/lib32/locale': No such file or directory +# - glibc installs a bunch of lib64 stuff into /usr/lib: +# qlist glibc | grep ^/usr/lib/ | grep -v /debug/ # Here's how the cross-compile logic breaks down ... # CTARGET - machine that will target the binaries @@ -418,23 +426,6 @@ toolchain-glibc_src_install() { rm -rf ${D}/nptl fi - # Now, strip everything but the thread libs #46186, as well as the dynamic - # linker, else we cannot set breakpoints in shared libraries. - # Fix for ld-* by Lonnie Princehouse. - mkdir -p ${T}/thread-backup - for x in ${D}$(alt_libdir)/lib{pthread,thread_db}* \ - ${D}$(alt_libdir)/ld-* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/ - done - if want_linuxthreads && want_nptl ; then - mkdir -p ${T}/thread-backup/tls - for x in ${D}$(alt_libdir)/tls/lib{pthread,thread_db}* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/tls - done - fi - env -uRESTRICT CHOST=${CTARGET} prepallstrip - cp -a -- ${T}/thread-backup/* ${D}$(alt_libdir)/ || die - if use pic && [[ $(tc-arch) != "amd64" ]] ; then find ${S}/${buildtarget}/ -name "soinit.os" -exec cp {} ${D}$(alt_libdir)/soinit.o \; find ${S}/${buildtarget}/ -name "sofini.os" -exec cp {} ${D}$(alt_libdir)/sofini.o \; @@ -1273,6 +1264,32 @@ src_test() { toolchain-glibc_src_test } +src_strip() { + # Now, strip everything but the thread libs #46186, as well as the dynamic + # linker, else we cannot set breakpoints in shared libraries due to bugs in + # gdb. Also want to grab stuff in tls subdir. whee. +#when new portage supports this ... +# env \ +# -uRESTRICT \ +# CHOST=${CTARGET} \ +# STRIP_MASK="/*/{,tls/}{ld-,lib{pthread,thread_db}}*" \ +# prepallstrip + pushd "${D}" > /dev/null + + mkdir -p "${T}"/strip-backup + for x in $(find "${D}" -maxdepth 3 \ + '(' -name 'ld-*' -o -name 'libpthread*' -o -name 'libthread_db*' ')' \ + -a '(' '!' -name '*.a' ')' -type f -printf '%P ') + do + mkdir -p "${T}/strip-backup/${x%/*}" + cp -a -- "${D}/${x}" "${T}/strip-backup/${x}" || die "backing up ${x}" + done + env -uRESTRICT CHOST=${CTARGET} prepallstrip + cp -a -- "${T}"/strip-backup/* "${D}"/ || die "restoring non-stripped libs" + + popd > /dev/null +} + src_install() { setup_env @@ -1292,6 +1309,7 @@ src_install() { done ABI=${OABI} unset OABI + src_strip return 0 fi fi @@ -1315,6 +1333,7 @@ src_install() { else toolchain-glibc_src_install fi + [[ -z ${OABI} ]] && src_strip # Handle stupid lib32 BS on amd64 and ppc64 if [[ -n ${OLD_LIBDIR} ]] ; then diff --git a/sys-libs/glibc/glibc-2.3.6.ebuild b/sys-libs/glibc/glibc-2.3.6.ebuild index 79603e94369a..56723ffecd14 100644 --- a/sys-libs/glibc/glibc-2.3.6.ebuild +++ b/sys-libs/glibc/glibc-2.3.6.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.6.ebuild,v 1.11 2006/01/07 03:25:09 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.6.ebuild,v 1.12 2006/01/13 12:15:53 vapier Exp $ # Here's how the cross-compile logic breaks down ... # CTARGET - machine that will target the binaries @@ -385,23 +385,6 @@ toolchain-glibc_src_install() { rm -rf ${D}/nptl fi - # Now, strip everything but the thread libs #46186, as well as the dynamic - # linker, else we cannot set breakpoints in shared libraries. - # Fix for ld-* by Lonnie Princehouse. - mkdir -p ${T}/thread-backup - for x in ${D}$(alt_libdir)/lib{pthread,thread_db}* \ - ${D}$(alt_libdir)/ld-* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/ - done - if want_linuxthreads && want_nptl ; then - mkdir -p ${T}/thread-backup/tls - for x in ${D}$(alt_libdir)/tls/lib{pthread,thread_db}* ; do - [[ -f ${x} ]] && mv -f ${x} ${T}/thread-backup/tls - done - fi - env -uRESTRICT CHOST=${CTARGET} prepallstrip - cp -a -- ${T}/thread-backup/* ${D}$(alt_libdir)/ || die - if use pic && [[ $(tc-arch) != "amd64" ]] ; then find ${S}/${buildtarget}/ -name "soinit.os" -exec cp {} ${D}$(alt_libdir)/soinit.o \; find ${S}/${buildtarget}/ -name "sofini.os" -exec cp {} ${D}$(alt_libdir)/sofini.o \; @@ -1226,6 +1209,32 @@ src_test() { toolchain-glibc_src_test } +src_strip() { + # Now, strip everything but the thread libs #46186, as well as the dynamic + # linker, else we cannot set breakpoints in shared libraries due to bugs in + # gdb. Also want to grab stuff in tls subdir. whee. +#when new portage supports this ... +# env \ +# -uRESTRICT \ +# CHOST=${CTARGET} \ +# STRIP_MASK="/*/{,tls/}{ld-,lib{pthread,thread_db}}*" \ +# prepallstrip + pushd "${D}" > /dev/null + + mkdir -p "${T}"/strip-backup + for x in $(find "${D}" -maxdepth 3 \ + '(' -name 'ld-*' -o -name 'libpthread*' -o -name 'libthread_db*' ')' \ + -a '(' '!' -name '*.a' ')' -type f -printf '%P ') + do + mkdir -p "${T}/strip-backup/${x%/*}" + cp -a -- "${D}/${x}" "${T}/strip-backup/${x}" || die "backing up ${x}" + done + env -uRESTRICT CHOST=${CTARGET} prepallstrip + cp -a -- "${T}"/strip-backup/* "${D}"/ || die "restoring non-stripped libs" + + popd > /dev/null +} + src_install() { setup_env @@ -1245,6 +1254,7 @@ src_install() { done ABI=${OABI} unset OABI + src_strip return 0 fi fi @@ -1264,6 +1274,7 @@ src_install() { fi toolchain-glibc_src_install + [[ -z ${OABI} ]] && src_strip # Handle stupid lib32 BS on amd64 and ppc64 if [[ -n ${OLD_LIBDIR} ]] ; then |