Gentoo Archives: gentoo-portage-dev

From: SebastianLuther@×××.de
To: gentoo-portage-dev@l.g.o
Subject: [gentoo-portage-dev] [PATCH] Don't filter USE for binary packages with IUSE (bug 485920)
Date: Thu, 05 Dec 2013 13:37:10
Message-Id: 1386250611-19730-1-git-send-email-SebastianLuther@gmx.de
1 From: Sebastian Luther <SebastianLuther@×××.de>
2
3 USE may contain values that aren't present in IUSE for any
4 supported EAPI. This for example breaks use dependencies on
5 USE_EXPAND-values.
6
7 The behavior for binary packages is now in line with what is
8 done for installed packages.
9
10 Note that this filtering was not active during merge.
11
12 URL: https://bugs.gentoo.org/485920
13 ---
14 pym/portage/dbapi/bintree.py | 7 +------
15 1 file changed, 1 insertion(+), 6 deletions(-)
16
17 diff --git a/pym/portage/dbapi/bintree.py b/pym/portage/dbapi/bintree.py
18 index 61ac6b5..b1f67ae 100644
19 --- a/pym/portage/dbapi/bintree.py
20 +++ b/pym/portage/dbapi/bintree.py
21 @@ -1283,11 +1283,6 @@ class binarytree(object):
22
23 def _eval_use_flags(self, cpv, metadata):
24 use = frozenset(metadata["USE"].split())
25 - raw_use = use
26 - iuse = set(f.lstrip("-+") for f in metadata["IUSE"].split())
27 - use = [f for f in use if f in iuse]
28 - use.sort()
29 - metadata["USE"] = " ".join(use)
30 for k in self._pkgindex_use_evaluated_keys:
31 if k.endswith('DEPEND'):
32 token_class = Atom
33 @@ -1296,7 +1291,7 @@ class binarytree(object):
34
35 try:
36 deps = metadata[k]
37 - deps = use_reduce(deps, uselist=raw_use, token_class=token_class)
38 + deps = use_reduce(deps, uselist=use, token_class=token_class)
39 deps = paren_enclose(deps)
40 except portage.exception.InvalidDependString as e:
41 writemsg("%s: %s\n" % (k, str(e)),
42 --
43 1.8.3.2

Replies