summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2014-01-27 14:37:04 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-01-28 00:52:56 +0000
commit3c5b68356ddd3440375fd0f70b98b476042f2502 (patch)
tree4c51f781ec03cdb41aec74da95aaf20e988e64bd
parentb3bb841fe624d10de2d7a798f85c3ae87b13ed50 (diff)
downloadpoky-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.py7
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)