diff options
author | Mike Frysinger <vapier@gentoo.org> | 2005-09-21 03:23:02 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2005-09-21 03:23:02 +0000 |
commit | f00dab6d8036a61883a3daab10548bd5728e050f (patch) | |
tree | eda6b8cb383701473c0f06bc10d8a14f45671079 /sys-libs | |
parent | Stable on SPARC. (diff) | |
download | gentoo-2-f00dab6d8036a61883a3daab10548bd5728e050f.tar.gz gentoo-2-f00dab6d8036a61883a3daab10548bd5728e050f.tar.bz2 gentoo-2-f00dab6d8036a61883a3daab10548bd5728e050f.zip |
Rework ABI handling for cross-compiles so mips n32/n64 works now with mips64 targets.
(Portage version: 2.0.52-r1 http://ronaldmcnightrider.ytmnd.com/ )
Diffstat (limited to 'sys-libs')
-rw-r--r-- | sys-libs/glibc/ChangeLog | 6 | ||||
-rw-r--r-- | sys-libs/glibc/files/digest-glibc-2.3.5-r1 | 2 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-2.3.5-r1.ebuild | 48 |
3 files changed, 29 insertions, 27 deletions
diff --git a/sys-libs/glibc/ChangeLog b/sys-libs/glibc/ChangeLog index 27af715e0c5c..0775ffdda2e1 100644 --- a/sys-libs/glibc/ChangeLog +++ b/sys-libs/glibc/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for sys-libs/glibc # Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.388 2005/09/21 02:16:31 geoman Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.389 2005/09/21 03:23:02 vapier Exp $ + + 21 Sep 2005; Mike Frysinger <vapier@gentoo.org> glibc-2.3.5-r1.ebuild: + Rework ABI handling for cross-compiles so mips n32/n64 works now with mips64 + targets. 21 Sep 2005; Stephen P. Becker <geoman@gentoo.org> glibc-2.3.5.20050722.ebuild: diff --git a/sys-libs/glibc/files/digest-glibc-2.3.5-r1 b/sys-libs/glibc/files/digest-glibc-2.3.5-r1 index 65dca39e1143..d726b72e2541 100644 --- a/sys-libs/glibc/files/digest-glibc-2.3.5-r1 +++ b/sys-libs/glibc/files/digest-glibc-2.3.5-r1 @@ -1,7 +1,7 @@ MD5 93d9c51850e0513aa4846ac0ddcef639 glibc-2.3.5.tar.bz2 13583139 MD5 77011b0898393c56b799bc011a0f37bf glibc-linuxthreads-2.3.5.tar.bz2 236946 MD5 86ae1273e22af8766297ec21c0232743 glibc-libidn-2.3.5.tar.bz2 101118 -MD5 1ee2b94d302454e2c83363351bef1480 glibc-2.3.5-patches-1.9.tar.bz2 24485 +MD5 596ba3b7c1533644d78bf861b5d2fb9d glibc-2.3.5-patches-1.10.tar.bz2 24905 MD5 8c9a699dc6c24afe646ab4fba121a486 glibc-manpages-2.3.5.tar.bz2 22148 MD5 893b344ace4f554f5c31b614ec7ab003 glibc-infopages-2.3.5.tar.bz2 1273846 MD5 2c183c16b572f533d07525472d64cdc7 glibc-fedora-20041219T2331.tar.bz2 761998 diff --git a/sys-libs/glibc/glibc-2.3.5-r1.ebuild b/sys-libs/glibc/glibc-2.3.5-r1.ebuild index 44dc817a890d..3b816c97ec96 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 # 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.30 2005/09/18 16:21:57 hansmi Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.5-r1.ebuild,v 1.31 2005/09/21 03:23:02 vapier Exp $ # Here's how the cross-compile logic breaks down ... # CTARGET - machine that will target the binaries @@ -27,7 +27,7 @@ GLIBC_MANPAGE_VERSION="2.3.5" GLIBC_INFOPAGE_VERSION="2.3.5" # Gentoo patchset -PATCH_VER="1.9" +PATCH_VER="1.10" # C Stubbs addon (contained in fedora, so ignoring) #CSTUBS_VER="2.1.2" @@ -285,8 +285,6 @@ toolchain-glibc_pkg_preinst() { } toolchain-glibc_src_install() { - setup_flags - # Need to dodir first because it might not exist (bad amd64 profiles) dodir $(alt_usrlibdir) @@ -848,8 +846,6 @@ setup_locales() { glibc_do_configure() { local myconf - setup_flags - # These should not be set, else the # zoneinfo do not always get installed ... unset LANGUAGE LANG LC_ALL @@ -966,12 +962,10 @@ use_multilib() { } # Setup toolchain variables that would be defined in the profiles for these archs. -crosscompile_setup() { - if is_crosscompile || tc-is-cross-compiler; then - # CFLAGS are used by ${CTARGET}-gcc - local VAR="CFLAGS_"${CTARGET//-/_} - CFLAGS=${!VAR-"-O2"} +setup_env() { + setup_flags + if is_crosscompile || tc-is-cross-compiler ; then case ${CTARGET} in x86_64*) export CFLAGS_x86=${CFLAGS_x86--m32} @@ -990,17 +984,17 @@ crosscompile_setup() { mips64*) export CFLAGS_o32=${CFLAGS_o32--mabi=32} export CHOST_o32=${CTARGET/mips64/mips} - export CDEFINE_o32="_ABIO32" + export CDEFINE_o32="_MIPS_SIM == _ABIO32" export LIBDIR_o32="lib" export CFLAGS_n32=${CFLAGS_n32--mabi=n32} export CHOST_n32=${CTARGET} - export CDEFINE_n32="_ABIN32" + export CDEFINE_n32="_MIPS_SIM == _ABIN32" export LIBDIR_n32="lib32" export CFLAGS_n64=${CFLAGS_n64--mabi=64} export CHOST_n64=${CTARGET} - export CDEFINE_n64="_ABI64" + export CDEFINE_n64="_MIPS_SIM == _ABI64" export LIBDIR_n64="lib64" export MULTILIB_ABIS="n64 n32" @@ -1038,8 +1032,17 @@ crosscompile_setup() { export MULTILIB_ABIS="default" export DEFAULT_ABI="default" esac + fi + + export ABI=${ABI:-${DEFAULT_ABI:-default}} - ABI=${DEFAULT_ABI} + if is_crosscompile || tc-is-cross-compiler ; then + # We need to export CFLAGS with abi information in them because + # glibc's configure script checks CFLAGS for some targets (like mips) + local VAR=CFLAGS_${CTARGET//-/_} + export CFLAGS=${!VAR--O2} + VAR=CFLAGS_${ABI} + export CFLAGS="${CFLAGS} ${!VAR}" fi } @@ -1112,8 +1115,7 @@ pkg_setup() { } src_unpack() { - crosscompile_setup - export ABI="${DEFAULT_ABI}" + setup_env case $(tc-arch) in hppa) @@ -1183,7 +1185,7 @@ src_unpack() { } src_compile() { - crosscompile_setup + setup_env if [[ -z ${OABI} ]] && has_multilib_profile ; then # MULTILIB-CLEANUP: Fix this when FEATURES=multilib-pkg is in portage @@ -1192,7 +1194,7 @@ src_compile() { OABI=${ABI} einfo "Building multilib glibc for ABIs: $(get_install_abis)" for ABI in $(get_install_abis) ; do - export ABI=${ABI} + export ABI src_compile done ABI=${OABI} @@ -1202,12 +1204,11 @@ src_compile() { unset MLTEST fi - ABI=${ABI:-default} toolchain-glibc_src_compile } src_test() { - crosscompile_setup + setup_env if [[ -z ${OABI} ]] && has_multilib_profile ; then # MULTILIB-CLEANUP: Fix this when FEATURES=multilib-pkg is in portage @@ -1227,12 +1228,11 @@ src_test() { unset MLTEST fi - ABI=${ABI:-default} toolchain-glibc_src_test } src_install() { - crosscompile_setup + setup_env if [[ -z ${OABI} ]] && has_multilib_profile ; then # MULTILIB-CLEANUP: Fix this when FEATURES=multilib-pkg is in portage @@ -1251,8 +1251,6 @@ src_install() { unset MLTEST fi - ABI=${ABI:-default} - # Handle stupid lib32 BS unset OLD_LIBDIR if ! is_crosscompile ; then |