summaryrefslogtreecommitdiffstats
path: root/pym/_emerge
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2012-06-10 17:58:14 -0700
committerZac Medico <zmedico@gentoo.org>2012-06-10 17:58:14 -0700
commitb6ecc428a7e04afa3449df6a6844978eeb40d569 (patch)
tree9ea0680c35ecfbab6e41391266aadf74908f0eaa /pym/_emerge
parent0fc39028b10cf6a060c13be888d7ad1a8c488f58 (diff)
downloadportage-b6ecc428a7e04afa3449df6a6844978eeb40d569.tar.gz
portage-b6ecc428a7e04afa3449df6a6844978eeb40d569.tar.bz2
portage-b6ecc428a7e04afa3449df6a6844978eeb40d569.zip
Package: use _eapi_attrs
Diffstat (limited to 'pym/_emerge')
-rw-r--r--pym/_emerge/Package.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py
index bdd4bc7d9..75021b9f5 100644
--- a/pym/_emerge/Package.py
+++ b/pym/_emerge/Package.py
@@ -10,7 +10,7 @@ from portage.const import EBUILD_PHASES
from portage.dep import Atom, check_required_use, use_reduce, \
paren_enclose, _slot_re, _slot_separator, _repo_separator
from portage.versions import _pkg_str, _unknown_repo
-from portage.eapi import eapi_has_iuse_defaults, eapi_has_required_use
+from portage.eapi import _get_eapi_attrs
from portage.exception import InvalidDependString
from _emerge.Task import Task
@@ -49,6 +49,7 @@ class Package(Task):
self.metadata = _PackageMetadataWrapper(self, self._raw_metadata)
if not self.built:
self.metadata['CHOST'] = self.root_config.settings.get('CHOST', '')
+ eapi_attrs = _get_eapi_attrs(self.metadata["EAPI"])
slot = self.slot
if _slot_re.match(slot) is None:
self._invalid_metadata('SLOT.invalid',
@@ -62,7 +63,7 @@ class Package(Task):
# sync metadata with validated repo (may be UNKNOWN_REPO)
self.metadata['repository'] = self.cpv.repo
if (self.iuse.enabled or self.iuse.disabled) and \
- not eapi_has_iuse_defaults(self.metadata["EAPI"]):
+ not eapi_attrs.iuse_defaults:
if not self.installed:
self._invalid_metadata('EAPI.incompatible',
"IUSE contains defaults, but EAPI doesn't allow them")
@@ -194,7 +195,7 @@ class Package(Task):
k = 'REQUIRED_USE'
v = self.metadata.get(k)
if v:
- if not eapi_has_required_use(eapi):
+ if not _get_eapi_attrs(eapi).required_use:
self._invalid_metadata('EAPI.incompatible',
"REQUIRED_USE set, but EAPI='%s' doesn't allow it" % eapi)
else: