summaryrefslogtreecommitdiffstats
path: root/pym/portage/eapi.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2012-08-29 00:38:12 -0700
committerZac Medico <zmedico@gentoo.org>2012-08-29 00:38:12 -0700
commitf76b983e95d022d6f377e3efd599dd8efbd30b3d (patch)
tree7095aee7f42d2f0011baf9a9ad046d35b42e70f8 /pym/portage/eapi.py
parent1db6048f29dad8da5c74da3143901edd006fc10a (diff)
downloadportage-f76b983e95d022d6f377e3efd599dd8efbd30b3d.tar.gz
portage-f76b983e95d022d6f377e3efd599dd8efbd30b3d.tar.bz2
portage-f76b983e95d022d6f377e3efd599dd8efbd30b3d.zip
EAPI 5: Profile IUSE injection
See bug #176467 and the PMS patch: http://git.overlays.gentoo.org/gitweb/?p=proj/pms.git;a=commit;h=d9040ab3482af5f790368bac5d053bf1cd760ba8
Diffstat (limited to 'pym/portage/eapi.py')
-rw-r--r--pym/portage/eapi.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/pym/portage/eapi.py b/pym/portage/eapi.py
index b701d02ab..00ce2a512 100644
--- a/pym/portage/eapi.py
+++ b/pym/portage/eapi.py
@@ -8,6 +8,9 @@ from portage import eapi_is_supported
def eapi_has_iuse_defaults(eapi):
return eapi != "0"
+def eapi_has_iuse_effective(eapi):
+ return eapi not in ("0", "1", "2", "3", "4", "4-python", "4-slot-abi")
+
def eapi_has_slot_deps(eapi):
return eapi != "0"
@@ -72,7 +75,7 @@ def eapi_allows_dots_in_use_flags(eapi):
return eapi in ("4-python",)
_eapi_attrs = collections.namedtuple('_eapi_attrs',
- 'dots_in_PN dots_in_use_flags iuse_defaults '
+ 'dots_in_PN dots_in_use_flags iuse_defaults iuse_effective '
'repo_deps required_use required_use_at_most_one_of slot_abi slot_deps '
'src_uri_arrows strong_blocks use_deps use_dep_defaults')
@@ -98,6 +101,7 @@ def _get_eapi_attrs(eapi):
dots_in_PN = (eapi is None or eapi_allows_dots_in_PN(eapi)),
dots_in_use_flags = (eapi is None or eapi_allows_dots_in_use_flags(eapi)),
iuse_defaults = (eapi is None or eapi_has_iuse_defaults(eapi)),
+ iuse_effective = (eapi is not None and eapi_has_iuse_effective(eapi)),
repo_deps = (eapi is None or eapi_has_repo_deps(eapi)),
required_use = (eapi is None or eapi_has_required_use(eapi)),
required_use_at_most_one_of = (eapi is None or eapi_has_required_use_at_most_one_of(eapi)),