summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2006-08-04 18:57:01 +0000
committerZac Medico <zmedico@gentoo.org>2006-08-04 18:57:01 +0000
commit667d6c76bed30d1f9ffe55001e65ee7508b946da (patch)
tree38cefe4676d7b741133f63c905856deaf7e233d4 /bin
parent15c3f994e75859017a8deba60f084d41d2a7ee9c (diff)
downloadportage-667d6c76bed30d1f9ffe55001e65ee7508b946da.tar.gz
portage-667d6c76bed30d1f9ffe55001e65ee7508b946da.tar.bz2
portage-667d6c76bed30d1f9ffe55001e65ee7508b946da.zip
Add support for package.use.mask in the profile. It should behave exactly as use.mask currently does except that it allows USE flags to be masked for specific packages rather than for all packages. See bug #96368.
svn path=/main/trunk/; revision=4151
Diffstat (limited to 'bin')
-rwxr-xr-xbin/emerge8
1 files changed, 5 insertions, 3 deletions
diff --git a/bin/emerge b/bin/emerge
index ee5669b0b..29710f11f 100755
--- a/bin/emerge
+++ b/bin/emerge
@@ -1363,12 +1363,12 @@ class depgraph:
bindb = self.trees[myroot]["bintree"].dbapi
vartree = self.trees[myroot]["vartree"]
pkgsettings = self.pkgsettings[myroot]
+ pkgsettings.setcpv(pkg_key)
if pkg_key not in self.applied_useflags:
if "binary" == pkg_type:
self.applied_useflags[pkg_key] = bindb.aux_get(
pkg_key, ["USE"])[0].split()
elif "ebuild" == pkg_type:
- pkgsettings.setcpv(pkg_key)
self.applied_useflags[pkg_key] = pkgsettings["USE"].split()
fetch=" "
@@ -1448,7 +1448,8 @@ class depgraph:
cur_iuse = portage.unique_array(cur_iuse)
cur_iuse = [flag for flag in cur_iuse
- if flag not in pkgsettings.usemask]
+ if flag not in pkgsettings.usemask \
+ and flag not in pkgsettings.pusemask]
cur_iuse.sort()
cur_use = self.applied_useflags[x[2]]
cur_use = [flag for flag in cur_use if flag in cur_iuse]
@@ -1470,7 +1471,8 @@ class depgraph:
old_use = []
is_new = True
old_iuse = [flag for flag in old_iuse
- if flag not in pkgsettings.usemask]
+ if flag not in pkgsettings.usemask \
+ and flag not in pkgsettings.pusemask]
old_use = [flag for flag in old_use if flag in old_iuse]
use_expand = pkgsettings["USE_EXPAND"].lower().split()