From: Richard Purdie Date: Mon, 14 Nov 2016 09:51:38 +0000 (+0000) Subject: bitbake: bitbake: cooker: Fix world taskgraph generation issue X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e171e9a0886f35e8b783c73bc6b78d5987dda3c7;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git 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 Signed-off-by: Armin Kuster Signed-off-by: Richard Purdie --- diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 42831e27717..d112f8219c2 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)