aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hjalmarsson <xake@rymdraket.net>2010-01-24 10:52:34 +0100
committerPeter Hjalmarsson <xake@rymdraket.net>2010-01-24 10:52:34 +0100
commitf15381b6a0ac619b563f038b969affccee36e397 (patch)
tree9dc7b72ff63aefb83c95ce731f630181fe0fc06c /eclass/toolchain.eclass
parentUpdated the sys-devel/gdb ebuild to use weekly build (diff)
downloadhardened-dev-f15381b6a0ac619b563f038b969affccee36e397.tar.gz
hardened-dev-f15381b6a0ac619b563f038b969affccee36e397.tar.bz2
hardened-dev-f15381b6a0ac619b563f038b969affccee36e397.zip
Reflect changes from portage
Diffstat (limited to 'eclass/toolchain.eclass')
-rw-r--r--eclass/toolchain.eclass22
1 files changed, 9 insertions, 13 deletions
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 9cb4648f..c000741b 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.411 2009/12/04 15:00:47 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.416 2010/01/09 20:42:19 vapier Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -151,7 +151,7 @@ else
# gcc-{nios2,bfin} don't accept these
if [[ ${PN} == "gcc" ]] ; then
- IUSE="${IUSE} ip28 ip32r10k n32 n64"
+ IUSE="${IUSE} n32 n64"
fi
tc_version_is_at_least "4.0" && IUSE="${IUSE} objc-gc mudflap"
@@ -999,6 +999,9 @@ gcc-compiler_pkg_postrm() {
[[ ${ROOT} != "/" ]] && return 0
if [[ ! -e ${LIBPATH}/libstdc++.so ]] ; then
+ # make sure the profile is sane during same-slot upgrade #289403
+ do_gcc_config
+
einfo "Running 'fix_libtool_files.sh ${GCC_RELEASE_VER}'"
/sbin/fix_libtool_files.sh ${GCC_RELEASE_VER}
if [[ -n ${BRANCH_UPDATE} ]] ; then
@@ -1153,7 +1156,6 @@ gcc_src_unpack() {
if [[ ${GCCMAJOR}.${GCCMINOR} > 4.0 ]] ; then
if [[ -n ${SNAPSHOT} || -n ${PRERELEASE} ]] ; then
echo ${PV/_/-} > "${S}"/gcc/BASE-VER
- echo "" > "${S}"/gcc/DATESTAMP
fi
fi
@@ -1973,16 +1975,11 @@ gcc_slot_java() {
[[ -f ${D}${PREFIX}/lib/libgcj.spec ]] && \
mv -f "${D}"${PREFIX}/lib/libgcj.spec "${D}"${LIBPATH}/libgcj.spec
+ # SLOT up libgcj.pc (and let gcc-config worry about links)
local libgcj=$(find "${D}"${PREFIX}/lib/pkgconfig/ -name 'libgcj*.pc')
if [[ -n ${libgcj} ]] ; then
- if is_crosscompile ; then
- # Simply remove the libgcj.pc file for cross-compilers
- rm "${libgcj}" || die
- else
- # SLOT up libgcj.pc (and let gcc-config worry about links)
- sed -i "/^libdir=/s:=.*:=${LIBPATH}:" "${libgcj}"
- mv "${libgcj}" "${D}"/usr/lib/pkgconfig/libgcj-${GCC_PV}.pc || die
- fi
+ sed -i "/^libdir=/s:=.*:=${LIBPATH}:" "${libgcj}"
+ mv "${libgcj}" "${D}"/usr/lib/pkgconfig/libgcj-${GCC_PV}.pc || die
fi
# Rename jar because it could clash with Kaffe's jar if this gcc is
@@ -2371,8 +2368,7 @@ do_gcc_config() {
local current_gcc_config="" current_specs="" use_specs=""
- # We grep out any possible errors
- current_gcc_config=$(env -i ROOT="${ROOT}" gcc-config -c ${CTARGET} | grep -v '^ ')
+ current_gcc_config=$(env -i ROOT="${ROOT}" gcc-config -c ${CTARGET} 2>/dev/null)
if [[ -n ${current_gcc_config} ]] ; then
# figure out which specs-specific config is active
current_specs=$(gcc-config -S ${current_gcc_config} | awk '{print $3}')