From ff62a0bee57ee2b9fc5c4941c62cc054a6a93be3 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 17 Aug 2018 04:08:21 -0700 Subject: [PATCH] config: initialize global features USE (bug 663848) --- lib/portage/package/ebuild/config.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/portage/package/ebuild/config.py b/lib/portage/package/ebuild/config.py index 3b01095d0..a1482cdd8 100644 --- a/lib/portage/package/ebuild/config.py +++ b/lib/portage/package/ebuild/config.py @@ -259,6 +259,7 @@ class config(object): self.packages = clone.packages self.repositories = clone.repositories self.unpack_dependencies = clone.unpack_dependencies + self._global_features_use = clone._global_features_use self._iuse_effective = clone._iuse_effective self._iuse_implicit_match = clone._iuse_implicit_match self._non_user_variables = clone._non_user_variables @@ -961,6 +962,10 @@ class config(object): # initialize self.features self.regenerate() + features_use = [] + if "test" in self.features: + features_use.append("test") + self.configdict["features"]["USE"] = self._global_features_use = " ".join(features_use) if unprivileged: self.features.add('unprivileged') @@ -1296,7 +1301,7 @@ class config(object): del self._penv[:] self.configdict["pkg"].clear() self.configdict["pkginternal"].clear() - self.configdict["features"].clear() + self.configdict["features"] = {"USE": self._global_features_use} self.configdict["repo"].clear() self.configdict["defaults"]["USE"] = \ " ".join(self.make_defaults_use) @@ -1598,7 +1603,7 @@ class config(object): has_changed = True # Prevent stale features USE from corrupting the evaluation # of USE conditional RESTRICT. - self.configdict["features"]["USE"] = "" + self.configdict["features"] = {"USE": self._global_features_use} self._penv = [] cpdict = self._penvdict.get(cp) -- 2.16.4