bitbake: cache/siggen: Simplify passing basehash data into the cache

The basehash data is really internal bitbake data and passing an object
directly is more efficient than creating and then extracting variables.

This will match the format of other data we may optionally wish to
store in the cache so more to the more efficient method. Nothing I
can see is using this data today (and nothing should be).

(Bitbake rev: e621093a1bf37cd75ede3fb77ab6845556870fc7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie 2022-12-01 22:07:15 +00:00
parent 8a15a09b59
commit c14d8b9b6b
2 changed files with 6 additions and 3 deletions

View File

@ -28,7 +28,7 @@ import shutil
logger = logging.getLogger("BitBake.Cache")
__cache_version__ = "154"
__cache_version__ = "155"
def getCacheFile(path, filename, mc, data_hash):
mcspec = ''
@ -105,7 +105,7 @@ class CoreRecipeInfo(RecipeInfoCommon):
self.tasks = metadata.getVar('__BBTASKS', False)
self.basetaskhashes = self.taskvar('BB_BASEHASH', self.tasks, metadata)
self.basetaskhashes = metadata.getVar('__siggen_basehashes', False) or {}
self.hashfilename = self.getvar('BB_HASHFILENAME', metadata)
self.task_deps = metadata.getVar('_task_deps', False) or {'tasks': [], 'parents': {}}

View File

@ -247,8 +247,11 @@ class SignatureGeneratorBasic(SignatureGenerator):
#for task in self.taskdeps[fn]:
# self.dump_sigtask(fn, task, d.getVar("STAMP"), False)
basehashes = {}
for task in taskdeps:
d.setVar("BB_BASEHASH:task-%s" % task, self.basehash[fn + ":" + task])
basehashes[task] = self.basehash[fn + ":" + task]
d.setVar("__siggen_basehashes", basehashes)
def postparsing_clean_cache(self):
#