aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* phase-helpers.sh: Implement -r|-d|-b options for best/has_versionJames Le Cuirot2018-05-011-1/+5
| | | | | The code for these functions is practically identical so refactor them around a common function.
* econf: Pass --with-sysroot="${ESYSROOT:-/}" under EAPI 7James Le Cuirot2018-05-011-0/+4
| | | | Bug: https://bugs.gentoo.org/317337
* Export BROOT to ebuild env in EAPI 7James Le Cuirot2018-05-011-0/+4
| | | | | | | Export the BROOT variable corresponding to the location where BDEPEND are installed. Bug: https://bugs.gentoo.org/317337
* Export SYSROOT and ESYSROOT in ebuild env in EAPI 7James Le Cuirot2018-05-011-0/+4
| | | | | | | | | SYSROOT is the new destination for DEPEND, however it must currently be equal either / or ROOT. This is partly to simplify the implementation and partly because supporting a third separate destination would not be of much practical benefit anyway. Bug: https://bugs.gentoo.org/317337
* bin/eapi.sh: fix inverted ___eapi_has_dostrip logicZac Medico2018-03-271-1/+1
| | | | Fixes: 9aaa652c86b2 ("Add dostrip for EAPI 7")
* Add dostrip for EAPI 7Zac Medico2018-03-271-0/+4
| | | | | | | | | | | | | | This patch includes the essential parts of the dostrip implementation from portage-mgorny. All of the prepstrip code has moved to bin/estrip, without any changes except the addition of argument parsing for estrip --ignore, --queue, and --deque modes which are equivalent to the corresponding ecompressdir modes. Due to overlap, also ban the non-standard prepstrip and prepallstrip helpers in EAPI 7, with a die message suggesting to use 'dostrip' instead. Also ignore the non-standard STRIP_MASK variable for EAPI 7. Bug: https://bugs.gentoo.org/203891
* Support BDEPEND (CBUILD dependencies) in EAPI 7Michał Górny2018-03-171-0/+4
| | | | | | Bug: https://bugs.gentoo.org/317337 Closes: https://github.com/gentoo/portage/pull/268 Reviewed-by: Zac Medico <zmedico@gentoo.org>
* Do not export PORTDIR & ECLASSDIR in EAPI 7Michał Górny2018-03-111-0/+4
| | | | | | Bug: https://bugs.gentoo.org/373349 Bug: https://bugs.gentoo.org/373351 Closes: https://github.com/gentoo/portage/pull/264
* Support ENV_UNSET for EAPI 7Michał Górny2018-03-111-0/+4
| | | | Bug: https://bugs.gentoo.org/499288
* Add EAPI 7 version comparison & manipulation functionsMichał Górny2018-03-111-0/+4
| | | | | | | The function code is copied from eapi7-ver.eclass which has been written by Ulrich Müller and me. Bug: https://bugs.gentoo.org/482170
* Ban DESTTREE/INSDESTTREE in EAPI 7Michał Górny2018-03-041-0/+4
| | | | | | | | | Ban the direct use of DESTTREE/INSDESTTREE in EAPI 7. Use new _E_* helper variables for into/insinto. Bug: https://bugs.gentoo.org/173630 Closes: https://github.com/gentoo/portage/pull/261 Series-Reviewed-by: Zac Medico <zmedico@gentoo.org>
* domo: force /usr prefix in EAPI 7Michał Górny2018-03-041-0/+4
| | | | Bug: https://bugs.gentoo.org/595924
* Ban dolib/libopts for EAPI 7Michał Górny2018-03-041-0/+4
| | | | Bug: https://bugs.gentoo.org/630416
* Ban dohtml for EAPI 7Michał Górny2018-03-041-1/+5
| | | | Bug: https://bugs.gentoo.org/show_bug.cgi?id=520546
* Use bash-4.2 for all future EAPIs, until declared otherwiseMichał Górny2018-03-041-2/+2
|
* ebuild: Extend helper-in-global-scope ban to all EAPIsMichał Górny2016-05-201-4/+0
| | | | | | | | | Make helper calls in global scope fatal in all supported EAPIs since this is the behavior required by PMS and all major offenders are fixed already. Acked-by: Alexander Berntsen <bernalex@gentoo.org> Acked-by: Zac Medico <zmedico@gentoo.org>
* ebuild: set up bash compat levelsMike Frysinger2015-11-121-0/+8
| | | | | | | | To try and provide better stability across bash versions, set the language compat level based on the current EAPI. This does not ban newer features, it tells bash to use the older bash behavior when the behavior changes across versions.
* bin/eapi.sh: Invert condition in ___eapi_unpack_supports_absolute_paths().Ulrich Müller2015-02-161-1/+1
| | | | | This should return true starting with EAPI 6, and false for EAPI 5 and earlier.
* bin/eapi.sh: default to EAPI=0 when EAPI is unsetSergei Trofimovich2015-01-171-45/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Observed as a breakage on binutils ebuilds: > ERROR: sys-devel/binutils-2.24-r3::gentoo failed (depend phase): > use() calls are not allowed in global scope > Call stack: > ebuild.sh, line 584: Called source 'binutils-2.24-r3.ebuild, > ebuild.sh, line 7: Called inherit 'toolchain-binutils' > ebuild.sh, line 280: Called __qa_source '/gentoo-32k/gentoo-x86/eclass/toolchain-binutils.e > ebuild.sh, line 80: Called source '/gentoo-32k/gentoo-x86/eclass/toolchain-binutils.eclass > toolchain-binutils.eclass, line 106: Called use 'multislot' > ebuild.sh, line 47: Called die > The specific snippet of code: > # These functions die because calls to them during the "depend" phase Zac confirms it's a safe thing to use ${EAPI-0} here: > ebuild.sh unsets the EAPI just before it sources the ebuild, > and then it does this after it sources the ebuild: > > [ "${EAPI+set}" = set ] || EAPI=0 > > So, for any code that is called while the ebuild is being sourced, using > ${EAPI-0} would be correct. For consistency and defense against future copy/paste errors converted all uses of ${EAPI} for ${EAPI-0} in 'bin/eapi.sh'. Fixes: b830bbc3b10b ("Disallow helpers in global scope in EAPI 6") Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> Signed-off-by: Zac Medico <zmedico@gentoo.org>
* Deprecate dohtml for EAPI 6Michał Górny2014-12-041-0/+4
|
* Ban einstall for EAPI 6Michał Górny2014-12-041-0/+4
|
* Disallow helpers in global scope in EAPI 6Michał Górny2014-12-041-1/+1
| | | | | | | Disallow calling most of the ebuild helpers in global scope since they are meaningless in that context. Most of them are also prohibited by PMS for all EAPIs, so EAPI 6 sounds like a good moment to finally enforce that restriction.
* Add tentative EAPI6 in_iuse() functionMichał Górny2014-12-041-0/+4
| | | | Add a function to query IUSE_EFFECTIVE for flags.
* Add tentative EAPI6 nonfatal support to die()Michał Górny2014-12-041-0/+4
| | | | | | Add support for die() to respect 'nonfatal' modifier if '--respect-nonfatal' (or '-n') option is used. This allows eclasses to create custom ebuild helpers that mimic built-in helper behavior.
* Add tentative EAPI6 absolute path support to unpack()Michał Górny2014-12-041-0/+4
| | | | | Add support for absolute paths in unpack(). Allow subdirectory-level relative paths not to start with './'.
* Add tentative EAPI6 .txz unpack supportMichał Górny2014-12-041-0/+4
| | | | Support unpacking .txz-suffixed archives.
* Enable tentative EAPI6 failglob in global scopeMichał Górny2014-12-041-0/+4
| | | | | Enable failglob in global scope to catch unintended globbing attempts including unescaped special uses of '*'.
* Add tentative support for EAPI6 eapply_user functionMichał Górny2014-12-041-0/+4
| | | | Add support for the user patch applying function.
* Add tentative support for EAPI6 eapply functionMichał Górny2014-12-041-0/+4
| | | | Add the eapply patch applying function.
* Add tentative support for EAPI6 einstalldocs functionMichał Górny2014-12-041-0/+4
| | | | | Add the einstalldocs function to conveniently install documentation using the default patterns or DOCS and HTML_DOCS variables.
* Add tentative support for EAPI6 get_libdir()Michał Górny2014-12-041-0/+4
| | | | | Add get_libdir() function to obtain the basename of libdir using the same algorithm that econf uses.
* Add tentative support for EAPI6 --docdir and --htmldirMichał Górny2014-12-041-0/+4
| | | | Pass --docdir and --htmldir to configure scripts that support it.
* EAPI="5-progress": Support case-insensitive matching of extensions in unpack().Arfrever Frehtes Taifersar Arahesis2013-09-111-1/+1
|
* unpack: warn for unofficial sufffix, bug #476738Zac Medico2013-09-011-0/+4
|
* EAPI="5-progress": Add package_manager_build_user() and ↵Arfrever Frehtes Taifersar Arahesis2012-11-161-0/+8
| | | | package_manager_build_group().
* EAPI="5-progress": Add master_repositories(), repository_path(),Arfrever Frehtes Taifersar Arahesis2012-10-141-0/+20
| | | | available_eclasses(), eclass_path() and license_path() functions.
* Add eapi.sh with ___eapi_*() functions and use these functions in other files.Arfrever Frehtes Taifersar Arahesis2012-09-261-0/+113