diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-02-14 00:37:02 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-02-14 00:37:02 +0000 |
commit | e6be6590e99522f9be69e2af8eff87919d9bf31f (patch) | |
tree | 0957b4fff3409c4a081f34596895cfb9446f6ed6 /pym/portage/dbapi/bintree.py | |
parent | 5f41b254c7c4b1f16a7916a757150b827a2c5b53 (diff) | |
download | portage-e6be6590e99522f9be69e2af8eff87919d9bf31f.tar.gz portage-e6be6590e99522f9be69e2af8eff87919d9bf31f.tar.bz2 portage-e6be6590e99522f9be69e2af8eff87919d9bf31f.zip |
Evaluate conditional USE deps for *DEPEND atoms saved in vdb entries.
svn path=/main/trunk/; revision=15351
Diffstat (limited to 'pym/portage/dbapi/bintree.py')
-rw-r--r-- | pym/portage/dbapi/bintree.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/pym/portage/dbapi/bintree.py b/pym/portage/dbapi/bintree.py index e07f58a47..ecc8424c0 100644 --- a/pym/portage/dbapi/bintree.py +++ b/pym/portage/dbapi/bintree.py @@ -1049,6 +1049,16 @@ class binarytree(object): writemsg("%s: %s\n" % (k, str(e)), noiselevel=-1) raise + if k in portage._vdb_use_conditional_atoms: + v_split = [] + for x in deps.split(): + try: + x = portage.dep.Atom(x) + except portage.exception.InvalidAtom: + v_split.append(x) + else: + v_split.append(str(x.evaluate_conditionals(raw_use))) + deps = ' '.join(v_split) metadata[k] = deps def exists_specific(self, cpv): |