diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-11-19 12:50:54 -0800 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-11-23 18:05:11 -0800 |
commit | 9fe82c8079d1e386dd44064e9a73b701f39c4171 (patch) | |
tree | fe377f0db6c308a86c6278b307628b796ef0f70a | |
parent | 1575a5685fb796ba159a2164c0f585b859248b50 (diff) | |
download | portage-9fe82c8079d1e386dd44064e9a73b701f39c4171.tar.gz portage-9fe82c8079d1e386dd44064e9a73b701f39c4171.tar.bz2 portage-9fe82c8079d1e386dd44064e9a73b701f39c4171.zip |
emerge --info: Fix USE_EXPAND display
This makes the USE_EXPAND variables consistent with the USE flag
settings.
-rw-r--r-- | pym/portage/package/ebuild/config.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/pym/portage/package/ebuild/config.py b/pym/portage/package/ebuild/config.py index 922116a5e..f927af4d3 100644 --- a/pym/portage/package/ebuild/config.py +++ b/pym/portage/package/ebuild/config.py @@ -1879,6 +1879,24 @@ class config(object): myflags.difference_update(self.usemask) self.configlist[-1]["USE"]= " ".join(sorted(myflags)) + if self.mycpv is None: + # Generate global USE_EXPAND variables settings that are + # consistent with USE, for display by emerge --info. For + # package instances, these are instead generated via + # setcpv(). + for k in use_expand: + prefix = k.lower() + '_' + prefix_len = len(prefix) + expand_flags = set( x[prefix_len:] for x in myflags \ + if x[:prefix_len] == prefix ) + var_split = use_expand_dict.get(k, '').split() + var_split = [ x for x in var_split if x in expand_flags ] + var_split.extend(sorted(expand_flags.difference(var_split))) + if var_split: + self.configlist[-1][k] = ' '.join(var_split) + elif k in self: + self.configlist[-1][k] = '' + @property def virts_p(self): warnings.warn("portage config.virts_p attribute " + \ |