diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-01-27 14:37:04 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-01-28 00:52:56 +0000 |
commit | 3c5b68356ddd3440375fd0f70b98b476042f2502 (patch) | |
tree | 4c51f781ec03cdb41aec74da95aaf20e988e64bd | |
parent | b3bb841fe624d10de2d7a798f85c3ae87b13ed50 (diff) | |
download | poky-3c5b68356ddd3440375fd0f70b98b476042f2502.tar.gz |
bitbake: cooker: Add option of specifying indvidual tasks for targets
Currently its near enough impossible to tell bitbake to run target X,
task Y and target A, task B. We could hack various parts of the API
around but it would mean incompatibilities.
An alternative is to accept the syntax "<target>:do_<task>" as a target
name. The default task would be used where the task is unspecified.
This has the advantage that its neat/clean code and works from all
current APIs including the commandline.
(Bitbake rev: 55f6bee3114e582333a1784caeddb197b9163d02)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | bitbake/lib/bb/cooker.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index db4cb51c8d..cc7d84ef71 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -449,9 +449,14 @@ class BBCooker: | |||
449 | current = 0 | 449 | current = 0 |
450 | runlist = [] | 450 | runlist = [] |
451 | for k in fulltargetlist: | 451 | for k in fulltargetlist: |
452 | ktask = task | ||
453 | if ":do_" in k: | ||
454 | k2 = k.split(":do_") | ||
455 | k = k2[0] | ||
456 | ktask = k2[1] | ||
452 | taskdata.add_provider(localdata, self.recipecache, k) | 457 | taskdata.add_provider(localdata, self.recipecache, k) |
453 | current += 1 | 458 | current += 1 |
454 | runlist.append([k, "do_%s" % task]) | 459 | runlist.append([k, "do_%s" % ktask]) |
455 | bb.event.fire(bb.event.TreeDataPreparationProgress(current, len(fulltargetlist)), self.data) | 460 | bb.event.fire(bb.event.TreeDataPreparationProgress(current, len(fulltargetlist)), self.data) |
456 | taskdata.add_unresolved(localdata, self.recipecache) | 461 | taskdata.add_unresolved(localdata, self.recipecache) |
457 | bb.event.fire(bb.event.TreeDataPreparationCompleted(len(fulltargetlist)), self.data) | 462 | bb.event.fire(bb.event.TreeDataPreparationCompleted(len(fulltargetlist)), self.data) |