For bug #166939, make --nodeps work like a normal package for new-style virtuals.
authorZac Medico <zmedico@gentoo.org>
Sat, 17 Feb 2007 19:08:08 +0000 (19:08 -0000)
committerZac Medico <zmedico@gentoo.org>
Sat, 17 Feb 2007 19:08:08 +0000 (19:08 -0000)
svn path=/main/trunk/; revision=5982

pym/emerge/__init__.py

index 08b11d8b5d99126efbb9a6fb995cde4214a17555..4929f084553fc9cd8597edf5a31fd4e22f2493ff 100644 (file)
@@ -1521,23 +1521,27 @@ class depgraph:
                #processing dependencies
                """ Call portage.dep_check to evaluate the use? conditionals and make sure all
                dependencies are satisfiable. """
-               try:
-                       if myparent and p_status == "nomerge":
-                               portage.dep._dep_check_strict = False
-                       mycheck = portage.dep_check(depstring, None,
-                               pkgsettings, myuse=myuse,
-                               use_binaries=("--usepkgonly" in self.myopts),
-                               myroot=myroot, trees=self.trees)
-               finally:
-                       portage.dep._dep_check_strict = True
-
-               if not mycheck[0]:
-                       if myparent:
-                               show_invalid_depstring_notice(myparent, depstring, mycheck[1])
-                       else:
-                               sys.stderr.write("\n%s\n%s\n" % (depstring, mycheck[1]))
-                       return 0
-               mymerge = mycheck[1]
+               if arg:
+                       mymerge = [depstring]
+               else:
+                       try:
+                               if myparent and p_status == "nomerge":
+                                       portage.dep._dep_check_strict = False
+                               mycheck = portage.dep_check(depstring, None,
+                                       pkgsettings, myuse=myuse,
+                                       use_binaries=("--usepkgonly" in self.myopts),
+                                       myroot=myroot, trees=self.trees)
+                       finally:
+                               portage.dep._dep_check_strict = True
+       
+                       if not mycheck[0]:
+                               if myparent:
+                                       show_invalid_depstring_notice(
+                                               myparent, depstring, mycheck[1])
+                               else:
+                                       sys.stderr.write("\n%s\n%s\n" % (depstring, mycheck[1]))
+                               return 0
+                       mymerge = mycheck[1]
 
                if not mymerge and arg and \
                        portage.best_match_to_list(depstring, self.args_keys):