summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* toolchain.eclass: Use :0= for dependency on >=dev-libs/isl-0.14.Arfrever Frehtes Taifersar Arahesis2018-03-131-1/+1
| | | | | Closes: https://bugs.gentoo.org/650170 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* eclass/toolchain.eclass: die early in case of EAPI < 5Matthias Maier2018-02-011-2/+2
| | | | | | With the latest changes (slot operators) we need at least EAPI 5 when inheriting toolchain.eclass. Thus, in case of EAPI=4, die early with a more descriptive error message.
* eclass/toolchain.eclass: Add := operators to a number of critical depsMatthias Maier2018-02-011-4/+4
| | | | | | | | | | | | We should annotate a number of critical library dependencies of the compiler with := operators to ensure that the compiler gets rebuilt in time. TODO: We should also check for FEATURES=preserve-libs / print a warning before attempting to upgrade a library with soname change. Otherwise, users might be off to a rocky ride. Closes: https://bugs.gentoo.org/642316
* eclass/toolchain.eclass: Add .xz variants to snapshot releasesMatthias Maier2018-01-191-2/+10
|
* toolchain.eclass: Migrate CROSSCOMPILE_OPTS=headers-only -> USE=headers-onlySergei Trofimovich2018-01-071-1/+1
| | | | | | | | | | | | | | | | | CROSSCOMPILE_OPTS is a USE_EXPAND of a single item: headers-only. Convert it to a global USE flag instead. Mechanical ebuild rename done as: $ sed -e 's@crosscompile_opts_headers-only@headers-only@g' \ -i $(git grep -l headers-only) 'headers-only' flag is used by crossdev to bootstrap stage1 compiler before libc is available. crossdev switched to USE=headers-only in =sys-devel/crossdev-20171230. Bug: https://bugs.gentoo.org/642712 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
* toolchain.eclass: remove built_with_use, bug #610456Ulrich Müller2018-01-051-12/+7
| | | | Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* toolchain.eclass: update to EAPI=5 standardsAnthony G. Basile2018-01-011-33/+36
| | | | | | | | | | | This eclass is inherited by ebuilds in sys-devel/{gcc,kgcc64,gcc-apple}, each which make use of different IUSE flags. This causes problems with `use X` constructions when X is not in the IUSE flags. At EAPI=4 this simply emitted a warning, while at EAPI=5 this is an error. We update the eclass to make use of use_if_iuse and similar constructions where necessary to bring the eclass into compliance with EAPI=5. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
* eclass/toolchain.eclass: use CXXFLAGS=CFLAGS if CFLAGS_<CTARGET> is not setSergei Trofimovich2017-12-251-1/+1
| | | | Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
* eclass/toolchain.eclass: do not die if uclibc patches are not availableAnthony G. Basile2017-12-051-3/+0
| | | | | | | gcc-6 and above no longer needs uclibc specific patches, so we don't die if the patchset is not available. We do, however, still apply it if UCLIBC_VER is defined in the ebuild to future proof the code in case we need to reintroduce the patchset in the future.
* toolchain.eclass: Add -no-pie to stage1 LDFLAGS when building <gcc-6 with ↵Magnus Granberg2017-11-181-0/+8
| | | | | | >=gcc6, bug 618908 Closes: https://bugs.gentoo.org/618908
* toolchain.eclass: add ~slyfox devspace for gcc patchesSergei Trofimovich2017-10-241-1/+1
| | | | Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
* sys-devel/gcc: add a USE for building GCC with PGOShane Peelar2017-09-241-1/+6
| | | | | Package-Manager: Portage-2.3.10, Repoman-2.3.3 Closes: https://github.com/gentoo/gentoo/pull/5741
* toolchain.eclass: drop GCC_FILESDIR override, bug #629776Sergei Trofimovich2017-09-161-7/+5
| | | | | | | | | | | | | | | GCC_FILESDIR support was broken by portage-2.3.6 commit: https://github.com/gentoo/portage/commit/0637c95545ab7dc0bb5d091de221b9e99e2cf5b2 ("portage.package.ebuild: Use a fake FILESDIR to catch invalid accesses") Unfortunately it was applied to older EAPIs without fixing all the users first. The change yanks GCC_FILESDIR override support and hardcodes FILESDIR usage (as all the ebuilds except 'gcc' are broken anyway). Bug: https://bugs.gentoo.org/629776 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
* toolchain.eclass: allow CTARGET to contain '.'Sergei Trofimovich2017-09-051-1/+2
| | | | | | | | | | | | | On CTARGET="hppa2.0-unknown-linux-gnu" the following code local VAR="CFLAGS_"${CTARGET//-/_} CXXFLAGS=${!VAR} produces incorrect substitution: CFLAGS_hppa2.0_unknown_linux_gnu which caused 'crossdev hppa2.0-unknown-linux-gnu' to fail. The change adds '.' mangling as well. Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
* toolchain.eclass: Update masquerades via dev-util/shadowman postinst/rmMichał Górny2017-08-261-0/+7
|
* toolchain.eclass: upstream now uses .xz compressed tarballsAnthony G. Basile2017-08-031-2/+10
|
* toolchain.eclass: add DEPEND to dev-libs/boehm-gc, bug #617788Matthias Maier2017-05-101-0/+6
| | | | | | | sys-devel/gcc-7.1.0 requires external dev-libs/boehm-gc, the internal copy got removed [1]. [1] https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=242985
* sys-devel/gcc: add 7.1.0 to the tree, bug #617260Matthias Maier2017-05-071-1/+2
| | | | Package-Manager: Portage-2.3.5, Repoman-2.3.2
* toolchain.eclass: enable pie and ssp for gcc >= 6 for #615370William Hubbs2017-05-061-1/+1
|
* Drop $Id$ per council decision in bug #611234.Robin H. Johnson2017-02-281-1/+0
| | | | Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
* toolchain.eclass: fix a typo in a commentMagnus Granberg2017-02-031-2/+2
|
* toolchain.eclass: pax-mark java compiler #574808Magnus Granberg2017-02-021-0/+6
|
* toolchain.eclass: remove trailing slash of D.Benda Xu2017-01-091-1/+1
| | | | Bug: 531610
* toolchain.eclass: Quote variables containing EPREFIX.Benda Xu2017-01-091-11/+11
| | | | | | | | | Directory prefixify part 4. LIBPATH, etc. now have EPREFIX prepended. The latter need to be quoted. Bug: 531610
* toolchain.eclass: Prepend/strip EPREFIX.Benda Xu2017-01-091-17/+17
| | | | | | | | | Directory prefixify part 3. Raw directories are prepended by EPREFIX. Directories passed to ebuild helpers are EPREFIX stripped. Bug: 531610
* toolchain.eclass: prefixify helper scripts.Benda Xu2017-01-091-5/+5
| | | | | | Directory prefixify part 2. Bug: 531610
* toolchain.eclass: D->ED ROOT->EROOT replacements.Benda Xu2017-01-091-14/+15
| | | | | | | | | Directory prefixify part 1. In addition, E/D and E/ROOT has trailing slashes. No need to write an additional slash. Bug: 531610
* toolchain.eclass: drop env -i from gcc-config calls.Benda Xu2017-01-091-4/+4
| | | | | | | | | | In Prefix, PATH should also be preserved, resulting in a mouthful of `env -i PATH=${PATH} ROOT=${ROOT}`. The origin commit introducing env -i was for "cleanup". Dropping env -i is cleaner. Reference: https://gitweb.gentoo.org/repo/gentoo/historical.git/commit/?id=a8a64d1886cc5c9f975353b97237f2900a3ee88c Reference: https://gitweb.gentoo.org/repo/gentoo/historical.git/commit/?id=7d9f89700a2ee50674c0d871ec6d21b468ac6206 Bug: 531610
* toolchain.eclass: Call fix_libtool_files.sh by nameBenda Xu2017-01-091-2/+2
| | | | | /usr/sbin is in PATH, avoid writing ${EPREFIX}/usr/sbin/fix_libtool_files.sh.
* toolchain.eclass: add support for gcc 6.x with no spec filesMagnus Granberg2016-09-131-31/+56
|
* toolchain.eclass: add use pch for gcc 6.x supportMagnus Granberg2016-09-131-2/+7
|
* toolchain.eclass: [QA] Remove meaningless USE=multislot, #584610Michał Górny2016-06-211-5/+1
| | | | | | | | | | | | | | | The USE=multislot as defined partially by toolchain.eclass and partially by sys-devel/gcc was used for two purposes: - enabling build-time (only) blockers on old gcc versions -- which do not make any sense because they are build-time only and there is no technical reason for two gcc version ranges not to be installed at the same time, both at build time and at run time, - changing behavior of post-install wrt conditional gcc-config calls. Both cases are invalid use of USE flags, considering that the flag does not affect the installed files in any way.
* toolchain.eclass: prune more unused libtool archives #573302Mike Frysinger2016-05-111-2/+38
|
* sys-devel/gcc: add USE=mpx support for Intel MPX #578396Mike Frysinger2016-05-111-1/+5
|
* sys-devel/gcc: add USE=vtv support for vtable verification #547040Mike Frysinger2016-05-081-1/+8
|
* toolchain.eclass: automatically select latest gcc-config profile when ↵Mike Frysinger2016-04-141-12/+22
| | | | | | | | | unmerging active version #529608 If the user is unmerging the current version, try and automatically switch to a better version. We blindly pick the latest one available for the target in question since there's not really a better metric to figure out which one the user actually would want.
* toolchain.eclass: install gcc-5 go binary as go-5 #567806Zac Medico2016-03-191-2/+4
|
* toolchain.eclass: use versioned SLOT all the timeMike Frysinger2016-03-151-9/+1
|
* toolchain.eclass: move cross-compiler libcc1 out of /usr/lib #547754Mike Frysinger2016-01-161-0/+14
| | | | | | I'm not entirely happy with this logic, but as other related bugs are addressed, this will probably evolve with them. This at least unblocks people trying to use gcc-5 cross-compilers.
* toolchain.eclass: enable multislot for gcc-4.7 versionsMike Frysinger2015-12-311-1/+1
|
* sys-devel/gcc: add support for USE=jit #568834Mike Frysinger2015-12-191-0/+10
|
* toolchain.eclass: delete `go` and `gofmt` for now #567806Mike Frysinger2015-12-121-0/+5
| | | | | | | We have dev-lang/go provide `go` and `gofmt`, and having gcc include these in its BINPATH causes gcc-config to clobber the go package with symlinks. Drop the gcc versions for now (they're copies from the go package anyways) until we have a better solution.
* toolchain.eclass: fix warnings when progs are linkedMike Frysinger2015-12-121-1/+6
| | | | | | | | When gcc installs programs into BINPATH, it sometimes links them so that the $CHOST-xxx and xxx progs are the same. The logic to standardize the naming in BINPATH then triggers a warning as they're the same file. Manually delete the target before running the mv to avoid that business.
* toolchain.eclass: convert `find|xargs` to `find -exec`Mike Frysinger2015-12-051-5/+4
|
* eclass/toolchain.eclass: fix typoMatija Skala2015-11-271-1/+1
|
* toolchain.eclass: update link to gcc upgrade #562088Mike Frysinger2015-10-031-1/+1
|
* toolchain.eclass: change SLOT to major version for gcc-5+ #555164Mike Frysinger2015-10-021-1/+4
|
* toolchain{,-binutils}.eclass: use https for HOMEPAGEMike Frysinger2015-09-261-1/+1
|
* eclass: gentoo.org has https per defaultJustin Lecher2015-09-251-3/+3
| | | | Signed-off-by: Justin Lecher <jlec@gentoo.org>
* toolchain.eclass: add USE=ssp for gcc-6 to control default ↵Mike Frysinger2015-08-291-2/+6
| | | | stack-protector-strong behavior