aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2008-12-06 11:50:02 +0000
committerRichard Purdie <rpurdie@linux.intel.com>2008-12-06 11:50:02 +0000
commit8c112e0aa9c8e12e1560a8894d5dfecd370a6bcc (patch)
treed7fdee51540754d25c985307796f3a69cca94e8f
parent0bc7836736f0087d91ac72ea3bbf9cc608687881 (diff)
downloadbitbake-contrib-8c112e0aa9c8e12e1560a8894d5dfecd370a6bcc.tar.gz
Add tryaltconfigs option to control whether bitbake trys using alternative providers to fulfil failed dependencies. It defaults to off, changing the default since this behaviour confuses many users and isn't often useful (from Poky).
-rw-r--r--ChangeLog3
-rwxr-xr-xbin/bitbake3
-rw-r--r--doc/bitbake.13
-rw-r--r--lib/bb/runqueue.py2
-rw-r--r--lib/bb/taskdata.py3
5 files changed, 12 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 09f3cd83c..845aca85d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -159,6 +159,9 @@ Changes in Bitbake 1.9.x:
- use @rev when doing a svn checkout
- Add osc fetcher (from Joshua Lock in Poky)
- When SRCREV autorevisioning for a recipe is in use, don't cache the recipe
+ - Add tryaltconfigs option to control whether bitbake trys using alternative providers
+ to fulfil failed dependencies. It defaults to off, changing the default since this
+ behaviour confuses many users and isn't often useful.
Changes in Bitbake 1.8.0:
- Release 1.7.x as a stable series
diff --git a/bin/bitbake b/bin/bitbake
index ef453a58a..525150e5e 100755
--- a/bin/bitbake
+++ b/bin/bitbake
@@ -69,6 +69,9 @@ Default BBFILES are the .bb files in the current directory.""" )
parser.add_option( "-k", "--continue", help = "continue as much as possible after an error. While the target that failed, and those that depend on it, cannot be remade, the other dependencies of these targets can be processed all the same.",
action = "store_false", dest = "abort", default = True )
+ parser.add_option( "-a", "--tryaltconfigs", help = "continue with builds by trying to use alternative providers where possible.",
+ action = "store_true", dest = "tryaltconfigs", default = False )
+
parser.add_option( "-f", "--force", help = "force run of specified cmd, regardless of stamp status",
action = "store_true", dest = "force", default = False )
diff --git a/doc/bitbake.1 b/doc/bitbake.1
index 01172d741..e687f0a42 100644
--- a/doc/bitbake.1
+++ b/doc/bitbake.1
@@ -54,6 +54,9 @@ continue as much as possible after an error. While the target that failed, and
those that depend on it, cannot be remade, the other dependencies of these
targets can be processed all the same.
.TP
+.B \-a, \-\-tryaltconfigs
+continue with builds by trying to use alternative providers where possible.
+.TP
.B \-f, \-\-force
force run of specified cmd, regardless of stamp status
.TP
diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py
index 26e4c32f8..609514d30 100644
--- a/lib/bb/runqueue.py
+++ b/lib/bb/runqueue.py
@@ -869,7 +869,7 @@ class RunQueue:
self.finish_runqueue()
if self.state is runQueueFailed:
- if self.taskData.abort:
+ if not self.taskData.tryaltconfigs:
raise bb.runqueue.TaskFailure(self.failed_fnids)
for fnid in self.failed_fnids:
self.taskData.fail_fnid(fnid)
diff --git a/lib/bb/taskdata.py b/lib/bb/taskdata.py
index 756948641..64ab032c3 100644
--- a/lib/bb/taskdata.py
+++ b/lib/bb/taskdata.py
@@ -30,7 +30,7 @@ class TaskData:
"""
BitBake Task Data implementation
"""
- def __init__(self, abort = True):
+ def __init__(self, abort = True, tryaltconfigs = False):
self.build_names_index = []
self.run_names_index = []
self.fn_index = []
@@ -57,6 +57,7 @@ class TaskData:
self.failed_fnids = []
self.abort = abort
+ self.tryaltconfigs = tryaltconfigs
def getbuild_id(self, name):
"""