summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-12-05 06:24:01 +0000
committerMike Frysinger <vapier@gentoo.org>2005-12-05 06:24:01 +0000
commit8bf24b91edbc5bd89298479cc4d921571dbca5b9 (patch)
tree483176d8be9b3c27373956f10b26a380d8e58b93 /eclass/toolchain.eclass
parentVersion bump #113623 by Nickolay Kolchin-Semyonov. (diff)
downloadgentoo-2-8bf24b91edbc5bd89298479cc4d921571dbca5b9.tar.gz
gentoo-2-8bf24b91edbc5bd89298479cc4d921571dbca5b9.tar.bz2
gentoo-2-8bf24b91edbc5bd89298479cc4d921571dbca5b9.zip
use the multilib.out file generated by the gcc build system itself and pass -B when trying to calc the multilib paths like gcc build files does
Diffstat (limited to 'eclass/toolchain.eclass')
-rw-r--r--eclass/toolchain.eclass15
1 files changed, 8 insertions, 7 deletions
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index ba4d9f52890a..476c6a727694 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -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/eclass/toolchain.eclass,v 1.226 2005/12/05 05:04:28 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.227 2005/12/05 06:24:01 vapier Exp $
HOMEPAGE="http://www.gnu.org/software/gcc/gcc.html"
LICENSE="GPL-2 LGPL-2.1"
@@ -661,7 +661,7 @@ create_gcc_env_entry() {
# XXX: This breaks when cross-compiling a native compiler (CBUILD != CHOST)
local abi=${DEFAULT_ABI}
- local MULTIDIR=$(${XGCC} $(get_abi_CFLAGS ${abi}) --print-multi-directory)
+ local MULTIDIR=$(${XGCC} -B./ $(get_abi_CFLAGS ${abi}) --print-multi-directory)
if [[ ${MULTIDIR} == "." ]] ; then
LDPATH=${LIBPATH}
else
@@ -671,7 +671,7 @@ create_gcc_env_entry() {
for abi in $(get_all_abis) ; do
[[ ${abi} == ${DEFAULT_ABI} ]] && continue
- MULTIDIR=$(${XGCC} $(get_abi_CFLAGS ${abi}) --print-multi-directory)
+ MULTIDIR=$(${XGCC} -B./ $(get_abi_CFLAGS ${abi}) --print-multi-directory)
if [[ ${MULTIDIR} == "." ]] ; then
LDPATH=${LDPATH}:${LIBPATH}
else
@@ -739,7 +739,7 @@ add_profile_eselect_conf() {
fi
fi
- local MULTIDIR=$(${XGCC} $(get_abi_CFLAGS ${abi}) --print-multi-directory)
+ local MULTIDIR=$(${XGCC} -B./ $(get_abi_CFLAGS ${abi}) --print-multi-directory)
local LDPATH=${LIBPATH}
if [[ ${MULTIDIR} != "." ]] ; then
LDPATH="${LIBPATH}/${MULTIDIR}"
@@ -1659,13 +1659,14 @@ gcc-compiler_src_install() {
gcc_movelibs() {
# XXX: This breaks when cross-compiling a native compiler (CBUILD != CHOST)
+ local multilibout=$(<multilib.out) || die "could not read multilib.out"
local multiarg
- for multiarg in $(${XGCC} -print-multi-lib) ; do
+ for multiarg in ${multilibout} ; do
multiarg=${multiarg#*;}
multiarg=${multiarg//@/-}
- local OS_MULTIDIR=$(${XGCC} ${multiarg} --print-multi-os-directory)
- local MULTIDIR=$(${XGCC} ${multiarg} --print-multi-directory)
+ local OS_MULTIDIR=$(${XGCC} -B./ ${multiarg} --print-multi-os-directory)
+ local MULTIDIR=$(${XGCC} -B./ ${multiarg} --print-multi-directory)
local TODIR=${D}${LIBPATH}/${MULTIDIR}
local FROMDIR=