diff options
Diffstat (limited to 'pym/_emerge')
-rw-r--r-- | pym/_emerge/Package.py | 12 | ||||
-rw-r--r-- | pym/_emerge/depgraph.py | 9 |
2 files changed, 8 insertions, 13 deletions
diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py index 2941b273d..640f8bca1 100644 --- a/pym/_emerge/Package.py +++ b/pym/_emerge/Package.py @@ -201,11 +201,11 @@ class Package(Task): class _iuse(object): __slots__ = ("__weakref__", "all", "enabled", "disabled", - "tokens") + ("_iuse_implicit_regex",) + "tokens") + ("_iuse_implicit_match",) - def __init__(self, tokens, iuse_implicit_regex): + def __init__(self, tokens, iuse_implicit_match): self.tokens = tuple(tokens) - self._iuse_implicit_regex = iuse_implicit_regex + self._iuse_implicit_match = iuse_implicit_match enabled = [] disabled = [] other = [] @@ -231,7 +231,7 @@ class Package(Task): for flag in flags: if not flag in self.all and \ - self._iuse_implicit_regex.match(flag) is None: + not self._iuse_implicit_match(flag): return False return True @@ -244,7 +244,7 @@ class Package(Task): missing_iuse = [] for flag in flags: if not flag in self.all and \ - self._iuse_implicit_regex.match(flag) is None: + not self._iuse_implicit_match(flag): missing_iuse.append(flag) return missing_iuse @@ -362,7 +362,7 @@ class _PackageMetadataWrapper(_PackageMetadataWrapperBase): def _set_iuse(self, k, v): self._pkg.iuse = self._pkg._iuse( - v.split(), self._pkg.root_config.settings._iuse_implicit_re) + v.split(), self._pkg.root_config.settings._iuse_implicit_match) def _set_slot(self, k, v): self._pkg.slot = v diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index 01afa88c1..f4d251478 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -2036,7 +2036,6 @@ class depgraph(object): missing_licenses = [] have_eapi_mask = False pkgsettings = self._frozen_config.pkgsettings[root] - implicit_iuse = pkgsettings._get_implicit_iuse() root_config = self._frozen_config.roots[root] portdb = self._frozen_config.roots[root].trees["porttree"].dbapi dbs = self._dynamic_config._filtered_trees[root]["dbs"] @@ -2672,11 +2671,9 @@ class depgraph(object): eapi_has_required_use(pkg.metadata["EAPI"]): required_use = pkg.metadata["REQUIRED_USE"] use = pkg.use.enabled - iuse = self._frozen_config.settings._get_implicit_iuse() - iuse.update(pkg.iuse.all) try: required_use_is_sat = portage.dep.check_required_use( - pkg.metadata["REQUIRED_USE"], use, iuse) + pkg.metadata["REQUIRED_USE"], use, pkg.iuse.is_valid_flag) except portage.exception.InvalidDependString as e: portage.writemsg("!!! Invalid REQUIRED_USE specified by " + \ "'%s': %s\n" % (pkg.cpv, str(e)), noiselevel=-1) @@ -6058,11 +6055,9 @@ def _get_masking_status(pkg, pkgsettings, root_config): eapi_has_required_use(pkg.metadata["EAPI"]): required_use = pkg.metadata["REQUIRED_USE"] use = pkg.use.enabled - iuse = pkgsettings._get_implicit_iuse() - iuse.update(pkg.iuse.all) try: required_use_is_sat = portage.dep.check_required_use( - required_use, use, iuse) + required_use, use, pkg.iuse.is_valid_flag) except portage.exception.InvalidDependString: mreasons.append("invalid: REQUIRED_USE") else: |