diff options
author | Joshua Watt <jpewhacker@gmail.com> | 2018-12-18 21:10:27 -0600 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-01-03 22:47:11 +0000 |
commit | 960fb3ed0250b4fe54c08be715c76d17e0990531 (patch) | |
tree | cadc725f044bf3948c22b87968d2c5fb9b51f63e /bitbake/lib/bb | |
parent | 6c6241536c0fee35cb94046a727cf68a60ffd3e5 (diff) | |
download | poky-960fb3ed0250b4fe54c08be715c76d17e0990531.tar.gz |
bitbake: siggen: Split out task unique hash
Abstracts the function to get the unique hash for a task. This hash is
used as in place of the taskhash for the purpose of determine how other
tasks depend on this one. Unless overridden, the taskhash is the same as
the unique hash, preserving the original behavior.
[YOCTO #13030]
(Bitbake rev: d0065b34cea81fcadff14b0383779e9559d94508)
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r-- | bitbake/lib/bb/siggen.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py index ab6df7603c..5508523f2d 100644 --- a/bitbake/lib/bb/siggen.py +++ b/bitbake/lib/bb/siggen.py | |||
@@ -41,6 +41,9 @@ class SignatureGenerator(object): | |||
41 | def finalise(self, fn, d, varient): | 41 | def finalise(self, fn, d, varient): |
42 | return | 42 | return |
43 | 43 | ||
44 | def get_unihash(self, task): | ||
45 | return self.taskhash[task] | ||
46 | |||
44 | def get_taskhash(self, fn, task, deps, dataCache): | 47 | def get_taskhash(self, fn, task, deps, dataCache): |
45 | return "0" | 48 | return "0" |
46 | 49 | ||
@@ -186,7 +189,7 @@ class SignatureGeneratorBasic(SignatureGenerator): | |||
186 | continue | 189 | continue |
187 | if dep not in self.taskhash: | 190 | if dep not in self.taskhash: |
188 | bb.fatal("%s is not in taskhash, caller isn't calling in dependency order?" % dep) | 191 | bb.fatal("%s is not in taskhash, caller isn't calling in dependency order?" % dep) |
189 | data = data + self.taskhash[dep] | 192 | data = data + self.get_unihash(dep) |
190 | self.runtaskdeps[k].append(dep) | 193 | self.runtaskdeps[k].append(dep) |
191 | 194 | ||
192 | if task in dataCache.file_checksums[fn]: | 195 | if task in dataCache.file_checksums[fn]: |
@@ -261,7 +264,7 @@ class SignatureGeneratorBasic(SignatureGenerator): | |||
261 | data['file_checksum_values'] = [(os.path.basename(f), cs) for f,cs in self.file_checksum_values[k]] | 264 | data['file_checksum_values'] = [(os.path.basename(f), cs) for f,cs in self.file_checksum_values[k]] |
262 | data['runtaskhashes'] = {} | 265 | data['runtaskhashes'] = {} |
263 | for dep in data['runtaskdeps']: | 266 | for dep in data['runtaskdeps']: |
264 | data['runtaskhashes'][dep] = self.taskhash[dep] | 267 | data['runtaskhashes'][dep] = self.get_unihash(dep) |
265 | data['taskhash'] = self.taskhash[k] | 268 | data['taskhash'] = self.taskhash[k] |
266 | 269 | ||
267 | taint = self.read_taint(fn, task, referencestamp) | 270 | taint = self.read_taint(fn, task, referencestamp) |