diff options
author | Zac Medico <zmedico@gentoo.org> | 2007-12-31 09:54:15 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2007-12-31 09:54:15 +0000 |
commit | 61226d0851e4d6b3397d99aa9143a4be6456714d (patch) | |
tree | af556bcda583abe7a155ba862180678d97c16bf8 | |
parent | 4ae7f766207f539d04b5293daab8e1a251831eb3 (diff) | |
download | portage-61226d0851e4d6b3397d99aa9143a4be6456714d.tar.gz portage-61226d0851e4d6b3397d99aa9143a4be6456714d.tar.bz2 portage-61226d0851e4d6b3397d99aa9143a4be6456714d.zip |
Fix config.setcpv() to properly call config.regenerate() in cases
when USE needs to be regenerated due to FEATURES=test to USE=test
mapping.
svn path=/main/trunk/; revision=9126
-rw-r--r-- | pym/portage/__init__.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index 64ae70948..c9db5e9fd 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -1908,7 +1908,14 @@ class config(object): self.configdict["pkg"]["USE"] = self.puse[:] # this gets appended to USE if iuse != self.configdict["pkg"].get("IUSE",""): self.configdict["pkg"]["IUSE"] = iuse - if self._use_wildcards or self.get("EBUILD_PHASE"): + test_use_changed = False + if "test" in self.features: + test_use_changed = \ + ("test" in iuse.split()) != \ + ("test" in self.get("PORTAGE_USE","").split()) + if self.get("EBUILD_PHASE") or \ + self._use_wildcards or \ + test_use_changed: # Without this conditional, regenerate() would be called # *every* time. has_changed = True |