From da444c9761ee15a59ea8880e3f812a5d3f1a1aaa Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sun, 3 Apr 2016 15:48:30 +0100 Subject: siggen: Ensure tainted stamps are accounted for with writing custom stamps sstate.bbclass for example writes siginfo files to a separate location but we need to read taint data from the standard path. Signed-off-by: Richard Purdie --- lib/bb/siggen.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/bb/siggen.py b/lib/bb/siggen.py index 1fa7b09272..88fc0f1d5c 100644 --- a/lib/bb/siggen.py +++ b/lib/bb/siggen.py @@ -238,9 +238,12 @@ class SignatureGeneratorBasic(SignatureGenerator): bb.fetch2.fetcher_parse_done() def dump_sigtask(self, fn, task, stampbase, runtime): + k = fn + "." + task - if runtime == "customfile": + referencestamp = stampbase + if isinstance(runtime, str) and runtime.startswith("customfile"): sigfile = stampbase + referencestamp = runtime[11:] elif runtime and k in self.taskhash: sigfile = stampbase + "." + task + ".sigdata" + "." + self.taskhash[k] else: @@ -271,7 +274,7 @@ class SignatureGeneratorBasic(SignatureGenerator): data['runtaskhashes'][dep] = self.taskhash[dep] data['taskhash'] = self.taskhash[k] - taint = self.read_taint(fn, task, stampbase) + taint = self.read_taint(fn, task, referencestamp) if taint: data['taint'] = taint @@ -341,7 +344,8 @@ def dump_this_task(outfile, d): import bb.parse fn = d.getVar("BB_FILENAME", True) task = "do_" + d.getVar("BB_CURRENTTASK", True) - bb.parse.siggen.dump_sigtask(fn, task, outfile, "customfile") + referencestamp = bb.build.stamp_internal(task, d, None, True) + bb.parse.siggen.dump_sigtask(fn, task, outfile, "customfile:" + referencestamp) def clean_basepath(a): b = a.rsplit("/", 2)[1] + a.rsplit("/", 2)[2] -- cgit 1.2.3-korg