diff options
Diffstat (limited to 'pym/portage/package/ebuild/config.py')
-rw-r--r-- | pym/portage/package/ebuild/config.py | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/pym/portage/package/ebuild/config.py b/pym/portage/package/ebuild/config.py index 684de16db..894d14cd3 100644 --- a/pym/portage/package/ebuild/config.py +++ b/pym/portage/package/ebuild/config.py @@ -60,7 +60,21 @@ from portage.package.ebuild._config.helper import ordered_by_atom_specificity, p if sys.hexversion >= 0x3000000: basestring = str -_feature_flags = frozenset(["test"]) +_feature_flags_cache = {} + +def _get_feature_flags(eapi_attrs): + cache_key = (eapi_attrs.feature_flag_test,) + flags = _feature_flags_cache.get(cache_key) + if flags is not None: + return flags + + flags = [] + if eapi_attrs.feature_flag_test: + flags.append("test") + + flags = frozenset(flags) + _feature_flags_cache[cache_key] = flags + return flags def autouse(myvartree, use_cache=1, mysettings=None): warnings.warn("portage.autouse() is deprecated", |