From 61fbff2cd43720037de0266b73d5460576ed07e8 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 10 Jul 2015 14:05:06 +0100 Subject: bitbake: cooker/taskdata: Make NoProvider errors non-fatal to -e/-g options If you have a situation where you are getting a "Nothing PROVIDES" error (for example when something you request to build DEPENDS on something that has been skipped or doesn't exist) it would be useful to be able to use bitbake -g or bitbake -e to debug it, but currently both of those are blocked by the error. This patch adds an "allowincomplete" option to taskdata and uses this for the -e/-g bitbake options. The NoProvider errors are still printed and bitbake does return an error exist code but the environment and task graph files are generated. [YOCTO #7623] (Bitbake rev: 2ca36a9f088438a8d1db44119c704f9480b04298) Signed-off-by: Richard Purdie --- bitbake/lib/bb/cooker.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'bitbake/lib/bb/cooker.py') diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 58137f6d62..46e5560e83 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py @@ -581,7 +581,7 @@ class BBCooker: if pkgs_to_build[0] in set(ignore.split()): bb.fatal("%s is in ASSUME_PROVIDED" % pkgs_to_build[0]) - taskdata, runlist, pkgs_to_build = self.buildTaskData(pkgs_to_build, None, self.configuration.abort) + taskdata, runlist, pkgs_to_build = self.buildTaskData(pkgs_to_build, None, self.configuration.abort, allowincomplete=True) targetid = taskdata.getbuild_id(pkgs_to_build[0]) fnid = taskdata.build_targets[targetid][0] @@ -614,7 +614,7 @@ class BBCooker: logger.plain("\npython %s () {\n%s}\n", e, envdata.getVar(e, True)) - def buildTaskData(self, pkgs_to_build, task, abort): + def buildTaskData(self, pkgs_to_build, task, abort, allowincomplete=False): """ Prepare a runqueue and taskdata object for iteration over pkgs_to_build """ @@ -629,7 +629,7 @@ class BBCooker: localdata = data.createCopy(self.data) bb.data.update_data(localdata) bb.data.expandKeys(localdata) - taskdata = bb.taskdata.TaskData(abort, skiplist=self.skiplist) + taskdata = bb.taskdata.TaskData(abort, skiplist=self.skiplist, allowincomplete=allowincomplete) current = 0 runlist = [] @@ -654,7 +654,7 @@ class BBCooker: # We set abort to False here to prevent unbuildable targets raising # an exception when we're just generating data - taskdata, runlist, pkgs_to_build = self.buildTaskData(pkgs_to_build, task, False) + taskdata, runlist, pkgs_to_build = self.buildTaskData(pkgs_to_build, task, False, allowincomplete=True) return runlist, taskdata -- cgit v1.2.3-54-g00ecf