mirror of
https://git.yoctoproject.org/poky
synced 2026-04-26 18:32:13 +02:00
bitbake: runqueue: Refactor StaleSetSceneTasks event out of build_scenequeue_data
The event at the end of the function doesn't really belong there, move it out so the function becomes cleaner. It also avoids having to pass a number of parameters around, another sign this is the correct thing to do. This continues refactoring started a while ago to improve and modularise the code. (Bitbake rev: f712b927a84e8b8deaa8c907e8f9bcdec681f2aa) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -1874,7 +1874,23 @@ class RunQueueExecute:
|
||||
|
||||
#if self.rqdata.runq_setscene_tids:
|
||||
self.sqdata = SQData()
|
||||
build_scenequeue_data(self.sqdata, self.rqdata, self.rq, self.cooker, self.stampcache, self)
|
||||
build_scenequeue_data(self.sqdata, self.rqdata, self)
|
||||
|
||||
update_scenequeue_data(self.sqdata.sq_revdeps, self.sqdata, self.rqdata, self.rq, self.cooker, self.stampcache, self, summary=True)
|
||||
|
||||
# Compute a list of 'stale' sstate tasks where the current hash does not match the one
|
||||
# in any stamp files. Pass the list out to metadata as an event.
|
||||
found = {}
|
||||
for tid in self.rqdata.runq_setscene_tids:
|
||||
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
|
||||
stamps = bb.build.find_stale_stamps(taskname, taskfn)
|
||||
if stamps:
|
||||
if mc not in found:
|
||||
found[mc] = {}
|
||||
found[mc][tid] = stamps
|
||||
for mc in found:
|
||||
event = bb.event.StaleSetSceneTasks(found[mc])
|
||||
bb.event.fire(event, self.cooker.databuilder.mcdata[mc])
|
||||
|
||||
def runqueue_process_waitpid(self, task, status, fakerootlog=None):
|
||||
|
||||
@@ -2773,7 +2789,7 @@ class SQData(object):
|
||||
# A list of normal tasks a setscene task covers
|
||||
self.sq_covered_tasks = {}
|
||||
|
||||
def build_scenequeue_data(sqdata, rqdata, rq, cooker, stampcache, sqrq):
|
||||
def build_scenequeue_data(sqdata, rqdata, sqrq):
|
||||
|
||||
sq_revdeps = {}
|
||||
sq_revdeps_squash = {}
|
||||
@@ -2962,22 +2978,6 @@ def build_scenequeue_data(sqdata, rqdata, rq, cooker, stampcache, sqrq):
|
||||
sqrq.sq_deferred[tid] = sqdata.hashes[h]
|
||||
bb.debug(1, "Deferring %s after %s" % (tid, sqdata.hashes[h]))
|
||||
|
||||
update_scenequeue_data(sqdata.sq_revdeps, sqdata, rqdata, rq, cooker, stampcache, sqrq, summary=True)
|
||||
|
||||
# Compute a list of 'stale' sstate tasks where the current hash does not match the one
|
||||
# in any stamp files. Pass the list out to metadata as an event.
|
||||
found = {}
|
||||
for tid in rqdata.runq_setscene_tids:
|
||||
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
|
||||
stamps = bb.build.find_stale_stamps(taskname, taskfn)
|
||||
if stamps:
|
||||
if mc not in found:
|
||||
found[mc] = {}
|
||||
found[mc][tid] = stamps
|
||||
for mc in found:
|
||||
event = bb.event.StaleSetSceneTasks(found[mc])
|
||||
bb.event.fire(event, cooker.databuilder.mcdata[mc])
|
||||
|
||||
def check_setscene_stamps(tid, rqdata, rq, stampcache, noexecstamp=False):
|
||||
|
||||
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
|
||||
|
||||
Reference in New Issue
Block a user