diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-04-03 15:48:30 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-04-03 22:50:17 +0100 |
commit | af5f423887d1c41cf7279f6e537077726ae13082 (patch) | |
tree | b79c6e819583504bc00362ba49106cc2ae4e0094 /bitbake/lib | |
parent | 47e9e125d7378139de1d9180a8b24aa9d088f4f6 (diff) | |
download | poky-af5f423887d1c41cf7279f6e537077726ae13082.tar.gz |
bitbake: 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.
(Bitbake rev: da444c9761ee15a59ea8880e3f812a5d3f1a1aaa)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib')
-rw-r--r-- | bitbake/lib/bb/siggen.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py index 1fa7b09272..88fc0f1d5c 100644 --- a/bitbake/lib/bb/siggen.py +++ b/bitbake/lib/bb/siggen.py | |||
@@ -238,9 +238,12 @@ class SignatureGeneratorBasic(SignatureGenerator): | |||
238 | bb.fetch2.fetcher_parse_done() | 238 | bb.fetch2.fetcher_parse_done() |
239 | 239 | ||
240 | def dump_sigtask(self, fn, task, stampbase, runtime): | 240 | def dump_sigtask(self, fn, task, stampbase, runtime): |
241 | |||
241 | k = fn + "." + task | 242 | k = fn + "." + task |
242 | if runtime == "customfile": | 243 | referencestamp = stampbase |
244 | if isinstance(runtime, str) and runtime.startswith("customfile"): | ||
243 | sigfile = stampbase | 245 | sigfile = stampbase |
246 | referencestamp = runtime[11:] | ||
244 | elif runtime and k in self.taskhash: | 247 | elif runtime and k in self.taskhash: |
245 | sigfile = stampbase + "." + task + ".sigdata" + "." + self.taskhash[k] | 248 | sigfile = stampbase + "." + task + ".sigdata" + "." + self.taskhash[k] |
246 | else: | 249 | else: |
@@ -271,7 +274,7 @@ class SignatureGeneratorBasic(SignatureGenerator): | |||
271 | data['runtaskhashes'][dep] = self.taskhash[dep] | 274 | data['runtaskhashes'][dep] = self.taskhash[dep] |
272 | data['taskhash'] = self.taskhash[k] | 275 | data['taskhash'] = self.taskhash[k] |
273 | 276 | ||
274 | taint = self.read_taint(fn, task, stampbase) | 277 | taint = self.read_taint(fn, task, referencestamp) |
275 | if taint: | 278 | if taint: |
276 | data['taint'] = taint | 279 | data['taint'] = taint |
277 | 280 | ||
@@ -341,7 +344,8 @@ def dump_this_task(outfile, d): | |||
341 | import bb.parse | 344 | import bb.parse |
342 | fn = d.getVar("BB_FILENAME", True) | 345 | fn = d.getVar("BB_FILENAME", True) |
343 | task = "do_" + d.getVar("BB_CURRENTTASK", True) | 346 | task = "do_" + d.getVar("BB_CURRENTTASK", True) |
344 | bb.parse.siggen.dump_sigtask(fn, task, outfile, "customfile") | 347 | referencestamp = bb.build.stamp_internal(task, d, None, True) |
348 | bb.parse.siggen.dump_sigtask(fn, task, outfile, "customfile:" + referencestamp) | ||
345 | 349 | ||
346 | def clean_basepath(a): | 350 | def clean_basepath(a): |
347 | b = a.rsplit("/", 2)[1] + a.rsplit("/", 2)[2] | 351 | b = a.rsplit("/", 2)[1] + a.rsplit("/", 2)[2] |