From: Joshua Watt Date: Tue, 4 Dec 2018 03:42:37 +0000 (-0600) Subject: bitbake: siggen: Split out stampfile hash fetch X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e089fb1ae0cd1e72c6bf0c367a8311e93fcee7b5;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git 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 Signed-off-by: Richard Purdie --- diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py index fdbb2a39988..ab6df7603c8 100644 --- a/bitbake/lib/bb/siggen.py +++ b/bitbake/lib/bb/siggen.py @@ -311,6 +311,13 @@ class SignatureGeneratorBasic(SignatureGenerator): class SignatureGeneratorBasicHash(SignatureGeneratorBasic): name = "basichash" + def get_stampfile_hash(self, task): + if task in self.taskhash: + return self.taskhash[task] + + # If task is not in basehash, then error + return self.basehash[task] + def stampfile(self, stampbase, fn, taskname, extrainfo, clean=False): if taskname != "do_setscene" and taskname.endswith("_setscene"): k = fn + "." + taskname[:-9] @@ -318,11 +325,9 @@ class SignatureGeneratorBasicHash(SignatureGeneratorBasic): k = fn + "." + taskname if clean: h = "*" - elif k in self.taskhash: - h = self.taskhash[k] else: - # If k is not in basehash, then error - h = self.basehash[k] + h = self.get_stampfile_hash(k) + return ("%s.%s.%s.%s" % (stampbase, taskname, h, extrainfo)).rstrip('.') def stampcleanmask(self, stampbase, fn, taskname, extrainfo):