diff options
| author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-11-14 09:51:38 +0000 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-12-08 10:32:21 +0000 |
| commit | 9977576fe97c6a67dec04171e64678676cbf1c22 (patch) | |
| tree | 48fcd19bde8a188f9f44a91d47a7daa760721d0a | |
| parent | 9d1d35068e0ebb082747114a7f07faaf5423dfa6 (diff) | |
| download | poky-9977576fe97c6a67dec04171e64678676cbf1c22.tar.gz | |
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)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | bitbake/lib/bb/cooker.py | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 29f7156341..aca9470607 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
| @@ -657,6 +657,8 @@ class BBCooker: | |||
| 657 | # A task of None means use the default task | 657 | # A task of None means use the default task |
| 658 | if task is None: | 658 | if task is None: |
| 659 | task = self.configuration.cmd | 659 | task = self.configuration.cmd |
| 660 | if not task.startswith("do_"): | ||
| 661 | task = "do_%s" % task | ||
| 660 | 662 | ||
| 661 | fulltargetlist = self.checkPackages(pkgs_to_build, task) | 663 | fulltargetlist = self.checkPackages(pkgs_to_build, task) |
| 662 | taskdata = {} | 664 | taskdata = {} |
| @@ -715,6 +717,9 @@ class BBCooker: | |||
| 715 | Create a dependency graph of pkgs_to_build including reverse dependency | 717 | Create a dependency graph of pkgs_to_build including reverse dependency |
| 716 | information. | 718 | information. |
| 717 | """ | 719 | """ |
| 720 | if not task.startswith("do_"): | ||
| 721 | task = "do_%s" % task | ||
| 722 | |||
| 718 | runlist, taskdata = self.prepareTreeData(pkgs_to_build, task) | 723 | runlist, taskdata = self.prepareTreeData(pkgs_to_build, task) |
| 719 | rq = bb.runqueue.RunQueue(self, self.data, self.recipecaches, taskdata, runlist) | 724 | rq = bb.runqueue.RunQueue(self, self.data, self.recipecaches, taskdata, runlist) |
| 720 | rq.rqdata.prepare() | 725 | rq.rqdata.prepare() |
| @@ -818,6 +823,9 @@ class BBCooker: | |||
| 818 | """ | 823 | """ |
| 819 | Create a dependency tree of pkgs_to_build, returning the data. | 824 | Create a dependency tree of pkgs_to_build, returning the data. |
| 820 | """ | 825 | """ |
| 826 | if not task.startswith("do_"): | ||
| 827 | task = "do_%s" % task | ||
| 828 | |||
| 821 | _, taskdata = self.prepareTreeData(pkgs_to_build, task) | 829 | _, taskdata = self.prepareTreeData(pkgs_to_build, task) |
| 822 | 830 | ||
| 823 | seen_fns = [] | 831 | seen_fns = [] |
| @@ -1322,6 +1330,8 @@ class BBCooker: | |||
| 1322 | # If we are told to do the None task then query the default task | 1330 | # If we are told to do the None task then query the default task |
| 1323 | if (task == None): | 1331 | if (task == None): |
| 1324 | task = self.configuration.cmd | 1332 | task = self.configuration.cmd |
| 1333 | if not task.startswith("do_"): | ||
| 1334 | task = "do_%s" % task | ||
| 1325 | 1335 | ||
| 1326 | fn, cls, mc = bb.cache.virtualfn2realfn(buildfile) | 1336 | fn, cls, mc = bb.cache.virtualfn2realfn(buildfile) |
| 1327 | fn = self.matchFile(fn) | 1337 | fn = self.matchFile(fn) |
| @@ -1358,8 +1368,6 @@ class BBCooker: | |||
| 1358 | # Invalidate task for target if force mode active | 1368 | # Invalidate task for target if force mode active |
| 1359 | if self.configuration.force: | 1369 | if self.configuration.force: |
| 1360 | logger.verbose("Invalidate task %s, %s", task, fn) | 1370 | logger.verbose("Invalidate task %s, %s", task, fn) |
| 1361 | if not task.startswith("do_"): | ||
| 1362 | task = "do_%s" % task | ||
| 1363 | bb.parse.siggen.invalidate_task(task, self.recipecaches[mc], fn) | 1371 | bb.parse.siggen.invalidate_task(task, self.recipecaches[mc], fn) |
| 1364 | 1372 | ||
| 1365 | # Setup taskdata structure | 1373 | # Setup taskdata structure |
| @@ -1371,8 +1379,6 @@ class BBCooker: | |||
| 1371 | bb.event.fire(bb.event.BuildStarted(buildname, [item]), self.expanded_data) | 1379 | bb.event.fire(bb.event.BuildStarted(buildname, [item]), self.expanded_data) |
| 1372 | 1380 | ||
| 1373 | # Execute the runqueue | 1381 | # Execute the runqueue |
| 1374 | if not task.startswith("do_"): | ||
| 1375 | task = "do_%s" % task | ||
| 1376 | runlist = [[mc, item, task, fn]] | 1382 | runlist = [[mc, item, task, fn]] |
| 1377 | 1383 | ||
| 1378 | rq = bb.runqueue.RunQueue(self, self.data, self.recipecaches, taskdata, runlist) | 1384 | rq = bb.runqueue.RunQueue(self, self.data, self.recipecaches, taskdata, runlist) |
