summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2016-11-14 09:51:38 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-01-11 17:21:46 +0000
commite171e9a0886f35e8b783c73bc6b78d5987dda3c7 (patch)
tree0f9c8e30b9b74dbe1b3f5581cb160c21380f3a84
parenta411abf823a2c23f228cb7355ae9311590de952e (diff)
downloadopenembedded-core-contrib-e171e9a0886f35e8b783c73bc6b78d5987dda3c7.tar.gz
openembedded-core-contrib-e171e9a0886f35e8b783c73bc6b78d5987dda3c7.tar.bz2
openembedded-core-contrib-e171e9a0886f35e8b783c73bc6b78d5987dda3c7.zip
bitbake: bitbake: cooker: Fix world taskgraph generation issue
The processing of the "do_" prefix to tasks is currently inconsistent and has resulted in "bitbake world -g" being broken as task prefixes don't get handled correctly. Make the "do_" task prefix handling consistent through various codepaths. [YOCTO #10651] (Bitbake rev: 3d7186353e804c9410096c408bc337a98c8b33fe) (Bitbake rev: 100439e715841ecfd6460d59cd51c831184b328d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--bitbake/lib/bb/cooker.py14
1 files changed, 10 insertions, 4 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
index 42831e2771..d112f8219c 100644
--- a/bitbake/lib/bb/cooker.py
+++ b/bitbake/lib/bb/cooker.py
@@ -657,6 +657,8 @@ class BBCooker:
# A task of None means use the default task
if task is None:
task = self.configuration.cmd
+ if not task.startswith("do_"):
+ task = "do_%s" % task
fulltargetlist = self.checkPackages(pkgs_to_build, task)
taskdata = {}
@@ -715,6 +717,9 @@ class BBCooker:
Create a dependency graph of pkgs_to_build including reverse dependency
information.
"""
+ if not task.startswith("do_"):
+ task = "do_%s" % task
+
runlist, taskdata = self.prepareTreeData(pkgs_to_build, task)
rq = bb.runqueue.RunQueue(self, self.data, self.recipecaches, taskdata, runlist)
rq.rqdata.prepare()
@@ -818,6 +823,9 @@ class BBCooker:
"""
Create a dependency tree of pkgs_to_build, returning the data.
"""
+ if not task.startswith("do_"):
+ task = "do_%s" % task
+
_, taskdata = self.prepareTreeData(pkgs_to_build, task)
seen_fns = []
@@ -1318,6 +1326,8 @@ class BBCooker:
# If we are told to do the None task then query the default task
if (task == None):
task = self.configuration.cmd
+ if not task.startswith("do_"):
+ task = "do_%s" % task
fn, cls, mc = bb.cache.virtualfn2realfn(buildfile)
fn = self.matchFile(fn)
@@ -1354,8 +1364,6 @@ class BBCooker:
# Invalidate task for target if force mode active
if self.configuration.force:
logger.verbose("Invalidate task %s, %s", task, fn)
- if not task.startswith("do_"):
- task = "do_%s" % task
bb.parse.siggen.invalidate_task(task, self.recipecaches[mc], fn)
# Setup taskdata structure
@@ -1367,8 +1375,6 @@ class BBCooker:
bb.event.fire(bb.event.BuildStarted(buildname, [item]), self.expanded_data)
# Execute the runqueue
- if not task.startswith("do_"):
- task = "do_%s" % task
runlist = [[mc, item, task, fn]]
rq = bb.runqueue.RunQueue(self, self.data, self.recipecaches, taskdata, runlist)