Ignore blockers when fetching.
authorJason Stubbs <jstubbs@gentoo.org>
Thu, 29 Sep 2005 16:38:08 +0000 (16:38 -0000)
committerJason Stubbs <jstubbs@gentoo.org>
Thu, 29 Sep 2005 16:38:08 +0000 (16:38 -0000)
svn path=/main/branches/2.0/; revision=2058

bin/emerge

index 8e070a51a7a182b8bf84f1c9c5cffa53e66f4cb6..a99b3add2e21a5d124502d53af13eeb3d2a01e1b 100755 (executable)
@@ -3128,7 +3128,7 @@ else:
                                if x[3]!="nomerge":
                                        mergecount+=1
                                #check for blocking dependencies
-                               if x[0]=="blocks":
+                               if x[0]=="blocks" and "--fetchonly" not in myopts and "--fetch-all-uri" not in myopts:
                                        print "\n!!! Error: The above package list contains packages which cannot be installed"
                                        print   "!!!        on the same system."
                                        print
@@ -3179,7 +3179,14 @@ else:
                                                y=portage.portdb.findname(pkgline[2])
                                                tmpsettings = portage.config(clone=portage.settings)
                                                retval=portage.doebuild(y,"digest",portage.root,tmpsettings,edebug,("--pretend" in myopts))
-                       mydepgraph.merge(mydepgraph.altlist())
+                       if "--fetchonly" in myopts or "--fetch-all-uri" in myopts:
+                               pkglist = []
+                               for pkg in mydepgraph.altlist():
+                                       if pkg[0] != "blocks":
+                                               pkglist.append(pkg)
+                       else:
+                               pkglist = mydepgraph.altlist()
+                       mydepgraph.merge(pkglist)
 
                if portage.mtimedb.has_key("resume"):
                        del portage.mtimedb["resume"]