summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShane Peelar <lookatyouhacker@gmail.com>2017-09-20 11:59:20 -0400
committerSergei Trofimovich <slyfox@gentoo.org>2017-09-24 19:06:15 +0100
commit0591d59df6a846750c267e34a28b8b8d87812101 (patch)
treefa0fc239dde7c6d56c7575f50071140afa11b181 /eclass/toolchain.eclass
parentapp-admin/rsyslog: Run mmnormalize tests only when mmnormalize module was act... (diff)
downloadgentoo-0591d59df6a846750c267e34a28b8b8d87812101.tar.gz
gentoo-0591d59df6a846750c267e34a28b8b8d87812101.tar.bz2
gentoo-0591d59df6a846750c267e34a28b8b8d87812101.zip
sys-devel/gcc: add a USE for building GCC with PGO
Package-Manager: Portage-2.3.10, Repoman-2.3.3 Closes: https://github.com/gentoo/gentoo/pull/5741
Diffstat (limited to 'eclass/toolchain.eclass')
-rw-r--r--eclass/toolchain.eclass7
1 files changed, 6 insertions, 1 deletions
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index baffa39bda9b..a18e8042641c 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -139,6 +139,7 @@ if [[ ${PN} != "kgcc64" && ${PN} != gcc-* ]] ; then
[[ -n ${D_VER} ]] && IUSE+=" d"
[[ -n ${SPECS_VER} ]] && IUSE+=" nossp"
tc_version_is_at_least 3 && IUSE+=" doc gcj awt hardened multilib objc"
+ tc_version_is_at_least 3.3 && IUSE+=" pgo"
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++"
@@ -1569,7 +1570,11 @@ gcc_do_make() {
# resulting binaries natively ^^;
GCC_MAKE_TARGET=${GCC_MAKE_TARGET-all}
else
- GCC_MAKE_TARGET=${GCC_MAKE_TARGET-bootstrap-lean}
+ if tc_version_is_at_least 3.3 && use pgo; then
+ GCC_MAKE_TARGET=${GCC_MAKE_TARGET-profiledbootstrap}
+ else
+ GCC_MAKE_TARGET=${GCC_MAKE_TARGET-bootstrap-lean}
+ fi
fi
# Older versions of GCC could not do profiledbootstrap in parallel due to