summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/main.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-10-31 23:32:13 +0000
committerZac Medico <zmedico@gentoo.org>2009-10-31 23:32:13 +0000
commitc2d6742b707375e7bbc927651f9cdec3f2818210 (patch)
tree072674d1bcfd833d8131a4bf080b794c44878aac /pym/_emerge/main.py
parent3b0c5f8132330d7ebdd468718e8b7aebd27c1524 (diff)
downloadportage-c2d6742b707375e7bbc927651f9cdec3f2818210.tar.gz
portage-c2d6742b707375e7bbc927651f9cdec3f2818210.tar.bz2
portage-c2d6742b707375e7bbc927651f9cdec3f2818210.zip
Add a --backtrack=COUNT option to control how many times backtracking is
allowed, and reduce the default from 30 to 5. svn path=/main/trunk/; revision=14763
Diffstat (limited to 'pym/_emerge/main.py')
-rw-r--r--pym/_emerge/main.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/pym/_emerge/main.py b/pym/_emerge/main.py
index 71872112e..8e69ad057 100644
--- a/pym/_emerge/main.py
+++ b/pym/_emerge/main.py
@@ -510,6 +510,15 @@ def parse_opts(tmpcmdline, silent=False):
"help":"temporarily override ACCEPT_PROPERTIES",
"action":"store"
},
+
+ "--backtrack": {
+
+ "help" : "Specifies how many times to backtrack if dependency " + \
+ "calculation fails ",
+
+ "action" : "store"
+ },
+
"--config-root": {
"help":"specify the location for portage configuration files",
"action":"store"
@@ -731,6 +740,21 @@ def parse_opts(tmpcmdline, silent=False):
if myoptions.selective == "True":
myoptions.selective = True
+ if myoptions.backtrack is not None:
+
+ try:
+ backtrack = int(myoptions.backtrack)
+ except (OverflowError, ValueError):
+ backtrack = -1
+
+ if backtrack < 0:
+ backtrack = None
+ if not silent:
+ writemsg("!!! Invalid --backtrack parameter: '%s'\n" % \
+ (myoptions.backtrack,), noiselevel=-1)
+
+ myoptions.backtrack = backtrack
+
if myoptions.deep is not None:
deep = None
if myoptions.deep == "True":