diff options
Diffstat (limited to 'bitbake/lib/bb/cache.py')
| -rw-r--r-- | bitbake/lib/bb/cache.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/bitbake/lib/bb/cache.py b/bitbake/lib/bb/cache.py index 36e6356f51..dea2a80616 100644 --- a/bitbake/lib/bb/cache.py +++ b/bitbake/lib/bb/cache.py | |||
| @@ -43,7 +43,7 @@ except ImportError: | |||
| 43 | logger.info("Importing cPickle failed. " | 43 | logger.info("Importing cPickle failed. " |
| 44 | "Falling back to a very slow implementation.") | 44 | "Falling back to a very slow implementation.") |
| 45 | 45 | ||
| 46 | __cache_version__ = "143" | 46 | __cache_version__ = "144" |
| 47 | 47 | ||
| 48 | def getCacheFile(path, filename, data_hash): | 48 | def getCacheFile(path, filename, data_hash): |
| 49 | return os.path.join(path, filename + "." + data_hash) | 49 | return os.path.join(path, filename + "." + data_hash) |
| @@ -76,9 +76,13 @@ class RecipeInfoCommon(object): | |||
| 76 | for task in tasks) | 76 | for task in tasks) |
| 77 | 77 | ||
| 78 | @classmethod | 78 | @classmethod |
| 79 | def flaglist(cls, flag, varlist, metadata): | 79 | def flaglist(cls, flag, varlist, metadata, squash=False): |
| 80 | return dict((var, metadata.getVarFlag(var, flag, True)) | 80 | out_dict = dict((var, metadata.getVarFlag(var, flag, True)) |
| 81 | for var in varlist) | 81 | for var in varlist) |
| 82 | if squash: | ||
| 83 | return dict((k,v) for (k,v) in out_dict.iteritems() if v) | ||
| 84 | else: | ||
| 85 | return out_dict | ||
| 82 | 86 | ||
| 83 | @classmethod | 87 | @classmethod |
| 84 | def getvar(cls, var, metadata): | 88 | def getvar(cls, var, metadata): |
| @@ -128,6 +132,7 @@ class CoreRecipeInfo(RecipeInfoCommon): | |||
| 128 | self.stamp = self.getvar('STAMP', metadata) | 132 | self.stamp = self.getvar('STAMP', metadata) |
| 129 | self.stamp_base = self.flaglist('stamp-base', self.tasks, metadata) | 133 | self.stamp_base = self.flaglist('stamp-base', self.tasks, metadata) |
| 130 | self.stamp_extrainfo = self.flaglist('stamp-extra-info', self.tasks, metadata) | 134 | self.stamp_extrainfo = self.flaglist('stamp-extra-info', self.tasks, metadata) |
| 135 | self.file_checksums = self.flaglist('file-checksums', self.tasks, metadata, True) | ||
| 131 | self.packages_dynamic = self.listvar('PACKAGES_DYNAMIC', metadata) | 136 | self.packages_dynamic = self.listvar('PACKAGES_DYNAMIC', metadata) |
| 132 | self.depends = self.depvar('DEPENDS', metadata) | 137 | self.depends = self.depvar('DEPENDS', metadata) |
| 133 | self.provides = self.depvar('PROVIDES', metadata) | 138 | self.provides = self.depvar('PROVIDES', metadata) |
| @@ -154,6 +159,7 @@ class CoreRecipeInfo(RecipeInfoCommon): | |||
| 154 | cachedata.stamp = {} | 159 | cachedata.stamp = {} |
| 155 | cachedata.stamp_base = {} | 160 | cachedata.stamp_base = {} |
| 156 | cachedata.stamp_extrainfo = {} | 161 | cachedata.stamp_extrainfo = {} |
| 162 | cachedata.file_checksums = {} | ||
| 157 | cachedata.fn_provides = {} | 163 | cachedata.fn_provides = {} |
| 158 | cachedata.pn_provides = defaultdict(list) | 164 | cachedata.pn_provides = defaultdict(list) |
| 159 | cachedata.all_depends = [] | 165 | cachedata.all_depends = [] |
| @@ -185,6 +191,7 @@ class CoreRecipeInfo(RecipeInfoCommon): | |||
| 185 | cachedata.stamp[fn] = self.stamp | 191 | cachedata.stamp[fn] = self.stamp |
| 186 | cachedata.stamp_base[fn] = self.stamp_base | 192 | cachedata.stamp_base[fn] = self.stamp_base |
| 187 | cachedata.stamp_extrainfo[fn] = self.stamp_extrainfo | 193 | cachedata.stamp_extrainfo[fn] = self.stamp_extrainfo |
| 194 | cachedata.file_checksums[fn] = self.file_checksums | ||
| 188 | 195 | ||
| 189 | provides = [self.pn] | 196 | provides = [self.pn] |
| 190 | for provide in self.provides: | 197 | for provide in self.provides: |
