diff options
Diffstat (limited to 'bitbake/lib/bb/tests/runqueue-tests/classes/base.bbclass')
| -rw-r--r-- | bitbake/lib/bb/tests/runqueue-tests/classes/base.bbclass | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/bitbake/lib/bb/tests/runqueue-tests/classes/base.bbclass b/bitbake/lib/bb/tests/runqueue-tests/classes/base.bbclass index 5b87e20bce..3a0f151c9a 100644 --- a/bitbake/lib/bb/tests/runqueue-tests/classes/base.bbclass +++ b/bitbake/lib/bb/tests/runqueue-tests/classes/base.bbclass | |||
| @@ -216,27 +216,25 @@ def setscene_depvalid(task, taskdependees, notneeded, d, log=None): | |||
| 216 | 216 | ||
| 217 | BB_HASHCHECK_FUNCTION = "sstate_checkhashes" | 217 | BB_HASHCHECK_FUNCTION = "sstate_checkhashes" |
| 218 | 218 | ||
| 219 | def sstate_checkhashes(sq_fn, sq_task, sq_hash, sq_hashfn, d, siginfo=False, *, sq_unihash=None): | 219 | def sstate_checkhashes(sq_data, d, siginfo=False, currentcount=0, **kwargs): |
| 220 | 220 | ||
| 221 | ret = [] | 221 | found = set() |
| 222 | missed = [] | 222 | missed = set() |
| 223 | 223 | ||
| 224 | valid = d.getVar("SSTATEVALID").split() | 224 | valid = d.getVar("SSTATEVALID").split() |
| 225 | 225 | ||
| 226 | for task in range(len(sq_fn)): | 226 | for tid in sq_data['hash']: |
| 227 | n = os.path.basename(sq_fn[task]).rsplit(".", 1)[0] + ":" + sq_task[task] | 227 | n = os.path.basename(bb.runqueue.fn_from_tid(tid)).split(".")[0] + ":do_" + bb.runqueue.taskname_from_tid(tid)[3:] |
| 228 | print(n) | ||
| 228 | if n in valid: | 229 | if n in valid: |
| 229 | bb.note("SState: Found valid sstate for %s" % n) | 230 | bb.note("SState: Found valid sstate for %s" % n) |
| 230 | ret.append(task) | 231 | found.add(tid) |
| 231 | elif os.path.exists(d.expand("${TOPDIR}/%s.run" % n.replace("do_", ""))): | 232 | elif os.path.exists(d.expand("${TOPDIR}/%s.run" % n.replace("do_", ""))): |
| 232 | bb.note("SState: Found valid sstate for %s (already run)" % n) | 233 | bb.note("SState: Found valid sstate for %s (already run)" % n) |
| 233 | ret.append(task) | 234 | found.add(tid) |
| 234 | else: | 235 | else: |
| 235 | missed.append(task) | 236 | missed.add(tid) |
| 236 | bb.note("SState: Found no valid sstate for %s" % n) | 237 | bb.note("SState: Found no valid sstate for %s" % n) |
| 237 | 238 | ||
| 238 | if hasattr(bb.parse.siggen, "checkhashes"): | 239 | return found |
| 239 | bb.parse.siggen.checkhashes(missed, ret, sq_fn, sq_task, sq_hash, sq_hashfn, d) | ||
| 240 | |||
| 241 | return ret | ||
| 242 | 240 | ||
