summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/depgraph.py
diff options
context:
space:
mode:
authorDavid James <davidjames@chromium.org>2011-05-03 13:51:30 -0700
committerZac Medico <zmedico@gentoo.org>2011-05-03 15:51:20 -0700
commit9a3a1c4b2d182bef0579166589475df93247a009 (patch)
tree17de028fb0ef7d6a4a8c3886eea57a0eefe0dc48 /pym/_emerge/depgraph.py
parent5d26fe64b1f8b56f1f3e588921f33bc9df4da78d (diff)
downloadportage-9a3a1c4b2d182bef0579166589475df93247a009.tar.gz
portage-9a3a1c4b2d182bef0579166589475df93247a009.tar.bz2
portage-9a3a1c4b2d182bef0579166589475df93247a009.zip
Add --rebuild-ignore flag.
A space separated list of package names or slot atoms. Emerge will not rebuild packages that depend on matching packages due to \fB\-\-rebuild\fR. Change-Id: Ia58fe632ed06c97a22413da0341d7f8da2d65ba8 Review URL: http://gerrit.chromium.org/gerrit/209
Diffstat (limited to 'pym/_emerge/depgraph.py')
-rw-r--r--pym/_emerge/depgraph.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 0de443b3d..b0b4b070a 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -130,6 +130,8 @@ class _frozen_depgraph_config(object):
self.useoldpkg_atoms = _wildcard_set(atoms)
atoms = ' '.join(myopts.get("--rebuild-exclude", [])).split()
self.rebuild_exclude = _wildcard_set(atoms)
+ atoms = ' '.join(myopts.get("--rebuild-ignore", [])).split()
+ self.rebuild_ignore = _wildcard_set(atoms)
self.rebuild = "--rebuild" in myopts
@@ -156,10 +158,12 @@ class _rebuild_config(object):
parent = dep.collapsed_parent
priority = dep.collapsed_priority
rebuild_exclude = self._frozen_config.rebuild_exclude
+ rebuild_ignore = self._frozen_config.rebuild_ignore
if (self._frozen_config.rebuild and isinstance(parent, Package) and
parent.built and (priority.buildtime or priority.runtime) and
isinstance(dep_pkg, Package) and
- not rebuild_exclude.findAtomForPackage(parent)):
+ not rebuild_exclude.findAtomForPackage(parent) and
+ not rebuild_ignore.findAtomForPackage(dep_pkg)):
self._graph.add(dep_pkg, parent, priority)
def _trigger_rebuild(self, parent, build_deps, runtime_deps):