diff options
Diffstat (limited to 'bitbake/lib/bb/cache.py')
-rw-r--r-- | bitbake/lib/bb/cache.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/bitbake/lib/bb/cache.py b/bitbake/lib/bb/cache.py index 9a2e2d5298..262f574f51 100644 --- a/bitbake/lib/bb/cache.py +++ b/bitbake/lib/bb/cache.py @@ -43,7 +43,7 @@ except ImportError: logger.info("Importing cPickle failed. " "Falling back to a very slow implementation.") -__cache_version__ = "134" +__cache_version__ = "135" recipe_fields = ( 'pn', @@ -55,6 +55,7 @@ recipe_fields = ( 'provides', 'task_deps', 'stamp', + 'stamp_extrainfo', 'broken', 'not_world', 'skipped', @@ -102,6 +103,11 @@ class RecipeInfo(namedtuple('RecipeInfo', recipe_fields)): for task in tasks) @classmethod + def flaglist(cls, flag, varlist, metadata): + return dict((var, metadata.getVarFlag(flag, var, True)) + for var in varlist) + + @classmethod def getvar(cls, var, metadata): return metadata.getVar(var, True) or '' @@ -148,6 +154,7 @@ class RecipeInfo(namedtuple('RecipeInfo', recipe_fields)): broken = cls.getvar('BROKEN', metadata), not_world = cls.getvar('EXCLUDE_FROM_WORLD', metadata), stamp = cls.getvar('STAMP', metadata), + stamp_extrainfo = cls.flaglist('stamp-extra-info', tasks, metadata), packages_dynamic = cls.listvar('PACKAGES_DYNAMIC', metadata), depends = cls.depvar('DEPENDS', metadata), provides = cls.depvar('PROVIDES', metadata), @@ -562,6 +569,7 @@ class CacheData(object): self.task_queues = {} self.task_deps = {} self.stamp = {} + self.stamp_extrainfo = {} self.preferred = {} self.tasks = {} self.basetaskhash = {} @@ -583,6 +591,7 @@ class CacheData(object): self.pkg_pepvpr[fn] = (info.pe, info.pv, info.pr) self.pkg_dp[fn] = info.defaultpref self.stamp[fn] = info.stamp + self.stamp_extrainfo[fn] = info.stamp_extrainfo provides = [info.pn] for provide in info.provides: |