diff options
-rw-r--r-- | bitbake/lib/bb/runqueue.py | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index e26aa4e075..d605b310ff 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py @@ -1358,6 +1358,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute): sq_hash = [] sq_hashfn = [] sq_fn = [] + sq_taskname = [] sq_task = [] noexec = [] for task in range(len(self.sq_revdeps)): @@ -1372,14 +1373,19 @@ class RunQueueExecuteScenequeue(RunQueueExecute): sq_fn.append(fn) sq_hashfn.append(self.rqdata.dataCache.hashfn[fn]) sq_hash.append(self.rqdata.runq_hash[realtask]) - sq_task.append(taskname) - + sq_taskname.append(taskname) + sq_task.append(task) call = self.rq.hashvalidate + "(sq_fn, sq_task, sq_hash, sq_hashfn, d)" - locs = { "sq_fn" : sq_fn, "sq_task" : sq_task, "sq_hash" : sq_hash, "sq_hashfn" : sq_hashfn, "d" : self.cooker.configuration.data } + locs = { "sq_fn" : sq_fn, "sq_task" : sq_taskname, "sq_hash" : sq_hash, "sq_hashfn" : sq_hashfn, "d" : self.cooker.configuration.data } valid = bb.utils.better_eval(call, locs) + + valid_new = [] + for v in valid: + valid_new.append(sq_task[v]) + for task in range(len(self.sq_revdeps)): - if task not in valid and task not in noexec: - bb.msg.debug(2, bb.msg.domain.RunQueue, "No package found so skipping setscene task %s" % (self.rqdata.get_user_idstring(task))) + if task not in valid_new and task not in noexec: + bb.msg.debug(2, bb.msg.domain.RunQueue, "No package found so skipping setscene task %s" % (self.rqdata.get_user_idstring(self.rqdata.runq_setscene[task]))) self.task_failoutright(task) #print(str(valid)) |