summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoshua Watt <jpewhacker@gmail.com>2018-12-03 21:42:37 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-12-07 12:38:58 +0000
commite089fb1ae0cd1e72c6bf0c367a8311e93fcee7b5 (patch)
tree84e5ed23a079e6a791e496c92e73d291fa4b87c7
parent86cc1a4104d71235cfdc9b5acfa820758191480a (diff)
downloadpoky-e089fb1ae0cd1e72c6bf0c367a8311e93fcee7b5.tar.gz
bitbake: siggen: Split out stampfile hash fetch
The mechanism used to get the hash for a stamp file is split out so that it can be overridden by derived classes [YOCTO #13030] (Bitbake rev: ce241534d19b2f1c51dbdb3b92419676d234e464) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--bitbake/lib/bb/siggen.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py
index fdbb2a3998..ab6df7603c 100644
--- a/bitbake/lib/bb/siggen.py
+++ b/bitbake/lib/bb/siggen.py
@@ -311,6 +311,13 @@ class SignatureGeneratorBasic(SignatureGenerator):
311class SignatureGeneratorBasicHash(SignatureGeneratorBasic): 311class SignatureGeneratorBasicHash(SignatureGeneratorBasic):
312 name = "basichash" 312 name = "basichash"
313 313
314 def get_stampfile_hash(self, task):
315 if task in self.taskhash:
316 return self.taskhash[task]
317
318 # If task is not in basehash, then error
319 return self.basehash[task]
320
314 def stampfile(self, stampbase, fn, taskname, extrainfo, clean=False): 321 def stampfile(self, stampbase, fn, taskname, extrainfo, clean=False):
315 if taskname != "do_setscene" and taskname.endswith("_setscene"): 322 if taskname != "do_setscene" and taskname.endswith("_setscene"):
316 k = fn + "." + taskname[:-9] 323 k = fn + "." + taskname[:-9]
@@ -318,11 +325,9 @@ class SignatureGeneratorBasicHash(SignatureGeneratorBasic):
318 k = fn + "." + taskname 325 k = fn + "." + taskname
319 if clean: 326 if clean:
320 h = "*" 327 h = "*"
321 elif k in self.taskhash:
322 h = self.taskhash[k]
323 else: 328 else:
324 # If k is not in basehash, then error 329 h = self.get_stampfile_hash(k)
325 h = self.basehash[k] 330
326 return ("%s.%s.%s.%s" % (stampbase, taskname, h, extrainfo)).rstrip('.') 331 return ("%s.%s.%s.%s" % (stampbase, taskname, h, extrainfo)).rstrip('.')
327 332
328 def stampcleanmask(self, stampbase, fn, taskname, extrainfo): 333 def stampcleanmask(self, stampbase, fn, taskname, extrainfo):