* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2011-11-21 1:43 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2011-11-21 1:43 UTC (permalink / raw
To: gentoo-commits
dirtyepic 11/11/21 01:43:44
Modified: ChangeLog toolchain.eclass
Log:
Fix live ebuilds.
Revision Changes Path
1.21 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.21&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.21&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.20&r2=1.21
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- ChangeLog 19 Nov 2011 20:52:50 -0000 1.20
+++ ChangeLog 21 Nov 2011 01:43:44 -0000 1.21
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.20 2011/11/19 20:52:50 pesa Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.21 2011/11/21 01:43:44 dirtyepic Exp $
+
+ 21 Nov 2011; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Fix live ebuilds.
19 Nov 2011; Davide Pesavento <pesa@gentoo.org> qt4-build.eclass:
Add dependency on dev-util/pkgconfig (#385835 and #387783).
1.481 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.481&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.481&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.480&r2=1.481
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.480
retrieving revision 1.481
diff -u -r1.480 -r1.481
--- toolchain.eclass 20 Nov 2011 20:12:47 -0000 1.480
+++ toolchain.eclass 21 Nov 2011 01:43:44 -0000 1.481
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.480 2011/11/20 20:12:47 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.481 2011/11/21 01:43:44 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -933,7 +933,7 @@
[[ -z ${UCLIBC_VER} ]] && [[ ${CTARGET} == *-uclibc* ]] && die "Sorry, this version does not support uClibc"
- gcc_quick_unpack
+ [[ -z ${GCC_SVN} ]] && gcc_quick_unpack
exclude_gcc_patches
cd "${S}"
@@ -995,7 +995,7 @@
gcc_version_patch
if [[ ${GCCMAJOR}.${GCCMINOR} > 4.0 ]] ; then
- if [[ -n ${SNAPSHOT} || -n ${PRERELEASE} ]] ; then
+ if [[ -n ${SNAPSHOT} || -n ${PRERELEASE} || -n ${GCC_SVN} ]] ; then
echo ${PV/_/-} > "${S}"/gcc/BASE-VER
fi
fi
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2011-12-07 0:29 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2011-12-07 0:29 UTC (permalink / raw
To: gentoo-commits
dirtyepic 11/12/07 00:29:38
Modified: ChangeLog toolchain.eclass
Log:
Disappear disappeared devs.
Revision Changes Path
1.36 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.36&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.36&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.35&r2=1.36
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- ChangeLog 5 Dec 2011 07:07:44 -0000 1.35
+++ ChangeLog 7 Dec 2011 00:29:38 -0000 1.36
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.35 2011/12/05 07:07:44 floppym Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.36 2011/12/07 00:29:38 dirtyepic Exp $
+
+ 07 Dec 2011; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Disappear disappeared devs.
05 Dec 2011; Mike Gilbert <floppym@gentoo.org> java-vm-2.eclass:
Add semicolon to fix ferringb's last change.
1.506 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.506&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.506&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.505&r2=1.506
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.505
retrieving revision 1.506
diff -u -r1.505 -r1.506
--- toolchain.eclass 6 Dec 2011 22:12:41 -0000 1.505
+++ toolchain.eclass 7 Dec 2011 00:29:38 -0000 1.506
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.505 2011/12/06 22:12:41 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.506 2011/12/07 00:29:38 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -243,11 +243,12 @@
# HTB_GCC_VER to that version of gcc.
#
gentoo_urls() {
- local devspace="HTTP~lv/GCC/URI HTTP~eradicator/gcc/URI HTTP~vapier/dist/URI
- HTTP~halcy0n/patches/URI HTTP~zorry/patches/gcc/URI HTTP~dirtyepic/dist/URI"
+ local devspace="HTTP~vapier/dist/URI HTTP~dirtyepic/dist/URI
+ HTTP~halcy0n/patches/URI HTTP~zorry/patches/gcc/URI"
devspace=${devspace//HTTP/http:\/\/dev.gentoo.org\/}
echo mirror://gentoo/$1 ${devspace//URI/$1}
}
+
get_gcc_src_uri() {
export PATCH_GCC_VER=${PATCH_GCC_VER:-${GCC_RELEASE_VER}}
export UCLIBC_GCC_VER=${UCLIBC_GCC_VER:-${PATCH_GCC_VER}}
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2012-01-17 16:05 Magnus Granberg (zorry)
0 siblings, 0 replies; 58+ messages in thread
From: Magnus Granberg (zorry) @ 2012-01-17 16:05 UTC (permalink / raw
To: gentoo-commits
zorry 12/01/17 16:05:59
Modified: ChangeLog toolchain.eclass
Log:
Add HARD_CFLAGS to CXXFLAGS on toolchain.eclass
Revision Changes Path
1.94 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.94&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.94&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.93&r2=1.94
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.93
retrieving revision 1.94
diff -u -r1.93 -r1.94
--- ChangeLog 17 Jan 2012 11:20:03 -0000 1.93
+++ ChangeLog 17 Jan 2012 16:05:59 -0000 1.94
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.93 2012/01/17 11:20:03 johu Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.94 2012/01/17 16:05:59 zorry Exp $
+
+ 17 Jan 2012; Magnus Granberg <zorry@gentoo.org> toolchain.eclass:
+ Add HARD_CFLAGS to ALL_CXXFLAGS for hardened gcc 4.7
17 Jan 2012; Johannes Huber <johu@gentoo.org> kde4-base.eclass:
Drop kdeenablefinal build feature. Fix source uri calc for KDE SC 4.7.97 aka
1.515 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.515&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.515&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.514&r2=1.515
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.514
retrieving revision 1.515
diff -u -r1.514 -r1.515
--- toolchain.eclass 16 Dec 2011 18:44:34 -0000 1.514
+++ toolchain.eclass 17 Jan 2012 16:05:59 -0000 1.515
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.514 2011/12/16 18:44:34 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.515 2012/01/17 16:05:59 zorry Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1775,11 +1775,18 @@
EPATCH_MULTI_MSG="Applying default pie patches ..." \
epatch "${WORKDIR}"/piepatch/def
fi
- # we want to be able to control the pie patch logic via something other
- # than ALL_CFLAGS...
- sed -e '/^ALL_CFLAGS/iHARD_CFLAGS = ' \
- -e 's|^ALL_CFLAGS = |ALL_CFLAGS = $(HARD_CFLAGS) |' \
- -i "${S}"/gcc/Makefile.in
+
+ # we want to be able to control the pie patch logic via something other
+ # than ALL_CFLAGS...
+ sed -e '/^ALL_CFLAGS/iHARD_CFLAGS = ' \
+ -e 's|^ALL_CFLAGS = |ALL_CFLAGS = $(HARD_CFLAGS) |' \
+ -i "${S}"/gcc/Makefile.in
+ # Need to add HARD_CFLAGS to ALL_CXXFLAGS on >= 4.7
+ if tc_version_is_at_least 4.7.0 ; then
+ sed -e '/^ALL_CXXFLAGS/iHARD_CFLAGS = ' \
+ -e 's|^ALL_CXXFLAGS = |ALL_CXXFLAGS = $(HARD_CFLAGS) |' \
+ -i "${S}"/gcc/Makefile.in
+ fi
BRANDING_GCC_PKGVERSION="${BRANDING_GCC_PKGVERSION}, pie-${PIE_VER}"
}
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2012-02-12 14:17 Magnus Granberg (zorry)
0 siblings, 0 replies; 58+ messages in thread
From: Magnus Granberg (zorry) @ 2012-02-12 14:17 UTC (permalink / raw
To: gentoo-commits
zorry 12/02/12 14:17:33
Modified: ChangeLog toolchain.eclass
Log:
Fix bug 301299 for gcc
Revision Changes Path
1.129 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.129&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.129&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.128&r2=1.129
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.128
retrieving revision 1.129
diff -u -r1.128 -r1.129
--- ChangeLog 12 Feb 2012 00:20:54 -0000 1.128
+++ ChangeLog 12 Feb 2012 14:17:33 -0000 1.129
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.128 2012/02/12 00:20:54 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.129 2012/02/12 14:17:33 zorry Exp $
+
+ 12 Feb 2012; Magnus Granberg <zorry@gentoo.org> toolchain.eclass:
+ PaX mark cc1 and cc1plus for bug 301299
12 Feb 2012; Robin H. Johnson <robbat2@gentoo.org> autotools.eclass:
Provide a way to run eautoreconf without automake by using
1.516 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.516&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.516&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.515&r2=1.516
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.515
retrieving revision 1.516
diff -u -r1.515 -r1.516
--- toolchain.eclass 17 Jan 2012 16:05:59 -0000 1.515
+++ toolchain.eclass 12 Feb 2012 14:17:33 -0000 1.516
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.515 2012/01/17 16:05:59 zorry Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.516 2012/02/12 14:17:33 zorry Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -9,7 +9,7 @@
LICENSE="GPL-2 LGPL-2.1"
RESTRICT="strip" # cross-compilers need controlled stripping
-inherit eutils versionator libtool toolchain-funcs flag-o-matic gnuconfig multilib fixheadtails
+inherit eutils versionator libtool toolchain-funcs flag-o-matic gnuconfig multilib fixheadtails pax-utils
EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test pkg_preinst src_install pkg_postinst pkg_prerm pkg_postrm
DESCRIPTION="Based on the ${ECLASS} eclass"
@@ -1585,6 +1585,12 @@
# Don't scan .gox files for executable stacks - false positives
export QA_EXECSTACK="usr/lib*/go/*/*.gox"
export QA_WX_LOAD="usr/lib*/go/*/*.gox"
+
+ # Disable RANDMMAP so PCH works. #301299
+ if tc_version_is_at_least 4.3 ; then
+ pax-mark -r "${D}${PREFIX}/libexec/gcc/${CTARGET}/${GCC_CONFIG_VER}/cc1"
+ pax-mark -r "${D}${PREFIX}/libexec/gcc/${CTARGET}/${GCC_CONFIG_VER}/cc1plus"
+ fi
}
gcc_slot_java() {
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2012-02-20 7:18 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2012-02-20 7:18 UTC (permalink / raw
To: gentoo-commits
dirtyepic 12/02/20 07:18:47
Modified: ChangeLog toolchain.eclass
Log:
Require dev-libs/ppl-0.11 now that it's stable (bug #396569). Drop cloog-ppl include path workaround as we've required 0.15.0 for a while now.
Revision Changes Path
1.138 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.138&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.138&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.137&r2=1.138
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.137
retrieving revision 1.138
diff -u -r1.137 -r1.138
--- ChangeLog 20 Feb 2012 02:54:21 -0000 1.137
+++ ChangeLog 20 Feb 2012 07:18:47 -0000 1.138
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.137 2012/02/20 02:54:21 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.138 2012/02/20 07:18:47 dirtyepic Exp $
+
+ 20 Feb 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Require dev-libs/ppl-0.11 now that it's stable (bug #396569). Drop cloog-ppl
+ include path workaround as we've required 0.15.0 for a while now.
20 Feb 2012; Robin H. Johnson <robbat2@gentoo.org> autotools.eclass:
Remove my WANT_AUTOMAKE=none overloading in eautomake and instead introduce
1.517 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.517&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.517&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.516&r2=1.517
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.516
retrieving revision 1.517
diff -u -r1.516 -r1.517
--- toolchain.eclass 12 Feb 2012 14:17:33 -0000 1.516
+++ toolchain.eclass 20 Feb 2012 07:18:47 -0000 1.517
@@ -1,6 +1,6 @@
-# Copyright 1999-2011 Gentoo Foundation
+# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.516 2012/02/12 14:17:33 zorry Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.517 2012/02/20 07:18:47 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -138,7 +138,7 @@
RDEPEND+="
graphite? (
>=dev-libs/cloog-ppl-0.15.10
- >=dev-libs/ppl-0.10
+ >=dev-libs/ppl-0.11
)"
fi
@@ -1070,12 +1070,7 @@
confgcc+=" $(use_with graphite cloog)"
if use graphite; then
confgcc+=" --disable-ppl-version-check"
- # this will be removed when cloog-ppl-0.15.10 goes stable
- if has_version '>=dev-libs/cloog-ppl-0.15.10'; then
- confgcc+=" --with-cloog-include=/usr/include/cloog-ppl"
- else
- confgcc+=" --with-cloog-include=/usr/include/cloog"
- fi
+ confgcc+=" --with-cloog-include=/usr/include/cloog-ppl"
fi
fi
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2012-03-03 2:29 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2012-03-03 2:29 UTC (permalink / raw
To: gentoo-commits
dirtyepic 12/03/03 02:29:41
Modified: ChangeLog toolchain.eclass
Log:
Prevent bundled libffi from being installed with gcj or gccgo (bug #354903 by Xake). Drop old libffi-related code.
Revision Changes Path
1.152 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.152&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.152&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.151&r2=1.152
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.151
retrieving revision 1.152
diff -u -r1.151 -r1.152
--- ChangeLog 1 Mar 2012 22:10:50 -0000 1.151
+++ ChangeLog 3 Mar 2012 02:29:41 -0000 1.152
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.151 2012/03/01 22:10:50 naota Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.152 2012/03/03 02:29:41 dirtyepic Exp $
+
+ 03 Mar 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Prevent bundled libffi from being installed with gcj or gccgo (bug #354903 by
+ Xake). Drop old libffi-related code.
01 Mar 2012; Naohiro Aota <naota@gentoo.org> eutils.eclass:
Consider patch alias, #404447
1.520 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.520&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.520&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.519&r2=1.520
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.519
retrieving revision 1.520
diff -u -r1.519 -r1.520
--- toolchain.eclass 2 Mar 2012 05:56:29 -0000 1.519
+++ toolchain.eclass 3 Mar 2012 02:29:41 -0000 1.520
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.519 2012/03/02 05:56:29 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.520 2012/03/03 02:29:41 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -91,7 +91,7 @@
[[ -n ${SPECS_VER} ]] && IUSE+=" nossp"
if tc_version_is_at_least 3 ; then
- IUSE+=" bootstrap doc gcj gtk hardened libffi multilib objc"
+ IUSE+=" bootstrap doc gcj gtk hardened multilib objc"
tc_version_is_at_least "4.0" && IUSE+=" objc-gc mudflap"
tc_version_is_at_least "4.1" && IUSE+=" libssp objc++"
@@ -722,14 +722,6 @@
use hardened && make_gcc_hard
- if is_libffi ; then
- # move the libffi target out of gcj and into all
- sed -i \
- -e '/^libgcj=/s:target-libffi::' \
- -e '/^target_lib/s:=":="target-libffi :' \
- "${S}"/configure || die
- fi
-
# install the libstdc++ python into the right location
# http://gcc.gnu.org/PR51368
if tc_version_is_at_least 4.5 ; then
@@ -780,6 +772,10 @@
do_gcc_rename_java_bins
fi
+ # Prevent libffi from being installed
+ sed -i -e 's/\(install.*:\) install-.*recursive/\1/' "${S}"/libffi/Makefile.in
+ sed -i -e 's/\(install-data-am:\).*/\1/' "${S}"/libffi/include/Makefile.in
+
# Fixup libtool to correctly generate .la files with portage
cd "${S}"
elibtoolize --portage --shallow --no-uclibc
@@ -1494,17 +1490,6 @@
fi
done
- # I do not know if this will break gcj stuff, so I'll only do it for
- # objc for now; basically "ffi.h" is the correct file to include,
- # but it gets installed in .../GCCVER/include and yet it does
- # "#include <ffitarget.h>" which (correctly, as it's an "extra" file)
- # is installed in .../GCCVER/include/libffi; the following fixes
- # ffi.'s include of ffitarget.h - Armando Di Cianno <fafhrd@gentoo.org>
- if [[ -d ${D}${LIBPATH}/include/libffi ]] ; then
- mv -i "${D}"${LIBPATH}/include/libffi/* "${D}"${LIBPATH}/include || die
- rm -r "${D}"${LIBPATH}/include/libffi || die
- fi
-
# Now do the fun stripping stuff
env RESTRICT="" CHOST=${CHOST} prepstrip "${D}${BINPATH}"
env RESTRICT="" CHOST=${CTARGET} prepstrip "${D}${LIBPATH}"
@@ -2005,10 +1990,6 @@
use cxx && use_if_iuse go
}
-is_libffi() {
- use_if_iuse libffi
-}
-
is_objc() {
gcc-lang-supported objc || return 1
use_if_iuse objc
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2012-03-10 17:49 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2012-03-10 17:49 UTC (permalink / raw
To: gentoo-commits
dirtyepic 12/03/10 17:49:56
Modified: ChangeLog toolchain.eclass
Log:
Fix unpacking of live git ebuilds.
Revision Changes Path
1.161 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.161&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.161&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.160&r2=1.161
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.160
retrieving revision 1.161
diff -u -r1.160 -r1.161
--- ChangeLog 9 Mar 2012 23:14:46 -0000 1.160
+++ ChangeLog 10 Mar 2012 17:49:56 -0000 1.161
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.160 2012/03/09 23:14:46 hd_brummy Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.161 2012/03/10 17:49:56 dirtyepic Exp $
+
+ 10 Mar 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Fix unpacking of live git ebuilds.
09 Mar 2012; Joerg Bornkessel <hd_brummy@gentoo.org> vdr-plugin.eclass:
readded vdr-plugin_pkg_config dummy function
1.525 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.525&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.525&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.524&r2=1.525
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.524
retrieving revision 1.525
diff -u -r1.524 -r1.525
--- toolchain.eclass 4 Mar 2012 18:46:55 -0000 1.524
+++ toolchain.eclass 10 Mar 2012 17:49:56 -0000 1.525
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.524 2012/03/04 18:46:55 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.525 2012/03/10 17:49:56 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -17,7 +17,7 @@
# gcc-9999 -> master
# gcc-4.7_pre9999 -> 4.7 branch
if [[ ${PV} == *_pre9999* ]] ; then
- EGIT_BRANCH="${PN}_${PV%_pre9999}_branch"
+ EGIT_BRANCH="${PN}-${PV%_pre9999}-branch"
EGIT_BRANCH=${EGIT_BRANCH//./_}
fi
inherit git-2
@@ -58,7 +58,7 @@
GCC_CONFIG_VER=${GCC_CONFIG_VER:-$(replace_version_separator 3 '-' ${GCC_PV})}
# Pre-release support
-if [[ ${GCC_PV} != ${GCC_PV/_pre/-} ]] ; then
+if [[ ${GCC_PV} != ${GCC_PV/_pre/-} && ${GCC_PV} != *9999* ]] ; then
PRERELEASE=${GCC_PV/_pre/-}
fi
# make _alpha and _beta ebuilds automatically use a snapshot
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2012-03-10 19:32 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2012-03-10 19:32 UTC (permalink / raw
To: gentoo-commits
dirtyepic 12/03/10 19:32:33
Modified: ChangeLog toolchain.eclass
Log:
Tweak live ebuild bits.
Revision Changes Path
1.162 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.162&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.162&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.161&r2=1.162
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.161
retrieving revision 1.162
diff -u -r1.161 -r1.162
--- ChangeLog 10 Mar 2012 17:49:56 -0000 1.161
+++ ChangeLog 10 Mar 2012 19:32:33 -0000 1.162
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.161 2012/03/10 17:49:56 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.162 2012/03/10 19:32:33 dirtyepic Exp $
+
+ 10 Mar 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Tweak live ebuild bits.
10 Mar 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Fix unpacking of live git ebuilds.
1.526 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.526&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.526&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.525&r2=1.526
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.525
retrieving revision 1.526
diff -u -r1.525 -r1.526
--- toolchain.eclass 10 Mar 2012 17:49:56 -0000 1.525
+++ toolchain.eclass 10 Mar 2012 19:32:33 -0000 1.526
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.525 2012/03/10 17:49:56 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.526 2012/03/10 19:32:33 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -15,7 +15,7 @@
EGIT_REPO_URI="git://gcc.gnu.org/git/gcc.git"
# naming style:
# gcc-9999 -> master
- # gcc-4.7_pre9999 -> 4.7 branch
+ # gcc-4.7_pre9999 -> gcc-4_7-branch
if [[ ${PV} == *_pre9999* ]] ; then
EGIT_BRANCH="${PN}-${PV%_pre9999}-branch"
EGIT_BRANCH=${EGIT_BRANCH//./_}
@@ -189,6 +189,8 @@
echo ${WORKDIR}/gcc-${PRERELEASE}
elif [[ -n ${SNAPSHOT} ]] ; then
echo ${WORKDIR}/gcc-${SNAPSHOT}
+ elif [[ ${GCC_PV} == *9999* ]] ; then
+ echo ${WORKDIR}/${P}
else
echo ${WORKDIR}/gcc-${GCC_RELEASE_VER}
fi
@@ -714,14 +716,11 @@
done
}
toolchain_src_unpack() {
- [[ ${PV} == *9999* ]] && git-2_src_unpack
-
- export BRANDING_GCC_PKGVERSION="Gentoo ${GCC_PVR}"
-
[[ -z ${UCLIBC_VER} ]] && [[ ${CTARGET} == *-uclibc* ]] && die "Sorry, this version does not support uClibc"
- gcc_quick_unpack
+ [[ ${PV} == *9999* ]] && git-2_src_unpack || gcc_quick_unpack
+ export BRANDING_GCC_PKGVERSION="Gentoo ${GCC_PVR}"
cd "${S}"
if ! use vanilla ; then
@@ -764,7 +763,7 @@
gcc_version_patch
if tc_version_is_at_least 4.1 ; then
- if [[ -n ${SNAPSHOT} || -n ${PRERELEASE} || -n ${GCC_SVN} ]] ; then
+ if [[ -n ${SNAPSHOT} || -n ${PRERELEASE} ]] ; then
echo ${PV/_/-} > "${S}"/gcc/BASE-VER
fi
fi
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2012-03-10 20:01 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2012-03-10 20:01 UTC (permalink / raw
To: gentoo-commits
dirtyepic 12/03/10 20:01:05
Modified: ChangeLog toolchain.eclass
Log:
We need micro versions on live ebuilds in order for tc_version_is_at_least() to work properly.
Revision Changes Path
1.163 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.163&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.163&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.162&r2=1.163
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.162
retrieving revision 1.163
diff -u -r1.162 -r1.163
--- ChangeLog 10 Mar 2012 19:32:33 -0000 1.162
+++ ChangeLog 10 Mar 2012 20:01:05 -0000 1.163
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.162 2012/03/10 19:32:33 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.163 2012/03/10 20:01:05 dirtyepic Exp $
+
+ 10 Mar 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ We need micro versions on live ebuilds in order for tc_version_is_at_least()
+ to work properly.
10 Mar 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Tweak live ebuild bits.
1.527 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.527&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.527&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.526&r2=1.527
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.526
retrieving revision 1.527
diff -u -r1.526 -r1.527
--- toolchain.eclass 10 Mar 2012 19:32:33 -0000 1.526
+++ toolchain.eclass 10 Mar 2012 20:01:05 -0000 1.527
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.526 2012/03/10 19:32:33 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.527 2012/03/10 20:01:05 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -15,9 +15,11 @@
EGIT_REPO_URI="git://gcc.gnu.org/git/gcc.git"
# naming style:
# gcc-9999 -> master
- # gcc-4.7_pre9999 -> gcc-4_7-branch
+ # gcc-4.7.1_pre9999 -> gcc-4_7-branch
+ # Note that we need the micro version in order for tc_version_is_at_least
+ # to work.
if [[ ${PV} == *_pre9999* ]] ; then
- EGIT_BRANCH="${PN}-${PV%_pre9999}-branch"
+ EGIT_BRANCH="${PN}-${PV%.?_pre9999}-branch"
EGIT_BRANCH=${EGIT_BRANCH//./_}
fi
inherit git-2
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2012-03-10 20:48 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2012-03-10 20:48 UTC (permalink / raw
To: gentoo-commits
dirtyepic 12/03/10 20:48:22
Modified: ChangeLog toolchain.eclass
Log:
Revert PRERELEASE setting for live ebuilds. It seems 4.7 treats BASE-VER differently than earlier versions. This fixes them, but breaks 4.7 again.
Revision Changes Path
1.164 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.164&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.164&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.163&r2=1.164
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.163
retrieving revision 1.164
diff -u -r1.163 -r1.164
--- ChangeLog 10 Mar 2012 20:01:05 -0000 1.163
+++ ChangeLog 10 Mar 2012 20:48:22 -0000 1.164
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.163 2012/03/10 20:01:05 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.164 2012/03/10 20:48:22 dirtyepic Exp $
+
+ 10 Mar 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Revert PRERELEASE setting for live ebuilds. It seems 4.7 treats BASE-VER
+ differently than earlier versions. This fixes them, but breaks 4.7 again.
10 Mar 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
We need micro versions on live ebuilds in order for tc_version_is_at_least()
1.528 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.528&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.528&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.527&r2=1.528
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.527
retrieving revision 1.528
diff -u -r1.527 -r1.528
--- toolchain.eclass 10 Mar 2012 20:01:05 -0000 1.527
+++ toolchain.eclass 10 Mar 2012 20:48:22 -0000 1.528
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.527 2012/03/10 20:01:05 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.528 2012/03/10 20:48:22 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -60,7 +60,7 @@
GCC_CONFIG_VER=${GCC_CONFIG_VER:-$(replace_version_separator 3 '-' ${GCC_PV})}
# Pre-release support
-if [[ ${GCC_PV} != ${GCC_PV/_pre/-} && ${GCC_PV} != *9999* ]] ; then
+if [[ ${GCC_PV} != ${GCC_PV/_pre/-} ]] ; then
PRERELEASE=${GCC_PV/_pre/-}
fi
# make _alpha and _beta ebuilds automatically use a snapshot
@@ -720,7 +720,11 @@
toolchain_src_unpack() {
[[ -z ${UCLIBC_VER} ]] && [[ ${CTARGET} == *-uclibc* ]] && die "Sorry, this version does not support uClibc"
- [[ ${PV} == *9999* ]] && git-2_src_unpack || gcc_quick_unpack
+ if [[ ${PV} == *9999* ]]; then
+ git-2_src_unpack
+ else
+ gcc_quick_unpack
+ fi
export BRANDING_GCC_PKGVERSION="Gentoo ${GCC_PVR}"
cd "${S}"
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2012-03-10 21:21 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2012-03-10 21:21 UTC (permalink / raw
To: gentoo-commits
dirtyepic 12/03/10 21:21:30
Modified: ChangeLog toolchain.eclass
Log:
Rev. 1.527 fixed 4.7 without me noticing. Add comments about the format of gcc/BASE-VER to prevent future confusion.
Revision Changes Path
1.165 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.165&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.165&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.164&r2=1.165
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.164
retrieving revision 1.165
diff -u -r1.164 -r1.165
--- ChangeLog 10 Mar 2012 20:48:22 -0000 1.164
+++ ChangeLog 10 Mar 2012 21:21:30 -0000 1.165
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.164 2012/03/10 20:48:22 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.165 2012/03/10 21:21:30 dirtyepic Exp $
+
+ 10 Mar 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Rev. 1.527 fixed 4.7 without me noticing. Add comments about the format of
+ gcc/BASE-VER to prevent future confusion.
10 Mar 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Revert PRERELEASE setting for live ebuilds. It seems 4.7 treats BASE-VER
1.529 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.529&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.529&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.528&r2=1.529
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.528
retrieving revision 1.529
diff -u -r1.528 -r1.529
--- toolchain.eclass 10 Mar 2012 20:48:22 -0000 1.528
+++ toolchain.eclass 10 Mar 2012 21:21:30 -0000 1.529
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.528 2012/03/10 20:48:22 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.529 2012/03/10 21:21:30 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -17,7 +17,7 @@
# gcc-9999 -> master
# gcc-4.7.1_pre9999 -> gcc-4_7-branch
# Note that we need the micro version in order for tc_version_is_at_least
- # to work.
+ # to work. gcc/BASE-VER also requires it.
if [[ ${PV} == *_pre9999* ]] ; then
EGIT_BRANCH="${PN}-${PV%.?_pre9999}-branch"
EGIT_BRANCH=${EGIT_BRANCH//./_}
@@ -191,8 +191,6 @@
echo ${WORKDIR}/gcc-${PRERELEASE}
elif [[ -n ${SNAPSHOT} ]] ; then
echo ${WORKDIR}/gcc-${SNAPSHOT}
- elif [[ ${GCC_PV} == *9999* ]] ; then
- echo ${WORKDIR}/${P}
else
echo ${WORKDIR}/gcc-${GCC_RELEASE_VER}
fi
@@ -770,6 +768,9 @@
gcc_version_patch
if tc_version_is_at_least 4.1 ; then
if [[ -n ${SNAPSHOT} || -n ${PRERELEASE} ]] ; then
+ # BASE-VER must be a three-digit version number
+ # followed by an optional -pre string
+ # eg. 4.5.1, 4.6.2-pre20120213, 4.7.0-pre9999
echo ${PV/_/-} > "${S}"/gcc/BASE-VER
fi
fi
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2012-03-22 6:07 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2012-03-22 6:07 UTC (permalink / raw
To: gentoo-commits
dirtyepic 12/03/22 06:07:09
Modified: ChangeLog toolchain.eclass
Log:
All ebuilds need a version number so drop special case for master. Update comments.
Revision Changes Path
1.178 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.178&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.178&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.177&r2=1.178
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.177
retrieving revision 1.178
diff -u -r1.177 -r1.178
--- ChangeLog 21 Mar 2012 17:12:01 -0000 1.177
+++ ChangeLog 22 Mar 2012 06:07:08 -0000 1.178
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.177 2012/03/21 17:12:01 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.178 2012/03/22 06:07:08 dirtyepic Exp $
+
+ 22 Mar 2012; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ All ebuilds need a version number so drop special case for master. Update
+ comments.
21 Mar 2012; Diego E. Pettenò <flameeyes@gentoo.org> autotools.eclass:
Go back to use a variable rather than an array for _LATEST_AUTOMAKE, use
1.532 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.532&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.532&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.531&r2=1.532
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.531
retrieving revision 1.532
diff -u -r1.531 -r1.532
--- toolchain.eclass 15 Mar 2012 20:18:03 -0000 1.531
+++ toolchain.eclass 22 Mar 2012 06:07:08 -0000 1.532
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.531 2012/03/15 20:18:03 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.532 2012/03/22 06:07:08 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -11,17 +11,15 @@
inherit eutils versionator libtool toolchain-funcs flag-o-matic gnuconfig multilib fixheadtails pax-utils
-if [[ ${PV} == *9999* ]] ; then
+if [[ ${PV} == *_pre9999* ]] ; then
EGIT_REPO_URI="git://gcc.gnu.org/git/gcc.git"
# naming style:
- # gcc-9999 -> master
# gcc-4.7.1_pre9999 -> gcc-4_7-branch
- # Note that we need the micro version in order for tc_version_is_at_least
- # to work. gcc/BASE-VER also requires it.
- if [[ ${PV} == *_pre9999* ]] ; then
- EGIT_BRANCH="${PN}-${PV%.?_pre9999}-branch"
- EGIT_BRANCH=${EGIT_BRANCH//./_}
- fi
+ # Note that the micro version is required or lots of stuff will break.
+ # To checkout master set gcc_LIVE_BRANCH="master" in the ebuild before
+ # inheriting this eclass.
+ EGIT_BRANCH="${PN}-${PV%.?_pre9999}-branch"
+ EGIT_BRANCH=${EGIT_BRANCH//./_}
inherit git-2
fi
@@ -771,6 +769,8 @@
# BASE-VER must be a three-digit version number
# followed by an optional -pre string
# eg. 4.5.1, 4.6.2-pre20120213, 4.7.0-pre9999
+ # If BASE-VER differs from ${PV/_/-} then libraries get installed in
+ # the wrong directory.
echo ${PV/_/-} > "${S}"/gcc/BASE-VER
fi
fi
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-01-15 2:30 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-01-15 2:30 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/01/15 02:30:53
Modified: ChangeLog toolchain.eclass
Log:
Drop go support for 4.6 - broken by newer glibc versions and upstream recommends it not be used.
Revision Changes Path
1.615 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.615&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.615&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.614&r2=1.615
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.614
retrieving revision 1.615
diff -u -r1.614 -r1.615
--- ChangeLog 13 Jan 2013 22:35:28 -0000 1.614
+++ ChangeLog 15 Jan 2013 02:30:53 -0000 1.615
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.614 2013/01/13 22:35:28 eva Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.615 2013/01/15 02:30:53 dirtyepic Exp $
+
+ 15 Jan 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Drop go support for 4.6 - broken by newer glibc versions and upstream
+ recommends it not be used.
13 Jan 2013; Gilles Dartiguelongue <eva@gentoo.org> gnome2.eclass:
Allow ebuild override of eclass generated econf.
1.567 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.567&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.567&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.566&r2=1.567
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.566
retrieving revision 1.567
diff -u -r1.566 -r1.567
--- toolchain.eclass 29 Dec 2012 06:45:06 -0000 1.566
+++ toolchain.eclass 15 Jan 2013 02:30:53 -0000 1.567
@@ -1,6 +1,6 @@
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.566 2012/12/29 06:45:06 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.567 2013/01/15 02:30:53 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -115,7 +115,7 @@
tc_version_is_at_least "4.3" && IUSE+=" fixed-point"
tc_version_is_at_least "4.4" && IUSE+=" graphite"
[[ ${GCC_BRANCH_VER} == 4.5 ]] && IUSE+=" lto"
- tc_version_is_at_least "4.6" && IUSE+=" go"
+ tc_version_is_at_least "4.7" && IUSE+=" go"
fi
fi
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-03-16 5:44 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-03-16 5:44 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/03/16 05:44:49
Modified: ChangeLog toolchain.eclass
Log:
Add cloog/isl support for gcc 4.8 (bug # 434816, patch by Kacper Kowalik).
Revision Changes Path
1.739 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.739&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.739&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.738&r2=1.739
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.738
retrieving revision 1.739
diff -u -r1.738 -r1.739
--- ChangeLog 15 Mar 2013 21:47:58 -0000 1.738
+++ ChangeLog 16 Mar 2013 05:44:49 -0000 1.739
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.738 2013/03/15 21:47:58 ottxor Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.739 2013/03/16 05:44:49 dirtyepic Exp $
+
+ 16 Mar 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Add cloog/isl support for gcc 4.8 (bug # 434816, patch by Kacper Kowalik).
15 Mar 2013; Christoph Junghans <ottxor@gentoo.org> mercurial.eclass:
default to EHG_QUIET="OFF" (bug #461858)
1.570 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.570&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.570&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.569&r2=1.570
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.569
retrieving revision 1.570
diff -u -r1.569 -r1.570
--- toolchain.eclass 9 Feb 2013 04:34:32 -0000 1.569
+++ toolchain.eclass 16 Mar 2013 05:44:49 -0000 1.570
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.569 2013/02/09 04:34:32 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.570 2013/03/16 05:44:49 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -147,11 +147,19 @@
in_iuse lto && RDEPEND+=" lto? ( || ( >=dev-libs/elfutils-0.143 dev-libs/libelf ) )"
fi
if in_iuse graphite ; then
- RDEPEND+="
- graphite? (
- >=dev-libs/cloog-ppl-0.15.10
- >=dev-libs/ppl-0.11
- )"
+ if tc_version_is_at_least 4.8 ; then
+ RDEPEND+="
+ graphite? (
+ >=dev-libs/cloog-0.17.0
+ >=dev-libs/isl-0.10
+ )"
+ else
+ RDEPEND+="
+ graphite? (
+ >=dev-libs/cloog-ppl-0.15.10
+ >=dev-libs/ppl-0.11
+ )"
+ fi
fi
DEPEND="${RDEPEND}
@@ -1084,8 +1092,13 @@
confgcc+=" $(use_with graphite ppl)"
confgcc+=" $(use_with graphite cloog)"
if use graphite; then
- confgcc+=" --disable-ppl-version-check"
- confgcc+=" --with-cloog-include=/usr/include/cloog-ppl"
+ if tc_version_is_at_least "4.8"; then
+ confgcc+=" --disable-isl-version-check"
+ confgcc+=" --with-cloog"
+ else
+ confgcc+=" --disable-ppl-version-check"
+ confgcc+=" --with-cloog-include=/usr/include/cloog-ppl"
+ fi
fi
fi
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-04-05 5:23 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-04-05 5:23 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/04/05 05:23:22
Modified: ChangeLog toolchain.eclass
Log:
Work around bootstrap comparison failures on ancient systems (bug #411333).
Revision Changes Path
1.765 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.765&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.765&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.764&r2=1.765
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.764
retrieving revision 1.765
diff -u -r1.764 -r1.765
--- ChangeLog 1 Apr 2013 11:05:27 -0000 1.764
+++ ChangeLog 5 Apr 2013 05:23:22 -0000 1.765
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.764 2013/04/01 11:05:27 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.765 2013/04/05 05:23:22 dirtyepic Exp $
+
+ 05 Apr 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Work around bootstrap comparison failures on ancient systems (bug #411333).
01 Apr 2013; Michał Górny <mgorny@gentoo.org> autotools-multilib.eclass:
Fix path handling in header wrapping code.
1.574 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.574&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.574&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.573&r2=1.574
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.573
retrieving revision 1.574
diff -u -r1.573 -r1.574
--- toolchain.eclass 2 Apr 2013 03:02:22 -0000 1.573
+++ toolchain.eclass 5 Apr 2013 05:23:22 -0000 1.574
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.573 2013/04/02 03:02:22 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.574 2013/04/05 05:23:22 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1360,6 +1360,7 @@
# This is mostly a stub function to be overwritten in an ebuild
gcc_do_filter_flags() {
+
strip-flags
# In general gcc does not like optimization, and add -O2 where
@@ -1409,9 +1410,13 @@
;;
esac
- # Compile problems with these (bug #6641 among others)...
- #filter-flags "-fno-exceptions -fomit-frame-pointer -fforce-addr"
-
+ case ${GCC_BRANCH_VER} in
+ 4.6)
+ # https://bugs.gentoo.org/411333
+ replace-cpu-flags pentium2 pentium3 pentium3m pentium-m i686
+ ;;
+ esac
+
# CFLAGS logic (verified with 3.4.3):
# CFLAGS:
# This conflicts when creating a crosscompiler, so set to a sane
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-05-09 3:03 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-05-09 3:03 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/05/09 03:03:02
Modified: ChangeLog toolchain.eclass
Log:
Drop graphite support for 4.4/4.5.
Revision Changes Path
1.817 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.817&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.817&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.816&r2=1.817
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.816
retrieving revision 1.817
diff -u -r1.816 -r1.817
--- ChangeLog 8 May 2013 10:25:48 -0000 1.816
+++ ChangeLog 9 May 2013 03:03:02 -0000 1.817
@@ -1,6 +1,12 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.816 2013/05/08 10:25:48 pinkbyte Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.817 2013/05/09 03:03:02 dirtyepic Exp $
+
+ 09 May 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Drop support for graphite in 4.4/4.5 due to incompatibilities with newer ppl
+ versions. Update graphite dependencies for 4.8 based on upstream
+ recommendations. Also fixes some (harmless) configure flags getting applied
+ to incorrect versions.
08 May 2013; Sergey Popov <pinkbyte@gentoo.org> leechcraft.eclass:
Restict supported EAPIs(due to pkg_pretend), some logic cleanup
1.586 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.586&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.586&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.585&r2=1.586
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.585
retrieving revision 1.586
diff -u -r1.585 -r1.586
--- toolchain.eclass 3 May 2013 06:01:27 -0000 1.585
+++ toolchain.eclass 9 May 2013 03:03:02 -0000 1.586
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.585 2013/05/03 06:01:27 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.586 2013/05/09 03:03:02 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -113,7 +113,7 @@
tc_version_is_at_least "4.1" && IUSE+=" libssp objc++"
tc_version_is_at_least "4.2" && IUSE+=" openmp"
tc_version_is_at_least "4.3" && IUSE+=" fixed-point"
- tc_version_is_at_least "4.4" && IUSE+=" graphite"
+ tc_version_is_at_least "4.6" && IUSE+=" graphite"
[[ ${GCC_BRANCH_VER} == 4.5 ]] && IUSE+=" lto"
tc_version_is_at_least "4.7" && IUSE+=" go"
fi
@@ -150,8 +150,8 @@
if tc_version_is_at_least 4.8 ; then
RDEPEND+="
graphite? (
- >=dev-libs/cloog-0.17.0
- >=dev-libs/isl-0.10
+ >=dev-libs/cloog-0.18.0
+ >=dev-libs/isl-0.11.1
)"
else
RDEPEND+="
@@ -1079,26 +1079,21 @@
# users to control this feature in the event they need the support.
tc_version_is_at_least "4.3" && confgcc+=" $(use_enable fixed-point)"
- # Graphite support was added in 4.4, which depends on external libraries
- # for optimizations. Current versions use cloog-ppl (cloog fork with Parma
- # PPL backend). Sometime in the future we will use upstream cloog with the
- # ISL backend (note: PPL will still be a requirement). cloog-ppl's include
- # path was modified to prevent collisions between the two packages (library
- # names are different).
- #
- # We disable the PPL version check so we can use >=ppl-0.11.
- if tc_version_is_at_least "4.4"; then
- confgcc+=" $(use_with graphite ppl)"
+ # graphite was added in 4.4 but we only support it in 4.6+ due to external
+ # library issues. 4.6/4.7 uses cloog-ppl which is a fork of CLooG with a
+ # PPL backend. 4.8+ uses upstream CLooG with the ISL backend. We install
+ # cloog-ppl into a non-standard location to prevent collisions.
+ if tc_version_is_at_least "4.8" ; then
confgcc+=" $(use_with graphite cloog)"
- if use graphite; then
- if tc_version_is_at_least "4.8"; then
- confgcc+=" --disable-isl-version-check"
- confgcc+=" --with-cloog"
- else
- confgcc+=" --disable-ppl-version-check"
- confgcc+=" --with-cloog-include=/usr/include/cloog-ppl"
- fi
- fi
+ use graphite && confgcc+=" --disable-isl-version-check"
+ elif tc_version_is_at_least "4.6" ; then
+ confgcc+=" $(use_with graphite cloog)"
+ confgcc+=" $(use_with graphite ppl)"
+ use graphite && confgcc+=" --with-cloog-include=/usr/include/cloog-ppl"
+ use graphite && confgcc+=" --disable-ppl-version-check"
+ elif tc_version_is_at_least "4.4" ; then
+ confgcc+=" --without-cloog"
+ confgcc+=" --without-ppl"
fi
# LTO support was added in 4.5, which depends upon elfutils. This allows
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-05-15 0:55 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-05-15 0:55 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/05/15 00:55:22
Modified: ChangeLog toolchain.eclass
Log:
Add lto USE flag for all versions. Drop LTO support for 4.5.
Revision Changes Path
1.822 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.822&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.822&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.821&r2=1.822
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.821
retrieving revision 1.822
diff -u -r1.821 -r1.822
--- ChangeLog 14 May 2013 17:33:08 -0000 1.821
+++ ChangeLog 15 May 2013 00:55:21 -0000 1.822
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.821 2013/05/14 17:33:08 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.822 2013/05/15 00:55:21 dirtyepic Exp $
+
+ 15 May 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Add lto USE flag for all versions that support it. Drop LTO support for 4.5.
14 May 2013; Michał Górny <mgorny@gentoo.org> autotools-multilib.eclass,
multilib-build.eclass:
1.588 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.588&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.588&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.587&r2=1.588
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.587
retrieving revision 1.588
diff -u -r1.587 -r1.588
--- toolchain.eclass 14 May 2013 18:46:36 -0000 1.587
+++ toolchain.eclass 15 May 2013 00:55:21 -0000 1.588
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.587 2013/05/14 18:46:36 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.588 2013/05/15 00:55:21 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -114,7 +114,7 @@
tc_version_is_at_least "4.2" && IUSE+=" openmp"
tc_version_is_at_least "4.3" && IUSE+=" fixed-point"
tc_version_is_at_least "4.6" && IUSE+=" graphite"
- [[ ${GCC_BRANCH_VER} == 4.5 ]] && IUSE+=" lto"
+ tc_version_is_at_least "4.6" && IUSE+=" lto"
tc_version_is_at_least "4.7" && IUSE+=" go"
fi
fi
@@ -144,7 +144,6 @@
if tc_version_is_at_least 4.5 ; then
RDEPEND+=" >=dev-libs/mpc-0.8.1"
fi
- in_iuse lto && RDEPEND+=" lto? ( || ( >=dev-libs/elfutils-0.143 dev-libs/libelf ) )"
fi
if in_iuse graphite ; then
if tc_version_is_at_least 4.8 ; then
@@ -1096,14 +1095,7 @@
confgcc+=" --without-ppl"
fi
- # LTO support was added in 4.5, which depends upon elfutils. This allows
- # users to enable that option, and pull in the additional library. In 4.6,
- # the dependency is no longer required.
- if tc_version_is_at_least "4.6" ; then
- confgcc+=" --enable-lto"
- elif tc_version_is_at_least "4.5" ; then
- confgcc+=" $(use_enable lto)"
- fi
+ tc_version_is_at_least "4.6" && confgcc+=" $(use_enable lto)"
case $(tc-is-softfloat) in
yes) confgcc+=" --with-float=soft" ;;
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-05-15 0:56 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-05-15 0:56 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/05/15 00:56:49
Modified: ChangeLog toolchain.eclass
Log:
Rename test USE flag to regression-test.
Revision Changes Path
1.823 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.823&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.823&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.822&r2=1.823
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.822
retrieving revision 1.823
diff -u -r1.822 -r1.823
--- ChangeLog 15 May 2013 00:55:21 -0000 1.822
+++ ChangeLog 15 May 2013 00:56:49 -0000 1.823
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.822 2013/05/15 00:55:21 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.823 2013/05/15 00:56:49 dirtyepic Exp $
+
+ 15 May 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Rename test USE flag to regression-test.
15 May 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Add lto USE flag for all versions that support it. Drop LTO support for 4.5.
1.589 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.589&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.589&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.588&r2=1.589
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.588
retrieving revision 1.589
diff -u -r1.588 -r1.589
--- toolchain.eclass 15 May 2013 00:55:21 -0000 1.588
+++ toolchain.eclass 15 May 2013 00:56:49 -0000 1.589
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.588 2013/05/15 00:55:21 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.589 2013/05/15 00:56:49 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -97,7 +97,7 @@
#---->> SLOT+IUSE logic <<----
-IUSE="multislot nls nptl test vanilla"
+IUSE="multislot nls nptl regression-test vanilla"
if [[ ${PN} != "kgcc64" && ${PN} != gcc-* ]] ; then
IUSE+=" altivec cxx fortran"
@@ -164,7 +164,7 @@
DEPEND="${RDEPEND}
>=sys-devel/bison-1.875
>=sys-devel/flex-2.5.4
- test? (
+ regression-test? (
>=dev-util/dejagnu-1.4.4
>=sys-devel/autogen-5.5.4
)"
@@ -610,6 +610,11 @@
# handling of binpkgs, don't require these to be found
cp "${ROOT}/${DATAPATH}"/c{89,99} "${ROOT}"/usr/bin/ 2>/dev/null
fi
+
+ if use regression-test ; then
+ elog "Testsuite results have been installed into /usr/share/doc/${PF}/testsuite"
+ echo
+ fi
}
toolchain_pkg_postrm() {
@@ -1472,8 +1477,10 @@
}
toolchain_src_test() {
- cd "${WORKDIR}"/build
- emake -k check || ewarn "check failed and that sucks :("
+ if use regression-test ; then
+ cd "${WORKDIR}"/build
+ emake -k check
+ fi
}
toolchain_src_install() {
@@ -1585,7 +1592,7 @@
find "${D}" -depth -type d -delete 2>/dev/null
# install testsuite results
- if use test; then
+ if use regression-test; then
docinto testsuite
find "${WORKDIR}"/build -type f -name "*.sum" -print0 | xargs -0 dodoc
find "${WORKDIR}"/build -type f -path "*/testsuite/*.log" -print0 \
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-05-15 5:42 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-05-15 5:42 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/05/15 05:42:09
Modified: ChangeLog toolchain.eclass
Log:
Explicitly disable lto in 4.5 to stop configure from helpfully re-enabling it when libelf is present.
Revision Changes Path
1.824 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.824&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.824&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.823&r2=1.824
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.823
retrieving revision 1.824
diff -u -r1.823 -r1.824
--- ChangeLog 15 May 2013 00:56:49 -0000 1.823
+++ ChangeLog 15 May 2013 05:42:09 -0000 1.824
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.823 2013/05/15 00:56:49 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.824 2013/05/15 05:42:09 dirtyepic Exp $
+
+ 15 May 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Explicitly disable lto in 4.5 to stop configure from helpfully re-enabling it
+ when libelf is present.
15 May 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Rename test USE flag to regression-test.
1.590 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.590&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.590&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.589&r2=1.590
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.589
retrieving revision 1.590
diff -u -r1.589 -r1.590
--- toolchain.eclass 15 May 2013 00:56:49 -0000 1.589
+++ toolchain.eclass 15 May 2013 05:42:09 -0000 1.590
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.589 2013/05/15 00:56:49 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.590 2013/05/15 05:42:09 dirtyepic Exp $
#
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1100,7 +1100,11 @@
confgcc+=" --without-ppl"
fi
- tc_version_is_at_least "4.6" && confgcc+=" $(use_enable lto)"
+ if tc_version_is_at_least "4.6" ; then
+ confgcc+=" $(use_enable lto)"
+ elif tc_version_is_at_least "4.5" ; then
+ confgcc+=" --disable-lto"
+ fi
case $(tc-is-softfloat) in
yes) confgcc+=" --with-float=soft" ;;
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-07-18 23:45 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-07-18 23:45 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/07/18 23:45:54
Modified: ChangeLog toolchain.eclass
Log:
libffi installation was fixed in 4.8.
Revision Changes Path
1.883 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.883&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.883&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.882&r2=1.883
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.882
retrieving revision 1.883
diff -u -r1.882 -r1.883
--- ChangeLog 18 Jul 2013 07:03:33 -0000 1.882
+++ ChangeLog 18 Jul 2013 23:45:54 -0000 1.883
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.882 2013/07/18 07:03:33 jlec Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.883 2013/07/18 23:45:54 dirtyepic Exp $
+
+ 18 Jul 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ libffi installation was fixed in 4.8.
18 Jul 2013; Justin Lecher <jlec@gentoo.org> fortran-2.eclass:
Wrap lines at 80 char
1.596 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.596&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.596&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.595&r2=1.596
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.595
retrieving revision 1.596
diff -u -r1.595 -r1.596
--- toolchain.eclass 18 Jul 2013 22:33:48 -0000 1.595
+++ toolchain.eclass 18 Jul 2013 23:45:54 -0000 1.596
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.595 2013/07/18 22:33:48 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.596 2013/07/18 23:45:54 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -786,7 +786,7 @@
fi
# Prevent libffi from being installed
- if tc_version_is_at_least 3.0 ; then
+ if tc_version_is_at_least 3.0 && ! tc_version_is_at_least 4.8 ; then
sed -i -e 's/\(install.*:\) install-.*recursive/\1/' "${S}"/libffi/Makefile.in || die
sed -i -e 's/\(install-data-am:\).*/\1/' "${S}"/libffi/include/Makefile.in || die
fi
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-07-24 1:34 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-07-24 1:34 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/07/24 01:34:38
Modified: ChangeLog toolchain.eclass
Log:
Add back LICENSE (bug #477836).
Revision Changes Path
1.891 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.891&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.891&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.890&r2=1.891
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.890
retrieving revision 1.891
diff -u -r1.890 -r1.891
--- ChangeLog 23 Jul 2013 19:55:30 -0000 1.890
+++ ChangeLog 24 Jul 2013 01:34:38 -0000 1.891
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.890 2013/07/23 19:55:30 johu Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.891 2013/07/24 01:34:38 dirtyepic Exp $
+
+ 24 Jul 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Add back LICENSE (bug #477836).
23 Jul 2013; Johannes Huber <johu@gentoo.org> kde4-base.eclass:
Handle dev-qt/desinger split from dev-qt/gui, see bug #477934.
1.597 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.597&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.597&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.596&r2=1.597
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.596
retrieving revision 1.597
diff -u -r1.596 -r1.597
--- toolchain.eclass 18 Jul 2013 23:45:54 -0000 1.596
+++ toolchain.eclass 24 Jul 2013 01:34:38 -0000 1.597
@@ -1,12 +1,13 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.596 2013/07/18 23:45:54 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.597 2013/07/24 01:34:38 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
#---->> eclass stuff <<----
DESCRIPTION="The GNU Compiler Collection"
HOMEPAGE="http://gcc.gnu.org/"
+LICENSE="GPL-2 LGPL-2.1"
RESTRICT="strip" # cross-compilers need controlled stripping
inherit eutils versionator libtool toolchain-funcs flag-o-matic gnuconfig multilib fixheadtails pax-utils
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-08-10 4:25 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-08-10 4:25 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/08/10 04:25:37
Modified: ChangeLog toolchain.eclass
Log:
Append -Wl,--no-relax to LDFLAGS on alpha for 4.6 (bug #454426 again).
Revision Changes Path
1.919 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.919&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.919&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.918&r2=1.919
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.918
retrieving revision 1.919
diff -u -r1.918 -r1.919
--- ChangeLog 8 Aug 2013 22:29:21 -0000 1.918
+++ ChangeLog 10 Aug 2013 04:25:37 -0000 1.919
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.918 2013/08/08 22:29:21 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.919 2013/08/10 04:25:37 dirtyepic Exp $
+
+ 10 Aug 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Append -Wl,--no-relax to LDFLAGS on alpha for 4.6 (bug #454426 again).
08 Aug 2013; Michał Górny <mgorny@gentoo.org> +twisted-r1.eclass:
Introduce a twisted-r1.eclass to join the python-r1 suite and replace
1.598 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.598&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.598&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.597&r2=1.598
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.597
retrieving revision 1.598
diff -u -r1.597 -r1.598
--- toolchain.eclass 24 Jul 2013 01:34:38 -0000 1.597
+++ toolchain.eclass 10 Aug 2013 04:25:37 -0000 1.598
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.597 2013/07/24 01:34:38 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.598 2013/08/10 04:25:37 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1379,16 +1379,12 @@
}
gcc_do_filter_flags() {
-
strip-flags
- # In general gcc does not like optimization, and add -O2 where
+ # In general gcc does not like optimization, and adds -O2 where
# it is safe. This is especially true for gcc 3.3 + 3.4
replace-flags -O? -O2
- # ... sure, why not?
- strip-unsupported-flags
-
# dont want to funk ourselves
filter-flags '-mabi*' -m31 -m32 -m64
@@ -1431,12 +1427,22 @@
case ${GCC_BRANCH_VER} in
4.6)
- # https://bugs.gentoo.org/411333
- # https://bugs.gentoo.org/466454
- replace-cpu-flags c3-2 pentium2 pentium3 pentium3m pentium-m i686
+ case $(tc-arch) in
+ alpha)
+ # https://bugs.gentoo.org/454426
+ append-ldflags -Wl,--no-relax
+ ;;
+ amd64|x86)
+ # https://bugs.gentoo.org/411333
+ # https://bugs.gentoo.org/466454
+ replace-cpu-flags c3-2 pentium2 pentium3 pentium3m pentium-m i686
+ ;;
+ esac
;;
esac
+ strip-unsupported-flags
+
# TODO: Move to gcc_do_make()
# CFLAGS logic (verified with 3.4.3):
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-08-10 7:41 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-08-10 7:41 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/08/10 07:41:19
Modified: ChangeLog toolchain.eclass
Log:
Clean up gcc_do_filter_flags a bit more. Drop ppc64 workaround for 3.2/3.3
as neither is keyworded. Also stop replacing -march=i686 with x86-64 (?!) for
those versions.
Revision Changes Path
1.920 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.920&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.920&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.919&r2=1.920
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.919
retrieving revision 1.920
diff -u -r1.919 -r1.920
--- ChangeLog 10 Aug 2013 04:25:37 -0000 1.919
+++ ChangeLog 10 Aug 2013 07:41:19 -0000 1.920
@@ -1,6 +1,11 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.919 2013/08/10 04:25:37 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.920 2013/08/10 07:41:19 dirtyepic Exp $
+
+ 10 Aug 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Clean up gcc_do_filter_flags a bit more. Drop ppc64 workaround for 3.2/3.3
+ as neither is keyworded. Also stop replacing -march=i686 with x86-64 (?!) for
+ those versions.
10 Aug 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Append -Wl,--no-relax to LDFLAGS on alpha for 4.6 (bug #454426 again).
1.599 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.599&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.599&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.598&r2=1.599
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.598
retrieving revision 1.599
diff -u -r1.598 -r1.599
--- toolchain.eclass 10 Aug 2013 04:25:37 -0000 1.598
+++ toolchain.eclass 10 Aug 2013 07:41:19 -0000 1.599
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.598 2013/08/10 04:25:37 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.599 2013/08/10 07:41:19 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1389,56 +1389,58 @@
filter-flags '-mabi*' -m31 -m32 -m64
case ${GCC_BRANCH_VER} in
- 3.2|3.3)
- replace-cpu-flags k8 athlon64 opteron i686 x86-64
- replace-cpu-flags pentium-m pentium3m pentium3
- case $(tc-arch) in
- amd64|x86) filter-flags '-mtune=*' ;;
- # in gcc 3.3 there is a bug on ppc64 where if -mcpu is used,
- # the compiler wrongly assumes a 32bit target
- ppc64) filter-flags "-mcpu=*";;
- esac
- case $(tc-arch) in
- amd64) replace-cpu-flags core2 nocona;;
- x86) replace-cpu-flags core2 prescott;;
- esac
+ 3.2|3.3)
+ replace-cpu-flags k8 athlon64 opteron x86-64
+ replace-cpu-flags pentium-m pentium3m pentium3
+ replace-cpu-flags G3 750
+ replace-cpu-flags G4 7400
+ replace-cpu-flags G5 7400
+
+ case $(tc-arch) in
+ amd64)
+ replace-cpu-flags core2 nocona
+ filter-flags '-mtune=*'
+ ;;
+ x86)
+ replace-cpu-flags core2 prescott
+ filter-flags '-mtune=*'
+ ;;
+ esac
- replace-cpu-flags G3 750
- replace-cpu-flags G4 7400
- replace-cpu-flags G5 7400
-
- # XXX: should add a sed or something to query all supported flags
- # from the gcc source and trim everything else ...
- filter-flags -f{no-,}unit-at-a-time -f{no-,}web -mno-tls-direct-seg-refs
- filter-flags -f{no-,}stack-protector{,-all}
- filter-flags -fvisibility-inlines-hidden -fvisibility=hidden
- ;;
- 3.4|4.*)
- case $(tc-arch) in
- x86|amd64) filter-flags '-mcpu=*';;
- *-macos)
- # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25127
- [[ ${GCC_BRANCH_VER} == 4.0 || ${GCC_BRANCH_VER} == 4.1 ]] && \
- filter-flags '-mcpu=*' '-march=*' '-mtune=*'
+ # XXX: should add a sed or something to query all supported flags
+ # from the gcc source and trim everything else ...
+ filter-flags -f{no-,}unit-at-a-time -f{no-,}web -mno-tls-direct-seg-refs
+ filter-flags -f{no-,}stack-protector{,-all}
+ filter-flags -fvisibility-inlines-hidden -fvisibility=hidden
+ ;;
+ 3.4|4.*)
+ case $(tc-arch) in
+ amd64|x86)
+ filter-flags '-mcpu=*'
+ ;;
+ *-macos)
+ # http://gcc.gnu.org/PR25127
+ [[ ${GCC_BRANCH_VER} == 4.0 || ${GCC_BRANCH_VER} == 4.1 ]] && \
+ filter-flags '-mcpu=*' '-march=*' '-mtune=*'
+ ;;
+ esac
;;
- esac
- ;;
esac
case ${GCC_BRANCH_VER} in
- 4.6)
- case $(tc-arch) in
- alpha)
- # https://bugs.gentoo.org/454426
- append-ldflags -Wl,--no-relax
- ;;
- amd64|x86)
- # https://bugs.gentoo.org/411333
- # https://bugs.gentoo.org/466454
- replace-cpu-flags c3-2 pentium2 pentium3 pentium3m pentium-m i686
+ 4.6)
+ case $(tc-arch) in
+ alpha)
+ # https://bugs.gentoo.org/454426
+ append-ldflags -Wl,--no-relax
+ ;;
+ amd64|x86)
+ # https://bugs.gentoo.org/411333
+ # https://bugs.gentoo.org/466454
+ replace-cpu-flags c3-2 pentium2 pentium3 pentium3m pentium-m i686
+ ;;
+ esac
;;
- esac
- ;;
esac
strip-unsupported-flags
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-08-15 4:39 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-08-15 4:39 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/08/15 04:39:24
Modified: ChangeLog toolchain.eclass
Log:
alpha not only needs -Wl,--norelax for 4.6 to build itself, but also for it
to build other versions. So let's just always enable it.
Revision Changes Path
1.925 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.925&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.925&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.924&r2=1.925
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.924
retrieving revision 1.925
diff -u -r1.924 -r1.925
--- ChangeLog 13 Aug 2013 10:17:54 -0000 1.924
+++ ChangeLog 15 Aug 2013 04:39:24 -0000 1.925
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.924 2013/08/13 10:17:54 pesa Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.925 2013/08/15 04:39:24 dirtyepic Exp $
+
+ 15 Aug 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ alpha not only needs -Wl,--norelax for 4.6 to build itself, but also for it
+ to build other versions. So let's just always enable it.
13 Aug 2013; Davide Pesavento <pesa@gentoo.org> qt4-build.eclass:
Filter -fgraphite-identity on gcc 4.7 (bug 417105).
1.600 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.600&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.600&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.599&r2=1.600
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.599
retrieving revision 1.600
diff -u -r1.599 -r1.600
--- toolchain.eclass 10 Aug 2013 07:41:19 -0000 1.599
+++ toolchain.eclass 15 Aug 2013 04:39:24 -0000 1.600
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.599 2013/08/10 07:41:19 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.600 2013/08/15 04:39:24 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1418,6 +1418,10 @@
amd64|x86)
filter-flags '-mcpu=*'
;;
+ alpha)
+ # https://bugs.gentoo.org/454426
+ append-ldflags -Wl,--no-relax
+ ;;
*-macos)
# http://gcc.gnu.org/PR25127
[[ ${GCC_BRANCH_VER} == 4.0 || ${GCC_BRANCH_VER} == 4.1 ]] && \
@@ -1430,10 +1434,6 @@
case ${GCC_BRANCH_VER} in
4.6)
case $(tc-arch) in
- alpha)
- # https://bugs.gentoo.org/454426
- append-ldflags -Wl,--no-relax
- ;;
amd64|x86)
# https://bugs.gentoo.org/411333
# https://bugs.gentoo.org/466454
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-10-15 5:36 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-10-15 5:36 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/10/15 05:36:26
Modified: ChangeLog toolchain.eclass
Log:
Remove .la files for libasan and libtsan. They reference non-existent
libstdc++.la when fixlafiles is disabled/unsupported, and -fsanitize doesn't
work with -static anyways. (bug #487550)
Revision Changes Path
1.1026 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1026&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1026&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1025&r2=1.1026
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1025
retrieving revision 1.1026
diff -u -r1.1025 -r1.1026
--- ChangeLog 14 Oct 2013 20:30:00 -0000 1.1025
+++ ChangeLog 15 Oct 2013 05:36:26 -0000 1.1026
@@ -1,6 +1,11 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1025 2013/10/14 20:30:00 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1026 2013/10/15 05:36:26 dirtyepic Exp $
+
+ 15 Oct 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Remove .la files for libasan and libtsan. They reference non-existent
+ libstdc++.la when fixlafiles is disabled/unsupported, and -fsanitize doesn't
+ work with -static anyways. (bug #487550)
14 Oct 2013; Michał Górny <mgorny@gentoo.org> git-r3.eclass:
Fix over-use of ||die.
1.601 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.601&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.601&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.600&r2=1.601
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.600
retrieving revision 1.601
diff -u -r1.600 -r1.601
--- toolchain.eclass 15 Aug 2013 04:39:24 -0000 1.600
+++ toolchain.eclass 15 Oct 2013 05:36:26 -0000 1.601
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.600 2013/08/15 04:39:24 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.601 2013/10/15 05:36:26 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1640,6 +1640,7 @@
if tc_version_is_at_least 4.0 ; then
newins "${GCC_FILESDIR}"/awk/fixlafiles.awk-no_gcc_la fixlafiles.awk || die
find "${D}/${LIBPATH}" -name libstdc++.la -type f -exec rm "{}" \;
+ find "${D}/${LIBPATH}" -name "lib?san.la" -type f -exec rm "{}" \; # 487550
else
doins "${GCC_FILESDIR}"/awk/fixlafiles.awk || die
fi
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-11-05 5:21 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-11-05 5:21 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/11/05 05:21:30
Modified: ChangeLog toolchain.eclass
Log:
Update for libmudflap removal.
Revision Changes Path
1.1048 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1048&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1048&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1047&r2=1.1048
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1047
retrieving revision 1.1048
diff -u -r1.1047 -r1.1048
--- ChangeLog 4 Nov 2013 22:05:31 -0000 1.1047
+++ ChangeLog 5 Nov 2013 05:21:30 -0000 1.1048
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1047 2013/11/04 22:05:31 floppym Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1048 2013/11/05 05:21:30 dirtyepic Exp $
+
+ 05 Nov 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Update for libmudflap removal.
04 Nov 2013; Mike Gilbert <floppym@gentoo.org> mercurial.eclass:
Initialize cert_opt to an empty array instead of an empty string. Reported by
1.602 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.602&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.602&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.601&r2=1.602
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.601
retrieving revision 1.602
diff -u -r1.601 -r1.602
--- toolchain.eclass 15 Oct 2013 05:36:26 -0000 1.601
+++ toolchain.eclass 5 Nov 2013 05:21:30 -0000 1.602
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.601 2013/10/15 05:36:26 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.602 2013/11/05 05:21:30 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -112,7 +112,8 @@
[[ -n ${D_VER} ]] && IUSE+=" d"
[[ -n ${SPECS_VER} ]] && IUSE+=" nossp"
tc_version_is_at_least 3 && IUSE+=" doc gcj gtk hardened multilib objc"
- tc_version_is_at_least 4.0 && IUSE+=" objc-gc mudflap"
+ tc_version_is_at_least 4.0 && IUSE+=" objc-gc"
+ tc_version_is_at_least 4.0 && ! tc_version_is_at_least 4.9 && IUSE+=" mudflap"
tc_version_is_at_least 4.1 && IUSE+=" libssp objc++"
tc_version_is_at_least 4.2 && IUSE+=" openmp"
tc_version_is_at_least 4.3 && IUSE+=" fixed-point"
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-11-07 3:19 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-11-07 3:19 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/11/07 03:19:01
Modified: ChangeLog toolchain.eclass
Log:
Temporarily build with -j1 on sparc due to random ICEs encountered by
multiple
people (bug #457062).
Revision Changes Path
1.1049 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1049&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1049&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1048&r2=1.1049
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1048
retrieving revision 1.1049
diff -u -r1.1048 -r1.1049
--- ChangeLog 5 Nov 2013 05:21:30 -0000 1.1048
+++ ChangeLog 7 Nov 2013 03:19:00 -0000 1.1049
@@ -1,6 +1,11 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1048 2013/11/05 05:21:30 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1049 2013/11/07 03:19:00 dirtyepic Exp $
+
+ 07 Nov 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Temporarily build with -j1 on sparc due to random ICEs encountered by
+ multiple
+ people (bug #457062).
05 Nov 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Update for libmudflap removal.
1.603 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.603&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.603&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.602&r2=1.603
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.602
retrieving revision 1.603
diff -u -r1.602 -r1.603
--- toolchain.eclass 5 Nov 2013 05:21:30 -0000 1.602
+++ toolchain.eclass 7 Nov 2013 03:19:00 -0000 1.603
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.602 2013/11/05 05:21:30 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.603 2013/11/07 03:19:00 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1423,9 +1423,15 @@
# https://bugs.gentoo.org/454426
append-ldflags -Wl,--no-relax
;;
+ sparc)
+ # temporary workaround for random ICEs reproduced by multiple users
+ # https://bugs.gentoo.org/457062
+ [[ ${GCC_BRANCH_VER} == 4.6 || ${GCC_BRANCH_VER} == 4.7 ]] && \
+ MAKEOPTS+=" -j1"
+ ;;
*-macos)
# http://gcc.gnu.org/PR25127
- [[ ${GCC_BRANCH_VER} == 4.0 || ${GCC_BRANCH_VER} == 4.1 ]] && \
+ [[ ${GCC_BRANCH_VER} == 4.0 || ${GCC_BRANCH_VER} == 4.1 ]] && \
filter-flags '-mcpu=*' '-march=*' '-mtune=*'
;;
esac
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-11-09 7:49 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-11-09 7:49 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/11/09 07:49:50
Modified: ChangeLog toolchain.eclass
Log:
Rename config.log tarball in the hope that people will stop attaching it to
build failures.
Revision Changes Path
1.1051 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1051&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1051&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1050&r2=1.1051
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1050
retrieving revision 1.1051
diff -u -r1.1050 -r1.1051
--- ChangeLog 7 Nov 2013 03:19:30 -0000 1.1050
+++ ChangeLog 9 Nov 2013 07:49:50 -0000 1.1051
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1050 2013/11/07 03:19:30 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1051 2013/11/09 07:49:50 dirtyepic Exp $
+
+ 09 Nov 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Rename config.log tarball in the hope that people will stop attaching it to
+ build failures.
07 Nov 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Temporarily build with -j1 on sparc due to random ICEs encountered by
1.604 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.604&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.604&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.603&r2=1.604
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.603
retrieving revision 1.604
diff -u -r1.603 -r1.604
--- toolchain.eclass 7 Nov 2013 03:19:00 -0000 1.603
+++ toolchain.eclass 9 Nov 2013 07:49:50 -0000 1.604
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.603 2013/11/07 03:19:00 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.604 2013/11/09 07:49:50 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1285,9 +1285,10 @@
has toolchain_death_notice ${EBUILD_DEATH_HOOKS} || EBUILD_DEATH_HOOKS+=" toolchain_death_notice"
toolchain_death_notice() {
pushd "${WORKDIR}"/build >/dev/null
- tar jcf gcc-build-logs.tar.bz2 $(find -name config.log)
+ tar jcf gcc-config-logs.tar.bz2 $(find -name config.log)
eerror
- eerror "Please include ${PWD}/gcc-build-logs.tar.bz2 in your bug report"
+ eerror "Please include ${PWD}/gcc-config-logs.tar.bz2"
+ eerror "in your bug report if the error occurred during configure."
eerror
popd >/dev/null
}
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-11-09 10:05 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-11-09 10:05 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/11/09 10:05:12
Modified: ChangeLog toolchain.eclass
Log:
Revert previous and instead include the build log and some other info. Don't
pollute the build dir.
Revision Changes Path
1.1052 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1052&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1052&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1051&r2=1.1052
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1051
retrieving revision 1.1052
diff -u -r1.1051 -r1.1052
--- ChangeLog 9 Nov 2013 07:49:50 -0000 1.1051
+++ ChangeLog 9 Nov 2013 10:05:12 -0000 1.1052
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1051 2013/11/09 07:49:50 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1052 2013/11/09 10:05:12 dirtyepic Exp $
+
+ 09 Nov 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Revert previous and instead include the build log and some other info. Don't
+ pollute the build dir.
09 Nov 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Rename config.log tarball in the hope that people will stop attaching it to
1.605 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.605&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.605&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.604&r2=1.605
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.604
retrieving revision 1.605
diff -u -r1.604 -r1.605
--- toolchain.eclass 9 Nov 2013 07:49:50 -0000 1.604
+++ toolchain.eclass 9 Nov 2013 10:05:12 -0000 1.605
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.604 2013/11/09 07:49:50 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.605 2013/11/09 10:05:12 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1284,13 +1284,18 @@
has toolchain_death_notice ${EBUILD_DEATH_HOOKS} || EBUILD_DEATH_HOOKS+=" toolchain_death_notice"
toolchain_death_notice() {
- pushd "${WORKDIR}"/build >/dev/null
- tar jcf gcc-config-logs.tar.bz2 $(find -name config.log)
- eerror
- eerror "Please include ${PWD}/gcc-config-logs.tar.bz2"
- eerror "in your bug report if the error occurred during configure."
- eerror
- popd >/dev/null
+ if [[ -e "${WORKDIR}"/build ]] ; then
+ pushd "${WORKDIR}"/build >/dev/null
+ (echo '' | $(tc-getCC ${CTARGET}) ${CFLAGS} -v -E - 2>&1) > gccinfo.log
+ [[ -e "${T}"/build.log ]] && cp "${T}"/build.log .
+ tar jcf "${WORKDIR}"/gcc-build-logs.tar.bz2 \
+ gccinfo.log build.log $(find -name config.log)
+ rm gccinfo.log build.log
+ eerror
+ eerror "Please include ${WORKDIR}/gcc-build-logs.tar.bz2 in your bug report."
+ eerror
+ popd >/dev/null
+ fi
}
# This function accepts one optional argument, the make target to be used.
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-11-25 3:11 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-11-25 3:11 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/11/25 03:11:57
Modified: ChangeLog toolchain.eclass
Log:
Prevent comparison failures due to -frecord-gcc-switches (bug #490738).
Revision Changes Path
1.1069 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1069&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1069&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1068&r2=1.1069
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1068
retrieving revision 1.1069
diff -u -r1.1068 -r1.1069
--- ChangeLog 25 Nov 2013 02:49:47 -0000 1.1068
+++ ChangeLog 25 Nov 2013 03:11:57 -0000 1.1069
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1068 2013/11/25 02:49:47 nerdboy Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1069 2013/11/25 03:11:57 dirtyepic Exp $
+
+ 25 Nov 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Prevent comparison failures due to -frecord-gcc-switches (bug #490738).
25 Nov 2013; Steve Arnold <nerdboy@gentoo.org> gnatbuild.eclass:
Updates for handling texinfo breakage/version stuff (see bug #483192).
1.606 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.606&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.606&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.605&r2=1.606
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.605
retrieving revision 1.606
diff -u -r1.605 -r1.606
--- toolchain.eclass 9 Nov 2013 10:05:12 -0000 1.605
+++ toolchain.eclass 25 Nov 2013 03:11:57 -0000 1.606
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.605 2013/11/09 10:05:12 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.606 2013/11/25 03:11:57 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1395,6 +1395,8 @@
# dont want to funk ourselves
filter-flags '-mabi*' -m31 -m32 -m64
+ filter-flags '-frecord-gcc-switches' # 490738
+
case ${GCC_BRANCH_VER} in
3.2|3.3)
replace-cpu-flags k8 athlon64 opteron x86-64
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-12-19 6:00 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-12-19 6:00 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/12/19 06:00:43
Modified: ChangeLog toolchain.eclass
Log:
Refactoring: Inline gcc-compiler-configure() into gcc_do_configure(). Clean
up, sort and group options.
Revision Changes Path
1.1083 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1083&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1083&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1082&r2=1.1083
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1082
retrieving revision 1.1083
diff -u -r1.1082 -r1.1083
--- ChangeLog 16 Dec 2013 14:31:04 -0000 1.1082
+++ ChangeLog 19 Dec 2013 06:00:43 -0000 1.1083
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1082 2013/12/16 14:31:04 swift Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1083 2013/12/19 06:00:43 dirtyepic Exp $
+
+ 19 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Refactoring: Inline gcc-compiler-configure() into gcc_do_configure(). Clean
+ up, sort and group options.
16 Dec 2013; Sven Vermeulen <swift@gentoo.org> selinux-policy-2.eclass:
Added HTTPS URL to EGIT_REPO_URI to allow live ebuilds to fetch data if
1.607 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.607&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.607&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.606&r2=1.607
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.606
retrieving revision 1.607
diff -u -r1.606 -r1.607
--- toolchain.eclass 25 Nov 2013 03:11:57 -0000 1.606
+++ toolchain.eclass 19 Dec 2013 06:00:43 -0000 1.607
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.606 2013/11/25 03:11:57 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.607 2013/12/19 06:00:43 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -861,165 +861,42 @@
fi
}
-gcc-compiler-configure() {
- gcc-multilib-configure
-
- if tc_version_is_at_least 4.0 ; then
- if in_iuse mudflap ; then
- confgcc+=( $(use_enable mudflap libmudflap) )
- else
- confgcc+=( --disable-libmudflap )
- fi
-
- if use_if_iuse libssp ; then
- confgcc+=( --enable-libssp )
- else
- export gcc_cv_libc_provides_ssp=yes
- confgcc+=( --disable-libssp )
- fi
-
- # If we want hardened support with the newer piepatchset for >=gcc 4.4
- if tc_version_is_at_least 4.4 && want_minispecs ; then
- confgcc+=( $(use_enable hardened esp) )
- fi
-
- if tc_version_is_at_least 4.2 ; then
- if in_iuse openmp ; then
- # Make sure target has pthreads support. #326757 #335883
- # There shouldn't be a chicken&egg problem here as openmp won't
- # build without a C library, and you can't build that w/out
- # already having a compiler ...
- if ! is_crosscompile || \
- $(tc-getCPP ${CTARGET}) -E - <<<"#include <pthread.h>" >& /dev/null
- then
- confgcc+=( $(use_enable openmp libgomp) )
- else
- # Force disable as the configure script can be dumb #359855
- confgcc+=( --disable-libgomp )
- fi
- else
- # For gcc variants where we don't want openmp (e.g. kgcc)
- confgcc+=( --disable-libgomp )
- fi
- fi
-
- # Stick the python scripts in their own slotted directory
- # bug #279252
- #
- # --with-python-dir=DIR
- # Specifies where to install the Python modules used for aot-compile. DIR
- # should not include the prefix used in installation. For example, if the
- # Python modules are to be installed in /usr/lib/python2.5/site-packages,
- # then --with-python-dir=/lib/python2.5/site-packages should be passed.
- #
- # This should translate into "/share/gcc-data/${CTARGET}/${GCC_CONFIG_VER}/python"
- if tc_version_is_at_least 4.4 ; then
- confgcc+=( --with-python-dir=${DATAPATH/$PREFIX/}/python )
- fi
- fi
-
- # Enable build warnings by default with cross-compilers when system
- # paths are included (e.g. via -I flags).
- is_crosscompile && confgcc+=( --enable-poison-system-directories )
-
- # For newer versions of gcc, use the default ("release"), because no
- # one (even upstream apparently) tests with it disabled. #317217
- if tc_version_is_at_least 4 || [[ -n ${GCC_CHECKS_LIST} ]] ; then
- confgcc+=( --enable-checking=${GCC_CHECKS_LIST:-release} )
- else
- confgcc+=( --disable-checking )
- fi
-
- # GTK+ is preferred over xlib in 3.4.x (xlib is unmaintained
- # right now). Much thanks to <csm@gnu.org> for the heads up.
- # Travis Tilley <lv@gentoo.org> (11 Jul 2004)
- if ! is_gcj ; then
- confgcc+=( --disable-libgcj )
- elif use gtk ; then
- confgcc+=( --enable-java-awt=gtk )
- fi
+gcc_do_configure() {
+ local confgcc=( --host=${CHOST} )
- # allow gcc to search for clock funcs in the main C lib.
- # if it can't find them, then tough cookies -- we aren't
- # going to link in -lrt to all C++ apps. #411681
- if tc_version_is_at_least 4.4 && is_cxx ; then
- confgcc+=( --enable-libstdcxx-time )
+ if is_crosscompile || tc-is-cross-compiler ; then
+ # Straight from the GCC install doc:
+ # "GCC has code to correctly determine the correct value for target
+ # for nearly all native systems. Therefore, we highly recommend you
+ # not provide a configure target when configuring a native compiler."
+ confgcc+=( --target=${CTARGET} )
fi
+ [[ -n ${CBUILD} ]] && confgcc+=( --build=${CBUILD} )
- # newer gcc versions like to bootstrap themselves with C++,
- # so we need to manually disable it ourselves
- if tc_version_is_at_least 4.7 && ! is_cxx ; then
- confgcc+=( --disable-build-with-cxx --disable-build-poststage1-with-cxx )
- fi
+ confgcc+=(
+ --prefix="${PREFIX}"
+ --bindir="${BINPATH}"
+ --includedir="${INCLUDEPATH}"
+ --datadir="${DATAPATH}"
+ --mandir="${DATAPATH}/man"
+ --infodir="${DATAPATH}/info"
+ --with-gxx-include-dir="${STDCXX_INCDIR}"
+ )
- # newer gcc's come with libquadmath, but only fortran uses
- # it, so auto punt it when we don't care
- if tc_version_is_at_least 4.6 && ! is_fortran ; then
- confgcc+=( --disable-libquadmath )
+ # Stick the python scripts in their own slotted directory (bug #279252)
+ #
+ # --with-python-dir=DIR
+ # Specifies where to install the Python modules used for aot-compile. DIR
+ # should not include the prefix used in installation. For example, if the
+ # Python modules are to be installed in /usr/lib/python2.5/site-packages,
+ # then --with-python-dir=/lib/python2.5/site-packages should be passed.
+ #
+ # This should translate into "/share/gcc-data/${CTARGET}/${GCC_CONFIG_VER}/python"
+ if tc_version_is_at_least 4.4 ; then
+ confgcc+=( --with-python-dir=${DATAPATH/$PREFIX/}/python )
fi
- local with_abi_map=()
- case $(tc-arch) in
- arm) #264534 #414395
- local a arm_arch=${CTARGET%%-*}
- # Remove trailing endian variations first: eb el be bl b l
- for a in e{b,l} {b,l}e b l ; do
- if [[ ${arm_arch} == *${a} ]] ; then
- arm_arch=${arm_arch%${a}}
- break
- fi
- done
- # Convert armv7{a,r,m} to armv7-{a,r,m}
- [[ ${arm_arch} == armv7? ]] && arm_arch=${arm_arch/7/7-}
- # See if this is a valid --with-arch flag
- if (srcdir=${S}/gcc target=${CTARGET} with_arch=${arm_arch};
- . "${srcdir}"/config.gcc) &>/dev/null
- then
- confgcc+=( --with-arch=${arm_arch} )
- fi
-
- # Make default mode thumb for microcontroller classes #418209
- [[ ${arm_arch} == *-m ]] && confgcc+=( --with-mode=thumb )
-
- # Enable hardvfp
- if [[ $(tc-is-softfloat) == "no" ]] && \
- [[ ${CTARGET} == armv[67]* ]] && \
- tc_version_is_at_least 4.5
- then
- # Follow the new arm hardfp distro standard by default
- confgcc+=( --with-float=hard )
- case ${CTARGET} in
- armv6*) confgcc+=( --with-fpu=vfp ) ;;
- armv7*) confgcc+=( --with-fpu=vfpv3-d16 ) ;;
- esac
- fi
- ;;
- mips)
- # Add --with-abi flags to set default ABI
- confgcc+=( --with-abi=$(gcc-abi-map ${TARGET_DEFAULT_ABI}) )
- ;;
- amd64)
- # drop the older/ABI checks once this get's merged into some
- # version of gcc upstream
- if tc_version_is_at_least 4.7 && has x32 $(get_all_abis TARGET) ; then
- confgcc+=( --with-abi=$(gcc-abi-map ${TARGET_DEFAULT_ABI}) )
- fi
- ;;
- x86)
- # Default arch for x86 is normally i386, lets give it a bump
- # since glibc will do so based on CTARGET anyways
- confgcc+=( --with-arch=${CTARGET%%-*} )
- ;;
- hppa)
- # Enable sjlj exceptions for backward compatibility on hppa
- [[ ${GCCMAJOR} == "3" ]] && confgcc+=( --enable-sjlj-exceptions )
- ;;
- ppc)
- # Set up defaults based on current CFLAGS
- is-flagq -mfloat-gprs=double && confgcc+=( --enable-e500-double )
- [[ ${CTARGET//_/-} == *-e500v2-* ]] && confgcc+=( --enable-e500-double )
- ;;
- esac
+ ### language options
local GCC_LANG="c"
is_cxx && GCC_LANG+=",c++"
@@ -1045,99 +922,63 @@
# We do NOT want 'ADA support' in here!
# is_ada && GCC_LANG+=",ada"
- einfo "configuring for GCC_LANG: ${GCC_LANG}"
confgcc+=( --enable-languages=${GCC_LANG} )
-}
-gcc_do_configure() {
- local confgcc=(
- # Set configuration based on path variables
- --prefix="${PREFIX}"
- --bindir="${BINPATH}"
- --includedir="${INCLUDEPATH}"
- --datadir="${DATAPATH}"
- --mandir="${DATAPATH}/man"
- --infodir="${DATAPATH}/info"
- --with-gxx-include-dir="${STDCXX_INCDIR}"
+ ### general options
+
+ confgcc+=(
+ --enable-obsolete
+ --enable-secureplt
+ --disable-werror
+ --with-system-zlib
)
- # On Darwin we need libdir to be set in order to get correct install names
- # for things like libobjc-gnu, libgcj and libfortran. If we enable it on
- # non-Darwin we screw up the behaviour this eclass relies on. We in
- # particular need this over --libdir for bug #255315.
- [[ ${CTARGET} == *-darwin* ]] && \
- confgcc+=( --enable-version-specific-runtime-libs )
- # All our cross-compile logic goes here ! woo !
- confgcc+=( --host=${CHOST} )
- if is_crosscompile || tc-is-cross-compiler ; then
- # Straight from the GCC install doc:
- # "GCC has code to correctly determine the correct value for target
- # for nearly all native systems. Therefore, we highly recommend you
- # not provide a configure target when configuring a native compiler."
- confgcc+=( --target=${CTARGET} )
+ if use nls ; then
+ confgcc+=( --enable-nls --without-included-gettext )
+ else
+ confgcc+=( --disable-nls )
fi
- [[ -n ${CBUILD} ]] && confgcc+=( --build=${CBUILD} )
-
- # ppc altivec support
- confgcc+=( $(use_enable altivec) )
-
- # gcc has fixed-point arithmetic support in 4.3 for mips targets that can
- # significantly increase compile time by several hours. This will allow
- # users to control this feature in the event they need the support.
- tc_version_is_at_least 4.3 && confgcc+=( $(use_enable fixed-point) )
- # graphite was added in 4.4 but we only support it in 4.6+ due to external
- # library issues. 4.6/4.7 uses cloog-ppl which is a fork of CLooG with a
- # PPL backend. 4.8+ uses upstream CLooG with the ISL backend. We install
- # cloog-ppl into a non-standard location to prevent collisions.
- if tc_version_is_at_least 4.8 ; then
- confgcc+=( $(use_with graphite cloog) )
- use graphite && confgcc+=( --disable-isl-version-check )
- elif tc_version_is_at_least 4.6 ; then
- confgcc+=( $(use_with graphite cloog) )
- confgcc+=( $(use_with graphite ppl) )
- use graphite && confgcc+=( --with-cloog-include=/usr/include/cloog-ppl )
- use graphite && confgcc+=( --disable-ppl-version-check )
- elif tc_version_is_at_least 4.4 ; then
- confgcc+=( --without-cloog )
- confgcc+=( --without-ppl )
- fi
+ tc_version_is_at_least 3.4 || confgcc+=( --disable-libunwind-exceptions )
- if tc_version_is_at_least 4.6 ; then
- confgcc+=( $(use_enable lto) )
- elif tc_version_is_at_least 4.5 ; then
- confgcc+=( --disable-lto )
+ # Use the default ("release") checking because upstream usually neglects
+ # to test "disabled" so it has a history of breaking. #317217
+ if tc_version_is_at_least 4 || [[ -n ${GCC_CHECKS_LIST} ]] ; then
+ confgcc+=( --enable-checking=${GCC_CHECKS_LIST:-release} )
+ else
+ confgcc+=( --disable-checking )
fi
- case $(tc-is-softfloat) in
- yes) confgcc+=( --with-float=soft ) ;;
- softfp) confgcc+=( --with-float=softfp ) ;;
- *)
- # If they've explicitly opt-ed in, do hardfloat,
- # otherwise let the gcc default kick in.
- [[ ${CTARGET//_/-} == *-hardfloat-* ]] \
- && confgcc+=( --with-float=hard )
- ;;
- esac
+ # Branding
+ tc_version_is_at_least 4.3 && confgcc+=(
+ --with-bugurl=http://bugs.gentoo.org/
+ --with-pkgversion="${BRANDING_GCC_PKGVERSION}"
+ )
- # Native Language Support
- if use nls ; then
- confgcc+=( --enable-nls --without-included-gettext )
- else
- confgcc+=( --disable-nls )
+ # If we want hardened support with the newer piepatchset for >=gcc 4.4
+ if tc_version_is_at_least 4.4 && want_minispecs ; then
+ confgcc+=( $(use_enable hardened esp) )
fi
- # reasonably sane globals (hopefully)
- confgcc+=(
- --with-system-zlib
- --enable-obsolete
- --disable-werror
- --enable-secureplt
- )
+ # allow gcc to search for clock funcs in the main C lib.
+ # if it can't find them, then tough cookies -- we aren't
+ # going to link in -lrt to all C++ apps. #411681
+ if tc_version_is_at_least 4.4 && is_cxx ; then
+ confgcc+=( --enable-libstdcxx-time )
+ fi
- gcc-compiler-configure || die
+ # newer gcc versions like to bootstrap themselves with C++,
+ # so we need to manually disable it ourselves
+ if tc_version_is_at_least 4.7 && ! is_cxx ; then
+ confgcc+=( --disable-build-with-cxx --disable-build-poststage1-with-cxx )
+ fi
+ ### Cross-compiler options
if is_crosscompile ; then
+ # Enable build warnings by default with cross-compilers when system
+ # paths are included (e.g. via -I flags).
+ confgcc+=( --enable-poison-system-directories )
+
# When building a stage1 cross-compiler (just C compiler), we have to
# disable a bunch of features or gcc goes boom
local needed_libc=""
@@ -1197,6 +1038,7 @@
confgcc+=( --enable-threads=posix ) ;;
esac
fi
+
# __cxa_atexit is "essential for fully standards-compliant handling of
# destructors", but apparently requires glibc.
case ${CTARGET} in
@@ -1227,7 +1069,91 @@
;;
esac
- tc_version_is_at_least 3.4 || confgcc+=( --disable-libunwind-exceptions )
+ ### arch options
+
+ gcc-multilib-configure
+
+ # ppc altivec support
+ confgcc+=( $(use_enable altivec) )
+
+ # gcc has fixed-point arithmetic support in 4.3 for mips targets that can
+ # significantly increase compile time by several hours. This will allow
+ # users to control this feature in the event they need the support.
+ tc_version_is_at_least 4.3 && confgcc+=( $(use_enable fixed-point) )
+
+ case $(tc-is-softfloat) in
+ yes) confgcc+=( --with-float=soft ) ;;
+ softfp) confgcc+=( --with-float=softfp ) ;;
+ *)
+ # If they've explicitly opt-ed in, do hardfloat,
+ # otherwise let the gcc default kick in.
+ [[ ${CTARGET//_/-} == *-hardfloat-* ]] \
+ && confgcc+=( --with-float=hard )
+ ;;
+ esac
+
+ local with_abi_map=()
+ case $(tc-arch) in
+ arm) #264534 #414395
+ local a arm_arch=${CTARGET%%-*}
+ # Remove trailing endian variations first: eb el be bl b l
+ for a in e{b,l} {b,l}e b l ; do
+ if [[ ${arm_arch} == *${a} ]] ; then
+ arm_arch=${arm_arch%${a}}
+ break
+ fi
+ done
+ # Convert armv7{a,r,m} to armv7-{a,r,m}
+ [[ ${arm_arch} == armv7? ]] && arm_arch=${arm_arch/7/7-}
+ # See if this is a valid --with-arch flag
+ if (srcdir=${S}/gcc target=${CTARGET} with_arch=${arm_arch};
+ . "${srcdir}"/config.gcc) &>/dev/null
+ then
+ confgcc+=( --with-arch=${arm_arch} )
+ fi
+
+ # Make default mode thumb for microcontroller classes #418209
+ [[ ${arm_arch} == *-m ]] && confgcc+=( --with-mode=thumb )
+
+ # Enable hardvfp
+ if [[ $(tc-is-softfloat) == "no" ]] && \
+ [[ ${CTARGET} == armv[67]* ]] && \
+ tc_version_is_at_least 4.5
+ then
+ # Follow the new arm hardfp distro standard by default
+ confgcc+=( --with-float=hard )
+ case ${CTARGET} in
+ armv6*) confgcc+=( --with-fpu=vfp ) ;;
+ armv7*) confgcc+=( --with-fpu=vfpv3-d16 ) ;;
+ esac
+ fi
+ ;;
+ mips)
+ # Add --with-abi flags to set default ABI
+ confgcc+=( --with-abi=$(gcc-abi-map ${TARGET_DEFAULT_ABI}) )
+ ;;
+ amd64)
+ # drop the older/ABI checks once this get's merged into some
+ # version of gcc upstream
+ if tc_version_is_at_least 4.7 && has x32 $(get_all_abis TARGET) ; then
+ confgcc+=( --with-abi=$(gcc-abi-map ${TARGET_DEFAULT_ABI}) )
+ fi
+ ;;
+ x86)
+ # Default arch for x86 is normally i386, lets give it a bump
+ # since glibc will do so based on CTARGET anyways
+ confgcc+=( --with-arch=${CTARGET%%-*} )
+ ;;
+ hppa)
+ # Enable sjlj exceptions for backward compatibility on hppa
+ [[ ${GCCMAJOR} == "3" ]] && confgcc+=( --enable-sjlj-exceptions )
+ ;;
+ ppc)
+ # Set up defaults based on current CFLAGS
+ is-flagq -mfloat-gprs=double && confgcc+=( --enable-e500-double )
+ [[ ${CTARGET//_/-} == *-e500v2-* ]] && confgcc+=( --enable-e500-double )
+ ;;
+ esac
# if the target can do biarch (-m32/-m64), enable it. overhead should
# be small, and should simplify building of 64bit kernels in a 32bit
@@ -1238,15 +1164,85 @@
amd64|x86) tc_version_is_at_least 4.3 && confgcc+=( --enable-targets=all ) ;;
esac
- tc_version_is_at_least 4.3 && confgcc+=(
- --with-bugurl=http://bugs.gentoo.org/
- --with-pkgversion="${BRANDING_GCC_PKGVERSION}"
- )
+ # On Darwin we need libdir to be set in order to get correct install names
+ # for things like libobjc-gnu, libgcj and libfortran. If we enable it on
+ # non-Darwin we screw up the behaviour this eclass relies on. We in
+ # particular need this over --libdir for bug #255315.
+ [[ ${CTARGET} == *-darwin* ]] && \
+ confgcc+=( --enable-version-specific-runtime-libs )
- confgcc+=(
- "$@"
- ${EXTRA_ECONF}
- )
+ ### library options
+
+ if ! is_gcj ; then
+ confgcc+=( --disable-libgcj )
+ elif use gtk ; then
+ confgcc+=( --enable-java-awt=gtk )
+ fi
+
+ if tc_version_is_at_least 4.2 ; then
+ if in_iuse openmp ; then
+ # Make sure target has pthreads support. #326757 #335883
+ # There shouldn't be a chicken & egg problem here as openmp won't
+ # build without a C library, and you can't build that w/out
+ # already having a compiler ...
+ if ! is_crosscompile || \
+ $(tc-getCPP ${CTARGET}) -E - <<<"#include <pthread.h>" >& /dev/null
+ then
+ confgcc+=( $(use_enable openmp libgomp) )
+ else
+ # Force disable as the configure script can be dumb #359855
+ confgcc+=( --disable-libgomp )
+ fi
+ else
+ # For gcc variants where we don't want openmp (e.g. kgcc)
+ confgcc+=( --disable-libgomp )
+ fi
+ fi
+
+ if tc_version_is_at_least 4.0 ; then
+ if in_iuse mudflap ; then
+ confgcc+=( $(use_enable mudflap libmudflap) )
+ else
+ confgcc+=( --disable-libmudflap )
+ fi
+
+ if use_if_iuse libssp ; then
+ confgcc+=( --enable-libssp )
+ else
+ export gcc_cv_libc_provides_ssp=yes
+ confgcc+=( --disable-libssp )
+ fi
+
+ fi
+
+ # newer gcc's come with libquadmath, but only fortran uses
+ # it, so auto punt it when we don't care
+ if tc_version_is_at_least 4.6 && ! is_fortran ; then
+ confgcc+=( --disable-libquadmath )
+ fi
+
+ if tc_version_is_at_least 4.6 ; then
+ confgcc+=( $(use_enable lto) )
+ elif tc_version_is_at_least 4.5 ; then
+ confgcc+=( --disable-lto )
+ fi
+
+ # graphite was added in 4.4 but we only support it in 4.6+ due to external
+ # library issues. 4.6/4.7 uses cloog-ppl which is a fork of CLooG with a
+ # PPL backend. 4.8+ uses upstream CLooG with the ISL backend. We install
+ # cloog-ppl into a non-standard location to prevent collisions.
+ if tc_version_is_at_least 4.8 ; then
+ confgcc+=( $(use_with graphite cloog) )
+ use graphite && confgcc+=( --disable-isl-version-check )
+ elif tc_version_is_at_least 4.6 ; then
+ confgcc+=( $(use_with graphite cloog) )
+ confgcc+=( $(use_with graphite ppl) )
+ use graphite && confgcc+=( --with-cloog-include=/usr/include/cloog-ppl )
+ use graphite && confgcc+=( --disable-ppl-version-check )
+ elif tc_version_is_at_least 4.4 ; then
+ confgcc+=( --without-cloog )
+ confgcc+=( --without-ppl )
+ fi
# Disable gcc info regeneration -- it ships with generated info pages
# already. Our custom version/urls/etc... trigger it. #464008
@@ -1258,13 +1254,17 @@
# killing the 32bit builds which want /usr/lib.
export ac_cv_have_x='have_x=yes ac_x_includes= ac_x_libraries='
+ confgcc+=( "$@" ${EXTRA_ECONF} )
+
# Nothing wrong with a good dose of verbosity
echo
- einfo "PREFIX: ${PREFIX}"
- einfo "BINPATH: ${BINPATH}"
- einfo "LIBPATH: ${LIBPATH}"
- einfo "DATAPATH: ${DATAPATH}"
- einfo "STDCXX_INCDIR: ${STDCXX_INCDIR}"
+ einfo "PREFIX: ${PREFIX}"
+ einfo "BINPATH: ${BINPATH}"
+ einfo "LIBPATH: ${LIBPATH}"
+ einfo "DATAPATH: ${DATAPATH}"
+ einfo "STDCXX_INCDIR: ${STDCXX_INCDIR}"
+ echo
+ einfo "Languages: ${GCC_LANG}"
echo
einfo "Configuring GCC with: ${confgcc[@]//--/\n\t--}"
echo
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-12-21 11:59 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-12-21 11:59 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/12/21 11:59:18
Modified: ChangeLog toolchain.eclass
Log:
Reorder by phase and group functions together with the phase that uses them.
No functional changes.
Revision Changes Path
1.1084 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1084&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1084&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1083&r2=1.1084
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1083
retrieving revision 1.1084
diff -u -r1.1083 -r1.1084
--- ChangeLog 19 Dec 2013 06:00:43 -0000 1.1083
+++ ChangeLog 21 Dec 2013 11:59:18 -0000 1.1084
@@ -1,10 +1,14 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1083 2013/12/19 06:00:43 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1084 2013/12/21 11:59:18 dirtyepic Exp $
+
+ 21 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Reorder by phase and group functions together with the phase that uses them.
+ No functional changes.
19 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
- Refactoring: Inline gcc-compiler-configure() into gcc_do_configure(). Clean
- up, sort and group options.
+ Inline gcc-compiler-configure() into gcc_do_configure(). Clean up, sort and
+ group options.
16 Dec 2013; Sven Vermeulen <swift@gentoo.org> selinux-policy-2.eclass:
Added HTTPS URL to EGIT_REPO_URI to allow live ebuilds to fetch data if
1.608 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.608&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.608&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.607&r2=1.608
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.607
retrieving revision 1.608
diff -u -r1.607 -r1.608
--- toolchain.eclass 19 Dec 2013 06:00:43 -0000 1.607
+++ toolchain.eclass 21 Dec 2013 11:59:18 -0000 1.608
@@ -1,10 +1,9 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.607 2013/12/19 06:00:43 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.608 2013/12/21 11:59:18 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
-#---->> eclass stuff <<----
DESCRIPTION="The GNU Compiler Collection"
HOMEPAGE="http://gcc.gnu.org/"
LICENSE="GPL-2 LGPL-2.1"
@@ -27,9 +26,9 @@
FEATURES=${FEATURES/multilib-strict/}
EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install pkg_postinst pkg_postrm
-#----<< eclass stuff >>----
#---->> globals <<----
+
export CTARGET=${CTARGET:-${CHOST}}
if [[ ${CTARGET} = ${CHOST} ]] ; then
if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then
@@ -100,9 +99,9 @@
# Dont install in /usr/include/g++-v3/, but in gcc internal directory.
# We will handle /usr/include/g++-v3/ with gcc-config ...
STDCXX_INCDIR=${TOOLCHAIN_STDCXX_INCDIR:-${LIBPATH}/include/g++-v${GCC_BRANCH_VER/\.*/}}
-#----<< globals >>----
#---->> SLOT+IUSE logic <<----
+
IUSE="multislot nls nptl regression-test vanilla"
if [[ ${PN} != "kgcc64" && ${PN} != gcc-* ]] ; then
@@ -128,9 +127,9 @@
else
SLOT="${GCC_BRANCH_VER}"
fi
-#----<< SLOT+IUSE logic >>----
#---->> DEPEND <<----
+
RDEPEND="sys-libs/zlib
nls? ( sys-devel/gettext )"
@@ -192,7 +191,6 @@
fi
PDEPEND=">=sys-devel/gcc-config-1.7"
-#----<< DEPEND >>----
#---->> S + SRC_URI essentials <<----
@@ -208,6 +206,13 @@
fi
)
+gentoo_urls() {
+ local devspace="HTTP~vapier/dist/URI HTTP~dirtyepic/dist/URI
+ HTTP~halcy0n/patches/URI HTTP~zorry/patches/gcc/URI"
+ devspace=${devspace//HTTP/http:\/\/dev.gentoo.org\/}
+ echo mirror://gentoo/$1 ${devspace//URI/$1}
+}
+
# This function handles the basics of setting the SRC_URI for a gcc ebuild.
# To use, set SRC_URI with:
#
@@ -266,14 +271,6 @@
# ten Brugge's bounds-checking patches. If you want to use a patch
# for an older gcc version with a new gcc, make sure you set
# HTB_GCC_VER to that version of gcc.
-#
-gentoo_urls() {
- local devspace="HTTP~vapier/dist/URI HTTP~dirtyepic/dist/URI
- HTTP~halcy0n/patches/URI HTTP~zorry/patches/gcc/URI"
- devspace=${devspace//HTTP/http:\/\/dev.gentoo.org\/}
- echo mirror://gentoo/$1 ${devspace//URI/$1}
-}
-
get_gcc_src_uri() {
export PATCH_GCC_VER=${PATCH_GCC_VER:-${GCC_RELEASE_VER}}
export UCLIBC_GCC_VER=${UCLIBC_GCC_VER:-${PATCH_GCC_VER}}
@@ -331,332 +328,367 @@
echo "${GCC_SRC_URI}"
}
+
SRC_URI=$(get_gcc_src_uri)
-#---->> S + SRC_URI essentials >>----
-#---->> support checks <<----
+#---->> pkg_setup <<----
-# Grab a variable from the build system (taken from linux-info.eclass)
-get_make_var() {
- local var=$1 makefile=${2:-${WORKDIR}/build/Makefile}
- echo -e "e:\\n\\t@echo \$(${var})\\ninclude ${makefile}" | \
- r=${makefile%/*} emake --no-print-directory -s -f - 2>/dev/null
-}
-XGCC() { get_make_var GCC_FOR_TARGET ; }
+toolchain_pkg_setup() {
+ if [[ -n ${PRERELEASE}${SNAPSHOT} || ${PV} == *9999* ]] &&
+ [[ -z ${I_PROMISE_TO_SUPPLY_PATCHES_WITH_BUGS} ]] ; then
+ die "Please \`export I_PROMISE_TO_SUPPLY_PATCHES_WITH_BUGS=1\` or define it" \
+ "in your make.conf if you want to use this version."
+ fi
-# The gentoo piessp patches allow for 3 configurations:
-# 1) PIE+SSP by default
-# 2) PIE by default
-# 3) SSP by default
-hardened_gcc_works() {
- if [[ $1 == "pie" ]] ; then
- # $gcc_cv_ld_pie is unreliable as it simply take the output of
- # `ld --help | grep -- -pie`, that reports the option in all cases, also if
- # the loader doesn't actually load the resulting executables.
- # To avoid breakage, blacklist FreeBSD here at least
- [[ ${CTARGET} == *-freebsd* ]] && return 1
+ # we dont want to use the installed compiler's specs to build gcc!
+ unset GCC_SPECS
- want_pie || return 1
- use_if_iuse nopie && return 1
- hardened_gcc_is_stable pie
- return $?
- elif [[ $1 == "ssp" ]] ; then
- [[ -n ${SPECS_VER} ]] || return 1
- use_if_iuse nossp && return 1
- hardened_gcc_is_stable ssp
- return $?
- else
- # laziness ;)
- hardened_gcc_works pie || return 1
- hardened_gcc_works ssp || return 1
- return 0
+ if ! use_if_iuse cxx ; then
+ use_if_iuse go && ewarn 'Go requires a C++ compiler, disabled due to USE="-cxx"'
+ use_if_iuse objc++ && ewarn 'Obj-C++ requires a C++ compiler, disabled due to USE="-cxx"'
+ use_if_iuse gcj && ewarn 'GCJ requires a C++ compiler, disabled due to USE="-cxx"'
fi
+
+ want_minispecs
+
+ unset LANGUAGES #265283
}
-hardened_gcc_is_stable() {
- local tocheck
- if [[ $1 == "pie" ]] ; then
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- tocheck=${PIE_UCLIBC_STABLE}
- else
- tocheck=${PIE_GLIBC_STABLE}
- fi
- elif [[ $1 == "ssp" ]] ; then
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- tocheck=${SSP_UCLIBC_STABLE}
- else
- tocheck=${SSP_STABLE}
- fi
+#----> src_unpack <----
+
+toolchain_src_unpack() {
+ [[ -z ${UCLIBC_VER} ]] && [[ ${CTARGET} == *-uclibc* ]] && \
+ die "Sorry, this version does not support uClibc"
+
+ if [[ ${PV} == *9999* ]]; then
+ git-2_src_unpack
else
- die "hardened_gcc_stable needs to be called with pie or ssp"
+ gcc_quick_unpack
fi
- has $(tc-arch) ${tocheck} && return 0
- return 1
-}
-
-want_pie() {
- ! use hardened && [[ -n ${PIE_VER} ]] && use nopie && return 1
- [[ -n ${PIE_VER} ]] && [[ -n ${SPECS_VER} ]] && return 0
- tc_version_is_at_least 4.3.2 && return 1
- [[ -z ${PIE_VER} ]] && return 1
- use !nopie && return 0
- return 1
-}
+ export BRANDING_GCC_PKGVERSION="Gentoo ${GCC_PVR}"
+ cd "${S}"
-want_minispecs() {
- if tc_version_is_at_least 4.3.2 && use hardened ; then
- if ! want_pie ; then
- ewarn "PIE_VER or SPECS_VER is not defined in the GCC ebuild."
- elif use vanilla ; then
- ewarn "You will not get hardened features if you have the vanilla USE-flag."
- elif use nopie && use nossp ; then
- ewarn "You will not get hardened features if you have the nopie and nossp USE-flag."
- elif ! hardened_gcc_works ; then
- ewarn "Your $(tc-arch) arch is not supported."
- else
- return 0
+ if ! use vanilla ; then
+ if [[ -n ${PATCH_VER} ]] ; then
+ guess_patch_type_in_dir "${WORKDIR}"/patch
+ EPATCH_MULTI_MSG="Applying Gentoo patches ..." \
+ epatch "${WORKDIR}"/patch
+ BRANDING_GCC_PKGVERSION="${BRANDING_GCC_PKGVERSION} p${PATCH_VER}"
+ fi
+ if [[ -n ${UCLIBC_VER} ]] ; then
+ guess_patch_type_in_dir "${WORKDIR}"/uclibc
+ EPATCH_MULTI_MSG="Applying uClibc patches ..." \
+ epatch "${WORKDIR}"/uclibc
fi
- ewarn "Hope you know what you are doing. Hardened will not work."
- return 0
fi
- return 1
-}
+ do_gcc_HTB_patches
+ do_gcc_PIE_patches
+ epatch_user
-# This is to make sure we don't accidentally try to enable support for a
-# language that doesnt exist. GCC 3.4 supports f77, while 4.0 supports f95, etc.
-#
-# Also add a hook so special ebuilds (kgcc64) can control which languages
-# exactly get enabled
-gcc-lang-supported() {
- grep ^language=\"${1}\" "${S}"/gcc/*/config-lang.in > /dev/null || return 1
- [[ -z ${TOOLCHAIN_ALLOWED_LANGS} ]] && return 0
- has $1 ${TOOLCHAIN_ALLOWED_LANGS}
-}
-#----<< support checks >>----
+ use hardened && make_gcc_hard
-#---->> specs + env.d logic <<----
+ # install the libstdc++ python into the right location
+ # http://gcc.gnu.org/PR51368
+ if tc_version_is_at_least 4.5 && ! tc_version_is_at_least 4.7 ; then
+ sed -i \
+ '/^pythondir =/s:=.*:= $(datadir)/python:' \
+ "${S}"/libstdc++-v3/python/Makefile.in || die
+ fi
-# configure to build with the hardened GCC specs as the default
-make_gcc_hard() {
- # defaults to enable for all hardened toolchains
- local gcc_hard_flags="-DEFAULT_RELRO -DEFAULT_BIND_NOW"
+ # make sure the pkg config files install into multilib dirs.
+ # since we configure with just one --libdir, we can't use that
+ # (as gcc itself takes care of building multilibs). #435728
+ find "${S}" -name Makefile.in \
+ -exec sed -i '/^pkgconfigdir/s:=.*:=$(toolexeclibdir)/pkgconfig:' {} +
- if hardened_gcc_works ; then
- einfo "Updating gcc to use automatic PIE + SSP building ..."
- gcc_hard_flags+=" -DEFAULT_PIE_SSP"
- elif hardened_gcc_works pie ; then
- einfo "Updating gcc to use automatic PIE building ..."
- ewarn "SSP has not been enabled by default"
- gcc_hard_flags+=" -DEFAULT_PIE"
- elif hardened_gcc_works ssp ; then
- einfo "Updating gcc to use automatic SSP building ..."
- ewarn "PIE has not been enabled by default"
- gcc_hard_flags+=" -DEFAULT_SSP"
- else
- # do nothing if hardened isnt supported, but dont die either
- ewarn "hardened is not supported for this arch in this gcc version"
- ebeep
- return 0
+ # No idea when this first started being fixed, but let's go with 4.3.x for now
+ if ! tc_version_is_at_least 4.3 ; then
+ fix_files=""
+ for x in contrib/test_summary libstdc++-v3/scripts/check_survey.in ; do
+ [[ -e ${x} ]] && fix_files="${fix_files} ${x}"
+ done
+ ht_fix_file ${fix_files} */configure *.sh */Makefile.in
fi
- sed -i \
- -e "/^HARD_CFLAGS = /s|=|= ${gcc_hard_flags} |" \
- "${S}"/gcc/Makefile.in || die
-
- # rebrand to make bug reports easier
- BRANDING_GCC_PKGVERSION=${BRANDING_GCC_PKGVERSION/Gentoo/Gentoo Hardened}
-}
+ setup_multilib_osdirnames
+ gcc_version_patch
-create_gcc_env_entry() {
- dodir /etc/env.d/gcc
- local gcc_envd_base="/etc/env.d/gcc/${CTARGET}-${GCC_CONFIG_VER}"
+ if tc_version_is_at_least 4.1 ; then
+ if [[ -n ${SNAPSHOT} || -n ${PRERELEASE} ]] ; then
+ # BASE-VER must be a three-digit version number
+ # followed by an optional -pre string
+ # eg. 4.5.1, 4.6.2-pre20120213, 4.7.0-pre9999
+ # If BASE-VER differs from ${PV/_/-} then libraries get installed in
+ # the wrong directory.
+ echo ${PV/_/-} > "${S}"/gcc/BASE-VER
+ fi
+ fi
- local gcc_specs_file
- local gcc_envd_file="${D}${gcc_envd_base}"
- if [[ -z $1 ]] ; then
- # I'm leaving the following commented out to remind me that it
- # was an insanely -bad- idea. Stuff broke. GCC_SPECS isnt unset
- # on chroot or in non-toolchain.eclass gcc ebuilds!
- #gcc_specs_file="${LIBPATH}/specs"
- gcc_specs_file=""
- else
- gcc_envd_file+="-$1"
- gcc_specs_file="${LIBPATH}/$1.specs"
+ # >= gcc-4.3 doesn't bundle ecj.jar, so copy it
+ if tc_version_is_at_least 4.3 && use gcj ; then
+ if tc_version_is_at_least 4.5 ; then
+ einfo "Copying ecj-4.5.jar"
+ cp -pPR "${DISTDIR}/ecj-4.5.jar" "${S}/ecj.jar" || die
+ else
+ einfo "Copying ecj-4.3.jar"
+ cp -pPR "${DISTDIR}/ecj-4.3.jar" "${S}/ecj.jar" || die
+ fi
fi
- # We want to list the default ABI's LIBPATH first so libtool
- # searches that directory first. This is a temporary
- # workaround for libtool being stupid and using .la's from
- # conflicting ABIs by using the first one in the search path
- local ldpaths mosdirs
- if tc_version_is_at_least 3.2 ; then
- local mdir mosdir abi ldpath
- for abi in $(get_all_abis TARGET) ; do
- mdir=$($(XGCC) $(get_abi_CFLAGS ${abi}) --print-multi-directory)
- ldpath=${LIBPATH}
- [[ ${mdir} != "." ]] && ldpath+="/${mdir}"
- ldpaths="${ldpath}${ldpaths:+:${ldpaths}}"
+ # disable --as-needed from being compiled into gcc specs
+ # natively when using a gcc version < 3.4.4
+ # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14992
+ if ! tc_version_is_at_least 3.4.4 ; then
+ sed -i -e s/HAVE_LD_AS_NEEDED/USE_LD_AS_NEEDED/g "${S}"/gcc/config.in
+ fi
- mosdir=$($(XGCC) $(get_abi_CFLAGS ${abi}) -print-multi-os-directory)
- mosdirs="${mosdir}${mosdirs:+:${mosdirs}}"
- done
- else
- # Older gcc's didn't do multilib, so logic is simple.
- ldpaths=${LIBPATH}
+ # In gcc 3.3.x and 3.4.x, rename the java bins to gcc-specific names
+ # in line with gcc-4.
+ if tc_version_is_at_least 3.3 && ! tc_version_is_at_least 4.0 ; then
+ do_gcc_rename_java_bins
fi
- cat <<-EOF > ${gcc_envd_file}
- PATH="${BINPATH}"
- ROOTPATH="${BINPATH}"
- GCC_PATH="${BINPATH}"
- LDPATH="${ldpaths}"
- MANPATH="${DATAPATH}/man"
- INFOPATH="${DATAPATH}/info"
- STDCXX_INCDIR="${STDCXX_INCDIR##*/}"
- CTARGET="${CTARGET}"
- GCC_SPECS="${gcc_specs_file}"
- MULTIOSDIRS="${mosdirs}"
- EOF
-}
-
-setup_minispecs_gcc_build_specs() {
- # Setup the "build.specs" file for gcc 4.3 to use when building.
- if hardened_gcc_works pie ; then
- cat "${WORKDIR}"/specs/pie.specs >> "${WORKDIR}"/build.specs
- fi
- if hardened_gcc_works ssp ; then
- for s in ssp sspall ; do
- cat "${WORKDIR}"/specs/${s}.specs >> "${WORKDIR}"/build.specs
- done
+ # Prevent libffi from being installed
+ if tc_version_is_at_least 3.0 && ! tc_version_is_at_least 4.8 ; then
+ sed -i -e 's/\(install.*:\) install-.*recursive/\1/' "${S}"/libffi/Makefile.in || die
+ sed -i -e 's/\(install-data-am:\).*/\1/' "${S}"/libffi/include/Makefile.in || die
fi
- for s in nostrict znow ; do
- cat "${WORKDIR}"/specs/${s}.specs >> "${WORKDIR}"/build.specs
+
+ # Fixup libtool to correctly generate .la files with portage
+ elibtoolize --portage --shallow --no-uclibc
+
+ gnuconfig_update
+
+ # update configure files
+ local f
+ einfo "Fixing misc issues in configure files"
+ # TODO - check if we can drop this now that we don't gen info files
+ tc_version_is_at_least 4.1 && epatch "${GCC_FILESDIR}"/gcc-configure-texinfo.patch
+ for f in $(grep -l 'autoconf version 2.13' $(find "${S}" -name configure)) ; do
+ ebegin " Updating ${f/${S}\/} [LANG]"
+ patch "${f}" "${GCC_FILESDIR}"/gcc-configure-LANG.patch >& "${T}"/configure-patch.log \
+ || eerror "Please file a bug about this"
+ eend $?
done
- export GCC_SPECS="${WORKDIR}"/build.specs
-}
+ sed -i 's|A-Za-z0-9|[:alnum:]|g' "${S}"/gcc/*.awk #215828
-copy_minispecs_gcc_specs() {
- # setup the hardenedno* specs files and the vanilla specs file.
- if hardened_gcc_works ; then
- create_gcc_env_entry hardenednopiessp
- fi
- if hardened_gcc_works pie ; then
- create_gcc_env_entry hardenednopie
- fi
- if hardened_gcc_works ssp ; then
- create_gcc_env_entry hardenednossp
- fi
- create_gcc_env_entry vanilla
- insinto ${LIBPATH}
- doins "${WORKDIR}"/specs/*.specs || die "failed to install specs"
- # Build system specs file which, if it exists, must be a complete set of
- # specs as it completely and unconditionally overrides the builtin specs.
- if ! tc_version_is_at_least 4.4 ; then
- $(XGCC) -dumpspecs > "${WORKDIR}"/specs/specs
- cat "${WORKDIR}"/build.specs >> "${WORKDIR}"/specs/specs
- doins "${WORKDIR}"/specs/specs || die "failed to install the specs file"
+ if [[ -x contrib/gcc_update ]] ; then
+ einfo "Touching generated files"
+ ./contrib/gcc_update --touch | \
+ while read f ; do
+ einfo " ${f%%...}"
+ done
fi
}
-#----<< specs + env.d logic >>----
+gcc_quick_unpack() {
+ pushd "${WORKDIR}" > /dev/null
+ export PATCH_GCC_VER=${PATCH_GCC_VER:-${GCC_RELEASE_VER}}
+ export UCLIBC_GCC_VER=${UCLIBC_GCC_VER:-${PATCH_GCC_VER}}
+ export PIE_GCC_VER=${PIE_GCC_VER:-${GCC_RELEASE_VER}}
+ export HTB_GCC_VER=${HTB_GCC_VER:-${GCC_RELEASE_VER}}
+ export SPECS_GCC_VER=${SPECS_GCC_VER:-${GCC_RELEASE_VER}}
-#---->> pkg_* <<----
-toolchain_pkg_setup() {
- if [[ -n ${PRERELEASE}${SNAPSHOT} || ${PV} == *9999* ]] &&
- [[ -z ${I_PROMISE_TO_SUPPLY_PATCHES_WITH_BUGS} ]] ; then
- die "Please \`export I_PROMISE_TO_SUPPLY_PATCHES_WITH_BUGS=1\` or define it" \
- "in your make.conf if you want to use this version."
+ if [[ -n ${GCC_A_FAKEIT} ]] ; then
+ unpack ${GCC_A_FAKEIT}
+ elif [[ -n ${PRERELEASE} ]] ; then
+ unpack gcc-${PRERELEASE}.tar.bz2
+ elif [[ -n ${SNAPSHOT} ]] ; then
+ unpack gcc-${SNAPSHOT}.tar.bz2
+ elif [[ ${PV} != *9999* ]] ; then
+ unpack gcc-${GCC_RELEASE_VER}.tar.bz2
+ # We want branch updates to be against a release tarball
+ if [[ -n ${BRANCH_UPDATE} ]] ; then
+ pushd "${S}" > /dev/null
+ epatch "${DISTDIR}"/gcc-${GCC_RELEASE_VER}-branch-update-${BRANCH_UPDATE}.patch.bz2
+ popd > /dev/null
+ fi
fi
- # we dont want to use the installed compiler's specs to build gcc!
- unset GCC_SPECS
+ if [[ -n ${D_VER} ]] && use d ; then
+ pushd "${S}"/gcc > /dev/null
+ unpack gdc-${D_VER}-src.tar.bz2
+ cd ..
+ ebegin "Adding support for the D language"
+ ./gcc/d/setup-gcc.sh >& "${T}"/dgcc.log
+ if ! eend $? ; then
+ eerror "The D gcc package failed to apply"
+ eerror "Please include this log file when posting a bug report:"
+ eerror " ${T}/dgcc.log"
+ die "failed to include the D language"
+ fi
+ popd > /dev/null
+ fi
- if ! use_if_iuse cxx ; then
- use_if_iuse go && ewarn 'Go requires a C++ compiler, disabled due to USE="-cxx"'
- use_if_iuse objc++ && ewarn 'Obj-C++ requires a C++ compiler, disabled due to USE="-cxx"'
- use_if_iuse gcj && ewarn 'GCJ requires a C++ compiler, disabled due to USE="-cxx"'
+ [[ -n ${PATCH_VER} ]] && \
+ unpack gcc-${PATCH_GCC_VER}-patches-${PATCH_VER}.tar.bz2
+
+ [[ -n ${UCLIBC_VER} ]] && \
+ unpack gcc-${UCLIBC_GCC_VER}-uclibc-patches-${UCLIBC_VER}.tar.bz2
+
+ if want_pie ; then
+ if [[ -n ${PIE_CORE} ]] ; then
+ unpack ${PIE_CORE}
+ else
+ unpack gcc-${PIE_GCC_VER}-piepatches-v${PIE_VER}.tar.bz2
+ fi
+ [[ -n ${SPECS_VER} ]] && \
+ unpack gcc-${SPECS_GCC_VER}-specs-${SPECS_VER}.tar.bz2
fi
- want_minispecs
+ use_if_iuse boundschecking && unpack "bounds-checking-gcc-${HTB_GCC_VER}-${HTB_VER}.patch.bz2"
- unset LANGUAGES #265283
+ popd > /dev/null
}
-toolchain_pkg_postinst() {
- do_gcc_config
+guess_patch_type_in_dir() {
+ [[ -n $(ls "$1"/*.bz2 2>/dev/null) ]] \
+ && EPATCH_SUFFIX="patch.bz2" \
+ || EPATCH_SUFFIX="patch"
+}
- if ! is_crosscompile ; then
- echo
- ewarn "If you have issues with packages unable to locate libstdc++.la,"
- ewarn "then try running 'fix_libtool_files.sh' on the old gcc versions."
- echo
- ewarn "You might want to review the GCC upgrade guide when moving between"
- ewarn "major versions (like 4.2 to 4.3):"
- ewarn "http://www.gentoo.org/doc/en/gcc-upgrading.xml"
- echo
+do_gcc_HTB_patches() {
+ use_if_iuse boundschecking || return 0
- # Clean up old paths
- rm -f "${ROOT}"/*/rcscripts/awk/fixlafiles.awk "${ROOT}"/sbin/fix_libtool_files.sh
- rmdir "${ROOT}"/*/rcscripts{/awk,} 2>/dev/null
+ # modify the bounds checking patch with a regression patch
+ epatch "${WORKDIR}/bounds-checking-gcc-${HTB_GCC_VER}-${HTB_VER}.patch"
+ BRANDING_GCC_PKGVERSION="${BRANDING_GCC_PKGVERSION}, HTB-${HTB_GCC_VER}-${HTB_VER}"
+}
- mkdir -p "${ROOT}"/usr/{share/gcc-data,sbin,bin}
- cp "${ROOT}/${DATAPATH}"/fixlafiles.awk "${ROOT}"/usr/share/gcc-data/ || die
- cp "${ROOT}/${DATAPATH}"/fix_libtool_files.sh "${ROOT}"/usr/sbin/ || die
+do_gcc_PIE_patches() {
+ want_pie || return 0
+ use vanilla && return 0
- # Since these aren't critical files and portage sucks with
- # handling of binpkgs, don't require these to be found
- cp "${ROOT}/${DATAPATH}"/c{89,99} "${ROOT}"/usr/bin/ 2>/dev/null
+ if tc_version_is_at_least 4.3.2 ; then
+ guess_patch_type_in_dir "${WORKDIR}"/piepatch/
+ EPATCH_MULTI_MSG="Applying pie patches ..." \
+ epatch "${WORKDIR}"/piepatch/
+ else
+ guess_patch_type_in_dir "${WORKDIR}"/piepatch/upstream
+
+ # corrects startfile/endfile selection and shared/static/pie flag usage
+ EPATCH_MULTI_MSG="Applying upstream pie patches ..." \
+ epatch "${WORKDIR}"/piepatch/upstream
+ # adds non-default pie support (rs6000)
+ EPATCH_MULTI_MSG="Applying non-default pie patches ..." \
+ epatch "${WORKDIR}"/piepatch/nondef
+ # adds default pie support (rs6000 too) if DEFAULT_PIE[_SSP] is defined
+ EPATCH_MULTI_MSG="Applying default pie patches ..." \
+ epatch "${WORKDIR}"/piepatch/def
fi
- if use regression-test ; then
- elog "Testsuite results have been installed into /usr/share/doc/${PF}/testsuite"
- echo
+ # we want to be able to control the pie patch logic via something other
+ # than ALL_CFLAGS...
+ sed -e '/^ALL_CFLAGS/iHARD_CFLAGS = ' \
+ -e 's|^ALL_CFLAGS = |ALL_CFLAGS = $(HARD_CFLAGS) |' \
+ -i "${S}"/gcc/Makefile.in
+ # Need to add HARD_CFLAGS to ALL_CXXFLAGS on >= 4.7
+ if tc_version_is_at_least 4.7 ; then
+ sed -e '/^ALL_CXXFLAGS/iHARD_CFLAGS = ' \
+ -e 's|^ALL_CXXFLAGS = |ALL_CXXFLAGS = $(HARD_CFLAGS) |' \
+ -i "${S}"/gcc/Makefile.in
fi
+
+ BRANDING_GCC_PKGVERSION="${BRANDING_GCC_PKGVERSION}, pie-${PIE_VER}"
}
-toolchain_pkg_postrm() {
- # to make our lives easier (and saner), we do the fix_libtool stuff here.
- # rather than checking SLOT's and trying in upgrade paths, we just see if
- # the common libstdc++.la exists in the ${LIBPATH} of the gcc that we are
- # unmerging. if it does, that means this was a simple re-emerge.
+# configure to build with the hardened GCC specs as the default
+make_gcc_hard() {
+ # defaults to enable for all hardened toolchains
+ local gcc_hard_flags="-DEFAULT_RELRO -DEFAULT_BIND_NOW"
- # clean up the cruft left behind by cross-compilers
- if is_crosscompile ; then
- if [[ -z $(ls "${ROOT}"/etc/env.d/gcc/${CTARGET}* 2>/dev/null) ]] ; then
- rm -f "${ROOT}"/etc/env.d/gcc/config-${CTARGET}
- rm -f "${ROOT}"/etc/env.d/??gcc-${CTARGET}
- rm -f "${ROOT}"/usr/bin/${CTARGET}-{gcc,{g,c}++}{,32,64}
- fi
+ if hardened_gcc_works ; then
+ einfo "Updating gcc to use automatic PIE + SSP building ..."
+ gcc_hard_flags+=" -DEFAULT_PIE_SSP"
+ elif hardened_gcc_works pie ; then
+ einfo "Updating gcc to use automatic PIE building ..."
+ ewarn "SSP has not been enabled by default"
+ gcc_hard_flags+=" -DEFAULT_PIE"
+ elif hardened_gcc_works ssp ; then
+ einfo "Updating gcc to use automatic SSP building ..."
+ ewarn "PIE has not been enabled by default"
+ gcc_hard_flags+=" -DEFAULT_SSP"
+ else
+ # do nothing if hardened isnt supported, but dont die either
+ ewarn "hardened is not supported for this arch in this gcc version"
+ ebeep
return 0
fi
- # ROOT isnt handled by the script
- [[ ${ROOT} != "/" ]] && return 0
+ sed -i \
+ -e "/^HARD_CFLAGS = /s|=|= ${gcc_hard_flags} |" \
+ "${S}"/gcc/Makefile.in || die
- if [[ ! -e ${LIBPATH}/libstdc++.so ]] ; then
- # make sure the profile is sane during same-slot upgrade #289403
- do_gcc_config
+ # rebrand to make bug reports easier
+ BRANDING_GCC_PKGVERSION=${BRANDING_GCC_PKGVERSION/Gentoo/Gentoo Hardened}
+}
+
+# This is a historical wart. The original Gentoo/amd64 port used:
+# lib32 - 32bit binaries (x86)
+# lib64 - 64bit binaries (x86_64)
+# lib - "native" binaries (a symlink to lib64)
+# Most other distros use the logic (including mainline gcc):
+# lib - 32bit binaries (x86)
+# lib64 - 64bit binaries (x86_64)
+# Over time, Gentoo is migrating to the latter form.
+#
+# Unfortunately, due to distros picking the lib32 behavior, newer gcc
+# versions will dynamically detect whether to use lib or lib32 for its
+# 32bit multilib. So, to keep the automagic from getting things wrong
+# while people are transitioning from the old style to the new style,
+# we always set the MULTILIB_OSDIRNAMES var for relevant targets.
+setup_multilib_osdirnames() {
+ is_multilib || return 0
+
+ local config
+ local libdirs="../lib64 ../lib32"
+
+ # this only makes sense for some Linux targets
+ case ${CTARGET} in
+ x86_64*-linux*) config="i386" ;;
+ powerpc64*-linux*) config="rs6000" ;;
+ sparc64*-linux*) config="sparc" ;;
+ s390x*-linux*) config="s390" ;;
+ *) return 0 ;;
+ esac
+ config+="/t-linux64"
- einfo "Running 'fix_libtool_files.sh ${GCC_RELEASE_VER}'"
- /usr/sbin/fix_libtool_files.sh ${GCC_RELEASE_VER}
- if [[ -n ${BRANCH_UPDATE} ]] ; then
- einfo "Running 'fix_libtool_files.sh ${GCC_RELEASE_VER}-${BRANCH_UPDATE}'"
- /usr/sbin/fix_libtool_files.sh ${GCC_RELEASE_VER}-${BRANCH_UPDATE}
+ local sed_args=()
+ if tc_version_is_at_least 4.6 ; then
+ sed_args+=( -e 's:$[(]call if_multiarch[^)]*[)]::g' )
+ fi
+ if [[ ${SYMLINK_LIB} == "yes" ]] ; then
+ einfo "updating multilib directories to be: ${libdirs}"
+ if tc_version_is_at_least 4.6.4 || tc_version_is_at_least 4.7 ; then
+ sed_args+=( -e '/^MULTILIB_OSDIRNAMES.*lib32/s:[$][(]if.*):../lib32:' )
+ else
+ sed_args+=( -e "/^MULTILIB_OSDIRNAMES/s:=.*:= ${libdirs}:" )
fi
+ else
+ einfo "using upstream multilib; disabling lib32 autodetection"
+ sed_args+=( -r -e 's:[$][(]if.*,(.*)[)]:\1:' )
fi
-
- return 0
+ sed -i "${sed_args[@]}" "${S}"/gcc/config/${config} || die
}
-#---->> pkg_* <<----
+gcc_version_patch() {
+ # gcc-4.3+ has configure flags (whoo!)
+ tc_version_is_at_least 4.3 && return 0
+
+ local version_string=${GCC_CONFIG_VER}
+ [[ -n ${BRANCH_UPDATE} ]] && version_string+=" ${BRANCH_UPDATE}"
-#---->> src_* <<----
+ einfo "patching gcc version: ${version_string} (${BRANDING_GCC_PKGVERSION})"
-guess_patch_type_in_dir() {
- [[ -n $(ls "$1"/*.bz2 2>/dev/null) ]] \
- && EPATCH_SUFFIX="patch.bz2" \
- || EPATCH_SUFFIX="patch"
+ local gcc_sed=( -e 's:gcc\.gnu\.org/bugs\.html:bugs\.gentoo\.org/:' )
+ if grep -qs VERSUFFIX "${S}"/gcc/version.c ; then
+ gcc_sed+=( -e "/VERSUFFIX \"\"/s:\"\":\" (${BRANDING_GCC_PKGVERSION})\":" )
+ else
+ version_string="${version_string} (${BRANDING_GCC_PKGVERSION})"
+ gcc_sed+=( -e "/const char version_string\[\] = /s:= \".*\":= \"${version_string}\":" )
+ fi
+ sed -i "${gcc_sed[@]}" "${S}"/gcc/version.c || die
}
do_gcc_rename_java_bins() {
@@ -694,173 +726,114 @@
done
}
-toolchain_src_unpack() {
- [[ -z ${UCLIBC_VER} ]] && [[ ${CTARGET} == *-uclibc* ]] && \
- die "Sorry, this version does not support uClibc"
-
- if [[ ${PV} == *9999* ]]; then
- git-2_src_unpack
- else
- gcc_quick_unpack
- fi
-
- export BRANDING_GCC_PKGVERSION="Gentoo ${GCC_PVR}"
- cd "${S}"
-
- if ! use vanilla ; then
- if [[ -n ${PATCH_VER} ]] ; then
- guess_patch_type_in_dir "${WORKDIR}"/patch
- EPATCH_MULTI_MSG="Applying Gentoo patches ..." \
- epatch "${WORKDIR}"/patch
- BRANDING_GCC_PKGVERSION="${BRANDING_GCC_PKGVERSION} p${PATCH_VER}"
- fi
- if [[ -n ${UCLIBC_VER} ]] ; then
- guess_patch_type_in_dir "${WORKDIR}"/uclibc
- EPATCH_MULTI_MSG="Applying uClibc patches ..." \
- epatch "${WORKDIR}"/uclibc
- fi
- fi
- do_gcc_HTB_patches
- do_gcc_PIE_patches
- epatch_user
-
- use hardened && make_gcc_hard
-
- # install the libstdc++ python into the right location
- # http://gcc.gnu.org/PR51368
- if tc_version_is_at_least 4.5 && ! tc_version_is_at_least 4.7 ; then
- sed -i \
- '/^pythondir =/s:=.*:= $(datadir)/python:' \
- "${S}"/libstdc++-v3/python/Makefile.in || die
- fi
-
- # make sure the pkg config files install into multilib dirs.
- # since we configure with just one --libdir, we can't use that
- # (as gcc itself takes care of building multilibs). #435728
- find "${S}" -name Makefile.in \
- -exec sed -i '/^pkgconfigdir/s:=.*:=$(toolexeclibdir)/pkgconfig:' {} +
-
- # No idea when this first started being fixed, but let's go with 4.3.x for now
- if ! tc_version_is_at_least 4.3 ; then
- fix_files=""
- for x in contrib/test_summary libstdc++-v3/scripts/check_survey.in ; do
- [[ -e ${x} ]] && fix_files="${fix_files} ${x}"
- done
- ht_fix_file ${fix_files} */configure *.sh */Makefile.in
- fi
-
- setup_multilib_osdirnames
- gcc_version_patch
-
- if tc_version_is_at_least 4.1 ; then
- if [[ -n ${SNAPSHOT} || -n ${PRERELEASE} ]] ; then
- # BASE-VER must be a three-digit version number
- # followed by an optional -pre string
- # eg. 4.5.1, 4.6.2-pre20120213, 4.7.0-pre9999
- # If BASE-VER differs from ${PV/_/-} then libraries get installed in
- # the wrong directory.
- echo ${PV/_/-} > "${S}"/gcc/BASE-VER
- fi
- fi
-
- # >= gcc-4.3 doesn't bundle ecj.jar, so copy it
- if tc_version_is_at_least 4.3 && use gcj ; then
- if tc_version_is_at_least 4.5 ; then
- einfo "Copying ecj-4.5.jar"
- cp -pPR "${DISTDIR}/ecj-4.5.jar" "${S}/ecj.jar" || die
- else
- einfo "Copying ecj-4.3.jar"
- cp -pPR "${DISTDIR}/ecj-4.3.jar" "${S}/ecj.jar" || die
- fi
- fi
-
- # disable --as-needed from being compiled into gcc specs
- # natively when using a gcc version < 3.4.4
- # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14992
- if ! tc_version_is_at_least 3.4.4 ; then
- sed -i -e s/HAVE_LD_AS_NEEDED/USE_LD_AS_NEEDED/g "${S}"/gcc/config.in
- fi
-
- # In gcc 3.3.x and 3.4.x, rename the java bins to gcc-specific names
- # in line with gcc-4.
- if tc_version_is_at_least 3.3 && ! tc_version_is_at_least 4.0 ; then
- do_gcc_rename_java_bins
- fi
+gcc_do_filter_flags() {
+ strip-flags
- # Prevent libffi from being installed
- if tc_version_is_at_least 3.0 && ! tc_version_is_at_least 4.8 ; then
- sed -i -e 's/\(install.*:\) install-.*recursive/\1/' "${S}"/libffi/Makefile.in || die
- sed -i -e 's/\(install-data-am:\).*/\1/' "${S}"/libffi/include/Makefile.in || die
- fi
+ # In general gcc does not like optimization, and adds -O2 where
+ # it is safe. This is especially true for gcc 3.3 + 3.4
+ replace-flags -O? -O2
- # Fixup libtool to correctly generate .la files with portage
- elibtoolize --portage --shallow --no-uclibc
+ # dont want to funk ourselves
+ filter-flags '-mabi*' -m31 -m32 -m64
- gnuconfig_update
+ filter-flags '-frecord-gcc-switches' # 490738
- # update configure files
- local f
- einfo "Fixing misc issues in configure files"
- # TODO - check if we can drop this now that we don't gen info files
- tc_version_is_at_least 4.1 && epatch "${GCC_FILESDIR}"/gcc-configure-texinfo.patch
- for f in $(grep -l 'autoconf version 2.13' $(find "${S}" -name configure)) ; do
- ebegin " Updating ${f/${S}\/} [LANG]"
- patch "${f}" "${GCC_FILESDIR}"/gcc-configure-LANG.patch >& "${T}"/configure-patch.log \
- || eerror "Please file a bug about this"
- eend $?
- done
- sed -i 's|A-Za-z0-9|[:alnum:]|g' "${S}"/gcc/*.awk #215828
+ case ${GCC_BRANCH_VER} in
+ 3.2|3.3)
+ replace-cpu-flags k8 athlon64 opteron x86-64
+ replace-cpu-flags pentium-m pentium3m pentium3
+ replace-cpu-flags G3 750
+ replace-cpu-flags G4 7400
+ replace-cpu-flags G5 7400
+
+ case $(tc-arch) in
+ amd64)
+ replace-cpu-flags core2 nocona
+ filter-flags '-mtune=*'
+ ;;
+ x86)
+ replace-cpu-flags core2 prescott
+ filter-flags '-mtune=*'
+ ;;
+ esac
- if [[ -x contrib/gcc_update ]] ; then
- einfo "Touching generated files"
- ./contrib/gcc_update --touch | \
- while read f ; do
- einfo " ${f%%...}"
- done
- fi
-}
+ # XXX: should add a sed or something to query all supported flags
+ # from the gcc source and trim everything else ...
+ filter-flags -f{no-,}unit-at-a-time -f{no-,}web -mno-tls-direct-seg-refs
+ filter-flags -f{no-,}stack-protector{,-all}
+ filter-flags -fvisibility-inlines-hidden -fvisibility=hidden
+ ;;
+ 3.4|4.*)
+ case $(tc-arch) in
+ amd64|x86)
+ filter-flags '-mcpu=*'
+ ;;
+ alpha)
+ # https://bugs.gentoo.org/454426
+ append-ldflags -Wl,--no-relax
+ ;;
+ sparc)
+ # temporary workaround for random ICEs reproduced by multiple users
+ # https://bugs.gentoo.org/457062
+ [[ ${GCC_BRANCH_VER} == 4.6 || ${GCC_BRANCH_VER} == 4.7 ]] && \
+ MAKEOPTS+=" -j1"
+ ;;
+ *-macos)
+ # http://gcc.gnu.org/PR25127
+ [[ ${GCC_BRANCH_VER} == 4.0 || ${GCC_BRANCH_VER} == 4.1 ]] && \
+ filter-flags '-mcpu=*' '-march=*' '-mtune=*'
+ ;;
+ esac
+ ;;
+ esac
-gcc-abi-map() {
- # Convert the ABI name we use in Gentoo to what gcc uses
- local map=()
- case ${CTARGET} in
- mips*) map=("o32 32" "n32 n32" "n64 64") ;;
- x86_64*) map=("amd64 m64" "x86 m32" "x32 mx32") ;;
+ case ${GCC_BRANCH_VER} in
+ 4.6)
+ case $(tc-arch) in
+ amd64|x86)
+ # https://bugs.gentoo.org/411333
+ # https://bugs.gentoo.org/466454
+ replace-cpu-flags c3-2 pentium2 pentium3 pentium3m pentium-m i686
+ ;;
+ esac
+ ;;
esac
- local m
- for m in "${map[@]}" ; do
- l=( ${m} )
- [[ $1 == ${l[0]} ]] && echo ${l[1]} && break
- done
-}
+ strip-unsupported-flags
+
+ # CFLAGS logic (verified with 3.4.3):
+ # CFLAGS:
+ # This conflicts when creating a crosscompiler, so set to a sane
+ # default in this case:
+ # used in ./configure and elsewhere for the native compiler
+ # used by gcc when creating libiberty.a
+ # used by xgcc when creating libstdc++ (and probably others)!
+ # this behavior should be removed...
+ #
+ # CXXFLAGS:
+ # used by xgcc when creating libstdc++
+ #
+ # STAGE1_CFLAGS (not used in creating a crosscompile gcc):
+ # used by ${CHOST}-gcc for building stage1 compiler
+ #
+ # BOOT_CFLAGS (not used in creating a crosscompile gcc):
+ # used by xgcc for building stage2/3 compiler
+
+ if is_crosscompile ; then
+ # Set this to something sane for both native and target
+ CFLAGS="-O2 -pipe"
+ FFLAGS=${CFLAGS}
+ FCFLAGS=${CFLAGS}
-gcc-multilib-configure() {
- if ! is_multilib ; then
- confgcc+=( --disable-multilib )
- # Fun times: if we are building for a target that has multiple
- # possible ABI formats, and the user has told us to pick one
- # that isn't the default, then not specifying it via the list
- # below will break that on us.
- else
- confgcc+=( --enable-multilib )
+ local VAR="CFLAGS_"${CTARGET//-/_}
+ CXXFLAGS=${!VAR}
fi
- # translate our notion of multilibs into gcc's
- local abi list
- for abi in $(get_all_abis TARGET) ; do
- local l=$(gcc-abi-map ${abi})
- [[ -n ${l} ]] && list+=",${l}"
- done
- if [[ -n ${list} ]] ; then
- case ${CTARGET} in
- x86_64*)
- tc_version_is_at_least 4.7 && confgcc+=( --with-multilib-list=${list:1} )
- ;;
- esac
- fi
+ export GCJFLAGS=${GCJFLAGS:-${CFLAGS}}
}
+#---->> src_configure <<----
+
gcc_do_configure() {
local confgcc=( --host=${CHOST} )
@@ -1282,217 +1255,49 @@
popd > /dev/null
}
-has toolchain_death_notice ${EBUILD_DEATH_HOOKS} || EBUILD_DEATH_HOOKS+=" toolchain_death_notice"
-toolchain_death_notice() {
- if [[ -e "${WORKDIR}"/build ]] ; then
- pushd "${WORKDIR}"/build >/dev/null
- (echo '' | $(tc-getCC ${CTARGET}) ${CFLAGS} -v -E - 2>&1) > gccinfo.log
- [[ -e "${T}"/build.log ]] && cp "${T}"/build.log .
- tar jcf "${WORKDIR}"/gcc-build-logs.tar.bz2 \
- gccinfo.log build.log $(find -name config.log)
- rm gccinfo.log build.log
- eerror
- eerror "Please include ${WORKDIR}/gcc-build-logs.tar.bz2 in your bug report."
- eerror
- popd >/dev/null
- fi
-}
-
-# This function accepts one optional argument, the make target to be used.
-# If ommitted, gcc_do_make will try to guess whether it should use all,
-# profiledbootstrap, or bootstrap-lean depending on CTARGET and arch. An
-# example of how to use this function:
-#
-# gcc_do_make all-target-libstdc++-v3
-#
-# In addition to the target to be used, the following variables alter the
-# behavior of this function:
-#
-# LDFLAGS
-# Flags to pass to ld
-#
-# STAGE1_CFLAGS
-# CFLAGS to use during stage1 of a gcc bootstrap
-#
-# BOOT_CFLAGS
-# CFLAGS to use during stages 2+3 of a gcc bootstrap.
-#
-# Travis Tilley <lv@gentoo.org> (04 Sep 2004)
-#
-gcc_do_make() {
- # Set make target to $1 if passed
- [[ -n $1 ]] && GCC_MAKE_TARGET=$1
- # default target
- if is_crosscompile || tc-is-cross-compiler ; then
- # 3 stage bootstrapping doesnt quite work when you cant run the
- # resulting binaries natively ^^;
- GCC_MAKE_TARGET=${GCC_MAKE_TARGET-all}
- else
- GCC_MAKE_TARGET=${GCC_MAKE_TARGET-bootstrap-lean}
- fi
-
- # the gcc docs state that parallel make isnt supported for the
- # profiledbootstrap target, as collisions in profile collecting may occur.
- # boundschecking also seems to introduce parallel build issues.
- if [[ ${GCC_MAKE_TARGET} == "profiledbootstrap" ]] ||
- use_if_iuse boundschecking
- then
- export MAKEOPTS="${MAKEOPTS} -j1"
- fi
-
- if [[ ${GCC_MAKE_TARGET} == "all" ]] ; then
- STAGE1_CFLAGS=${STAGE1_CFLAGS-"${CFLAGS}"}
- elif [[ $(gcc-version) == "3.4" && ${GCC_BRANCH_VER} == "3.4" ]] && gcc-specs-ssp ; then
- # See bug #79852
- STAGE1_CFLAGS=${STAGE1_CFLAGS-"-O2"}
- fi
-
- if is_crosscompile; then
- # In 3.4, BOOT_CFLAGS is never used on a crosscompile...
- # but I'll leave this in anyways as someone might have had
- # some reason for putting it in here... --eradicator
- BOOT_CFLAGS=${BOOT_CFLAGS-"-O2"}
+gcc-multilib-configure() {
+ if ! is_multilib ; then
+ confgcc+=( --disable-multilib )
+ # Fun times: if we are building for a target that has multiple
+ # possible ABI formats, and the user has told us to pick one
+ # that isn't the default, then not specifying it via the list
+ # below will break that on us.
else
- # we only want to use the system's CFLAGS if not building a
- # cross-compiler.
- BOOT_CFLAGS=${BOOT_CFLAGS-"$(get_abi_CFLAGS ${TARGET_DEFAULT_ABI}) ${CFLAGS}"}
- fi
-
- pushd "${WORKDIR}"/build >/dev/null
-
- emake \
- LDFLAGS="${LDFLAGS}" \
- STAGE1_CFLAGS="${STAGE1_CFLAGS}" \
- LIBPATH="${LIBPATH}" \
- BOOT_CFLAGS="${BOOT_CFLAGS}" \
- ${GCC_MAKE_TARGET} \
- || die "emake failed with ${GCC_MAKE_TARGET}"
-
- if ! is_crosscompile && use cxx && use_if_iuse doc ; then
- if type -p doxygen > /dev/null ; then
- if tc_version_is_at_least 4.3 ; then
- cd "${CTARGET}"/libstdc++-v3/doc
- emake doc-man-doxygen || ewarn "failed to make docs"
- elif tc_version_is_at_least 3.0 ; then
- cd "${CTARGET}"/libstdc++-v3
- emake doxygen-man || ewarn "failed to make docs"
- fi
- else
- ewarn "Skipping libstdc++ manpage generation since you don't have doxygen installed"
- fi
+ confgcc+=( --enable-multilib )
fi
- popd >/dev/null
-}
-
-gcc_do_filter_flags() {
- strip-flags
-
- # In general gcc does not like optimization, and adds -O2 where
- # it is safe. This is especially true for gcc 3.3 + 3.4
- replace-flags -O? -O2
-
- # dont want to funk ourselves
- filter-flags '-mabi*' -m31 -m32 -m64
-
- filter-flags '-frecord-gcc-switches' # 490738
-
- case ${GCC_BRANCH_VER} in
- 3.2|3.3)
- replace-cpu-flags k8 athlon64 opteron x86-64
- replace-cpu-flags pentium-m pentium3m pentium3
- replace-cpu-flags G3 750
- replace-cpu-flags G4 7400
- replace-cpu-flags G5 7400
-
- case $(tc-arch) in
- amd64)
- replace-cpu-flags core2 nocona
- filter-flags '-mtune=*'
- ;;
- x86)
- replace-cpu-flags core2 prescott
- filter-flags '-mtune=*'
- ;;
- esac
-
- # XXX: should add a sed or something to query all supported flags
- # from the gcc source and trim everything else ...
- filter-flags -f{no-,}unit-at-a-time -f{no-,}web -mno-tls-direct-seg-refs
- filter-flags -f{no-,}stack-protector{,-all}
- filter-flags -fvisibility-inlines-hidden -fvisibility=hidden
- ;;
- 3.4|4.*)
- case $(tc-arch) in
- amd64|x86)
- filter-flags '-mcpu=*'
- ;;
- alpha)
- # https://bugs.gentoo.org/454426
- append-ldflags -Wl,--no-relax
- ;;
- sparc)
- # temporary workaround for random ICEs reproduced by multiple users
- # https://bugs.gentoo.org/457062
- [[ ${GCC_BRANCH_VER} == 4.6 || ${GCC_BRANCH_VER} == 4.7 ]] && \
- MAKEOPTS+=" -j1"
- ;;
- *-macos)
- # http://gcc.gnu.org/PR25127
- [[ ${GCC_BRANCH_VER} == 4.0 || ${GCC_BRANCH_VER} == 4.1 ]] && \
- filter-flags '-mcpu=*' '-march=*' '-mtune=*'
- ;;
- esac
- ;;
- esac
-
- case ${GCC_BRANCH_VER} in
- 4.6)
- case $(tc-arch) in
- amd64|x86)
- # https://bugs.gentoo.org/411333
- # https://bugs.gentoo.org/466454
- replace-cpu-flags c3-2 pentium2 pentium3 pentium3m pentium-m i686
- ;;
- esac
- ;;
- esac
-
- strip-unsupported-flags
-
- # TODO: Move to gcc_do_make()
-
- # CFLAGS logic (verified with 3.4.3):
- # CFLAGS:
- # This conflicts when creating a crosscompiler, so set to a sane
- # default in this case:
- # used in ./configure and elsewhere for the native compiler
- # used by gcc when creating libiberty.a
- # used by xgcc when creating libstdc++ (and probably others)!
- # this behavior should be removed...
- #
- # CXXFLAGS:
- # used by xgcc when creating libstdc++
- #
- # STAGE1_CFLAGS (not used in creating a crosscompile gcc):
- # used by ${CHOST}-gcc for building stage1 compiler
- #
- # BOOT_CFLAGS (not used in creating a crosscompile gcc):
- # used by xgcc for building stage2/3 compiler
-
- if is_crosscompile ; then
- # Set this to something sane for both native and target
- CFLAGS="-O2 -pipe"
- FFLAGS=${CFLAGS}
- FCFLAGS=${CFLAGS}
-
- local VAR="CFLAGS_"${CTARGET//-/_}
- CXXFLAGS=${!VAR}
+ # translate our notion of multilibs into gcc's
+ local abi list
+ for abi in $(get_all_abis TARGET) ; do
+ local l=$(gcc-abi-map ${abi})
+ [[ -n ${l} ]] && list+=",${l}"
+ done
+ if [[ -n ${list} ]] ; then
+ case ${CTARGET} in
+ x86_64*)
+ tc_version_is_at_least 4.7 && confgcc+=( --with-multilib-list=${list:1} )
+ ;;
+ esac
fi
+}
- export GCJFLAGS=${GCJFLAGS:-${CFLAGS}}
+gcc-abi-map() {
+ # Convert the ABI name we use in Gentoo to what gcc uses
+ local map=()
+ case ${CTARGET} in
+ mips*) map=("o32 32" "n32 n32" "n64 64") ;;
+ x86_64*) map=("amd64 m64" "x86 m32" "x32 mx32") ;;
+ esac
+
+ local m
+ for m in "${map[@]}" ; do
+ l=( ${m} )
+ [[ $1 == ${l[0]} ]] && echo ${l[1]} && break
+ done
}
+#----> src_compile <----
+
toolchain_src_compile() {
gcc_do_filter_flags
einfo "CFLAGS=\"${CFLAGS}\""
@@ -1526,6 +1331,111 @@
popd > /dev/null
}
+setup_minispecs_gcc_build_specs() {
+ # Setup the "build.specs" file for gcc 4.3 to use when building.
+ if hardened_gcc_works pie ; then
+ cat "${WORKDIR}"/specs/pie.specs >> "${WORKDIR}"/build.specs
+ fi
+ if hardened_gcc_works ssp ; then
+ for s in ssp sspall ; do
+ cat "${WORKDIR}"/specs/${s}.specs >> "${WORKDIR}"/build.specs
+ done
+ fi
+ for s in nostrict znow ; do
+ cat "${WORKDIR}"/specs/${s}.specs >> "${WORKDIR}"/build.specs
+ done
+ export GCC_SPECS="${WORKDIR}"/build.specs
+}
+
+# This function accepts one optional argument, the make target to be used.
+# If ommitted, gcc_do_make will try to guess whether it should use all,
+# profiledbootstrap, or bootstrap-lean depending on CTARGET and arch. An
+# example of how to use this function:
+#
+# gcc_do_make all-target-libstdc++-v3
+#
+# In addition to the target to be used, the following variables alter the
+# behavior of this function:
+#
+# LDFLAGS
+# Flags to pass to ld
+#
+# STAGE1_CFLAGS
+# CFLAGS to use during stage1 of a gcc bootstrap
+#
+# BOOT_CFLAGS
+# CFLAGS to use during stages 2+3 of a gcc bootstrap.
+#
+# Travis Tilley <lv@gentoo.org> (04 Sep 2004)
+#
+gcc_do_make() {
+ # Set make target to $1 if passed
+ [[ -n $1 ]] && GCC_MAKE_TARGET=$1
+ # default target
+ if is_crosscompile || tc-is-cross-compiler ; then
+ # 3 stage bootstrapping doesnt quite work when you cant run the
+ # resulting binaries natively ^^;
+ GCC_MAKE_TARGET=${GCC_MAKE_TARGET-all}
+ else
+ GCC_MAKE_TARGET=${GCC_MAKE_TARGET-bootstrap-lean}
+ fi
+
+ # the gcc docs state that parallel make isnt supported for the
+ # profiledbootstrap target, as collisions in profile collecting may occur.
+ # boundschecking also seems to introduce parallel build issues.
+ if [[ ${GCC_MAKE_TARGET} == "profiledbootstrap" ]] ||
+ use_if_iuse boundschecking
+ then
+ export MAKEOPTS="${MAKEOPTS} -j1"
+ fi
+
+ if [[ ${GCC_MAKE_TARGET} == "all" ]] ; then
+ STAGE1_CFLAGS=${STAGE1_CFLAGS-"${CFLAGS}"}
+ elif [[ $(gcc-version) == "3.4" && ${GCC_BRANCH_VER} == "3.4" ]] && gcc-specs-ssp ; then
+ # See bug #79852
+ STAGE1_CFLAGS=${STAGE1_CFLAGS-"-O2"}
+ fi
+
+ if is_crosscompile; then
+ # In 3.4, BOOT_CFLAGS is never used on a crosscompile...
+ # but I'll leave this in anyways as someone might have had
+ # some reason for putting it in here... --eradicator
+ BOOT_CFLAGS=${BOOT_CFLAGS-"-O2"}
+ else
+ # we only want to use the system's CFLAGS if not building a
+ # cross-compiler.
+ BOOT_CFLAGS=${BOOT_CFLAGS-"$(get_abi_CFLAGS ${TARGET_DEFAULT_ABI}) ${CFLAGS}"}
+ fi
+
+ pushd "${WORKDIR}"/build >/dev/null
+
+ emake \
+ LDFLAGS="${LDFLAGS}" \
+ STAGE1_CFLAGS="${STAGE1_CFLAGS}" \
+ LIBPATH="${LIBPATH}" \
+ BOOT_CFLAGS="${BOOT_CFLAGS}" \
+ ${GCC_MAKE_TARGET} \
+ || die "emake failed with ${GCC_MAKE_TARGET}"
+
+ if ! is_crosscompile && use cxx && use_if_iuse doc ; then
+ if type -p doxygen > /dev/null ; then
+ if tc_version_is_at_least 4.3 ; then
+ cd "${CTARGET}"/libstdc++-v3/doc
+ emake doc-man-doxygen || ewarn "failed to make docs"
+ elif tc_version_is_at_least 3.0 ; then
+ cd "${CTARGET}"/libstdc++-v3
+ emake doxygen-man || ewarn "failed to make docs"
+ fi
+ else
+ ewarn "Skipping libstdc++ manpage generation since you don't have doxygen installed"
+ fi
+ fi
+
+ popd >/dev/null
+}
+
+#---->> src_test <<----
+
toolchain_src_test() {
if use regression-test ; then
cd "${WORKDIR}"/build
@@ -1533,6 +1443,8 @@
fi
}
+#---->> src_install <<----
+
toolchain_src_install() {
cd "${WORKDIR}"/build
@@ -1669,26 +1581,179 @@
# for people who are testing as non-root.
chown -R root:0 "${D}"${LIBPATH} 2>/dev/null
- # Move pretty-printers to gdb datadir to shut ldconfig up
- local py gdbdir=/usr/share/gdb/auto-load${LIBPATH/\/lib\//\/$(get_libdir)\/}
- pushd "${D}"${LIBPATH} >/dev/null
- for py in $(find . -name '*-gdb.py') ; do
- local multidir=${py%/*}
- insinto "${gdbdir}/${multidir}"
- sed -i "/^libdir =/s:=.*:= '${LIBPATH}/${multidir}':" "${py}" || die #348128
- doins "${py}" || die
- rm "${py}" || die
- done
- popd >/dev/null
+ # Move pretty-printers to gdb datadir to shut ldconfig up
+ local py gdbdir=/usr/share/gdb/auto-load${LIBPATH/\/lib\//\/$(get_libdir)\/}
+ pushd "${D}"${LIBPATH} >/dev/null
+ for py in $(find . -name '*-gdb.py') ; do
+ local multidir=${py%/*}
+ insinto "${gdbdir}/${multidir}"
+ sed -i "/^libdir =/s:=.*:= '${LIBPATH}/${multidir}':" "${py}" || die #348128
+ doins "${py}" || die
+ rm "${py}" || die
+ done
+ popd >/dev/null
+
+ # Don't scan .gox files for executable stacks - false positives
+ export QA_EXECSTACK="usr/lib*/go/*/*.gox"
+ export QA_WX_LOAD="usr/lib*/go/*/*.gox"
+
+ # Disable RANDMMAP so PCH works. #301299
+ if tc_version_is_at_least 4.3 ; then
+ pax-mark -r "${D}${PREFIX}/libexec/gcc/${CTARGET}/${GCC_CONFIG_VER}/cc1"
+ pax-mark -r "${D}${PREFIX}/libexec/gcc/${CTARGET}/${GCC_CONFIG_VER}/cc1plus"
+ fi
+}
+
+# Move around the libs to the right location. For some reason,
+# when installing gcc, it dumps internal libraries into /usr/lib
+# instead of the private gcc lib path
+gcc_movelibs() {
+ # older versions of gcc did not support --print-multi-os-directory
+ tc_version_is_at_least 3.2 || return 0
+
+ local x multiarg removedirs=""
+ for multiarg in $($(XGCC) -print-multi-lib) ; do
+ multiarg=${multiarg#*;}
+ multiarg=${multiarg//@/ -}
+
+ local OS_MULTIDIR=$($(XGCC) ${multiarg} --print-multi-os-directory)
+ local MULTIDIR=$($(XGCC) ${multiarg} --print-multi-directory)
+ local TODIR=${D}${LIBPATH}/${MULTIDIR}
+ local FROMDIR=
+
+ [[ -d ${TODIR} ]] || mkdir -p ${TODIR}
+
+ for FROMDIR in \
+ ${LIBPATH}/${OS_MULTIDIR} \
+ ${LIBPATH}/../${MULTIDIR} \
+ ${PREFIX}/lib/${OS_MULTIDIR} \
+ ${PREFIX}/${CTARGET}/lib/${OS_MULTIDIR}
+ do
+ removedirs="${removedirs} ${FROMDIR}"
+ FROMDIR=${D}${FROMDIR}
+ if [[ ${FROMDIR} != "${TODIR}" && -d ${FROMDIR} ]] ; then
+ local files=$(find "${FROMDIR}" -maxdepth 1 ! -type d 2>/dev/null)
+ if [[ -n ${files} ]] ; then
+ mv ${files} "${TODIR}"
+ fi
+ fi
+ done
+ fix_libtool_libdir_paths "${LIBPATH}/${MULTIDIR}"
+
+ # SLOT up libgcj.pc if it's available (and let gcc-config worry about links)
+ FROMDIR="${PREFIX}/lib/${OS_MULTIDIR}"
+ for x in "${D}${FROMDIR}"/pkgconfig/libgcj*.pc ; do
+ [[ -f ${x} ]] || continue
+ sed -i "/^libdir=/s:=.*:=${LIBPATH}/${MULTIDIR}:" "${x}"
+ mv "${x}" "${D}${FROMDIR}"/pkgconfig/libgcj-${GCC_PV}.pc || die
+ done
+ done
+
+ # We remove directories separately to avoid this case:
+ # mv SRC/lib/../lib/*.o DEST
+ # rmdir SRC/lib/../lib/
+ # mv SRC/lib/../lib32/*.o DEST # Bork
+ for FROMDIR in ${removedirs} ; do
+ rmdir "${D}"${FROMDIR} >& /dev/null
+ done
+ find "${D}" -type d | xargs rmdir >& /dev/null
+}
+
+# make sure the libtool archives have libdir set to where they actually
+# -are-, and not where they -used- to be. also, any dependencies we have
+# on our own .la files need to be updated.
+fix_libtool_libdir_paths() {
+ pushd "${D}" >/dev/null
+
+ pushd "./${1}" >/dev/null
+ local dir="${PWD#${D%/}}"
+ local allarchives=$(echo *.la)
+ allarchives="\(${allarchives// /\\|}\)"
+ popd >/dev/null
+
+ sed -i \
+ -e "/^libdir=/s:=.*:='${dir}':" \
+ ./${dir}/*.la
+ sed -i \
+ -e "/^dependency_libs=/s:/[^ ]*/${allarchives}:${LIBPATH}/\1:g" \
+ $(find ./${PREFIX}/lib* -maxdepth 3 -name '*.la') \
+ ./${dir}/*.la
+
+ popd >/dev/null
+}
+
+create_gcc_env_entry() {
+ dodir /etc/env.d/gcc
+ local gcc_envd_base="/etc/env.d/gcc/${CTARGET}-${GCC_CONFIG_VER}"
+
+ local gcc_specs_file
+ local gcc_envd_file="${D}${gcc_envd_base}"
+ if [[ -z $1 ]] ; then
+ # I'm leaving the following commented out to remind me that it
+ # was an insanely -bad- idea. Stuff broke. GCC_SPECS isnt unset
+ # on chroot or in non-toolchain.eclass gcc ebuilds!
+ #gcc_specs_file="${LIBPATH}/specs"
+ gcc_specs_file=""
+ else
+ gcc_envd_file+="-$1"
+ gcc_specs_file="${LIBPATH}/$1.specs"
+ fi
+
+ # We want to list the default ABI's LIBPATH first so libtool
+ # searches that directory first. This is a temporary
+ # workaround for libtool being stupid and using .la's from
+ # conflicting ABIs by using the first one in the search path
+ local ldpaths mosdirs
+ if tc_version_is_at_least 3.2 ; then
+ local mdir mosdir abi ldpath
+ for abi in $(get_all_abis TARGET) ; do
+ mdir=$($(XGCC) $(get_abi_CFLAGS ${abi}) --print-multi-directory)
+ ldpath=${LIBPATH}
+ [[ ${mdir} != "." ]] && ldpath+="/${mdir}"
+ ldpaths="${ldpath}${ldpaths:+:${ldpaths}}"
+
+ mosdir=$($(XGCC) $(get_abi_CFLAGS ${abi}) -print-multi-os-directory)
+ mosdirs="${mosdir}${mosdirs:+:${mosdirs}}"
+ done
+ else
+ # Older gcc's didn't do multilib, so logic is simple.
+ ldpaths=${LIBPATH}
+ fi
- # Don't scan .gox files for executable stacks - false positives
- export QA_EXECSTACK="usr/lib*/go/*/*.gox"
- export QA_WX_LOAD="usr/lib*/go/*/*.gox"
+ cat <<-EOF > ${gcc_envd_file}
+ PATH="${BINPATH}"
+ ROOTPATH="${BINPATH}"
+ GCC_PATH="${BINPATH}"
+ LDPATH="${ldpaths}"
+ MANPATH="${DATAPATH}/man"
+ INFOPATH="${DATAPATH}/info"
+ STDCXX_INCDIR="${STDCXX_INCDIR##*/}"
+ CTARGET="${CTARGET}"
+ GCC_SPECS="${gcc_specs_file}"
+ MULTIOSDIRS="${mosdirs}"
+ EOF
+}
- # Disable RANDMMAP so PCH works. #301299
- if tc_version_is_at_least 4.3 ; then
- pax-mark -r "${D}${PREFIX}/libexec/gcc/${CTARGET}/${GCC_CONFIG_VER}/cc1"
- pax-mark -r "${D}${PREFIX}/libexec/gcc/${CTARGET}/${GCC_CONFIG_VER}/cc1plus"
+copy_minispecs_gcc_specs() {
+ # setup the hardenedno* specs files and the vanilla specs file.
+ if hardened_gcc_works ; then
+ create_gcc_env_entry hardenednopiessp
+ fi
+ if hardened_gcc_works pie ; then
+ create_gcc_env_entry hardenednopie
+ fi
+ if hardened_gcc_works ssp ; then
+ create_gcc_env_entry hardenednossp
+ fi
+ create_gcc_env_entry vanilla
+ insinto ${LIBPATH}
+ doins "${WORKDIR}"/specs/*.specs || die "failed to install specs"
+ # Build system specs file which, if it exists, must be a complete set of
+ # specs as it completely and unconditionally overrides the builtin specs.
+ if ! tc_version_is_at_least 4.4 ; then
+ $(XGCC) -dumpspecs > "${WORKDIR}"/specs/specs
+ cat "${WORKDIR}"/build.specs >> "${WORKDIR}"/specs/specs
+ doins "${WORKDIR}"/specs/specs || die "failed to install the specs file"
fi
}
@@ -1725,175 +1790,100 @@
[[ -f jar ]] && mv -f jar gcj-jar
}
-# Move around the libs to the right location. For some reason,
-# when installing gcc, it dumps internal libraries into /usr/lib
-# instead of the private gcc lib path
-gcc_movelibs() {
- # older versions of gcc did not support --print-multi-os-directory
- tc_version_is_at_least 3.2 || return 0
+#---->> pkg_post* <<----
- local x multiarg removedirs=""
- for multiarg in $($(XGCC) -print-multi-lib) ; do
- multiarg=${multiarg#*;}
- multiarg=${multiarg//@/ -}
+toolchain_pkg_postinst() {
+ do_gcc_config
- local OS_MULTIDIR=$($(XGCC) ${multiarg} --print-multi-os-directory)
- local MULTIDIR=$($(XGCC) ${multiarg} --print-multi-directory)
- local TODIR=${D}${LIBPATH}/${MULTIDIR}
- local FROMDIR=
+ if ! is_crosscompile ; then
+ echo
+ ewarn "If you have issues with packages unable to locate libstdc++.la,"
+ ewarn "then try running 'fix_libtool_files.sh' on the old gcc versions."
+ echo
+ ewarn "You might want to review the GCC upgrade guide when moving between"
+ ewarn "major versions (like 4.2 to 4.3):"
+ ewarn "http://www.gentoo.org/doc/en/gcc-upgrading.xml"
+ echo
- [[ -d ${TODIR} ]] || mkdir -p ${TODIR}
+ # Clean up old paths
+ rm -f "${ROOT}"/*/rcscripts/awk/fixlafiles.awk "${ROOT}"/sbin/fix_libtool_files.sh
+ rmdir "${ROOT}"/*/rcscripts{/awk,} 2>/dev/null
- for FROMDIR in \
- ${LIBPATH}/${OS_MULTIDIR} \
- ${LIBPATH}/../${MULTIDIR} \
- ${PREFIX}/lib/${OS_MULTIDIR} \
- ${PREFIX}/${CTARGET}/lib/${OS_MULTIDIR}
- do
- removedirs="${removedirs} ${FROMDIR}"
- FROMDIR=${D}${FROMDIR}
- if [[ ${FROMDIR} != "${TODIR}" && -d ${FROMDIR} ]] ; then
- local files=$(find "${FROMDIR}" -maxdepth 1 ! -type d 2>/dev/null)
- if [[ -n ${files} ]] ; then
- mv ${files} "${TODIR}"
- fi
- fi
- done
- fix_libtool_libdir_paths "${LIBPATH}/${MULTIDIR}"
+ mkdir -p "${ROOT}"/usr/{share/gcc-data,sbin,bin}
+ cp "${ROOT}/${DATAPATH}"/fixlafiles.awk "${ROOT}"/usr/share/gcc-data/ || die
+ cp "${ROOT}/${DATAPATH}"/fix_libtool_files.sh "${ROOT}"/usr/sbin/ || die
- # SLOT up libgcj.pc if it's available (and let gcc-config worry about links)
- FROMDIR="${PREFIX}/lib/${OS_MULTIDIR}"
- for x in "${D}${FROMDIR}"/pkgconfig/libgcj*.pc ; do
- [[ -f ${x} ]] || continue
- sed -i "/^libdir=/s:=.*:=${LIBPATH}/${MULTIDIR}:" "${x}"
- mv "${x}" "${D}${FROMDIR}"/pkgconfig/libgcj-${GCC_PV}.pc || die
- done
- done
+ # Since these aren't critical files and portage sucks with
+ # handling of binpkgs, don't require these to be found
+ cp "${ROOT}/${DATAPATH}"/c{89,99} "${ROOT}"/usr/bin/ 2>/dev/null
+ fi
- # We remove directories separately to avoid this case:
- # mv SRC/lib/../lib/*.o DEST
- # rmdir SRC/lib/../lib/
- # mv SRC/lib/../lib32/*.o DEST # Bork
- for FROMDIR in ${removedirs} ; do
- rmdir "${D}"${FROMDIR} >& /dev/null
- done
- find "${D}" -type d | xargs rmdir >& /dev/null
+ if use regression-test ; then
+ elog "Testsuite results have been installed into /usr/share/doc/${PF}/testsuite"
+ echo
+ fi
}
-#----<< src_* >>----
-
-#---->> unorganized crap in need of refactoring follows
-
-# gcc_quick_unpack will unpack the gcc tarball and patches in a way that is
-# consistant with the behavior of get_gcc_src_uri. The only patch it applies
-# itself is the branch update if present.
-#
-# Travis Tilley <lv@gentoo.org> (03 Sep 2004)
-#
-gcc_quick_unpack() {
- pushd "${WORKDIR}" > /dev/null
- export PATCH_GCC_VER=${PATCH_GCC_VER:-${GCC_RELEASE_VER}}
- export UCLIBC_GCC_VER=${UCLIBC_GCC_VER:-${PATCH_GCC_VER}}
- export PIE_GCC_VER=${PIE_GCC_VER:-${GCC_RELEASE_VER}}
- export HTB_GCC_VER=${HTB_GCC_VER:-${GCC_RELEASE_VER}}
- export SPECS_GCC_VER=${SPECS_GCC_VER:-${GCC_RELEASE_VER}}
- if [[ -n ${GCC_A_FAKEIT} ]] ; then
- unpack ${GCC_A_FAKEIT}
- elif [[ -n ${PRERELEASE} ]] ; then
- unpack gcc-${PRERELEASE}.tar.bz2
- elif [[ -n ${SNAPSHOT} ]] ; then
- unpack gcc-${SNAPSHOT}.tar.bz2
- elif [[ ${PV} != *9999* ]] ; then
- unpack gcc-${GCC_RELEASE_VER}.tar.bz2
- # We want branch updates to be against a release tarball
- if [[ -n ${BRANCH_UPDATE} ]] ; then
- pushd "${S}" > /dev/null
- epatch "${DISTDIR}"/gcc-${GCC_RELEASE_VER}-branch-update-${BRANCH_UPDATE}.patch.bz2
- popd > /dev/null
- fi
- fi
+toolchain_pkg_postrm() {
+ # to make our lives easier (and saner), we do the fix_libtool stuff here.
+ # rather than checking SLOT's and trying in upgrade paths, we just see if
+ # the common libstdc++.la exists in the ${LIBPATH} of the gcc that we are
+ # unmerging. if it does, that means this was a simple re-emerge.
- if [[ -n ${D_VER} ]] && use d ; then
- pushd "${S}"/gcc > /dev/null
- unpack gdc-${D_VER}-src.tar.bz2
- cd ..
- ebegin "Adding support for the D language"
- ./gcc/d/setup-gcc.sh >& "${T}"/dgcc.log
- if ! eend $? ; then
- eerror "The D gcc package failed to apply"
- eerror "Please include this log file when posting a bug report:"
- eerror " ${T}/dgcc.log"
- die "failed to include the D language"
+ # clean up the cruft left behind by cross-compilers
+ if is_crosscompile ; then
+ if [[ -z $(ls "${ROOT}"/etc/env.d/gcc/${CTARGET}* 2>/dev/null) ]] ; then
+ rm -f "${ROOT}"/etc/env.d/gcc/config-${CTARGET}
+ rm -f "${ROOT}"/etc/env.d/??gcc-${CTARGET}
+ rm -f "${ROOT}"/usr/bin/${CTARGET}-{gcc,{g,c}++}{,32,64}
fi
- popd > /dev/null
+ return 0
fi
- [[ -n ${PATCH_VER} ]] && \
- unpack gcc-${PATCH_GCC_VER}-patches-${PATCH_VER}.tar.bz2
+ # ROOT isnt handled by the script
+ [[ ${ROOT} != "/" ]] && return 0
- [[ -n ${UCLIBC_VER} ]] && \
- unpack gcc-${UCLIBC_GCC_VER}-uclibc-patches-${UCLIBC_VER}.tar.bz2
+ if [[ ! -e ${LIBPATH}/libstdc++.so ]] ; then
+ # make sure the profile is sane during same-slot upgrade #289403
+ do_gcc_config
- if want_pie ; then
- if [[ -n ${PIE_CORE} ]] ; then
- unpack ${PIE_CORE}
- else
- unpack gcc-${PIE_GCC_VER}-piepatches-v${PIE_VER}.tar.bz2
+ einfo "Running 'fix_libtool_files.sh ${GCC_RELEASE_VER}'"
+ /usr/sbin/fix_libtool_files.sh ${GCC_RELEASE_VER}
+ if [[ -n ${BRANCH_UPDATE} ]] ; then
+ einfo "Running 'fix_libtool_files.sh ${GCC_RELEASE_VER}-${BRANCH_UPDATE}'"
+ /usr/sbin/fix_libtool_files.sh ${GCC_RELEASE_VER}-${BRANCH_UPDATE}
fi
- [[ -n ${SPECS_VER} ]] && \
- unpack gcc-${SPECS_GCC_VER}-specs-${SPECS_VER}.tar.bz2
fi
- use_if_iuse boundschecking && unpack "bounds-checking-gcc-${HTB_GCC_VER}-${HTB_VER}.patch.bz2"
-
- popd > /dev/null
-}
-
-do_gcc_HTB_patches() {
- use_if_iuse boundschecking || return 0
-
- # modify the bounds checking patch with a regression patch
- epatch "${WORKDIR}/bounds-checking-gcc-${HTB_GCC_VER}-${HTB_VER}.patch"
- BRANDING_GCC_PKGVERSION="${BRANDING_GCC_PKGVERSION}, HTB-${HTB_GCC_VER}-${HTB_VER}"
+ return 0
}
-# do various updates to PIE logic
-do_gcc_PIE_patches() {
- want_pie || return 0
-
- use vanilla && return 0
-
- if tc_version_is_at_least 4.3.2 ; then
- guess_patch_type_in_dir "${WORKDIR}"/piepatch/
- EPATCH_MULTI_MSG="Applying pie patches ..." \
- epatch "${WORKDIR}"/piepatch/
- else
- guess_patch_type_in_dir "${WORKDIR}"/piepatch/upstream
-
- # corrects startfile/endfile selection and shared/static/pie flag usage
- EPATCH_MULTI_MSG="Applying upstream pie patches ..." \
- epatch "${WORKDIR}"/piepatch/upstream
- # adds non-default pie support (rs6000)
- EPATCH_MULTI_MSG="Applying non-default pie patches ..." \
- epatch "${WORKDIR}"/piepatch/nondef
- # adds default pie support (rs6000 too) if DEFAULT_PIE[_SSP] is defined
- EPATCH_MULTI_MSG="Applying default pie patches ..." \
- epatch "${WORKDIR}"/piepatch/def
+do_gcc_config() {
+ if ! should_we_gcc_config ; then
+ env -i ROOT="${ROOT}" gcc-config --use-old --force
+ return 0
fi
- # we want to be able to control the pie patch logic via something other
- # than ALL_CFLAGS...
- sed -e '/^ALL_CFLAGS/iHARD_CFLAGS = ' \
- -e 's|^ALL_CFLAGS = |ALL_CFLAGS = $(HARD_CFLAGS) |' \
- -i "${S}"/gcc/Makefile.in
- # Need to add HARD_CFLAGS to ALL_CXXFLAGS on >= 4.7
- if tc_version_is_at_least 4.7 ; then
- sed -e '/^ALL_CXXFLAGS/iHARD_CFLAGS = ' \
- -e 's|^ALL_CXXFLAGS = |ALL_CXXFLAGS = $(HARD_CFLAGS) |' \
- -i "${S}"/gcc/Makefile.in
+ local current_gcc_config="" current_specs="" use_specs=""
+
+ 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}')
+ [[ -n ${current_specs} ]] && use_specs=-${current_specs}
+ fi
+ if [[ -n ${use_specs} ]] && \
+ [[ ! -e ${ROOT}/etc/env.d/gcc/${CTARGET}-${GCC_CONFIG_VER}${use_specs} ]]
+ then
+ ewarn "The currently selected specs-specific gcc config,"
+ ewarn "${current_specs}, doesn't exist anymore. This is usually"
+ ewarn "due to enabling/disabling hardened or switching to a version"
+ ewarn "of gcc that doesnt create multiple specs files. The default"
+ ewarn "config will be used, and the previous preference forgotten."
+ use_specs=""
fi
- BRANDING_GCC_PKGVERSION="${BRANDING_GCC_PKGVERSION}, pie-${PIE_VER}"
+ gcc-config ${CTARGET}-${GCC_CONFIG_VER}${use_specs}
}
should_we_gcc_config() {
@@ -1938,129 +1928,22 @@
fi
}
-do_gcc_config() {
- if ! should_we_gcc_config ; then
- env -i ROOT="${ROOT}" gcc-config --use-old --force
- return 0
- fi
-
- local current_gcc_config="" current_specs="" use_specs=""
-
- 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}')
- [[ -n ${current_specs} ]] && use_specs=-${current_specs}
- fi
- if [[ -n ${use_specs} ]] && \
- [[ ! -e ${ROOT}/etc/env.d/gcc/${CTARGET}-${GCC_CONFIG_VER}${use_specs} ]]
- then
- ewarn "The currently selected specs-specific gcc config,"
- ewarn "${current_specs}, doesn't exist anymore. This is usually"
- ewarn "due to enabling/disabling hardened or switching to a version"
- ewarn "of gcc that doesnt create multiple specs files. The default"
- ewarn "config will be used, and the previous preference forgotten."
- use_specs=""
- fi
-
- gcc-config ${CTARGET}-${GCC_CONFIG_VER}${use_specs}
-}
-
-# This function allows us to gentoo-ize GCCs version number and bugzilla
-# URL without needing to use patches.
-gcc_version_patch() {
- # gcc-4.3+ has configure flags (whoo!)
- tc_version_is_at_least 4.3 && return 0
-
- local version_string=${GCC_CONFIG_VER}
- [[ -n ${BRANCH_UPDATE} ]] && version_string+=" ${BRANCH_UPDATE}"
-
- einfo "patching gcc version: ${version_string} (${BRANDING_GCC_PKGVERSION})"
-
- local gcc_sed=( -e 's:gcc\.gnu\.org/bugs\.html:bugs\.gentoo\.org/:' )
- if grep -qs VERSUFFIX "${S}"/gcc/version.c ; then
- gcc_sed+=( -e "/VERSUFFIX \"\"/s:\"\":\" (${BRANDING_GCC_PKGVERSION})\":" )
- else
- version_string="${version_string} (${BRANDING_GCC_PKGVERSION})"
- gcc_sed+=( -e "/const char version_string\[\] = /s:= \".*\":= \"${version_string}\":" )
- fi
- sed -i "${gcc_sed[@]}" "${S}"/gcc/version.c || die
-}
+#---->> support and misc functions <<----
-# This is a historical wart. The original Gentoo/amd64 port used:
-# lib32 - 32bit binaries (x86)
-# lib64 - 64bit binaries (x86_64)
-# lib - "native" binaries (a symlink to lib64)
-# Most other distros use the logic (including mainline gcc):
-# lib - 32bit binaries (x86)
-# lib64 - 64bit binaries (x86_64)
-# Over time, Gentoo is migrating to the latter form.
+# This is to make sure we don't accidentally try to enable support for a
+# language that doesnt exist. GCC 3.4 supports f77, while 4.0 supports f95, etc.
#
-# Unfortunately, due to distros picking the lib32 behavior, newer gcc
-# versions will dynamically detect whether to use lib or lib32 for its
-# 32bit multilib. So, to keep the automagic from getting things wrong
-# while people are transitioning from the old style to the new style,
-# we always set the MULTILIB_OSDIRNAMES var for relevant targets.
-setup_multilib_osdirnames() {
- is_multilib || return 0
-
- local config
- local libdirs="../lib64 ../lib32"
-
- # this only makes sense for some Linux targets
- case ${CTARGET} in
- x86_64*-linux*) config="i386" ;;
- powerpc64*-linux*) config="rs6000" ;;
- sparc64*-linux*) config="sparc" ;;
- s390x*-linux*) config="s390" ;;
- *) return 0 ;;
- esac
- config+="/t-linux64"
-
- local sed_args=()
- if tc_version_is_at_least 4.6 ; then
- sed_args+=( -e 's:$[(]call if_multiarch[^)]*[)]::g' )
- fi
- if [[ ${SYMLINK_LIB} == "yes" ]] ; then
- einfo "updating multilib directories to be: ${libdirs}"
- if tc_version_is_at_least 4.6.4 || tc_version_is_at_least 4.7 ; then
- sed_args+=( -e '/^MULTILIB_OSDIRNAMES.*lib32/s:[$][(]if.*):../lib32:' )
- else
- sed_args+=( -e "/^MULTILIB_OSDIRNAMES/s:=.*:= ${libdirs}:" )
- fi
- else
- einfo "using upstream multilib; disabling lib32 autodetection"
- sed_args+=( -r -e 's:[$][(]if.*,(.*)[)]:\1:' )
- fi
- sed -i "${sed_args[@]}" "${S}"/gcc/config/${config} || die
-}
-
-# make sure the libtool archives have libdir set to where they actually
-# -are-, and not where they -used- to be. also, any dependencies we have
-# on our own .la files need to be updated.
-fix_libtool_libdir_paths() {
- pushd "${D}" >/dev/null
-
- pushd "./${1}" >/dev/null
- local dir="${PWD#${D%/}}"
- local allarchives=$(echo *.la)
- allarchives="\(${allarchives// /\\|}\)"
- popd >/dev/null
-
- sed -i \
- -e "/^libdir=/s:=.*:='${dir}':" \
- ./${dir}/*.la
- sed -i \
- -e "/^dependency_libs=/s:/[^ ]*/${allarchives}:${LIBPATH}/\1:g" \
- $(find ./${PREFIX}/lib* -maxdepth 3 -name '*.la') \
- ./${dir}/*.la
-
- popd >/dev/null
+# Also add a hook so special ebuilds (kgcc64) can control which languages
+# exactly get enabled
+gcc-lang-supported() {
+ grep ^language=\"${1}\" "${S}"/gcc/*/config-lang.in > /dev/null || return 1
+ [[ -z ${TOOLCHAIN_ALLOWED_LANGS} ]] && return 0
+ has $1 ${TOOLCHAIN_ALLOWED_LANGS}
}
-is_multilib() {
- tc_version_is_at_least 3 || return 1
- use multilib
+is_ada() {
+ gcc-lang-supported ada || return 1
+ use ada
}
is_cxx() {
@@ -2098,6 +1981,11 @@
use cxx && use_if_iuse go
}
+is_multilib() {
+ tc_version_is_at_least 3 || return 1
+ use multilib
+}
+
is_objc() {
gcc-lang-supported objc || return 1
use_if_iuse objc
@@ -2108,11 +1996,6 @@
use cxx && use_if_iuse objc++
}
-is_ada() {
- gcc-lang-supported ada || return 1
- use ada
-}
-
is_treelang() {
use_if_iuse boundschecking && return 1 #260532
is_crosscompile && return 1 #199924
@@ -2120,3 +2003,107 @@
#use treelang
return 0
}
+
+# Grab a variable from the build system (taken from linux-info.eclass)
+get_make_var() {
+ local var=$1 makefile=${2:-${WORKDIR}/build/Makefile}
+ echo -e "e:\\n\\t@echo \$(${var})\\ninclude ${makefile}" | \
+ r=${makefile%/*} emake --no-print-directory -s -f - 2>/dev/null
+}
+
+XGCC() { get_make_var GCC_FOR_TARGET ; }
+
+# The gentoo piessp patches allow for 3 configurations:
+# 1) PIE+SSP by default
+# 2) PIE by default
+# 3) SSP by default
+hardened_gcc_works() {
+ if [[ $1 == "pie" ]] ; then
+ # $gcc_cv_ld_pie is unreliable as it simply take the output of
+ # `ld --help | grep -- -pie`, that reports the option in all cases, also if
+ # the loader doesn't actually load the resulting executables.
+ # To avoid breakage, blacklist FreeBSD here at least
+ [[ ${CTARGET} == *-freebsd* ]] && return 1
+
+ want_pie || return 1
+ use_if_iuse nopie && return 1
+ hardened_gcc_is_stable pie
+ return $?
+ elif [[ $1 == "ssp" ]] ; then
+ [[ -n ${SPECS_VER} ]] || return 1
+ use_if_iuse nossp && return 1
+ hardened_gcc_is_stable ssp
+ return $?
+ else
+ # laziness ;)
+ hardened_gcc_works pie || return 1
+ hardened_gcc_works ssp || return 1
+ return 0
+ fi
+}
+
+hardened_gcc_is_stable() {
+ local tocheck
+ if [[ $1 == "pie" ]] ; then
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ tocheck=${PIE_UCLIBC_STABLE}
+ else
+ tocheck=${PIE_GLIBC_STABLE}
+ fi
+ elif [[ $1 == "ssp" ]] ; then
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ tocheck=${SSP_UCLIBC_STABLE}
+ else
+ tocheck=${SSP_STABLE}
+ fi
+ else
+ die "hardened_gcc_stable needs to be called with pie or ssp"
+ fi
+
+ has $(tc-arch) ${tocheck} && return 0
+ return 1
+}
+
+want_minispecs() {
+ if tc_version_is_at_least 4.3.2 && use hardened ; then
+ if ! want_pie ; then
+ ewarn "PIE_VER or SPECS_VER is not defined in the GCC ebuild."
+ elif use vanilla ; then
+ ewarn "You will not get hardened features if you have the vanilla USE-flag."
+ elif use nopie && use nossp ; then
+ ewarn "You will not get hardened features if you have the nopie and nossp USE-flag."
+ elif ! hardened_gcc_works ; then
+ ewarn "Your $(tc-arch) arch is not supported."
+ else
+ return 0
+ fi
+ ewarn "Hope you know what you are doing. Hardened will not work."
+ return 0
+ fi
+ return 1
+}
+
+want_pie() {
+ ! use hardened && [[ -n ${PIE_VER} ]] && use nopie && return 1
+ [[ -n ${PIE_VER} ]] && [[ -n ${SPECS_VER} ]] && return 0
+ tc_version_is_at_least 4.3.2 && return 1
+ [[ -z ${PIE_VER} ]] && return 1
+ use !nopie && return 0
+ return 1
+}
+
+has toolchain_death_notice ${EBUILD_DEATH_HOOKS} || EBUILD_DEATH_HOOKS+=" toolchain_death_notice"
+toolchain_death_notice() {
+ if [[ -e "${WORKDIR}"/build ]] ; then
+ pushd "${WORKDIR}"/build >/dev/null
+ (echo '' | $(tc-getCC ${CTARGET}) ${CFLAGS} -v -E - 2>&1) > gccinfo.log
+ [[ -e "${T}"/build.log ]] && cp "${T}"/build.log .
+ tar jcf "${WORKDIR}"/gcc-build-logs.tar.bz2 \
+ gccinfo.log build.log $(find -name config.log)
+ rm gccinfo.log build.log
+ eerror
+ eerror "Please include ${WORKDIR}/gcc-build-logs.tar.bz2 in your bug report."
+ eerror
+ popd >/dev/null
+ fi
+}
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-12-23 21:41 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-12-23 21:41 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/12/23 21:41:19
Modified: ChangeLog toolchain.eclass
Log:
Rename gtk USE flag to awt. Remove lto USE flag. Minor cleanup.
Revision Changes Path
1.1086 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1086&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1086&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1085&r2=1.1086
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1085
retrieving revision 1.1086
diff -u -r1.1085 -r1.1086
--- ChangeLog 21 Dec 2013 20:11:55 -0000 1.1085
+++ ChangeLog 23 Dec 2013 21:41:19 -0000 1.1086
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1085 2013/12/21 20:11:55 pesa Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1086 2013/12/23 21:41:19 dirtyepic Exp $
+
+ 23 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Rename gtk USE flag to awt. Remove lto USE flag. Minor cleanup.
21 Dec 2013; Davide Pesavento <pesa@gentoo.org> qt4-r2.eclass:
Use eqmake4() from qmake-utils.eclass
1.609 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.609&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.609&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.608&r2=1.609
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.608
retrieving revision 1.609
diff -u -r1.608 -r1.609
--- toolchain.eclass 21 Dec 2013 11:59:18 -0000 1.608
+++ toolchain.eclass 23 Dec 2013 21:41:19 -0000 1.609
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.608 2013/12/21 11:59:18 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.609 2013/12/23 21:41:19 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -9,7 +9,7 @@
LICENSE="GPL-2 LGPL-2.1"
RESTRICT="strip" # cross-compilers need controlled stripping
-inherit eutils versionator libtool toolchain-funcs flag-o-matic gnuconfig multilib fixheadtails pax-utils
+inherit eutils fixheadtails flag-o-matic gnuconfig libtool multilib pax-utils toolchain-funcs versionator
if [[ ${PV} == *_pre9999* ]] ; then
EGIT_REPO_URI="git://gcc.gnu.org/git/gcc.git"
@@ -79,6 +79,7 @@
fi
export GCC_FILESDIR=${GCC_FILESDIR:-${FILESDIR}}
+
PREFIX=${TOOLCHAIN_PREFIX:-/usr}
if tc_version_is_at_least 3.4.0 ; then
@@ -110,14 +111,13 @@
[[ -n ${HTB_VER} ]] && IUSE+=" boundschecking"
[[ -n ${D_VER} ]] && IUSE+=" d"
[[ -n ${SPECS_VER} ]] && IUSE+=" nossp"
- tc_version_is_at_least 3 && IUSE+=" doc gcj gtk hardened multilib objc"
+ tc_version_is_at_least 3 && IUSE+=" doc gcj awt hardened multilib objc"
tc_version_is_at_least 4.0 && IUSE+=" objc-gc"
tc_version_is_at_least 4.0 && ! tc_version_is_at_least 4.9 && IUSE+=" mudflap"
tc_version_is_at_least 4.1 && IUSE+=" libssp objc++"
tc_version_is_at_least 4.2 && IUSE+=" openmp"
tc_version_is_at_least 4.3 && IUSE+=" fixed-point"
tc_version_is_at_least 4.6 && IUSE+=" graphite"
- tc_version_is_at_least 4.6 && IUSE+=" lto"
tc_version_is_at_least 4.7 && IUSE+=" go"
fi
@@ -187,7 +187,7 @@
"
tc_version_is_at_least 3.4 && GCJ_GTK_DEPS+=" x11-libs/pango"
tc_version_is_at_least 4.2 && GCJ_DEPS+=" app-arch/zip app-arch/unzip"
- DEPEND+=" gcj? ( gtk? ( ${GCJ_GTK_DEPS} ) ${GCJ_DEPS} )"
+ DEPEND+=" gcj? ( awt? ( ${GCJ_GTK_DEPS} ) ${GCJ_DEPS} )"
fi
PDEPEND=">=sys-devel/gcc-config-1.7"
@@ -340,8 +340,12 @@
"in your make.conf if you want to use this version."
fi
+ [[ -z ${UCLIBC_VER} ]] && [[ ${CTARGET} == *-uclibc* ]] && \
+ die "Sorry, this version does not support uClibc"
+
# we dont want to use the installed compiler's specs to build gcc!
unset GCC_SPECS
+ unset LANGUAGES #265283
if ! use_if_iuse cxx ; then
use_if_iuse go && ewarn 'Go requires a C++ compiler, disabled due to USE="-cxx"'
@@ -350,16 +354,11 @@
fi
want_minispecs
-
- unset LANGUAGES #265283
}
#----> src_unpack <----
toolchain_src_unpack() {
- [[ -z ${UCLIBC_VER} ]] && [[ ${CTARGET} == *-uclibc* ]] && \
- die "Sorry, this version does not support uClibc"
-
if [[ ${PV} == *9999* ]]; then
git-2_src_unpack
else
@@ -438,7 +437,7 @@
# disable --as-needed from being compiled into gcc specs
# natively when using a gcc version < 3.4.4
- # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14992
+ # http://gcc.gnu.org/PR14992
if ! tc_version_is_at_least 3.4.4 ; then
sed -i -e s/HAVE_LD_AS_NEEDED/USE_LD_AS_NEEDED/g "${S}"/gcc/config.in
fi
@@ -463,8 +462,6 @@
# update configure files
local f
einfo "Fixing misc issues in configure files"
- # TODO - check if we can drop this now that we don't gen info files
- tc_version_is_at_least 4.1 && epatch "${GCC_FILESDIR}"/gcc-configure-texinfo.patch
for f in $(grep -l 'autoconf version 2.13' $(find "${S}" -name configure)) ; do
ebegin " Updating ${f/${S}\/} [LANG]"
patch "${f}" "${GCC_FILESDIR}"/gcc-configure-LANG.patch >& "${T}"/configure-patch.log \
@@ -513,7 +510,7 @@
ebegin "Adding support for the D language"
./gcc/d/setup-gcc.sh >& "${T}"/dgcc.log
if ! eend $? ; then
- eerror "The D gcc package failed to apply"
+ eerror "The D GCC package failed to apply"
eerror "Please include this log file when posting a bug report:"
eerror " ${T}/dgcc.log"
die "failed to include the D language"
@@ -729,8 +726,6 @@
gcc_do_filter_flags() {
strip-flags
- # In general gcc does not like optimization, and adds -O2 where
- # it is safe. This is especially true for gcc 3.3 + 3.4
replace-flags -O? -O2
# dont want to funk ourselves
@@ -801,24 +796,6 @@
strip-unsupported-flags
- # CFLAGS logic (verified with 3.4.3):
- # CFLAGS:
- # This conflicts when creating a crosscompiler, so set to a sane
- # default in this case:
- # used in ./configure and elsewhere for the native compiler
- # used by gcc when creating libiberty.a
- # used by xgcc when creating libstdc++ (and probably others)!
- # this behavior should be removed...
- #
- # CXXFLAGS:
- # used by xgcc when creating libstdc++
- #
- # STAGE1_CFLAGS (not used in creating a crosscompile gcc):
- # used by ${CHOST}-gcc for building stage1 compiler
- #
- # BOOT_CFLAGS (not used in creating a crosscompile gcc):
- # used by xgcc for building stage2/3 compiler
-
if is_crosscompile ; then
# Set this to something sane for both native and target
CFLAGS="-O2 -pipe"
@@ -924,7 +901,7 @@
# Branding
tc_version_is_at_least 4.3 && confgcc+=(
- --with-bugurl=http://bugs.gentoo.org/
+ --with-bugurl=https://bugs.gentoo.org/
--with-pkgversion="${BRANDING_GCC_PKGVERSION}"
)
@@ -1148,7 +1125,7 @@
if ! is_gcj ; then
confgcc+=( --disable-libgcj )
- elif use gtk ; then
+ elif use awt ; then
confgcc+=( --enable-java-awt=gtk )
fi
@@ -1195,7 +1172,7 @@
fi
if tc_version_is_at_least 4.6 ; then
- confgcc+=( $(use_enable lto) )
+ confgcc+=( --enable-lto )
elif tc_version_is_at_least 4.5 ; then
confgcc+=( --disable-lto )
fi
@@ -1302,6 +1279,7 @@
gcc_do_filter_flags
einfo "CFLAGS=\"${CFLAGS}\""
einfo "CXXFLAGS=\"${CXXFLAGS}\""
+ einfo "LDFLAGS=\"${LDFLAGS}\""
# Force internal zip based jar script to avoid random
# issues with 3rd party jar implementations. #384291
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-12-27 22:10 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-12-27 22:10 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/12/27 22:10:29
Modified: ChangeLog toolchain.eclass
Log:
Initial EAPI support (bug #474358).
Revision Changes Path
1.1092 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1092&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1092&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1091&r2=1.1092
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1091
retrieving revision 1.1092
diff -u -r1.1091 -r1.1092
--- ChangeLog 27 Dec 2013 21:39:36 -0000 1.1091
+++ ChangeLog 27 Dec 2013 22:10:29 -0000 1.1092
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1091 2013/12/27 21:39:36 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1092 2013/12/27 22:10:29 dirtyepic Exp $
+
+ 27 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Initial EAPI support (bug #474358).
27 Dec 2013; Robin H. Johnson <robbat2@gentoo.org> flag-o-matic.eclass:
Per discussion with Flameeyes, make -l and -L always valid, and only warn
1.610 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.610&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.610&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.609&r2=1.610
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.609
retrieving revision 1.610
diff -u -r1.609 -r1.610
--- toolchain.eclass 23 Dec 2013 21:41:19 -0000 1.609
+++ toolchain.eclass 27 Dec 2013 22:10:29 -0000 1.610
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.609 2013/12/23 21:41:19 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.610 2013/12/27 22:10:29 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -25,7 +25,14 @@
FEATURES=${FEATURES/multilib-strict/}
-EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install pkg_postinst pkg_postrm
+EXPORTED_FUNCTIONS="pkg_setup src_unpack src_compile src_test src_install pkg_postinst pkg_postrm"
+case ${EAPI:-0} in
+ 0|1) ;;
+ 2|3) EXPORTED_FUNCTIONS+=" src_prepare src_configure" ;;
+ 4*|5*) EXPORTED_FUNCTIONS+=" pkg_pretend src_prepare src_configure" ;;
+ *) die "I don't speak EAPI ${EAPI}."
+esac
+EXPORT_FUNCTIONS ${EXPORTED_FUNCTIONS}
#---->> globals <<----
@@ -331,11 +338,11 @@
SRC_URI=$(get_gcc_src_uri)
-#---->> pkg_setup <<----
+#---->> pkg_pretend <<----
-toolchain_pkg_setup() {
+toolchain_pkg_pretend() {
if [[ -n ${PRERELEASE}${SNAPSHOT} || ${PV} == *9999* ]] &&
- [[ -z ${I_PROMISE_TO_SUPPLY_PATCHES_WITH_BUGS} ]] ; then
+ [[ -z ${I_PROMISE_TO_SUPPLY_PATCHES_WITH_BUGS} ]] ; then
die "Please \`export I_PROMISE_TO_SUPPLY_PATCHES_WITH_BUGS=1\` or define it" \
"in your make.conf if you want to use this version."
fi
@@ -343,10 +350,6 @@
[[ -z ${UCLIBC_VER} ]] && [[ ${CTARGET} == *-uclibc* ]] && \
die "Sorry, this version does not support uClibc"
- # we dont want to use the installed compiler's specs to build gcc!
- unset GCC_SPECS
- unset LANGUAGES #265283
-
if ! use_if_iuse cxx ; then
use_if_iuse go && ewarn 'Go requires a C++ compiler, disabled due to USE="-cxx"'
use_if_iuse objc++ && ewarn 'Obj-C++ requires a C++ compiler, disabled due to USE="-cxx"'
@@ -356,7 +359,19 @@
want_minispecs
}
-#----> src_unpack <----
+#---->> pkg_setup <<----
+
+toolchain_pkg_setup() {
+ case "${EAPI:-0}" in
+ 0|1|2|3) toolchain_pkg_pretend ;;
+ esac
+
+ # we dont want to use the installed compiler's specs to build gcc
+ unset GCC_SPECS
+ unset LANGUAGES #265283
+}
+
+#---->> src_unpack <<----
toolchain_src_unpack() {
if [[ ${PV} == *9999* ]]; then
@@ -365,6 +380,74 @@
gcc_quick_unpack
fi
+ case ${EAPI:-0} in
+ 0|1) toolchain_src_prepare ;;
+ esac
+}
+
+gcc_quick_unpack() {
+ pushd "${WORKDIR}" > /dev/null
+ export PATCH_GCC_VER=${PATCH_GCC_VER:-${GCC_RELEASE_VER}}
+ export UCLIBC_GCC_VER=${UCLIBC_GCC_VER:-${PATCH_GCC_VER}}
+ export PIE_GCC_VER=${PIE_GCC_VER:-${GCC_RELEASE_VER}}
+ export HTB_GCC_VER=${HTB_GCC_VER:-${GCC_RELEASE_VER}}
+ export SPECS_GCC_VER=${SPECS_GCC_VER:-${GCC_RELEASE_VER}}
+
+ if [[ -n ${GCC_A_FAKEIT} ]] ; then
+ unpack ${GCC_A_FAKEIT}
+ elif [[ -n ${PRERELEASE} ]] ; then
+ unpack gcc-${PRERELEASE}.tar.bz2
+ elif [[ -n ${SNAPSHOT} ]] ; then
+ unpack gcc-${SNAPSHOT}.tar.bz2
+ elif [[ ${PV} != *9999* ]] ; then
+ unpack gcc-${GCC_RELEASE_VER}.tar.bz2
+ # We want branch updates to be against a release tarball
+ if [[ -n ${BRANCH_UPDATE} ]] ; then
+ pushd "${S}" > /dev/null
+ epatch "${DISTDIR}"/gcc-${GCC_RELEASE_VER}-branch-update-${BRANCH_UPDATE}.patch.bz2
+ popd > /dev/null
+ fi
+ fi
+
+ if [[ -n ${D_VER} ]] && use d ; then
+ pushd "${S}"/gcc > /dev/null
+ unpack gdc-${D_VER}-src.tar.bz2
+ cd ..
+ ebegin "Adding support for the D language"
+ ./gcc/d/setup-gcc.sh >& "${T}"/dgcc.log
+ if ! eend $? ; then
+ eerror "The D GCC package failed to apply"
+ eerror "Please include this log file when posting a bug report:"
+ eerror " ${T}/dgcc.log"
+ die "failed to include the D language"
+ fi
+ popd > /dev/null
+ fi
+
+ [[ -n ${PATCH_VER} ]] && \
+ unpack gcc-${PATCH_GCC_VER}-patches-${PATCH_VER}.tar.bz2
+
+ [[ -n ${UCLIBC_VER} ]] && \
+ unpack gcc-${UCLIBC_GCC_VER}-uclibc-patches-${UCLIBC_VER}.tar.bz2
+
+ if want_pie ; then
+ if [[ -n ${PIE_CORE} ]] ; then
+ unpack ${PIE_CORE}
+ else
+ unpack gcc-${PIE_GCC_VER}-piepatches-v${PIE_VER}.tar.bz2
+ fi
+ [[ -n ${SPECS_VER} ]] && \
+ unpack gcc-${SPECS_GCC_VER}-specs-${SPECS_VER}.tar.bz2
+ fi
+
+ use_if_iuse boundschecking && unpack "bounds-checking-gcc-${HTB_GCC_VER}-${HTB_VER}.patch.bz2"
+
+ popd > /dev/null
+}
+
+#---->> src_prepare <<----
+
+toolchain_src_prepare() {
export BRANDING_GCC_PKGVERSION="Gentoo ${GCC_PVR}"
cd "${S}"
@@ -479,66 +562,6 @@
fi
}
-gcc_quick_unpack() {
- pushd "${WORKDIR}" > /dev/null
- export PATCH_GCC_VER=${PATCH_GCC_VER:-${GCC_RELEASE_VER}}
- export UCLIBC_GCC_VER=${UCLIBC_GCC_VER:-${PATCH_GCC_VER}}
- export PIE_GCC_VER=${PIE_GCC_VER:-${GCC_RELEASE_VER}}
- export HTB_GCC_VER=${HTB_GCC_VER:-${GCC_RELEASE_VER}}
- export SPECS_GCC_VER=${SPECS_GCC_VER:-${GCC_RELEASE_VER}}
-
- if [[ -n ${GCC_A_FAKEIT} ]] ; then
- unpack ${GCC_A_FAKEIT}
- elif [[ -n ${PRERELEASE} ]] ; then
- unpack gcc-${PRERELEASE}.tar.bz2
- elif [[ -n ${SNAPSHOT} ]] ; then
- unpack gcc-${SNAPSHOT}.tar.bz2
- elif [[ ${PV} != *9999* ]] ; then
- unpack gcc-${GCC_RELEASE_VER}.tar.bz2
- # We want branch updates to be against a release tarball
- if [[ -n ${BRANCH_UPDATE} ]] ; then
- pushd "${S}" > /dev/null
- epatch "${DISTDIR}"/gcc-${GCC_RELEASE_VER}-branch-update-${BRANCH_UPDATE}.patch.bz2
- popd > /dev/null
- fi
- fi
-
- if [[ -n ${D_VER} ]] && use d ; then
- pushd "${S}"/gcc > /dev/null
- unpack gdc-${D_VER}-src.tar.bz2
- cd ..
- ebegin "Adding support for the D language"
- ./gcc/d/setup-gcc.sh >& "${T}"/dgcc.log
- if ! eend $? ; then
- eerror "The D GCC package failed to apply"
- eerror "Please include this log file when posting a bug report:"
- eerror " ${T}/dgcc.log"
- die "failed to include the D language"
- fi
- popd > /dev/null
- fi
-
- [[ -n ${PATCH_VER} ]] && \
- unpack gcc-${PATCH_GCC_VER}-patches-${PATCH_VER}.tar.bz2
-
- [[ -n ${UCLIBC_VER} ]] && \
- unpack gcc-${UCLIBC_GCC_VER}-uclibc-patches-${UCLIBC_VER}.tar.bz2
-
- if want_pie ; then
- if [[ -n ${PIE_CORE} ]] ; then
- unpack ${PIE_CORE}
- else
- unpack gcc-${PIE_GCC_VER}-piepatches-v${PIE_VER}.tar.bz2
- fi
- [[ -n ${SPECS_VER} ]] && \
- unpack gcc-${SPECS_GCC_VER}-specs-${SPECS_VER}.tar.bz2
- fi
-
- use_if_iuse boundschecking && unpack "bounds-checking-gcc-${HTB_GCC_VER}-${HTB_VER}.patch.bz2"
-
- popd > /dev/null
-}
-
guess_patch_type_in_dir() {
[[ -n $(ls "$1"/*.bz2 2>/dev/null) ]] \
&& EPATCH_SUFFIX="patch.bz2" \
@@ -723,95 +746,25 @@
done
}
-gcc_do_filter_flags() {
- strip-flags
-
- replace-flags -O? -O2
-
- # dont want to funk ourselves
- filter-flags '-mabi*' -m31 -m32 -m64
-
- filter-flags '-frecord-gcc-switches' # 490738
-
- case ${GCC_BRANCH_VER} in
- 3.2|3.3)
- replace-cpu-flags k8 athlon64 opteron x86-64
- replace-cpu-flags pentium-m pentium3m pentium3
- replace-cpu-flags G3 750
- replace-cpu-flags G4 7400
- replace-cpu-flags G5 7400
-
- case $(tc-arch) in
- amd64)
- replace-cpu-flags core2 nocona
- filter-flags '-mtune=*'
- ;;
- x86)
- replace-cpu-flags core2 prescott
- filter-flags '-mtune=*'
- ;;
- esac
+#---->> src_configure <<----
- # XXX: should add a sed or something to query all supported flags
- # from the gcc source and trim everything else ...
- filter-flags -f{no-,}unit-at-a-time -f{no-,}web -mno-tls-direct-seg-refs
- filter-flags -f{no-,}stack-protector{,-all}
- filter-flags -fvisibility-inlines-hidden -fvisibility=hidden
- ;;
- 3.4|4.*)
- case $(tc-arch) in
- amd64|x86)
- filter-flags '-mcpu=*'
- ;;
- alpha)
- # https://bugs.gentoo.org/454426
- append-ldflags -Wl,--no-relax
- ;;
- sparc)
- # temporary workaround for random ICEs reproduced by multiple users
- # https://bugs.gentoo.org/457062
- [[ ${GCC_BRANCH_VER} == 4.6 || ${GCC_BRANCH_VER} == 4.7 ]] && \
- MAKEOPTS+=" -j1"
- ;;
- *-macos)
- # http://gcc.gnu.org/PR25127
- [[ ${GCC_BRANCH_VER} == 4.0 || ${GCC_BRANCH_VER} == 4.1 ]] && \
- filter-flags '-mcpu=*' '-march=*' '-mtune=*'
- ;;
- esac
- ;;
- esac
+toolchain_src_configure() {
+ gcc_do_filter_flags
- case ${GCC_BRANCH_VER} in
- 4.6)
- case $(tc-arch) in
- amd64|x86)
- # https://bugs.gentoo.org/411333
- # https://bugs.gentoo.org/466454
- replace-cpu-flags c3-2 pentium2 pentium3 pentium3m pentium-m i686
- ;;
- esac
- ;;
- esac
+ einfo "CFLAGS=\"${CFLAGS}\""
+ einfo "CXXFLAGS=\"${CXXFLAGS}\""
+ einfo "LDFLAGS=\"${LDFLAGS}\""
- strip-unsupported-flags
-
- if is_crosscompile ; then
- # Set this to something sane for both native and target
- CFLAGS="-O2 -pipe"
- FFLAGS=${CFLAGS}
- FCFLAGS=${CFLAGS}
+ # Force internal zip based jar script to avoid random
+ # issues with 3rd party jar implementations. #384291
+ export JAR=no
- local VAR="CFLAGS_"${CTARGET//-/_}
- CXXFLAGS=${!VAR}
+ # For hardened gcc 4.3 piepatchset to build the hardened specs
+ # file (build.specs) to use when building gcc.
+ if ! tc_version_is_at_least 4.4 && want_minispecs ; then
+ setup_minispecs_gcc_build_specs
fi
- export GCJFLAGS=${GCJFLAGS:-${CFLAGS}}
-}
-
-#---->> src_configure <<----
-
-gcc_do_configure() {
local confgcc=( --host=${CHOST} )
if is_crosscompile || tc-is-cross-compiler ; then
@@ -1232,6 +1185,109 @@
popd > /dev/null
}
+gcc_do_filter_flags() {
+ strip-flags
+
+ replace-flags -O? -O2
+
+ # dont want to funk ourselves
+ filter-flags '-mabi*' -m31 -m32 -m64
+
+ filter-flags '-frecord-gcc-switches' # 490738
+
+ case ${GCC_BRANCH_VER} in
+ 3.2|3.3)
+ replace-cpu-flags k8 athlon64 opteron x86-64
+ replace-cpu-flags pentium-m pentium3m pentium3
+ replace-cpu-flags G3 750
+ replace-cpu-flags G4 7400
+ replace-cpu-flags G5 7400
+
+ case $(tc-arch) in
+ amd64)
+ replace-cpu-flags core2 nocona
+ filter-flags '-mtune=*'
+ ;;
+ x86)
+ replace-cpu-flags core2 prescott
+ filter-flags '-mtune=*'
+ ;;
+ esac
+
+ # XXX: should add a sed or something to query all supported flags
+ # from the gcc source and trim everything else ...
+ filter-flags -f{no-,}unit-at-a-time -f{no-,}web -mno-tls-direct-seg-refs
+ filter-flags -f{no-,}stack-protector{,-all}
+ filter-flags -fvisibility-inlines-hidden -fvisibility=hidden
+ ;;
+ 3.4|4.*)
+ case $(tc-arch) in
+ amd64|x86)
+ filter-flags '-mcpu=*'
+ ;;
+ alpha)
+ # https://bugs.gentoo.org/454426
+ append-ldflags -Wl,--no-relax
+ ;;
+ sparc)
+ # temporary workaround for random ICEs reproduced by multiple users
+ # https://bugs.gentoo.org/457062
+ [[ ${GCC_BRANCH_VER} == 4.6 || ${GCC_BRANCH_VER} == 4.7 ]] && \
+ MAKEOPTS+=" -j1"
+ ;;
+ *-macos)
+ # http://gcc.gnu.org/PR25127
+ [[ ${GCC_BRANCH_VER} == 4.0 || ${GCC_BRANCH_VER} == 4.1 ]] && \
+ filter-flags '-mcpu=*' '-march=*' '-mtune=*'
+ ;;
+ esac
+ ;;
+ esac
+
+ case ${GCC_BRANCH_VER} in
+ 4.6)
+ case $(tc-arch) in
+ amd64|x86)
+ # https://bugs.gentoo.org/411333
+ # https://bugs.gentoo.org/466454
+ replace-cpu-flags c3-2 pentium2 pentium3 pentium3m pentium-m i686
+ ;;
+ esac
+ ;;
+ esac
+
+ strip-unsupported-flags
+
+ # these are set here so we have something sane at configure time
+ if is_crosscompile ; then
+ # Set this to something sane for both native and target
+ CFLAGS="-O2 -pipe"
+ FFLAGS=${CFLAGS}
+ FCFLAGS=${CFLAGS}
+
+ local VAR="CFLAGS_"${CTARGET//-/_}
+ CXXFLAGS=${!VAR}
+ fi
+
+ export GCJFLAGS=${GCJFLAGS:-${CFLAGS}}
+}
+
+setup_minispecs_gcc_build_specs() {
+ # Setup the "build.specs" file for gcc 4.3 to use when building.
+ if hardened_gcc_works pie ; then
+ cat "${WORKDIR}"/specs/pie.specs >> "${WORKDIR}"/build.specs
+ fi
+ if hardened_gcc_works ssp ; then
+ for s in ssp sspall ; do
+ cat "${WORKDIR}"/specs/${s}.specs >> "${WORKDIR}"/build.specs
+ done
+ fi
+ for s in nostrict znow ; do
+ cat "${WORKDIR}"/specs/${s}.specs >> "${WORKDIR}"/build.specs
+ done
+ export GCC_SPECS="${WORKDIR}"/build.specs
+}
+
gcc-multilib-configure() {
if ! is_multilib ; then
confgcc+=( --disable-multilib )
@@ -1276,26 +1332,9 @@
#----> src_compile <----
toolchain_src_compile() {
- gcc_do_filter_flags
- einfo "CFLAGS=\"${CFLAGS}\""
- einfo "CXXFLAGS=\"${CXXFLAGS}\""
- einfo "LDFLAGS=\"${LDFLAGS}\""
-
- # Force internal zip based jar script to avoid random
- # issues with 3rd party jar implementations. #384291
- export JAR=no
-
- # For hardened gcc 4.3 piepatchset to build the hardened specs
- # file (build.specs) to use when building gcc.
- if ! tc_version_is_at_least 4.4 && want_minispecs ; then
- setup_minispecs_gcc_build_specs
- fi
- # Build in a separate build tree
- mkdir -p "${WORKDIR}"/build
- pushd "${WORKDIR}"/build > /dev/null
-
- einfo "Configuring ${PN} ..."
- gcc_do_configure
+ case ${EAPI:-0} in
+ 0|1) toolchain_src_configure ;;
+ esac
touch "${S}"/gcc/c-gperf.h
@@ -1305,50 +1344,18 @@
einfo "Compiling ${PN} ..."
gcc_do_make ${GCC_MAKE_TARGET}
-
- popd > /dev/null
}
-setup_minispecs_gcc_build_specs() {
- # Setup the "build.specs" file for gcc 4.3 to use when building.
- if hardened_gcc_works pie ; then
- cat "${WORKDIR}"/specs/pie.specs >> "${WORKDIR}"/build.specs
- fi
- if hardened_gcc_works ssp ; then
- for s in ssp sspall ; do
- cat "${WORKDIR}"/specs/${s}.specs >> "${WORKDIR}"/build.specs
- done
- fi
- for s in nostrict znow ; do
- cat "${WORKDIR}"/specs/${s}.specs >> "${WORKDIR}"/build.specs
- done
- export GCC_SPECS="${WORKDIR}"/build.specs
-}
-
-# This function accepts one optional argument, the make target to be used.
-# If ommitted, gcc_do_make will try to guess whether it should use all,
-# profiledbootstrap, or bootstrap-lean depending on CTARGET and arch. An
-# example of how to use this function:
-#
-# gcc_do_make all-target-libstdc++-v3
-#
-# In addition to the target to be used, the following variables alter the
-# behavior of this function:
-#
-# LDFLAGS
-# Flags to pass to ld
-#
-# STAGE1_CFLAGS
-# CFLAGS to use during stage1 of a gcc bootstrap
-#
-# BOOT_CFLAGS
-# CFLAGS to use during stages 2+3 of a gcc bootstrap.
-#
-# Travis Tilley <lv@gentoo.org> (04 Sep 2004)
-#
gcc_do_make() {
+ # This function accepts one optional argument, the make target to be used.
+ # If omitted, gcc_do_make will try to guess whether it should use all,
+ # profiledbootstrap, or bootstrap-lean depending on CTARGET and arch. An
+ # example of how to use this function:
+ #
+ # gcc_do_make all-target-libstdc++-v3
+ #
# Set make target to $1 if passed
- [[ -n $1 ]] && GCC_MAKE_TARGET=$1
+ [[ -n ${1} ]] && GCC_MAKE_TARGET=${1}
# default target
if is_crosscompile || tc-is-cross-compiler ; then
# 3 stage bootstrapping doesnt quite work when you cant run the
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-12-28 3:48 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-12-28 3:48 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/12/28 03:48:25
Modified: ChangeLog toolchain.eclass
Log:
Reintroduce texinfo patch to unbreak older versions (bug #496224).
Revision Changes Path
1.1095 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1095&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1095&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1094&r2=1.1095
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1094
retrieving revision 1.1095
diff -u -r1.1094 -r1.1095
--- ChangeLog 28 Dec 2013 00:25:53 -0000 1.1094
+++ ChangeLog 28 Dec 2013 03:48:25 -0000 1.1095
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1094 2013/12/28 00:25:53 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1095 2013/12/28 03:48:25 dirtyepic Exp $
+
+ 28 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Reintroduce texinfo patch to unbreak older versions (bug #496224).
28 Dec 2013; Robin H. Johnson <robbat2@gentoo.org> flag-o-matic.eclass:
Spelling fixes.
1.612 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.612&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.612&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.611&r2=1.612
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.611
retrieving revision 1.612
diff -u -r1.611 -r1.612
--- toolchain.eclass 27 Dec 2013 22:54:43 -0000 1.611
+++ toolchain.eclass 28 Dec 2013 03:48:25 -0000 1.612
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.611 2013/12/27 22:54:43 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.612 2013/12/28 03:48:25 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -553,6 +553,9 @@
done
sed -i 's|A-Za-z0-9|[:alnum:]|g' "${S}"/gcc/*.awk #215828
+ # Prevent new texinfo from breaking old versions (see #198182, #464008)
+ tc_version_is_at_least 4.1 && epatch "${GCC_FILESDIR}"/gcc-configure-texinfo.patch
+
if [[ -x contrib/gcc_update ]] ; then
einfo "Touching generated files"
./contrib/gcc_update --touch | \
@@ -1150,8 +1153,6 @@
# Disable gcc info regeneration -- it ships with generated info pages
# already. Our custom version/urls/etc... trigger it. #464008
export gcc_cv_prog_makeinfo_modern=no
- # Make sure we don't try to generate pages that don't even exist. #496224
- touch "${S}"/gcc/treelang/treelang.info 2>/dev/null
# Do not let the X detection get in our way. We know things can be found
# via system paths, so no need to hardcode things that'll break multilib.
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-12-28 8:11 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-12-28 8:11 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/12/28 08:11:41
Modified: ChangeLog toolchain.eclass
Log:
Add tc_version_is_between() helper.
Revision Changes Path
1.1096 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1096&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1096&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1095&r2=1.1096
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1095
retrieving revision 1.1096
diff -u -r1.1095 -r1.1096
--- ChangeLog 28 Dec 2013 03:48:25 -0000 1.1095
+++ ChangeLog 28 Dec 2013 08:11:41 -0000 1.1096
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1095 2013/12/28 03:48:25 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1096 2013/12/28 08:11:41 dirtyepic Exp $
+
+ 28 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Add tc_version_is_between() helper.
28 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Reintroduce texinfo patch to unbreak older versions (bug #496224).
1.613 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.613&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.613&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.612&r2=1.613
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.612
retrieving revision 1.613
diff -u -r1.612 -r1.613
--- toolchain.eclass 28 Dec 2013 03:48:25 -0000 1.612
+++ toolchain.eclass 28 Dec 2013 08:11:41 -0000 1.613
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.612 2013/12/28 03:48:25 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.613 2013/12/28 08:11:41 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -51,11 +51,16 @@
}
# General purpose version check. Without a second arg matches up to minor version (x.x.x)
-# (ie. 4.6.0_pre9999 matches 4 or 4.6 or 4.6.0 but not 4.6.1)
tc_version_is_at_least() {
version_is_at_least "$1" "${2:-${GCC_RELEASE_VER}}"
}
+# General purpose version range check
+# Note that it matches up to but NOT including the second version
+tc_version_is_between() {
+ tc_version_is_at_least "${1}" && ! tc_version_is_at_least "${2}"
+}
+
GCC_PV=${TOOLCHAIN_GCC_PV:-${PV}}
GCC_PVR=${GCC_PV}
[[ ${PR} != "r0" ]] && GCC_PVR=${GCC_PVR}-${PR}
@@ -120,7 +125,7 @@
[[ -n ${SPECS_VER} ]] && IUSE+=" nossp"
tc_version_is_at_least 3 && IUSE+=" doc gcj awt hardened multilib objc"
tc_version_is_at_least 4.0 && IUSE+=" objc-gc"
- tc_version_is_at_least 4.0 && ! tc_version_is_at_least 4.9 && IUSE+=" mudflap"
+ tc_version_is_between 4.0 4.9 && IUSE+=" mudflap"
tc_version_is_at_least 4.1 && IUSE+=" libssp objc++"
tc_version_is_at_least 4.2 && IUSE+=" openmp"
tc_version_is_at_least 4.3 && IUSE+=" fixed-point"
@@ -472,7 +477,7 @@
# install the libstdc++ python into the right location
# http://gcc.gnu.org/PR51368
- if tc_version_is_at_least 4.5 && ! tc_version_is_at_least 4.7 ; then
+ if tc_version_is_between 4.5 4.7 ; then
sed -i \
'/^pythondir =/s:=.*:= $(datadir)/python:' \
"${S}"/libstdc++-v3/python/Makefile.in || die
@@ -527,12 +532,12 @@
# In gcc 3.3.x and 3.4.x, rename the java bins to gcc-specific names
# in line with gcc-4.
- if tc_version_is_at_least 3.3 && ! tc_version_is_at_least 4.0 ; then
+ if tc_version_is_between 3.3 4.0 ; then
do_gcc_rename_java_bins
fi
# Prevent libffi from being installed
- if tc_version_is_at_least 3.0 && ! tc_version_is_at_least 4.8 ; then
+ if tc_version_is_between 3.0 4.8 ; then
sed -i -e 's/\(install.*:\) install-.*recursive/\1/' "${S}"/libffi/Makefile.in || die
sed -i -e 's/\(install-data-am:\).*/\1/' "${S}"/libffi/include/Makefile.in || die
fi
@@ -875,7 +880,7 @@
# newer gcc versions like to bootstrap themselves with C++,
# so we need to manually disable it ourselves
- if tc_version_is_at_least 4.7 && ! is_cxx ; then
+ if tc_version_is_between 4.7 4.8 && ! is_cxx ; then
confgcc+=( --disable-build-with-cxx --disable-build-poststage1-with-cxx )
fi
@@ -954,7 +959,7 @@
$(use_enable nptl tls)
)
[[ ${GCCMAJOR}.${GCCMINOR} == 3.3 ]] && confgcc+=( --enable-sjlj-exceptions )
- if tc_version_is_at_least 3.4 && ! tc_version_is_at_least 4.3 ; then
+ if tc_version_is_between 3.4 4.3 ; then
confgcc+=( --enable-clocale=uclibc )
fi
;;
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-12-28 8:52 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-12-28 8:52 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/12/28 08:52:36
Modified: ChangeLog toolchain.eclass
Log:
Use version ranges instead of case statements in gcc_do_filter_flags().
Revision Changes Path
1.1097 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1097&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1097&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1096&r2=1.1097
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1096
retrieving revision 1.1097
diff -u -r1.1096 -r1.1097
--- ChangeLog 28 Dec 2013 08:11:41 -0000 1.1096
+++ ChangeLog 28 Dec 2013 08:52:36 -0000 1.1097
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1096 2013/12/28 08:11:41 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1097 2013/12/28 08:52:36 dirtyepic Exp $
+
+ 28 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Use version ranges instead of case statements in gcc_do_filter_flags().
28 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Add tc_version_is_between() helper.
1.614 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.614&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.614&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.613&r2=1.614
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.613
retrieving revision 1.614
diff -u -r1.613 -r1.614
--- toolchain.eclass 28 Dec 2013 08:11:41 -0000 1.613
+++ toolchain.eclass 28 Dec 2013 08:52:36 -0000 1.614
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.613 2013/12/28 08:11:41 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.614 2013/12/28 08:52:36 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1195,7 +1195,6 @@
gcc_do_filter_flags() {
strip-flags
-
replace-flags -O? -O2
# dont want to funk ourselves
@@ -1203,66 +1202,58 @@
filter-flags '-frecord-gcc-switches' # 490738
- case ${GCC_BRANCH_VER} in
- 3.2|3.3)
- replace-cpu-flags k8 athlon64 opteron x86-64
- replace-cpu-flags pentium-m pentium3m pentium3
- replace-cpu-flags G3 750
- replace-cpu-flags G4 7400
- replace-cpu-flags G5 7400
+ if tc_version_is_between 3.2 3.4 ; then
+ # XXX: this is so outdated it's barely useful, but it don't hurt...
+ replace-cpu-flags k8 athlon64 opteron x86-64
+ replace-cpu-flags pentium-m pentium3m pentium3
+ replace-cpu-flags G3 750
+ replace-cpu-flags G4 7400
+ replace-cpu-flags G5 7400
- case $(tc-arch) in
- amd64)
- replace-cpu-flags core2 nocona
- filter-flags '-mtune=*'
- ;;
- x86)
- replace-cpu-flags core2 prescott
- filter-flags '-mtune=*'
- ;;
- esac
+ case $(tc-arch) in
+ amd64)
+ replace-cpu-flags core2 nocona
+ filter-flags '-mtune=*'
+ ;;
+ x86)
+ replace-cpu-flags core2 prescott
+ filter-flags '-mtune=*'
+ ;;
+ esac
- # XXX: should add a sed or something to query all supported flags
- # from the gcc source and trim everything else ...
- filter-flags -f{no-,}unit-at-a-time -f{no-,}web -mno-tls-direct-seg-refs
- filter-flags -f{no-,}stack-protector{,-all}
- filter-flags -fvisibility-inlines-hidden -fvisibility=hidden
- ;;
- 3.4|4.*)
- case $(tc-arch) in
- amd64|x86)
- filter-flags '-mcpu=*'
- ;;
- alpha)
- # https://bugs.gentoo.org/454426
- append-ldflags -Wl,--no-relax
- ;;
- sparc)
- # temporary workaround for random ICEs reproduced by multiple users
- # https://bugs.gentoo.org/457062
- [[ ${GCC_BRANCH_VER} == 4.6 || ${GCC_BRANCH_VER} == 4.7 ]] && \
- MAKEOPTS+=" -j1"
- ;;
- *-macos)
- # http://gcc.gnu.org/PR25127
- [[ ${GCC_BRANCH_VER} == 4.0 || ${GCC_BRANCH_VER} == 4.1 ]] && \
- filter-flags '-mcpu=*' '-march=*' '-mtune=*'
- ;;
- esac
- ;;
- esac
+ # XXX: should add a sed or something to query all supported flags
+ # from the gcc source and trim everything else ...
+ filter-flags -f{no-,}unit-at-a-time -f{no-,}web -mno-tls-direct-seg-refs
+ filter-flags -f{no-,}stack-protector{,-all}
+ filter-flags -fvisibility-inlines-hidden -fvisibility=hidden
+ fi
- case ${GCC_BRANCH_VER} in
- 4.6)
- case $(tc-arch) in
- amd64|x86)
+ if tc_version_is_at_least 3.4 ; then
+ case $(tc-arch) in
+ amd64|x86)
+ filter-flags '-mcpu=*'
+ if tc_version_is_between 4.6 4.7 ; then
# https://bugs.gentoo.org/411333
# https://bugs.gentoo.org/466454
replace-cpu-flags c3-2 pentium2 pentium3 pentium3m pentium-m i686
- ;;
- esac
- ;;
- esac
+ fi
+ ;;
+ alpha)
+ # https://bugs.gentoo.org/454426
+ append-ldflags -Wl,--no-relax
+ ;;
+ sparc)
+ # temporary workaround for random ICEs reproduced by multiple users
+ # https://bugs.gentoo.org/457062
+ tc_version_is_between 4.6 4.8 && MAKEOPTS+=" -j1"
+ ;;
+ *-macos)
+ # http://gcc.gnu.org/PR25127
+ tc_version_is_between 4.0 4.2 && \
+ filter-flags '-mcpu=*' '-march=*' '-mtune=*'
+ ;;
+ esac
+ fi
strip-unsupported-flags
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-12-28 9:12 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-12-28 9:12 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/12/28 09:12:39
Modified: ChangeLog toolchain.eclass
Log:
Missed one.
Revision Changes Path
1.1098 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1098&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1098&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1097&r2=1.1098
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1097
retrieving revision 1.1098
diff -u -r1.1097 -r1.1098
--- ChangeLog 28 Dec 2013 08:52:36 -0000 1.1097
+++ ChangeLog 28 Dec 2013 09:12:39 -0000 1.1098
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1097 2013/12/28 08:52:36 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1098 2013/12/28 09:12:39 dirtyepic Exp $
+
+ 28 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Missed one.
28 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
Use version ranges instead of case statements in gcc_do_filter_flags().
1.615 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.615&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.615&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.614&r2=1.615
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.614
retrieving revision 1.615
diff -u -r1.614 -r1.615
--- toolchain.eclass 28 Dec 2013 08:52:36 -0000 1.614
+++ toolchain.eclass 28 Dec 2013 09:12:39 -0000 1.615
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.614 2013/12/28 08:52:36 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.615 2013/12/28 09:12:39 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -958,7 +958,7 @@
--disable-__cxa_atexit
$(use_enable nptl tls)
)
- [[ ${GCCMAJOR}.${GCCMINOR} == 3.3 ]] && confgcc+=( --enable-sjlj-exceptions )
+ tc_version_is_between 3.3 3.4 && confgcc+=( --enable-sjlj-exceptions )
if tc_version_is_between 3.4 4.3 ; then
confgcc+=( --enable-clocale=uclibc )
fi
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2013-12-30 3:24 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2013-12-30 3:24 UTC (permalink / raw
To: gentoo-commits
dirtyepic 13/12/30 03:24:05
Modified: ChangeLog toolchain.eclass
Log:
For 4.8+ C++ is always enabled. We should eventually drop the cxx USE flag,
but who knows what that would break.
Revision Changes Path
1.1103 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1103&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1103&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1102&r2=1.1103
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1102
retrieving revision 1.1103
diff -u -r1.1102 -r1.1103
--- ChangeLog 29 Dec 2013 21:39:51 -0000 1.1102
+++ ChangeLog 30 Dec 2013 03:24:04 -0000 1.1103
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1102 2013/12/29 21:39:51 dilfridge Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1103 2013/12/30 03:24:04 dirtyepic Exp $
+
+ 30 Dec 2013; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ For 4.8+ C++ is always enabled. We should eventually drop the cxx USE flag,
+ but who knows what that would break.
29 Dec 2013; Andreas K. Huettel <dilfridge@gentoo.org> perl-app.eclass:
Do not use subslots on dev-lang/perl in perl apps (as opposed to modules)
1.616 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.616&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.616&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.615&r2=1.616
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.615
retrieving revision 1.616
diff -u -r1.615 -r1.616
--- toolchain.eclass 28 Dec 2013 09:12:39 -0000 1.615
+++ toolchain.eclass 30 Dec 2013 03:24:04 -0000 1.616
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.615 2013/12/28 09:12:39 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.616 2013/12/30 03:24:04 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1932,6 +1932,7 @@
is_cxx() {
gcc-lang-supported 'c++' || return 1
+ tc_version_is_at_least 4.8 && return 0
use cxx
}
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-01-10 13:59 Magnus Granberg (zorry)
0 siblings, 0 replies; 58+ messages in thread
From: Magnus Granberg (zorry) @ 2014-01-10 13:59 UTC (permalink / raw
To: gentoo-commits
zorry 14/01/10 13:59:44
Modified: ChangeLog toolchain.eclass
Log:
Add support for default ssp on >=gcc-4.8.2 #484714
Revision Changes Path
1.1111 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1111&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1111&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1110&r2=1.1111
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1110
retrieving revision 1.1111
diff -u -r1.1110 -r1.1111
--- ChangeLog 8 Jan 2014 08:38:10 -0000 1.1110
+++ ChangeLog 10 Jan 2014 13:59:44 -0000 1.1111
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1110 2014/01/08 08:38:10 patrick Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1111 2014/01/10 13:59:44 zorry Exp $
+
+ 10 Jan 2014; Magnus Granberg <zorry@gentoo.org> toolchain.eclass:
+ Add support for default ssp on >=gcc-4.8.2 #484714
08 Jan 2014; Patrick Lauer <patrick@gentoo.org> apache-2.eclass,
python-utils-r1.eclass:
1.619 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.619&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.619&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.618&r2=1.619
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.618
retrieving revision 1.619
diff -u -r1.618 -r1.619
--- toolchain.eclass 31 Dec 2013 00:33:43 -0000 1.618
+++ toolchain.eclass 10 Jan 2014 13:59:44 -0000 1.619
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.618 2013/12/31 00:33:43 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.619 2014/01/10 13:59:44 zorry Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -473,7 +473,9 @@
do_gcc_PIE_patches
epatch_user
- use hardened && make_gcc_hard
+ if ( tc_version_is_at_least 4.8.2 || use hardened ) && ! use vanilla ; then
+ make_gcc_hard
+ fi
# install the libstdc++ python into the right location
# http://gcc.gnu.org/PR51368
@@ -606,6 +608,12 @@
epatch "${WORKDIR}"/piepatch/def
fi
+ BRANDING_GCC_PKGVERSION="${BRANDING_GCC_PKGVERSION}, pie-${PIE_VER}"
+}
+
+# configure to build with the hardened GCC specs as the default
+make_gcc_hard() {
+
# we want to be able to control the pie patch logic via something other
# than ALL_CFLAGS...
sed -e '/^ALL_CFLAGS/iHARD_CFLAGS = ' \
@@ -618,38 +626,38 @@
-i "${S}"/gcc/Makefile.in
fi
- BRANDING_GCC_PKGVERSION="${BRANDING_GCC_PKGVERSION}, pie-${PIE_VER}"
-}
-
-# configure to build with the hardened GCC specs as the default
-make_gcc_hard() {
- # defaults to enable for all hardened toolchains
- local gcc_hard_flags="-DEFAULT_RELRO -DEFAULT_BIND_NOW"
-
- if hardened_gcc_works ; then
- einfo "Updating gcc to use automatic PIE + SSP building ..."
- gcc_hard_flags+=" -DEFAULT_PIE_SSP"
- elif hardened_gcc_works pie ; then
- einfo "Updating gcc to use automatic PIE building ..."
- ewarn "SSP has not been enabled by default"
- gcc_hard_flags+=" -DEFAULT_PIE"
- elif hardened_gcc_works ssp ; then
- einfo "Updating gcc to use automatic SSP building ..."
- ewarn "PIE has not been enabled by default"
- gcc_hard_flags+=" -DEFAULT_SSP"
+ # defaults to enable for all toolchains
+ local gcc_hard_flags=""
+ if use hardened ; then
+ if hardened_gcc_works ; then
+ einfo "Updating gcc to use automatic PIE + SSP building ..."
+ gcc_hard_flags+=" -DEFAULT_PIE_SSP"
+ elif hardened_gcc_works pie ; then
+ einfo "Updating gcc to use automatic PIE building ..."
+ ewarn "SSP has not been enabled by default"
+ gcc_hard_flags+=" -DEFAULT_PIE"
+ elif hardened_gcc_works ssp ; then
+ einfo "Updating gcc to use automatic SSP building ..."
+ ewarn "PIE has not been enabled by default"
+ gcc_hard_flags+=" -DEFAULT_SSP"
+ else
+ # do nothing if hardened is't supported, but don't die either
+ ewarn "hardened is not supported for this arch in this gcc version"
+ return 0
+ fi
+ # rebrand to make bug reports easier
+ BRANDING_GCC_PKGVERSION=${BRANDING_GCC_PKGVERSION/Gentoo/Gentoo Hardened}
else
- # do nothing if hardened isnt supported, but dont die either
- ewarn "hardened is not supported for this arch in this gcc version"
- ebeep
- return 0
+ if hardened_gcc_works ssp ; then
+ einfo "Updating gcc to use automatic SSP building ..."
+ gcc_hard_flags+=" -DEFAULT_SSP"
+ fi
fi
sed -i \
-e "/^HARD_CFLAGS = /s|=|= ${gcc_hard_flags} |" \
"${S}"/gcc/Makefile.in || die
- # rebrand to make bug reports easier
- BRANDING_GCC_PKGVERSION=${BRANDING_GCC_PKGVERSION/Gentoo/Gentoo Hardened}
}
# This is a historical wart. The original Gentoo/amd64 port used:
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-01-13 6:02 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2014-01-13 6:02 UTC (permalink / raw
To: gentoo-commits
dirtyepic 14/01/13 06:02:35
Modified: ChangeLog toolchain.eclass
Log:
Add EAPI 0 compatible USE defaults (bug #372663).
Revision Changes Path
1.1112 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1112&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1112&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1111&r2=1.1112
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1111
retrieving revision 1.1112
diff -u -r1.1111 -r1.1112
--- ChangeLog 10 Jan 2014 13:59:44 -0000 1.1111
+++ ChangeLog 13 Jan 2014 06:02:35 -0000 1.1112
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1111 2014/01/10 13:59:44 zorry Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1112 2014/01/13 06:02:35 dirtyepic Exp $
+
+ 13 Jan 2014; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Add EAPI 0 compatible USE defaults (bug #372663).
10 Jan 2014; Magnus Granberg <zorry@gentoo.org> toolchain.eclass:
Add support for default ssp on >=gcc-4.8.2 #484714
1.620 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.620&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.620&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.619&r2=1.620
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.619
retrieving revision 1.620
diff -u -r1.619 -r1.620
--- toolchain.eclass 10 Jan 2014 13:59:44 -0000 1.619
+++ toolchain.eclass 13 Jan 2014 06:02:35 -0000 1.620
@@ -1,6 +1,6 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.619 2014/01/10 13:59:44 zorry Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.620 2014/01/13 06:02:35 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -115,10 +115,12 @@
#---->> SLOT+IUSE logic <<----
-IUSE="multislot nls nptl regression-test vanilla"
+IUSE="multislot regression-test vanilla"
+IUSE_DEF="nls nptl"
if [[ ${PN} != "kgcc64" && ${PN} != gcc-* ]] ; then
- IUSE+=" altivec cxx fortran"
+ IUSE+=" altivec"
+ IUSE_DEF+=" cxx fortran"
[[ -n ${PIE_VER} ]] && IUSE+=" nopie"
[[ -n ${HTB_VER} ]] && IUSE+=" boundschecking"
[[ -n ${D_VER} ]] && IUSE+=" d"
@@ -127,12 +129,15 @@
tc_version_is_at_least 4.0 && IUSE+=" objc-gc"
tc_version_is_between 4.0 4.9 && IUSE+=" mudflap"
tc_version_is_at_least 4.1 && IUSE+=" libssp objc++"
- tc_version_is_at_least 4.2 && IUSE+=" openmp"
+ tc_version_is_at_least 4.2 && IUSE_DEF+=" openmp"
tc_version_is_at_least 4.3 && IUSE+=" fixed-point"
tc_version_is_at_least 4.6 && IUSE+=" graphite"
tc_version_is_at_least 4.7 && IUSE+=" go"
fi
+[[ ${EAPI:-0} != 0 ]] && IUSE_DEF="+${IUSE_DEF// / +}"
+IUSE+=" ${IUSE_DEF}"
+
# Support upgrade paths here or people get pissed
if use multislot ; then
SLOT="${GCC_CONFIG_VER}"
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-01-24 4:13 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2014-01-24 4:13 UTC (permalink / raw
To: gentoo-commits
dirtyepic 14/01/24 04:13:58
Modified: ChangeLog toolchain.eclass
Log:
Work around bug #357287.
Revision Changes Path
1.1128 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1128&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1128&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1127&r2=1.1128
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1127
retrieving revision 1.1128
diff -u -r1.1127 -r1.1128
--- ChangeLog 19 Jan 2014 21:13:08 -0000 1.1127
+++ ChangeLog 24 Jan 2014 04:13:58 -0000 1.1128
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1127 2014/01/19 21:13:08 moult Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1128 2014/01/24 04:13:58 dirtyepic Exp $
+
+ 24 Jan 2014; Ryan Hill <dirtyepic@gentoo.org> toolchain.eclass:
+ Work around bug #357287.
19 Jan 2014; Dion Moult <moult@gentoo.org> gtk-sharp-module.eclass:
Change virtual/monodoc dependency to dev-lang/mono as the former is being
1.621 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.621&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.621&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.620&r2=1.621
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.620
retrieving revision 1.621
diff -u -r1.620 -r1.621
--- toolchain.eclass 13 Jan 2014 06:02:35 -0000 1.620
+++ toolchain.eclass 24 Jan 2014 04:13:58 -0000 1.621
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.620 2014/01/13 06:02:35 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.621 2014/01/24 04:13:58 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1245,6 +1245,9 @@
case $(tc-arch) in
amd64|x86)
filter-flags '-mcpu=*'
+
+ tc_version_is_between 4.4 4.5 && append-flags -mno-avx # 357287
+
if tc_version_is_between 4.6 4.7 ; then
# https://bugs.gentoo.org/411333
# https://bugs.gentoo.org/466454
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-02-02 23:43 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2014-02-02 23:43 UTC (permalink / raw
To: gentoo-commits
dirtyepic 14/02/02 23:43:49
Modified: ChangeLog toolchain.eclass
Log:
Add downgrade_arch_flags() to automatically replace/strip unsupported -march
and instruction set flags. Add testsuite.
Revision Changes Path
1.1136 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1136&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1136&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1135&r2=1.1136
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1135
retrieving revision 1.1136
diff -u -r1.1135 -r1.1136
--- ChangeLog 2 Feb 2014 12:15:05 -0000 1.1135
+++ ChangeLog 2 Feb 2014 23:43:48 -0000 1.1136
@@ -1,6 +1,11 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1135 2014/02/02 12:15:05 hasufell Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1136 2014/02/02 23:43:48 dirtyepic Exp $
+
+ 02 Feb 2014; Ryan Hill <dirtyepic@gentoo.org> +tests/toolchain.sh,
+ toolchain.eclass:
+ Add downgrade_arch_flags() to automatically replace/strip unsupported -march
+ and instruction set flags. Add testsuite.
02 Feb 2014; Julian Ospald <hasufell@gentoo.org> games.eclass:
respect ECONF_SOURCE wrt #494210
1.622 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.622&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.622&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.621&r2=1.622
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.621
retrieving revision 1.622
diff -u -r1.621 -r1.622
--- toolchain.eclass 24 Jan 2014 04:13:58 -0000 1.621
+++ toolchain.eclass 2 Feb 2014 23:43:48 -0000 1.622
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.621 2014/01/24 04:13:58 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.622 2014/02/02 23:43:48 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -770,6 +770,7 @@
#---->> src_configure <<----
toolchain_src_configure() {
+ downgrade_arch_flags
gcc_do_filter_flags
einfo "CFLAGS=\"${CFLAGS}\""
@@ -1206,6 +1207,129 @@
popd > /dev/null
}
+# Replace -m flags unsupported by the version being built with the best
+# available equivalent
+downgrade_arch_flags() {
+ local arch bver i isa myarch mytune rep ver
+
+ bver=${1:-${GCC_BRANCH_VER}}
+ [[ $(gcc-version) < ${bver} ]] && return 0
+
+ myarch=$(get-flag march)
+ mytune=$(get-flag mtune)
+
+ # If -march=native isn't supported we have to tease out the actual arch
+ if [[ ${myarch} == native || ${mytune} == native ]] ; then
+ if [[ ${bver} < "4.2" ]] ; then
+ arch=$(echo "" | $(tc-getCC) -march=native -v -E - 2>&1 \
+ | grep cc1 | sed -e 's:.*-march=\([^ ]*\).*:\1:')
+ replace-cpu-flags native ${arch}
+ fi
+ fi
+
+ # Handle special -mtune flags
+ [[ ${mytune} == intel && ${bver} < "4.9" ]] && replace-cpu-flags intel generic
+ [[ ${mytune} == generic && ${bver} < "4.2" ]] && filter-flags '-mtune=*'
+ [[ ${mytune} == x86-64 ]] && filter-flags '-mtune=*'
+
+ declare -a archlist
+ # "arch" "added" "replacement"
+ archlist=("bdver4 4.9 bdver3")
+ archlist+=("bonnell 4.9 atom")
+ archlist+=("broadwell 4.9 core-avx2")
+ archlist+=("haswell 4.9 core-avx2")
+ archlist+=("ivybridge 4.9 core-avx-i")
+ archlist+=("nehalem 4.9 corei7")
+ archlist+=("sandybridge 4.9 corei7-avx")
+ archlist+=("silvermont 4.9 corei7")
+ archlist+=("westmere 4.9 corei7")
+ archlist+=("bdver3 4.8 bdver2")
+ archlist+=("btver2 4.8 btver1")
+ archlist+=("bdver2 4.7 bdver1")
+ archlist+=("core-avx2 4.7 core-avx-i")
+ archlist+=("bdver1 4.6 amdfam10")
+ archlist+=("btver1 4.6 amdfam10")
+ archlist+=("core-avx-i 4.6 core2")
+ archlist+=("corei7 4.6 core2")
+ archlist+=("corei7-avx 4.6 core2")
+ archlist+=("atom 4.5 core2")
+ archlist+=("amdfam10 4.3 k8")
+ archlist+=("athlon64-sse3 4.3 k8")
+ archlist+=("barcelona 4.3 k8")
+ archlist+=("core2 4.3 nocona")
+ archlist+=("geode 4.3 k6-2") # gcc.gnu.org/PR41989#c22
+ archlist+=("k8-sse3 4.3 k8")
+ archlist+=("opteron-sse3 4.3 k8")
+ archlist+=("athlon-fx 3.4 x86-64")
+ archlist+=("athlon64 3.4 x86-64")
+ archlist+=("c3-2 3.4 c3")
+ archlist+=("k8 3.4 x86-64")
+ archlist+=("opteron 3.4 x86-64")
+ archlist+=("pentium-m 3.4 pentium3")
+ archlist+=("pentium3m 3.4 pentium3")
+ archlist+=("pentium4m 3.4 pentium4")
+
+ myarch=$(get-flag march)
+ mytune=$(get-flag mtune)
+
+ for ((i=0; i < ${#archlist[@]}; i++)) ; do
+ arch=${archlist[i]%% *}
+ ver=${archlist[i]#* } ver=${ver% *}
+ rep=${archlist[i]##* }
+
+ [[ ${myarch} != ${arch} ]] && [[ ${mytune} != ${arch} ]] && continue
+
+ if [[ ${ver} > ${bver} ]] ; then
+ einfo "Replacing ${myarch} (added in ${ver}) with ${rep}..."
+ [[ ${myarch} == ${arch} ]] && replace-cpu-flags ${myarch} ${rep}
+ [[ ${mytune} == ${arch} ]] && replace-cpu-flags ${mytune} ${rep}
+ downgrade_arch_flags ${1:-${GCC_BRANCH_VER}}
+ break
+ else
+ break
+ fi
+ done
+
+ declare -a isalist
+ isalist=("-msha 4.9")
+ isalist+=("-mavx512pf 4.9")
+ isalist+=("-mavx512f 4.9")
+ isalist+=("-mavx512er 4.9")
+ isalist+=("-mavx512cd 4.9")
+ isalist+=("-mxsaveopt 4.8")
+ isalist+=("-mxsave 4.8")
+ isalist+=("-mrtm 4.8")
+ isalist+=("-mfxsr 4.8")
+ isalist+=("-mlzcnt 4.7")
+ isalist+=("-mbmi2 4.7")
+ isalist+=("-mavx2 4.7")
+ isalist+=("-mtbm 4.6")
+ isalist+=("-mrdrnd 4.6")
+ isalist+=("-mfsgsbase 4.6")
+ isalist+=("-mf16c 4.6")
+ isalist+=("-mbmi 4.6")
+ isalist+=("-mxop 4.5")
+ isalist+=("-mlwp 4.5")
+ isalist+=("-mfma4 4.5")
+ isalist+=("-mpclmul 4.4")
+ isalist+=("-mfma 4.4")
+ isalist+=("-mavx 4.4")
+ isalist+=("-maes 4.4")
+ isalist+=("-mssse3 4.3")
+ isalist+=("-msse4a 4.3")
+ isalist+=("-msse4 4.3")
+ isalist+=("-msse4.2 4.3")
+ isalist+=("-msse4.1 4.3")
+ isalist+=("-mpopcnt 4.3")
+ isalist+=("-mabm 4.3")
+
+ for ((i=0; i < ${#isalist[@]}; i++)) ; do
+ isa=${isalist[i]%% *}
+ ver=${isalist[i]##* }
+ [[ ${ver} > ${bver} ]] && filter-flags ${isa} ${isa/-m/-mno-}
+ done
+}
+
gcc_do_filter_flags() {
strip-flags
replace-flags -O? -O2
@@ -1217,23 +1341,10 @@
if tc_version_is_between 3.2 3.4 ; then
# XXX: this is so outdated it's barely useful, but it don't hurt...
- replace-cpu-flags k8 athlon64 opteron x86-64
- replace-cpu-flags pentium-m pentium3m pentium3
replace-cpu-flags G3 750
replace-cpu-flags G4 7400
replace-cpu-flags G5 7400
- case $(tc-arch) in
- amd64)
- replace-cpu-flags core2 nocona
- filter-flags '-mtune=*'
- ;;
- x86)
- replace-cpu-flags core2 prescott
- filter-flags '-mtune=*'
- ;;
- esac
-
# XXX: should add a sed or something to query all supported flags
# from the gcc source and trim everything else ...
filter-flags -f{no-,}unit-at-a-time -f{no-,}web -mno-tls-direct-seg-refs
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-02-05 6:18 Ryan Hill (dirtyepic)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (dirtyepic) @ 2014-02-05 6:18 UTC (permalink / raw
To: gentoo-commits
dirtyepic 14/02/05 06:18:29
Modified: ChangeLog toolchain.eclass
Log:
Limit downgrading flags to amd64 and x86. Strip -mtune for < 3.4. Only
worry about -mno* flags, -m* are removed by strip-flags. Add -mno-movbe.
Revision Changes Path
1.1137 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1137&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1137&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1136&r2=1.1137
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1136
retrieving revision 1.1137
diff -u -r1.1136 -r1.1137
--- ChangeLog 2 Feb 2014 23:43:48 -0000 1.1136
+++ ChangeLog 5 Feb 2014 06:18:29 -0000 1.1137
@@ -1,6 +1,11 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1136 2014/02/02 23:43:48 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1137 2014/02/05 06:18:29 dirtyepic Exp $
+
+ 05 Feb 2014; Ryan Hill <dirtyepic@gentoo.org> tests/toolchain.sh,
+ toolchain.eclass:
+ Limit downgrading flags to amd64 and x86. Strip -mtune for < 3.4. Only
+ worry about -mno* flags, -m* are removed by strip-flags. Add -mno-movbe.
02 Feb 2014; Ryan Hill <dirtyepic@gentoo.org> +tests/toolchain.sh,
toolchain.eclass:
1.623 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.623&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.623&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.622&r2=1.623
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.622
retrieving revision 1.623
diff -u -r1.622 -r1.623
--- toolchain.eclass 2 Feb 2014 23:43:48 -0000 1.622
+++ toolchain.eclass 5 Feb 2014 06:18:29 -0000 1.623
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.622 2014/02/02 23:43:48 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.623 2014/02/05 06:18:29 dirtyepic Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1214,13 +1214,14 @@
bver=${1:-${GCC_BRANCH_VER}}
[[ $(gcc-version) < ${bver} ]] && return 0
+ [[ $(tc-arch) != amd64 && $(tc-arch) != x86 ]] && return 0
myarch=$(get-flag march)
mytune=$(get-flag mtune)
# If -march=native isn't supported we have to tease out the actual arch
if [[ ${myarch} == native || ${mytune} == native ]] ; then
- if [[ ${bver} < "4.2" ]] ; then
+ if [[ ${bver} < 4.2 ]] ; then
arch=$(echo "" | $(tc-getCC) -march=native -v -E - 2>&1 \
| grep cc1 | sed -e 's:.*-march=\([^ ]*\).*:\1:')
replace-cpu-flags native ${arch}
@@ -1228,9 +1229,10 @@
fi
# Handle special -mtune flags
- [[ ${mytune} == intel && ${bver} < "4.9" ]] && replace-cpu-flags intel generic
- [[ ${mytune} == generic && ${bver} < "4.2" ]] && filter-flags '-mtune=*'
+ [[ ${mytune} == intel && ${bver} < 4.9 ]] && replace-cpu-flags intel generic
+ [[ ${mytune} == generic && ${bver} < 4.2 ]] && filter-flags '-mtune=*'
[[ ${mytune} == x86-64 ]] && filter-flags '-mtune=*'
+ [[ ${bver} < 3.4 ]] && filter-flags '-mtune=*'
declare -a archlist
# "arch" "added" "replacement"
@@ -1277,7 +1279,7 @@
ver=${archlist[i]#* } ver=${ver% *}
rep=${archlist[i]##* }
- [[ ${myarch} != ${arch} ]] && [[ ${mytune} != ${arch} ]] && continue
+ [[ ${myarch} != ${arch} && ${mytune} != ${arch} ]] && continue
if [[ ${ver} > ${bver} ]] ; then
einfo "Replacing ${myarch} (added in ${ver}) with ${rep}..."
@@ -1291,42 +1293,44 @@
done
declare -a isalist
- isalist=("-msha 4.9")
- isalist+=("-mavx512pf 4.9")
- isalist+=("-mavx512f 4.9")
- isalist+=("-mavx512er 4.9")
- isalist+=("-mavx512cd 4.9")
- isalist+=("-mxsaveopt 4.8")
- isalist+=("-mxsave 4.8")
- isalist+=("-mrtm 4.8")
- isalist+=("-mfxsr 4.8")
- isalist+=("-mlzcnt 4.7")
- isalist+=("-mbmi2 4.7")
- isalist+=("-mavx2 4.7")
- isalist+=("-mtbm 4.6")
- isalist+=("-mrdrnd 4.6")
- isalist+=("-mfsgsbase 4.6")
- isalist+=("-mf16c 4.6")
- isalist+=("-mbmi 4.6")
- isalist+=("-mxop 4.5")
- isalist+=("-mlwp 4.5")
- isalist+=("-mfma4 4.5")
- isalist+=("-mpclmul 4.4")
- isalist+=("-mfma 4.4")
- isalist+=("-mavx 4.4")
- isalist+=("-maes 4.4")
- isalist+=("-mssse3 4.3")
- isalist+=("-msse4a 4.3")
- isalist+=("-msse4 4.3")
- isalist+=("-msse4.2 4.3")
- isalist+=("-msse4.1 4.3")
- isalist+=("-mpopcnt 4.3")
- isalist+=("-mabm 4.3")
+ # we only check -mno* here since -m* get removed by strip-flags later on
+ isalist=("-mno-sha 4.9")
+ isalist+=("-mno-avx512pf 4.9")
+ isalist+=("-mno-avx512f 4.9")
+ isalist+=("-mno-avx512er 4.9")
+ isalist+=("-mno-avx512cd 4.9")
+ isalist+=("-mno-xsaveopt 4.8")
+ isalist+=("-mno-xsave 4.8")
+ isalist+=("-mno-rtm 4.8")
+ isalist+=("-mno-fxsr 4.8")
+ isalist+=("-mno-lzcnt 4.7")
+ isalist+=("-mno-bmi2 4.7")
+ isalist+=("-mno-avx2 4.7")
+ isalist+=("-mno-tbm 4.6")
+ isalist+=("-mno-rdrnd 4.6")
+ isalist+=("-mno-fsgsbase 4.6")
+ isalist+=("-mno-f16c 4.6")
+ isalist+=("-mno-bmi 4.6")
+ isalist+=("-mno-xop 4.5")
+ isalist+=("-mno-movbe 4.5")
+ isalist+=("-mno-lwp 4.5")
+ isalist+=("-mno-fma4 4.5")
+ isalist+=("-mno-pclmul 4.4")
+ isalist+=("-mno-fma 4.4")
+ isalist+=("-mno-avx 4.4")
+ isalist+=("-mno-aes 4.4")
+ isalist+=("-mno-ssse3 4.3")
+ isalist+=("-mno-sse4a 4.3")
+ isalist+=("-mno-sse4 4.3")
+ isalist+=("-mno-sse4.2 4.3")
+ isalist+=("-mno-sse4.1 4.3")
+ isalist+=("-mno-popcnt 4.3")
+ isalist+=("-mno-abm 4.3")
for ((i=0; i < ${#isalist[@]}; i++)) ; do
isa=${isalist[i]%% *}
ver=${isalist[i]##* }
- [[ ${ver} > ${bver} ]] && filter-flags ${isa} ${isa/-m/-mno-}
+ [[ ${ver} > ${bver} ]] && filter-flags ${isa}
done
}
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-03-16 18:38 Ryan Hill (rhill)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (rhill) @ 2014-03-16 18:38 UTC (permalink / raw
To: gentoo-commits
rhill 14/03/16 18:38:37
Modified: ChangeLog toolchain.eclass
Log:
Update my src_uri.
Revision Changes Path
1.1177 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1177&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1177&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1176&r2=1.1177
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1176
retrieving revision 1.1177
diff -u -r1.1176 -r1.1177
--- ChangeLog 13 Mar 2014 08:10:46 -0000 1.1176
+++ ChangeLog 16 Mar 2014 18:38:37 -0000 1.1177
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1176 2014/03/13 08:10:46 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1177 2014/03/16 18:38:37 rhill Exp $
+
+ 16 Mar 2014; Ryan Hill <rhill@gentoo.org> toolchain.eclass:
+ Update my src_uri.
13 Mar 2014; Michał Górny <mgorny@gentoo.org> python-utils-r1.eclass:
Add python_doexe() and python_newexe() to handle implementation-specific
1.624 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.624&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.624&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.623&r2=1.624
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.623
retrieving revision 1.624
diff -u -r1.623 -r1.624
--- toolchain.eclass 5 Feb 2014 06:18:29 -0000 1.623
+++ toolchain.eclass 16 Mar 2014 18:38:37 -0000 1.624
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.623 2014/02/05 06:18:29 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.624 2014/03/16 18:38:37 rhill Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -224,7 +224,7 @@
)
gentoo_urls() {
- local devspace="HTTP~vapier/dist/URI HTTP~dirtyepic/dist/URI
+ local devspace="HTTP~vapier/dist/URI HTTP~rhill/dist/URI
HTTP~halcy0n/patches/URI HTTP~zorry/patches/gcc/URI"
devspace=${devspace//HTTP/http:\/\/dev.gentoo.org\/}
echo mirror://gentoo/$1 ${devspace//URI/$1}
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-05-15 5:18 Ryan Hill (rhill)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (rhill) @ 2014-05-15 5:18 UTC (permalink / raw
To: gentoo-commits
rhill 14/05/15 05:18:33
Modified: ChangeLog toolchain.eclass
Log:
Allow parallel profiledbootstrap in newer versions (bug #508878 by Eric F.
Garioud). Clean up a bit.
Revision Changes Path
1.1254 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1254&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1254&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1253&r2=1.1254
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1253
retrieving revision 1.1254
diff -u -r1.1253 -r1.1254
--- ChangeLog 15 May 2014 03:18:47 -0000 1.1253
+++ ChangeLog 15 May 2014 05:18:33 -0000 1.1254
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1253 2014/05/15 03:18:47 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1254 2014/05/15 05:18:33 rhill Exp $
+
+ 15 May 2014; Ryan Hill <rhill@gentoo.org> toolchain.eclass:
+ Allow parallel profiledbootstrap in newer versions (bug #508878 by Eric F.
+ Garioud). Clean up a bit.
14 May 2014; Brian Evans <grknight@gentoo.org>
mysql-cmake.eclass, mysql-v2.eclass:
1.625 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.625&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.625&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.624&r2=1.625
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.624
retrieving revision 1.625
diff -u -r1.624 -r1.625
--- toolchain.eclass 16 Mar 2014 18:38:37 -0000 1.624
+++ toolchain.eclass 15 May 2014 05:18:33 -0000 1.625
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.624 2014/03/16 18:38:37 rhill Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.625 2014/05/15 05:18:33 rhill Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1472,20 +1472,19 @@
[[ ! -x /usr/bin/perl ]] \
&& find "${WORKDIR}"/build -name '*.[17]' | xargs touch
- einfo "Compiling ${PN} ..."
gcc_do_make ${GCC_MAKE_TARGET}
}
gcc_do_make() {
# This function accepts one optional argument, the make target to be used.
# If omitted, gcc_do_make will try to guess whether it should use all,
- # profiledbootstrap, or bootstrap-lean depending on CTARGET and arch. An
- # example of how to use this function:
+ # or bootstrap-lean depending on CTARGET and arch.
+ # An example of how to use this function:
#
# gcc_do_make all-target-libstdc++-v3
- #
- # Set make target to $1 if passed
+
[[ -n ${1} ]] && GCC_MAKE_TARGET=${1}
+
# default target
if is_crosscompile || tc-is-cross-compiler ; then
# 3 stage bootstrapping doesnt quite work when you cant run the
@@ -1495,13 +1494,11 @@
GCC_MAKE_TARGET=${GCC_MAKE_TARGET-bootstrap-lean}
fi
- # the gcc docs state that parallel make isnt supported for the
- # profiledbootstrap target, as collisions in profile collecting may occur.
+ # Older versions of GCC could not do profiledbootstrap in parallel due to
+ # collisions with profiling info.
# boundschecking also seems to introduce parallel build issues.
- if [[ ${GCC_MAKE_TARGET} == "profiledbootstrap" ]] ||
- use_if_iuse boundschecking
- then
- export MAKEOPTS="${MAKEOPTS} -j1"
+ if [[ ${GCC_MAKE_TARGET} == "profiledbootstrap" ]] || use_if_iuse boundschecking ; then
+ ! tc_version_is_at_least 4.6 && export MAKEOPTS="${MAKEOPTS} -j1"
fi
if [[ ${GCC_MAKE_TARGET} == "all" ]] ; then
@@ -1522,6 +1519,8 @@
BOOT_CFLAGS=${BOOT_CFLAGS-"$(get_abi_CFLAGS ${TARGET_DEFAULT_ABI}) ${CFLAGS}"}
fi
+ einfo "Compiling ${PN} (${GCC_MAKE_TARGET})..."
+
pushd "${WORKDIR}"/build >/dev/null
emake \
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-05-20 7:39 Ryan Hill (rhill)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (rhill) @ 2014-05-20 7:39 UTC (permalink / raw
To: gentoo-commits
rhill 14/05/20 07:39:28
Modified: ChangeLog toolchain.eclass
Log:
Depend on virtual/libintl rather than sys-devel/gettext (bug #499774).
Revision Changes Path
1.1258 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1258&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1258&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1257&r2=1.1258
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1257
retrieving revision 1.1258
diff -u -r1.1257 -r1.1258
--- ChangeLog 19 May 2014 05:00:34 -0000 1.1257
+++ ChangeLog 20 May 2014 07:39:28 -0000 1.1258
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1257 2014/05/19 05:00:34 floppym Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1258 2014/05/20 07:39:28 rhill Exp $
+
+ 20 May 2014; Ryan Hill <rhill@gentoo.org> toolchain.eclass:
+ Depend on virtual/libintl rather than sys-devel/gettext (bug #499774).
19 May 2014; Mike Gilbert <floppym@gentoo.org> distutils-r1.eclass:
Work around bash-4.3 bug by setting PYTHONDONTWRITEBYTECODE to an empty
1.627 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.627&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.627&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.626&r2=1.627
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.626
retrieving revision 1.627
diff -u -r1.626 -r1.627
--- toolchain.eclass 18 May 2014 20:28:27 -0000 1.626
+++ toolchain.eclass 20 May 2014 07:39:28 -0000 1.627
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.626 2014/05/18 20:28:27 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.627 2014/05/20 07:39:28 rhill Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -148,7 +148,7 @@
#---->> DEPEND <<----
RDEPEND="sys-libs/zlib
- nls? ( sys-devel/gettext )"
+ nls? ( virtual/libintl )"
tc_version_is_at_least 3 && RDEPEND+=" virtual/libiconv"
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-05-20 10:41 Ryan Hill (rhill)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (rhill) @ 2014-05-20 10:41 UTC (permalink / raw
To: gentoo-commits
rhill 14/05/20 10:41:23
Modified: ChangeLog toolchain.eclass
Log:
Strip -mno-rtm and -mno-htm as libitm requires these for x86/x86_64 and
ppc/s390 respectively if supported by the assembler (bug #506202).
Revision Changes Path
1.1259 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1259&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1259&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1258&r2=1.1259
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1258
retrieving revision 1.1259
diff -u -r1.1258 -r1.1259
--- ChangeLog 20 May 2014 07:39:28 -0000 1.1258
+++ ChangeLog 20 May 2014 10:41:23 -0000 1.1259
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1258 2014/05/20 07:39:28 rhill Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1259 2014/05/20 10:41:23 rhill Exp $
+
+ 20 May 2014; Ryan Hill <rhill@gentoo.org> toolchain.eclass:
+ Strip -mno-rtm and -mno-htm as libitm requires these for x86/x86_64 and
+ ppc/s390 respectively if supported by the assembler (bug #506202).
20 May 2014; Ryan Hill <rhill@gentoo.org> toolchain.eclass:
Depend on virtual/libintl rather than sys-devel/gettext (bug #499774).
1.628 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.628&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.628&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.627&r2=1.628
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.627
retrieving revision 1.628
diff -u -r1.627 -r1.628
--- toolchain.eclass 20 May 2014 07:39:28 -0000 1.627
+++ toolchain.eclass 20 May 2014 10:41:23 -0000 1.628
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.627 2014/05/20 07:39:28 rhill Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.628 2014/05/20 10:41:23 rhill Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1340,7 +1340,8 @@
# dont want to funk ourselves
filter-flags '-mabi*' -m31 -m32 -m64
- filter-flags '-frecord-gcc-switches' # 490738
+ filter-flags -frecord-gcc-switches # 490738
+ filter-flags -mno-rtm -mno-htm # 506202
if tc_version_is_between 3.2 3.4 ; then
# XXX: this is so outdated it's barely useful, but it don't hurt...
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-05-21 20:39 Ryan Hill (rhill)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (rhill) @ 2014-05-21 20:39 UTC (permalink / raw
To: gentoo-commits
rhill 14/05/21 20:39:21
Modified: ChangeLog toolchain.eclass
Log:
Revert libintl change. It turns out we need to depend on gettext anyways, so
this change is pointless.
Revision Changes Path
1.1260 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1260&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1260&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1259&r2=1.1260
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1259
retrieving revision 1.1260
diff -u -r1.1259 -r1.1260
--- ChangeLog 20 May 2014 10:41:23 -0000 1.1259
+++ ChangeLog 21 May 2014 20:39:20 -0000 1.1260
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1259 2014/05/20 10:41:23 rhill Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1260 2014/05/21 20:39:20 rhill Exp $
+
+ 21 May 2014; Ryan Hill <rhill@gentoo.org> toolchain.eclass:
+ Revert libintl change. It turns out we need to depend on gettext anyways, so
+ this change is pointless.
20 May 2014; Ryan Hill <rhill@gentoo.org> toolchain.eclass:
Strip -mno-rtm and -mno-htm as libitm requires these for x86/x86_64 and
1.629 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.629&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.629&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.628&r2=1.629
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.628
retrieving revision 1.629
diff -u -r1.628 -r1.629
--- toolchain.eclass 20 May 2014 10:41:23 -0000 1.628
+++ toolchain.eclass 21 May 2014 20:39:21 -0000 1.629
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.628 2014/05/20 10:41:23 rhill Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.629 2014/05/21 20:39:21 rhill Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -148,7 +148,7 @@
#---->> DEPEND <<----
RDEPEND="sys-libs/zlib
- nls? ( virtual/libintl )"
+ nls? ( sys-devel/gettext )"
tc_version_is_at_least 3 && RDEPEND+=" virtual/libiconv"
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-05-21 21:30 Ryan Hill (rhill)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (rhill) @ 2014-05-21 21:30 UTC (permalink / raw
To: gentoo-commits
rhill 14/05/21 21:30:26
Modified: ChangeLog toolchain.eclass
Log:
Bug #499774, take 2.
Revision Changes Path
1.1261 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1261&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1261&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1260&r2=1.1261
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1260
retrieving revision 1.1261
diff -u -r1.1260 -r1.1261
--- ChangeLog 21 May 2014 20:39:20 -0000 1.1260
+++ ChangeLog 21 May 2014 21:30:26 -0000 1.1261
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1260 2014/05/21 20:39:20 rhill Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1261 2014/05/21 21:30:26 rhill Exp $
+
+ 21 May 2014; Ryan Hill <rhill@gentoo.org> toolchain.eclass:
+ Bug #499774, take 2.
21 May 2014; Ryan Hill <rhill@gentoo.org> toolchain.eclass:
Revert libintl change. It turns out we need to depend on gettext anyways, so
1.630 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.630&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.630&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.629&r2=1.630
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.629
retrieving revision 1.630
diff -u -r1.629 -r1.630
--- toolchain.eclass 21 May 2014 20:39:21 -0000 1.629
+++ toolchain.eclass 21 May 2014 21:30:26 -0000 1.630
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.629 2014/05/21 20:39:21 rhill Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.630 2014/05/21 21:30:26 rhill Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -148,7 +148,7 @@
#---->> DEPEND <<----
RDEPEND="sys-libs/zlib
- nls? ( sys-devel/gettext )"
+ nls? ( virtual/libintl )"
tc_version_is_at_least 3 && RDEPEND+=" virtual/libiconv"
@@ -182,6 +182,7 @@
DEPEND="${RDEPEND}
>=sys-devel/bison-1.875
>=sys-devel/flex-2.5.4
+ nls? ( sys-devel/gettext )
regression-test? (
>=dev-util/dejagnu-1.4.4
>=sys-devel/autogen-5.5.4
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-06-01 23:00 Ryan Hill (rhill)
0 siblings, 0 replies; 58+ messages in thread
From: Ryan Hill (rhill) @ 2014-06-01 23:00 UTC (permalink / raw
To: gentoo-commits
rhill 14/06/01 23:00:46
Modified: ChangeLog toolchain.eclass
Log:
If we keep the flag list sorted by version there's no need for this function
to be recursive. This shaves a couple seconds off the worst-case runtime.
Revision Changes Path
1.1280 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1280&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1280&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1279&r2=1.1280
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1279
retrieving revision 1.1280
diff -u -r1.1279 -r1.1280
--- ChangeLog 1 Jun 2014 22:07:59 -0000 1.1279
+++ ChangeLog 1 Jun 2014 23:00:45 -0000 1.1280
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1279 2014/06/01 22:07:59 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1280 2014/06/01 23:00:45 rhill Exp $
+
+ 01 Jun 2014; Ryan Hill <rhill@gentoo.org> toolchain.eclass:
+ If we keep the flag list sorted by version there's no need for this function
+ to be recursive. This shaves a couple seconds off the worst-case runtime.
01 Jun 2014; Michał Górny <mgorny@gentoo.org> git-r3.eclass,
+tests/git-r3:subrepos.sh:
1.632 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.632&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.632&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.631&r2=1.632
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.631
retrieving revision 1.632
diff -u -r1.631 -r1.632
--- toolchain.eclass 1 Jun 2014 17:29:42 -0000 1.631
+++ toolchain.eclass 1 Jun 2014 23:00:45 -0000 1.632
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.631 2014/06/01 17:29:42 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.632 2014/06/01 23:00:45 rhill Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1233,8 +1233,8 @@
[[ ${mytune} == x86-64 ]] && filter-flags '-mtune=*'
[[ ${bver} < 3.4 ]] && filter-flags '-mtune=*'
+ # "added" "arch" "replacement"
local archlist=(
- # "added" "arch" "replacement"
4.9 bdver4 bdver3
4.9 bonnell atom
4.9 broadwell core-avx2
@@ -1271,10 +1271,10 @@
3.4 pentium4m pentium4
)
- myarch=$(get-flag march)
- mytune=$(get-flag mtune)
-
for ((i = 0; i < ${#archlist[@]}; i += 3)) ; do
+ myarch=$(get-flag march)
+ mytune=$(get-flag mtune)
+
ver=${archlist[i]}
arch=${archlist[i + 1]}
rep=${archlist[i + 2]}
@@ -1285,15 +1285,14 @@
einfo "Replacing ${myarch} (added in gcc ${ver}) with ${rep}..."
[[ ${myarch} == ${arch} ]] && replace-cpu-flags ${myarch} ${rep}
[[ ${mytune} == ${arch} ]] && replace-cpu-flags ${mytune} ${rep}
- downgrade_arch_flags ${1:-${GCC_BRANCH_VER}}
- break
+ continue
else
break
fi
done
+ # we only check -mno* here since -m* get removed by strip-flags later on
local isalist=(
- # we only check -mno* here since -m* get removed by strip-flags later on
4.9 -mno-sha
4.9 -mno-avx512pf
4.9 -mno-avx512f
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-08-04 23:03 Magnus Granberg (zorry)
0 siblings, 0 replies; 58+ messages in thread
From: Magnus Granberg (zorry) @ 2014-08-04 23:03 UTC (permalink / raw
To: gentoo-commits
zorry 14/08/04 23:03:28
Modified: ChangeLog toolchain.eclass
Log:
Fix bug #513706 ssp only on gnu CTARGET's
Revision Changes Path
1.1338 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1338&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1338&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1337&r2=1.1338
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1337
retrieving revision 1.1338
diff -u -r1.1337 -r1.1338
--- ChangeLog 3 Aug 2014 17:08:27 -0000 1.1337
+++ ChangeLog 4 Aug 2014 23:03:28 -0000 1.1338
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1337 2014/08/03 17:08:27 maksbotan Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1338 2014/08/04 23:03:28 zorry Exp $
+
+ 05 Aug 2014; Magnus Granberg <zorry@gentoo.org> toolchain.eclass:
+ Fix bug #513706 only use ssp on gnu CTARGETS
03 Aug 2014; Maxim Koltsov <maksbotan@gentoo.org> leechcraft.eclass:
Remove sourceforge SRC_URI for leechcraft packages, only leechcraft.org is
1.633 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.633&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.633&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.632&r2=1.633
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.632
retrieving revision 1.633
diff -u -r1.632 -r1.633
--- toolchain.eclass 1 Jun 2014 23:00:45 -0000 1.632
+++ toolchain.eclass 4 Aug 2014 23:03:28 -0000 1.633
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.632 2014/06/01 23:00:45 rhill Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.633 2014/08/04 23:03:28 zorry Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1133,7 +1133,9 @@
if use_if_iuse libssp ; then
confgcc+=( --enable-libssp )
else
- export gcc_cv_libc_provides_ssp=yes
+ if hardened_gcc_is_stable ssp: then
+ export gcc_cv_libc_provides_ssp=yes
+ fi
confgcc+=( --disable-libssp )
fi
@@ -2161,7 +2163,7 @@
elif [[ $1 == "ssp" ]] ; then
if [[ ${CTARGET} == *-uclibc* ]] ; then
tocheck=${SSP_UCLIBC_STABLE}
- else
+ elfi [[ ${CTARGET} == *-gnu* ]] ; then
tocheck=${SSP_STABLE}
fi
else
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-08-05 1:41 Mike Gilbert (floppym)
0 siblings, 0 replies; 58+ messages in thread
From: Mike Gilbert (floppym) @ 2014-08-05 1:41 UTC (permalink / raw
To: gentoo-commits
floppym 14/08/05 01:41:01
Modified: ChangeLog toolchain.eclass
Log:
Another typo.
Revision Changes Path
1.1340 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1340&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1340&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1339&r2=1.1340
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1339
retrieving revision 1.1340
diff -u -r1.1339 -r1.1340
--- ChangeLog 5 Aug 2014 01:04:36 -0000 1.1339
+++ ChangeLog 5 Aug 2014 01:41:01 -0000 1.1340
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1339 2014/08/05 01:04:36 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1340 2014/08/05 01:41:01 floppym Exp $
+
+ 05 Aug 2014; Mike Gilbert <floppym@gentoo.org> toolchain.eclass:
+ Another typo.
05 Aug 2014; Robin H. Johnson <robbat2@gentoo.org> toolchain.eclass:
Fix typo.
1.635 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.635&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.635&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.634&r2=1.635
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.634
retrieving revision 1.635
diff -u -r1.634 -r1.635
--- toolchain.eclass 5 Aug 2014 01:04:21 -0000 1.634
+++ toolchain.eclass 5 Aug 2014 01:41:01 -0000 1.635
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.634 2014/08/05 01:04:21 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.635 2014/08/05 01:41:01 floppym Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -1133,7 +1133,7 @@
if use_if_iuse libssp ; then
confgcc+=( --enable-libssp )
else
- if hardened_gcc_is_stable ssp: then
+ if hardened_gcc_is_stable ssp; then
export gcc_cv_libc_provides_ssp=yes
fi
confgcc+=( --disable-libssp )
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2014-11-04 8:04 Justin Lecher (jlec)
0 siblings, 0 replies; 58+ messages in thread
From: Justin Lecher (jlec) @ 2014-11-04 8:04 UTC (permalink / raw
To: gentoo-commits
jlec 14/11/04 08:04:00
Modified: ChangeLog toolchain.eclass
Log:
Fix broken dependencies due to gcc multislotting, #528194, #528196
Revision Changes Path
1.1401 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1401&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1401&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1400&r2=1.1401
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1400
retrieving revision 1.1401
diff -u -r1.1400 -r1.1401
--- ChangeLog 2 Nov 2014 00:45:43 -0000 1.1400
+++ ChangeLog 4 Nov 2014 08:04:00 -0000 1.1401
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1400 2014/11/02 00:45:43 dilfridge Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1401 2014/11/04 08:04:00 jlec Exp $
+
+ 04 Nov 2014; Justin Lecher <jlec@gentoo.org> toolchain.eclass:
+ Fix broken dependencies due to gcc multislotting, #528194, #528196
02 Nov 2014; Andreas K. Huettel <dilfridge@gentoo.org> perl-app.eclass:
Remove handling of EAPI=0,1,2 since that codepath cannot run anymore anyway
1.646 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.646&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.646&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.645&r2=1.646
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.645
retrieving revision 1.646
diff -u -r1.645 -r1.646
--- toolchain.eclass 2 Nov 2014 21:30:11 -0000 1.645
+++ toolchain.eclass 4 Nov 2014 08:04:00 -0000 1.646
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.645 2014/11/02 21:30:11 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.646 2014/11/04 08:04:00 jlec Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -155,7 +155,7 @@
IUSE+=" ${IUSE_DEF[*]}"
# Support upgrade paths here or people get pissed
-if ! tc_version_is_at_least 4.7 || use multislot ; then
+if use multislot ; then
SLOT="${GCC_CONFIG_VER}"
else
SLOT="${GCC_BRANCH_VER}"
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2015-02-05 23:28 Anthony G. Basile (blueness)
0 siblings, 0 replies; 58+ messages in thread
From: Anthony G. Basile (blueness) @ 2015-02-05 23:28 UTC (permalink / raw
To: gentoo-commits
blueness 15/02/05 23:28:17
Modified: ChangeLog toolchain.eclass
Log:
Restore the old way of dealing with fixed includes for bsd, bug #536878.
Revision Changes Path
1.1522 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1522&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1522&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1521&r2=1.1522
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1521
retrieving revision 1.1522
diff -u -r1.1521 -r1.1522
--- ChangeLog 4 Feb 2015 09:44:24 -0000 1.1521
+++ ChangeLog 5 Feb 2015 23:28:17 -0000 1.1522
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1521 2015/02/04 09:44:24 ulm Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1522 2015/02/05 23:28:17 blueness Exp $
+
+ 05 Feb 2015; Anthony G. Basile <blueness@gentoo.org> toolchain.eclass:
+ Restore the old way of dealing with fixed includes for bsd, bug #536878.
04 Feb 2015; Ulrich Müller <ulm@gentoo.org> git-r3.eclass:
Respect the EVCS_UMASK variable to override the default umask when writing
1.649 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.649&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.649&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.648&r2=1.649
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.648
retrieving revision 1.649
diff -u -r1.648 -r1.649
--- toolchain.eclass 21 Jan 2015 21:59:31 -0000 1.648
+++ toolchain.eclass 5 Feb 2015 23:28:17 -0000 1.649
@@ -1,6 +1,6 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.648 2015/01/21 21:59:31 blueness Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.649 2015/02/05 23:28:17 blueness Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -595,15 +595,6 @@
einfo " ${f%%...}"
done
fi
-
- # We don't need fixed header files. This is a gcc hack for dealing with broken
- # (ie non-ansi compliant) header files on old unix systems. On modern systems,
- # these "fixed" headers are known to break things. We just stub them out.
- if tc_version_is_at_least 4.0; then
- echo : > "${S}"/fixincludes/fixinc.in || die
- else
- echo : > "${S}"/gcc/fixinc/fixincl.sh || die
- fi
}
guess_patch_type_in_dir() {
@@ -1607,6 +1598,9 @@
toolchain_src_install() {
cd "${WORKDIR}"/build
+ # Do allow symlinks in private gcc include dir as this can break the build
+ find gcc/include*/ -type l -delete
+
# Copy over the info pages. We disabled their generation earlier, but the
# build system only expects to install out of the build dir, not the source. #464008
mkdir -p gcc/doc
@@ -1617,6 +1611,17 @@
fi
done
+ # We remove the generated fixincludes, as they can cause things to break
+ # (ncurses, openssl, etc). We do not prevent them from being built, as
+ # in the following commit which we revert:
+ # http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.647&r2=1.648
+ # This is because bsd userland needs fixedincludes to build gcc, while
+ # linux does not. Both can dispose of them afterwards.
+ while read x ; do
+ grep -q 'It has been auto-edited by fixincludes from' "${x}" \
+ && rm -f "${x}"
+ done < <(find gcc/include*/ -name '*.h')
+
# Do the 'make install' from the build directory
S="${WORKDIR}"/build emake -j1 DESTDIR="${D}" install || die
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2015-02-10 0:34 Anthony G. Basile (blueness)
0 siblings, 0 replies; 58+ messages in thread
From: Anthony G. Basile (blueness) @ 2015-02-10 0:34 UTC (permalink / raw
To: gentoo-commits
blueness 15/02/10 00:34:08
Modified: ChangeLog toolchain.eclass
Log:
Add my devspace to the gentoo_urls for toolchain.eclass
Revision Changes Path
1.1525 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1525&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1525&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1524&r2=1.1525
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1524
retrieving revision 1.1525
diff -u -r1.1524 -r1.1525
--- ChangeLog 9 Feb 2015 12:53:37 -0000 1.1524
+++ ChangeLog 10 Feb 2015 00:34:08 -0000 1.1525
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1524 2015/02/09 12:53:37 haubi Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1525 2015/02/10 00:34:08 blueness Exp $
+
+ 10 Feb 2015; Anthony G. Basile <blueness@gentoo.org> toolchain.eclass:
+ Add my devspace to the gentoo_urls for toolchain.eclass
09 Feb 2015; Michael Haubenwallner <haubi@gentoo.org>
+ELT-patches/aixrtl/2.0.0-fpic-c, +ELT-patches/aixrtl/2.0.0-fpic-cxx:
1.651 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.651&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.651&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.650&r2=1.651
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.650
retrieving revision 1.651
diff -u -r1.650 -r1.651
--- toolchain.eclass 9 Feb 2015 20:05:07 -0000 1.650
+++ toolchain.eclass 10 Feb 2015 00:34:08 -0000 1.651
@@ -1,6 +1,6 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.650 2015/02/09 20:05:07 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.651 2015/02/10 00:34:08 blueness Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -242,7 +242,8 @@
gentoo_urls() {
local devspace="HTTP~vapier/dist/URI HTTP~rhill/dist/URI
- HTTP~halcy0n/patches/URI HTTP~zorry/patches/gcc/URI"
+ HTTP~halcy0n/patches/URI HTTP~zorry/patches/gcc/URI
+ HTTP~blueness/dist/URI"
devspace=${devspace//HTTP/http:\/\/dev.gentoo.org\/}
echo mirror://gentoo/$1 ${devspace//URI/$1}
}
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2015-02-10 0:46 Anthony G. Basile (blueness)
0 siblings, 0 replies; 58+ messages in thread
From: Anthony G. Basile (blueness) @ 2015-02-10 0:46 UTC (permalink / raw
To: gentoo-commits
blueness 15/02/10 00:46:32
Modified: ChangeLog toolchain.eclass
Log:
Remove halcy0n from the gentoo_urls for toolchain.eclass, per his instructions.
Revision Changes Path
1.1526 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1526&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1526&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1525&r2=1.1526
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1525
retrieving revision 1.1526
diff -u -r1.1525 -r1.1526
--- ChangeLog 10 Feb 2015 00:34:08 -0000 1.1525
+++ ChangeLog 10 Feb 2015 00:46:32 -0000 1.1526
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1525 2015/02/10 00:34:08 blueness Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1526 2015/02/10 00:46:32 blueness Exp $
+
+ 10 Feb 2015; Anthony G. Basile <blueness@gentoo.org> toolchain.eclass:
+ Remove halcy0n from the gentoo_urls for toolchain.eclass, per his
+ instructions.
10 Feb 2015; Anthony G. Basile <blueness@gentoo.org> toolchain.eclass:
Add my devspace to the gentoo_urls for toolchain.eclass
1.652 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.652&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.652&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.651&r2=1.652
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.651
retrieving revision 1.652
diff -u -r1.651 -r1.652
--- toolchain.eclass 10 Feb 2015 00:34:08 -0000 1.651
+++ toolchain.eclass 10 Feb 2015 00:46:32 -0000 1.652
@@ -1,6 +1,6 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.651 2015/02/10 00:34:08 blueness Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.652 2015/02/10 00:46:32 blueness Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -242,8 +242,7 @@
gentoo_urls() {
local devspace="HTTP~vapier/dist/URI HTTP~rhill/dist/URI
- HTTP~halcy0n/patches/URI HTTP~zorry/patches/gcc/URI
- HTTP~blueness/dist/URI"
+ HTTP~zorry/patches/gcc/URI HTTP~blueness/dist/URI"
devspace=${devspace//HTTP/http:\/\/dev.gentoo.org\/}
echo mirror://gentoo/$1 ${devspace//URI/$1}
}
^ permalink raw reply [flat|nested] 58+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass
@ 2015-02-10 7:22 Justin Lecher (jlec)
0 siblings, 0 replies; 58+ messages in thread
From: Justin Lecher (jlec) @ 2015-02-10 7:22 UTC (permalink / raw
To: gentoo-commits
jlec 15/02/10 07:22:00
Modified: ChangeLog toolchain.eclass
Log:
Revert unreviewed commit which breaks the tree
Revision Changes Path
1.1527 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1527&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1527&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1526&r2=1.1527
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1526
retrieving revision 1.1527
diff -u -r1.1526 -r1.1527
--- ChangeLog 10 Feb 2015 00:46:32 -0000 1.1526
+++ ChangeLog 10 Feb 2015 07:22:00 -0000 1.1527
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1526 2015/02/10 00:46:32 blueness Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1527 2015/02/10 07:22:00 jlec Exp $
+
+ 10 Feb 2015; Justin Lecher <jlec@gentoo.org> toolchain.eclass:
+ Revert unreviewed commit which breaks the tree
10 Feb 2015; Anthony G. Basile <blueness@gentoo.org> toolchain.eclass:
Remove halcy0n from the gentoo_urls for toolchain.eclass, per his
1.653 eclass/toolchain.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.653&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?rev=1.653&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.652&r2=1.653
Index: toolchain.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v
retrieving revision 1.652
retrieving revision 1.653
diff -u -r1.652 -r1.653
--- toolchain.eclass 10 Feb 2015 00:46:32 -0000 1.652
+++ toolchain.eclass 10 Feb 2015 07:22:00 -0000 1.653
@@ -1,6 +1,6 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.652 2015/02/10 00:46:32 blueness Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.653 2015/02/10 07:22:00 jlec Exp $
# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
@@ -155,7 +155,7 @@
IUSE+=" ${IUSE_DEF[*]}"
# Support upgrade paths here or people get pissed
-if ! tc_version_is_at_least 4.6 || is_crosscompile || use multislot ; then
+if use multislot ; then
SLOT="${GCC_CONFIG_VER}"
else
SLOT="${GCC_BRANCH_VER}"
^ permalink raw reply [flat|nested] 58+ messages in thread
end of thread, other threads:[~2015-02-10 7:22 UTC | newest]
Thread overview: 58+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-10 0:46 [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog toolchain.eclass Anthony G. Basile (blueness)
-- strict thread matches above, loose matches on Subject: below --
2015-02-10 7:22 Justin Lecher (jlec)
2015-02-10 0:34 Anthony G. Basile (blueness)
2015-02-05 23:28 Anthony G. Basile (blueness)
2014-11-04 8:04 Justin Lecher (jlec)
2014-08-05 1:41 Mike Gilbert (floppym)
2014-08-04 23:03 Magnus Granberg (zorry)
2014-06-01 23:00 Ryan Hill (rhill)
2014-05-21 21:30 Ryan Hill (rhill)
2014-05-21 20:39 Ryan Hill (rhill)
2014-05-20 10:41 Ryan Hill (rhill)
2014-05-20 7:39 Ryan Hill (rhill)
2014-05-15 5:18 Ryan Hill (rhill)
2014-03-16 18:38 Ryan Hill (rhill)
2014-02-05 6:18 Ryan Hill (dirtyepic)
2014-02-02 23:43 Ryan Hill (dirtyepic)
2014-01-24 4:13 Ryan Hill (dirtyepic)
2014-01-13 6:02 Ryan Hill (dirtyepic)
2014-01-10 13:59 Magnus Granberg (zorry)
2013-12-30 3:24 Ryan Hill (dirtyepic)
2013-12-28 9:12 Ryan Hill (dirtyepic)
2013-12-28 8:52 Ryan Hill (dirtyepic)
2013-12-28 8:11 Ryan Hill (dirtyepic)
2013-12-28 3:48 Ryan Hill (dirtyepic)
2013-12-27 22:10 Ryan Hill (dirtyepic)
2013-12-23 21:41 Ryan Hill (dirtyepic)
2013-12-21 11:59 Ryan Hill (dirtyepic)
2013-12-19 6:00 Ryan Hill (dirtyepic)
2013-11-25 3:11 Ryan Hill (dirtyepic)
2013-11-09 10:05 Ryan Hill (dirtyepic)
2013-11-09 7:49 Ryan Hill (dirtyepic)
2013-11-07 3:19 Ryan Hill (dirtyepic)
2013-11-05 5:21 Ryan Hill (dirtyepic)
2013-10-15 5:36 Ryan Hill (dirtyepic)
2013-08-15 4:39 Ryan Hill (dirtyepic)
2013-08-10 7:41 Ryan Hill (dirtyepic)
2013-08-10 4:25 Ryan Hill (dirtyepic)
2013-07-24 1:34 Ryan Hill (dirtyepic)
2013-07-18 23:45 Ryan Hill (dirtyepic)
2013-05-15 5:42 Ryan Hill (dirtyepic)
2013-05-15 0:56 Ryan Hill (dirtyepic)
2013-05-15 0:55 Ryan Hill (dirtyepic)
2013-05-09 3:03 Ryan Hill (dirtyepic)
2013-04-05 5:23 Ryan Hill (dirtyepic)
2013-03-16 5:44 Ryan Hill (dirtyepic)
2013-01-15 2:30 Ryan Hill (dirtyepic)
2012-03-22 6:07 Ryan Hill (dirtyepic)
2012-03-10 21:21 Ryan Hill (dirtyepic)
2012-03-10 20:48 Ryan Hill (dirtyepic)
2012-03-10 20:01 Ryan Hill (dirtyepic)
2012-03-10 19:32 Ryan Hill (dirtyepic)
2012-03-10 17:49 Ryan Hill (dirtyepic)
2012-03-03 2:29 Ryan Hill (dirtyepic)
2012-02-20 7:18 Ryan Hill (dirtyepic)
2012-02-12 14:17 Magnus Granberg (zorry)
2012-01-17 16:05 Magnus Granberg (zorry)
2011-12-07 0:29 Ryan Hill (dirtyepic)
2011-11-21 1:43 Ryan Hill (dirtyepic)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox