From a9fb55a11892b4be7ab49c256f4fc515c86503c4 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Wed, 3 Dec 2014 12:09:17 -0800 Subject: [PATCH] emerge: add --system-deps-complete option This option causes emerge to assume that dependencies of packages from the @system set are completely specified, which can increase parallelization when the emerge --jobs option is used. --- man/emerge.1 | 5 +++++ pym/_emerge/Scheduler.py | 4 +++- pym/_emerge/main.py | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/man/emerge.1 b/man/emerge.1 index a206e8e..5b0dc13 100644 --- a/man/emerge.1 +++ b/man/emerge.1 @@ -816,6 +816,11 @@ remaining packages and any that have unsatisfied dependencies or are masked will be automatically dropped. Also see the related \fB\-\-keep\-going\fR option. .TP +.BR "\-\-system\-deps\-complete" +This option causes emerge to assume that dependencies of packages from the +@system set are completely specified, which can increase parallelization +when the emerge \-\-jobs option is used. +.TP .BR "\-\-tree " (\fB\-t\fR) Shows the dependency tree for the given target by indenting dependencies. This is only really useful in combination with \fB\-\-emptytree\fR or diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py index d6db311..4e5dca2 100644 --- a/pym/_emerge/Scheduler.py +++ b/pym/_emerge/Scheduler.py @@ -448,7 +448,9 @@ class Scheduler(PollScheduler): self._pkg_cache[pkg] = pkg return - self._find_system_deps() + if "--system-deps-complete" not in self.myopts: + self._find_system_deps() + self._prune_digraph() self._prevent_builddir_collisions() if '--debug' in self.myopts: diff --git a/pym/_emerge/main.py b/pym/_emerge/main.py index 3f34102..472910d 100644 --- a/pym/_emerge/main.py +++ b/pym/_emerge/main.py @@ -47,6 +47,7 @@ options=[ "--resume", "--searchdesc", "--skipfirst", +"--system-deps-complete", "--tree", "--unordered-display", "--update", -- 2.0.4