diff options
author | Zac Medico <zmedico@gentoo.org> | 2007-07-01 20:05:40 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2007-07-01 20:05:40 +0000 |
commit | 28b66babaf51fcf4c6db0ef8d5633577e035cebe (patch) | |
tree | 22847a044c04b21d99c2d4708b85646699b8f944 | |
parent | 0a838ddccdeed7c930cab0e6dc1df7b6417f0c67 (diff) | |
download | portage-28b66babaf51fcf4c6db0ef8d5633577e035cebe.tar.gz portage-28b66babaf51fcf4c6db0ef8d5633577e035cebe.tar.bz2 portage-28b66babaf51fcf4c6db0ef8d5633577e035cebe.zip |
If necessary, resample the leaf nodes so that they include all nodes whose hard deps are satisfied.
svn path=/main/trunk/; revision=7116
-rw-r--r-- | pym/emerge/__init__.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/pym/emerge/__init__.py b/pym/emerge/__init__.py index 475105672..89e718ea7 100644 --- a/pym/emerge/__init__.py +++ b/pym/emerge/__init__.py @@ -2155,6 +2155,10 @@ class depgraph(object): mergeable_nodes, selected_nodes, child): return False return True + # If necessary, resample the leaf nodes so that they + # include all nodes whose hard deps are satisfied. + if ignore_priority < DepPriority.MEDIUM: + nodes = get_nodes(ignore_priority=DepPriority.MEDIUM) mergeable_nodes = set(nodes) for ignore_priority in xrange(DepPriority.SOFT, DepPriority.MEDIUM_SOFT + 1): @@ -2182,6 +2186,8 @@ class depgraph(object): for child in medium_soft: if child in selected_nodes: continue + if child in asap_nodes: + continue # TODO: Try harder to make these nodes get # merged absolutely as soon as possible. asap_nodes.append(child) |