summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/cooker.py
diff options
context:
space:
mode:
authorAlex Franco <alejandro.franco@linux.intel.com>2015-09-02 15:11:30 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-09-04 16:23:58 +0100
commit7ef2f951d690df0939a8349ac024352b2a144249 (patch)
treedfd639b2a75c8295f4665b8346d7e6e6db7e8df0 /bitbake/lib/bb/cooker.py
parentccc1d9ac0c7a0e1768fdfc043da106d144029f3c (diff)
downloadpoky-7ef2f951d690df0939a8349ac024352b2a144249.tar.gz
bitbake: cooker/runqueue: Allow bitbake commands starting with do_
The output of "bitbake, -c listtasks pkg" lists tasks with their real names (starting with "do_"), but then "bitbake -c do_task" fails, as "do_" always gets unconditionally prepended to task names. This patch handles this error by checking whether a task starts with "do_" prior to prepending it with it when the task runlist is being constructed (and a few other corner cases). [YOCTO #7818] (Bitbake rev: dd3050ceef37ac556546e940aa596ce96ef6c8df) Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/cooker.py')
-rw-r--r--bitbake/lib/bb/cooker.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
index 99c47859d9..a0d7d59eaa 100644
--- a/bitbake/lib/bb/cooker.py
+++ b/bitbake/lib/bb/cooker.py
@@ -663,7 +663,9 @@ class BBCooker:
663 ktask = k2[1] 663 ktask = k2[1]
664 taskdata.add_provider(localdata, self.recipecache, k) 664 taskdata.add_provider(localdata, self.recipecache, k)
665 current += 1 665 current += 1
666 runlist.append([k, "do_%s" % ktask]) 666 if not ktask.startswith("do_"):
667 ktask = "do_%s" % ktask
668 runlist.append([k, ktask])
667 bb.event.fire(bb.event.TreeDataPreparationProgress(current, len(fulltargetlist)), self.data) 669 bb.event.fire(bb.event.TreeDataPreparationProgress(current, len(fulltargetlist)), self.data)
668 taskdata.add_unresolved(localdata, self.recipecache) 670 taskdata.add_unresolved(localdata, self.recipecache)
669 bb.event.fire(bb.event.TreeDataPreparationCompleted(len(fulltargetlist)), self.data) 671 bb.event.fire(bb.event.TreeDataPreparationCompleted(len(fulltargetlist)), self.data)
@@ -1302,7 +1304,9 @@ class BBCooker:
1302 # Invalidate task for target if force mode active 1304 # Invalidate task for target if force mode active
1303 if self.configuration.force: 1305 if self.configuration.force:
1304 logger.verbose("Invalidate task %s, %s", task, fn) 1306 logger.verbose("Invalidate task %s, %s", task, fn)
1305 bb.parse.siggen.invalidate_task('do_%s' % task, self.recipecache, fn) 1307 if not task.startswith("do_"):
1308 task = "do_%s" % task
1309 bb.parse.siggen.invalidate_task(task, self.recipecache, fn)
1306 1310
1307 # Setup taskdata structure 1311 # Setup taskdata structure
1308 taskdata = bb.taskdata.TaskData(self.configuration.abort) 1312 taskdata = bb.taskdata.TaskData(self.configuration.abort)
@@ -1312,7 +1316,9 @@ class BBCooker:
1312 bb.event.fire(bb.event.BuildStarted(buildname, [item]), self.expanded_data) 1316 bb.event.fire(bb.event.BuildStarted(buildname, [item]), self.expanded_data)
1313 1317
1314 # Execute the runqueue 1318 # Execute the runqueue
1315 runlist = [[item, "do_%s" % task]] 1319 if not task.startswith("do_"):
1320 task = "do_%s" % task
1321 runlist = [[item, task]]
1316 1322
1317 rq = bb.runqueue.RunQueue(self, self.data, self.recipecache, taskdata, runlist) 1323 rq = bb.runqueue.RunQueue(self, self.data, self.recipecache, taskdata, runlist)
1318 1324