From: Zac Medico Date: Wed, 15 Aug 2007 20:32:10 +0000 (-0000) Subject: Make sure that portage always has all of it's RDEPENDs installed first. (branches... X-Git-Tag: v2.1.2.12~14 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=afbd509b5bd2d7d3cba78034bccad254619672d8;p=portage.git Make sure that portage always has all of it's RDEPENDs installed first. (branches/2.1.2 r7572:7575) svn path=/main/branches/2.1.2.9/; revision=7614 --- diff --git a/bin/emerge b/bin/emerge index e495ea4e1..0543338d2 100755 --- a/bin/emerge +++ b/bin/emerge @@ -2017,12 +2017,14 @@ class depgraph: circular_blocks = False blocker_deps = None asap_nodes = [] + portage_node = None if reversed: get_nodes = mygraph.root_nodes else: get_nodes = mygraph.leaf_nodes for cpv, node in self.pkg_node_map["/"].iteritems(): if "portage" == portage.catsplit(portage.dep_getkey(cpv))[-1]: + portage_node = node asap_nodes.append(node) break ignore_priority_soft_range = [None] @@ -2083,6 +2085,11 @@ class depgraph: return True if node not in mergeable_nodes: return False + if node == portage_node and mygraph.child_nodes(node, + ignore_priority=DepPriority.MEDIUM_SOFT): + # Make sure that portage always has all of it's + # RDEPENDs installed first. + return False selected_nodes.add(node) for child in mygraph.child_nodes(node, ignore_priority=ignore_priority):