diff options
Diffstat (limited to 'pym/portage/package/ebuild/config.py')
-rw-r--r-- | pym/portage/package/ebuild/config.py | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/pym/portage/package/ebuild/config.py b/pym/portage/package/ebuild/config.py index 4cded99c9..a3a372e71 100644 --- a/pym/portage/package/ebuild/config.py +++ b/pym/portage/package/ebuild/config.py @@ -24,7 +24,8 @@ from portage import bsd_chflags, eapi_is_supported, \ from portage.const import CACHE_PATH, CUSTOM_PROFILE_PATH, \ DEPCACHE_PATH, GLOBAL_CONFIG_PATH, INCREMENTALS, MAKE_CONF_FILE, \ MODULES_FILE_PATH, PORTAGE_BIN_PATH, PORTAGE_PYM_PATH, \ - PRIVATE_PATH, PROFILE_PATH, USER_CONFIG_PATH, USER_VIRTUALS_FILE + PRIVATE_PATH, PROFILE_PATH, SUPPORTED_FEATURES, USER_CONFIG_PATH, \ + USER_VIRTUALS_FILE from portage.data import portage_gid from portage.dbapi import dbapi from portage.dbapi.porttree import portdbapi @@ -2182,10 +2183,22 @@ class config(object): myflags = [] continue + if mykey == "FEATURES": + if x[:1] in ("+", "-"): + val = x[1:] + else: + val = x + + if val not in SUPPORTED_FEATURES: + writemsg(colorize("BAD", + _("FEATURES variable contains an unknown value: %s") % x) \ + + "\n", noiselevel=-1) + continue + if x[0]=="+": # Not legal. People assume too much. Complain. writemsg(colorize("BAD", - _("USE flags should not start with a '+': %s") % x) \ + _("%s values should not start with a '+': %s") % (mykey,x)) \ + "\n", noiselevel=-1) x=x[1:] if not x: |