diff options
-rw-r--r-- | bitbake/lib/bb/runqueue.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index b4f2013f0d..61036b3eb6 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py | |||
@@ -1869,6 +1869,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute): | |||
1869 | sq_revdeps_new = {} | 1869 | sq_revdeps_new = {} |
1870 | sq_revdeps_squash = {} | 1870 | sq_revdeps_squash = {} |
1871 | self.sq_harddeps = {} | 1871 | self.sq_harddeps = {} |
1872 | self.stamps = {} | ||
1872 | 1873 | ||
1873 | # We need to construct a dependency graph for the setscene functions. Intermediate | 1874 | # We need to construct a dependency graph for the setscene functions. Intermediate |
1874 | # dependencies between the setscene tasks only complicate the code. This code | 1875 | # dependencies between the setscene tasks only complicate the code. This code |
@@ -1982,6 +1983,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute): | |||
1982 | (mc, fn, taskname, taskfn) = split_tid_mcfn(tid) | 1983 | (mc, fn, taskname, taskfn) = split_tid_mcfn(tid) |
1983 | realtid = tid + "_setscene" | 1984 | realtid = tid + "_setscene" |
1984 | idepends = self.rqdata.taskData[mc].taskentries[realtid].idepends | 1985 | idepends = self.rqdata.taskData[mc].taskentries[realtid].idepends |
1986 | self.stamps[tid] = bb.build.stampfile(taskname + "_setscene", self.rqdata.dataCaches[mc], taskfn, noextra=True) | ||
1985 | for (depname, idependtask) in idepends: | 1987 | for (depname, idependtask) in idepends: |
1986 | 1988 | ||
1987 | if depname not in self.rqdata.taskData[mc].build_targets: | 1989 | if depname not in self.rqdata.taskData[mc].build_targets: |
@@ -2158,7 +2160,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute): | |||
2158 | if self.stats.active < self.number_tasks: | 2160 | if self.stats.active < self.number_tasks: |
2159 | # Find the next setscene to run | 2161 | # Find the next setscene to run |
2160 | for nexttask in self.rqdata.runq_setscene_tids: | 2162 | for nexttask in self.rqdata.runq_setscene_tids: |
2161 | if nexttask in self.runq_buildable and nexttask not in self.runq_running: | 2163 | if nexttask in self.runq_buildable and nexttask not in self.runq_running and self.stamps[nexttask] not in self.build_stamps.values(): |
2162 | if nexttask in self.unskippable: | 2164 | if nexttask in self.unskippable: |
2163 | logger.debug(2, "Setscene task %s is unskippable" % nexttask) | 2165 | logger.debug(2, "Setscene task %s is unskippable" % nexttask) |
2164 | if nexttask not in self.unskippable and len(self.sq_revdeps[nexttask]) > 0 and self.sq_revdeps[nexttask].issubset(self.scenequeue_covered) and self.check_dependencies(nexttask, self.sq_revdeps[nexttask], True): | 2166 | if nexttask not in self.unskippable and len(self.sq_revdeps[nexttask]) > 0 and self.sq_revdeps[nexttask].issubset(self.scenequeue_covered) and self.check_dependencies(nexttask, self.sq_revdeps[nexttask], True): |
@@ -2208,6 +2210,8 @@ class RunQueueExecuteScenequeue(RunQueueExecute): | |||
2208 | self.rq.worker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, True, self.cooker.collection.get_file_appends(taskfn), None)) + b"</runtask>") | 2210 | self.rq.worker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, True, self.cooker.collection.get_file_appends(taskfn), None)) + b"</runtask>") |
2209 | self.rq.worker[mc].process.stdin.flush() | 2211 | self.rq.worker[mc].process.stdin.flush() |
2210 | 2212 | ||
2213 | self.build_stamps[task] = bb.build.stampfile(taskname, self.rqdata.dataCaches[mc], taskfn, noextra=True) | ||
2214 | self.build_stamps2.append(self.build_stamps[task]) | ||
2211 | self.runq_running.add(task) | 2215 | self.runq_running.add(task) |
2212 | self.stats.taskActive() | 2216 | self.stats.taskActive() |
2213 | if self.stats.active < self.number_tasks: | 2217 | if self.stats.active < self.number_tasks: |