summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-03-30 04:58:21 +0000
committerZac Medico <zmedico@gentoo.org>2008-03-30 04:58:21 +0000
commit9e9457405c690bf26f4e884f3b47c06ea17cab8f (patch)
treecaf4b35c56abafdb25a6a1475cb4eec4fc7750cd
parent34771ed5f8e4df5d744afc59df22c7dd0e91a1f1 (diff)
downloadportage-9e9457405c690bf26f4e884f3b47c06ea17cab8f.tar.gz
portage-9e9457405c690bf26f4e884f3b47c06ea17cab8f.tar.bz2
portage-9e9457405c690bf26f4e884f3b47c06ea17cab8f.zip
Fix broke package.provided handling.
svn path=/main/branches/2.1.2/; revision=9618
-rwxr-xr-xbin/emerge12
1 files changed, 12 insertions, 0 deletions
diff --git a/bin/emerge b/bin/emerge
index 477bff713..15196cb72 100755
--- a/bin/emerge
+++ b/bin/emerge
@@ -2063,6 +2063,11 @@ class depgraph:
if not oneshot:
myfavorites.append(myatom)
for myarg, myatom in arg_atoms:
+ pprovided = pkgsettings.pprovideddict.get(
+ portage.dep_getkey(myatom))
+ if pprovided and portage.match_from_list(myatom, pprovided):
+ self._pprovided_args.append((myarg, myatom))
+ continue
pkg, existing_node = self._select_package(
myroot, myatom, onlydeps=onlydeps)
if not pkg:
@@ -3075,11 +3080,18 @@ class depgraph:
self._set_atoms.add(myatom)
for mydep in mylist:
+ pprovided = pkgsettings.pprovideddict.get(
+ portage.dep_getkey(mydep))
+ if pprovided and portage.match_from_list(mydep, pprovided):
+ self._pprovided_args.append((mydep, mydep))
+ continue
+
pkg, existing_node = self._select_package(
self.target_root, mydep)
if not pkg:
self._missing_args.append(mydep)
continue
+
if not self.create(pkg, None):
print >> sys.stderr, "\n\n!!! Problem resolving dependencies for", mydep
return 0