aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2019-12-05 09:11:12 -0800
committerZac Medico <zmedico@gentoo.org>2019-12-05 20:09:13 -0800
commitba871d9232b1dc1e0a8090f7664e05e23818b1b4 (patch)
tree3cfd335e665e21c4ee3d6d718ea48b41505810d2 /lib/_emerge/depgraph.py
parent_queue_disjunctive_deps: group disjunctions (bug 701996) (diff)
downloadportage-ba871d9232b1dc1e0a8090f7664e05e23818b1b4.tar.gz
portage-ba871d9232b1dc1e0a8090f7664e05e23818b1b4.tar.bz2
portage-ba871d9232b1dc1e0a8090f7664e05e23818b1b4.zip
emerge: add --implicit-system-deps <y|n> option (bug 681312)
Assume that packages may have implicit dependencies on packages which belong to the @system set. This option is enabled by default. One of the effects of disabling this option is to allow the --jobs option to spawn jobs without accounting for the possiblity of implicit dependencies on packages that belong to the @system set (this causes the @system set to behave more like the @profile set). Bug: https://bugs.gentoo.org/681312 Signed-off-by: Zac Medico <zmedico@gentoo.org>
Diffstat (limited to 'lib/_emerge/depgraph.py')
-rw-r--r--lib/_emerge/depgraph.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/_emerge/depgraph.py b/lib/_emerge/depgraph.py
index 78226a3ea..02e0e075d 100644
--- a/lib/_emerge/depgraph.py
+++ b/lib/_emerge/depgraph.py
@@ -7403,6 +7403,8 @@ class depgraph(object):
For optimal leaf node selection, promote deep system runtime deps and
order nodes from highest to lowest overall reference count.
"""
+ if not self._dynamic_config.myparams["implicit_system_deps"]:
+ return
node_info = {}
for node in mygraph.order:
@@ -8047,10 +8049,9 @@ class depgraph(object):
# by a normal replacement operation then abort.
skip = False
try:
- for atom in root_config.sets[
- "system"].iterAtomsForPackage(task):
+ if (self._dynamic_config.myparams["implicit_system_deps"] and
+ any(root_config.sets["system"].iterAtomsForPackage(task))):
skip = True
- break
except portage.exception.InvalidDependString as e:
portage.writemsg("!!! Invalid PROVIDE in " + \
"'%svar/db/pkg/%s/PROVIDE': %s\n" % \