summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2006-12-07 22:23:57 +0000
committerZac Medico <zmedico@gentoo.org>2006-12-07 22:23:57 +0000
commit70ba8f079933e40497649c419898bb2b2e1ce81d (patch)
treebde23876c74077f2c50e58a39f3d3c96a8550367 /pym
parente32ddbb0b19dbe110faee7f516756e3753cdb270 (diff)
downloadportage-70ba8f079933e40497649c419898bb2b2e1ce81d.tar.gz
portage-70ba8f079933e40497649c419898bb2b2e1ce81d.tar.bz2
portage-70ba8f079933e40497649c419898bb2b2e1ce81d.zip
Enable FakeVartree to populate the virtuals so that the vdb doesn't have to be scanned separately.
svn path=/main/trunk/; revision=5207
Diffstat (limited to 'pym')
-rw-r--r--pym/portage.py8
1 files changed, 3 insertions, 5 deletions
diff --git a/pym/portage.py b/pym/portage.py
index 9881d227d..13c851ab0 100644
--- a/pym/portage.py
+++ b/pym/portage.py
@@ -1853,7 +1853,7 @@ class config:
self.dirVirtuals[virt].reverse()
# Repoman does not use user or tree virtuals.
- if self.local_config:
+ if self.local_config and not self.treeVirtuals:
temp_vartree = vartree(myroot, None,
categories=self.categories, settings=self)
# Reduce the provides into a list by CP.
@@ -4930,11 +4930,9 @@ class vartree(packagetree):
def get_provide(self,mycpv):
myprovides=[]
try:
- mylines = grabfile(self.root+VDB_PATH+"/"+mycpv+"/PROVIDE")
+ mylines, myuse = self.dbapi.aux_get(mycpv, ["PROVIDE","USE"])
if mylines:
- myuse = grabfile(self.root+VDB_PATH+"/"+mycpv+"/USE")
- myuse = string.split(string.join(myuse))
- mylines = string.join(mylines)
+ myuse = myuse.split()
mylines = flatten(portage_dep.use_reduce(portage_dep.paren_reduce(mylines), uselist=myuse))
for myprovide in mylines:
mys = catpkgsplit(myprovide)