summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/main.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/main.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/main.py')
-rw-r--r--pym/_emerge/main.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/pym/_emerge/main.py b/pym/_emerge/main.py
index 552ea2082..1e06ec157 100644
--- a/pym/_emerge/main.py
+++ b/pym/_emerge/main.py
@@ -750,6 +750,14 @@ def parse_opts(tmpcmdline, silent=False):
"action" : "append",
},
+ "--rebuild-ignore": {
+ "help" :"A space separated list of package names or slot atoms. " + \
+ "Emerge will not rebuild packages that depend on matching " + \
+ "packages due to the --rebuild flag. ",
+
+ "action" : "append",
+ },
+
"--package-moves": {
"help" : "perform package moves when necessary",
"type" : "choice",
@@ -932,6 +940,12 @@ def parse_opts(tmpcmdline, silent=False):
parser.error("Invalid Atom(s) in --rebuild-exclude parameter: '%s' (only package names and slot atoms (with wildcards) allowed)\n" % \
(",".join(bad_atoms),))
+ if myoptions.rebuild_ignore:
+ bad_atoms = _find_bad_atoms(myoptions.rebuild_ignore)
+ if bad_atoms and not silent:
+ parser.error("Invalid Atom(s) in --rebuild-ignore parameter: '%s' (only package names and slot atoms (with wildcards) allowed)\n" % \
+ (",".join(bad_atoms),))
+
if myoptions.usepkg_exclude:
bad_atoms = _find_bad_atoms(myoptions.usepkg_exclude)
if bad_atoms and not silent: