summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-06-30 00:34:35 -0700
committerZac Medico <zmedico@gentoo.org>2011-06-30 00:34:35 -0700
commit86f285fe9c94e2a817de077eda7e8744130c412f (patch)
treeb339aae21e8d9620c7b11d7d04ac7ebf82680fd5
parent2942ff81aab3accf6e2408b7cc84056700b667db (diff)
downloadportage-86f285fe9c94e2a817de077eda7e8744130c412f.tar.gz
portage-86f285fe9c94e2a817de077eda7e8744130c412f.tar.bz2
portage-86f285fe9c94e2a817de077eda7e8744130c412f.zip
config: filter repo-level make.defaults earlier
-rw-r--r--pym/portage/package/ebuild/config.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/pym/portage/package/ebuild/config.py b/pym/portage/package/ebuild/config.py
index d553a7bc2..8b1a1a11a 100644
--- a/pym/portage/package/ebuild/config.py
+++ b/pym/portage/package/ebuild/config.py
@@ -6,6 +6,7 @@ __all__ = [
]
import copy
+from itertools import chain
import logging
import re
import sys
@@ -520,8 +521,10 @@ class config(object):
for repo in self.repositories.repos_with_profiles():
d = getconfig(os.path.join(repo.location, "profiles", "make.defaults"),
expand=self.configdict["globals"].copy()) or {}
- for blacklisted in self._env_blacklist:
- d.pop(blacklisted, None)
+ if d:
+ for k in chain(self._env_blacklist,
+ profile_only_variables, self._global_only_vars):
+ d.pop(k, None)
self._repo_make_defaults[repo.name] = d
#Read package.keywords and package.accept_keywords.
@@ -1143,8 +1146,6 @@ class config(object):
# make a copy, since we might modify it with
# package.use settings
d = d.copy()
- for k in self._global_only_vars:
- d.pop(k, None)
cpdict = self._use_manager._repo_puse_dict.get(repo, {}).get(cp)
if cpdict:
repo_puse = ordered_by_atom_specificity(cpdict, pkg)