diff options
-rw-r--r-- | bitbake/lib/bb/cache.py | 7 | ||||
-rw-r--r-- | bitbake/lib/bb/codeparser.py | 8 | ||||
-rw-r--r-- | bitbake/lib/bb/cooker.py | 2 | ||||
-rw-r--r-- | bitbake/lib/bb/cookerdata.py | 9 | ||||
-rw-r--r-- | bitbake/lib/bb/fetch2/__init__.py | 2 |
5 files changed, 17 insertions, 11 deletions
diff --git a/bitbake/lib/bb/cache.py b/bitbake/lib/bb/cache.py index 8db4e47674..b309775bb9 100644 --- a/bitbake/lib/bb/cache.py +++ b/bitbake/lib/bb/cache.py | |||
@@ -838,11 +838,10 @@ class MultiProcessCache(object): | |||
838 | self.cachedata = self.create_cachedata() | 838 | self.cachedata = self.create_cachedata() |
839 | self.cachedata_extras = self.create_cachedata() | 839 | self.cachedata_extras = self.create_cachedata() |
840 | 840 | ||
841 | def init_cache(self, d, cache_file_name=None): | 841 | def init_cache(self, cachedir, cache_file_name=None): |
842 | cachedir = (d.getVar("PERSISTENT_DIR") or | 842 | if not cachedir: |
843 | d.getVar("CACHE")) | ||
844 | if cachedir in [None, '']: | ||
845 | return | 843 | return |
844 | |||
846 | bb.utils.mkdirhier(cachedir) | 845 | bb.utils.mkdirhier(cachedir) |
847 | self.cachefile = os.path.join(cachedir, | 846 | self.cachefile = os.path.join(cachedir, |
848 | cache_file_name or self.__class__.cache_file_name) | 847 | cache_file_name or self.__class__.cache_file_name) |
diff --git a/bitbake/lib/bb/codeparser.py b/bitbake/lib/bb/codeparser.py index ecae7b0808..d6b8102585 100644 --- a/bitbake/lib/bb/codeparser.py +++ b/bitbake/lib/bb/codeparser.py | |||
@@ -184,12 +184,12 @@ class CodeParserCache(MultiProcessCache): | |||
184 | self.shellcachelines[h] = cacheline | 184 | self.shellcachelines[h] = cacheline |
185 | return cacheline | 185 | return cacheline |
186 | 186 | ||
187 | def init_cache(self, d): | 187 | def init_cache(self, cachedir): |
188 | # Check if we already have the caches | 188 | # Check if we already have the caches |
189 | if self.pythoncache: | 189 | if self.pythoncache: |
190 | return | 190 | return |
191 | 191 | ||
192 | MultiProcessCache.init_cache(self, d) | 192 | MultiProcessCache.init_cache(self, cachedir) |
193 | 193 | ||
194 | # cachedata gets re-assigned in the parent | 194 | # cachedata gets re-assigned in the parent |
195 | self.pythoncache = self.cachedata[0] | 195 | self.pythoncache = self.cachedata[0] |
@@ -201,8 +201,8 @@ class CodeParserCache(MultiProcessCache): | |||
201 | 201 | ||
202 | codeparsercache = CodeParserCache() | 202 | codeparsercache = CodeParserCache() |
203 | 203 | ||
204 | def parser_cache_init(d): | 204 | def parser_cache_init(cachedir): |
205 | codeparsercache.init_cache(d) | 205 | codeparsercache.init_cache(cachedir) |
206 | 206 | ||
207 | def parser_cache_save(): | 207 | def parser_cache_save(): |
208 | codeparsercache.save_extras() | 208 | codeparsercache.save_extras() |
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index f28951cce5..c5e9fa2941 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -2268,7 +2268,7 @@ class CookerParser(object): | |||
2268 | if hasattr(process, "close"): | 2268 | if hasattr(process, "close"): |
2269 | process.close() | 2269 | process.close() |
2270 | 2270 | ||
2271 | 2271 | bb.codeparser.parser_cache_save() | |
2272 | bb.codeparser.parser_cache_savemerge() | 2272 | bb.codeparser.parser_cache_savemerge() |
2273 | bb.cache.SiggenRecipeInfo.reset() | 2273 | bb.cache.SiggenRecipeInfo.reset() |
2274 | bb.fetch.fetcher_parse_done() | 2274 | bb.fetch.fetcher_parse_done() |
diff --git a/bitbake/lib/bb/cookerdata.py b/bitbake/lib/bb/cookerdata.py index c6b5658d75..1658bee93c 100644 --- a/bitbake/lib/bb/cookerdata.py +++ b/bitbake/lib/bb/cookerdata.py | |||
@@ -271,7 +271,6 @@ class CookerDataBuilder(object): | |||
271 | if self.data.getVar("BB_WORKERCONTEXT", False) is None and not worker: | 271 | if self.data.getVar("BB_WORKERCONTEXT", False) is None and not worker: |
272 | bb.fetch.fetcher_init(self.data) | 272 | bb.fetch.fetcher_init(self.data) |
273 | bb.parse.init_parser(self.data) | 273 | bb.parse.init_parser(self.data) |
274 | bb.codeparser.parser_cache_init(self.data) | ||
275 | 274 | ||
276 | bb.event.fire(bb.event.ConfigParsed(), self.data) | 275 | bb.event.fire(bb.event.ConfigParsed(), self.data) |
277 | 276 | ||
@@ -370,6 +369,11 @@ class CookerDataBuilder(object): | |||
370 | data.setVar("TOPDIR", os.path.dirname(os.path.dirname(layerconf))) | 369 | data.setVar("TOPDIR", os.path.dirname(os.path.dirname(layerconf))) |
371 | data = parse_config_file(layerconf, data) | 370 | data = parse_config_file(layerconf, data) |
372 | 371 | ||
372 | if not data.getVar("BB_CACHEDIR"): | ||
373 | data.setVar("BB_CACHEDIR", "${TOPDIR}/cache") | ||
374 | |||
375 | bb.codeparser.parser_cache_init(data.getVar("BB_CACHEDIR")) | ||
376 | |||
373 | layers = (data.getVar('BBLAYERS') or "").split() | 377 | layers = (data.getVar('BBLAYERS') or "").split() |
374 | broken_layers = [] | 378 | broken_layers = [] |
375 | 379 | ||
@@ -473,6 +477,9 @@ class CookerDataBuilder(object): | |||
473 | 477 | ||
474 | if not data.getVar("TOPDIR"): | 478 | if not data.getVar("TOPDIR"): |
475 | data.setVar("TOPDIR", os.path.abspath(os.getcwd())) | 479 | data.setVar("TOPDIR", os.path.abspath(os.getcwd())) |
480 | if not data.getVar("BB_CACHEDIR"): | ||
481 | data.setVar("BB_CACHEDIR", "${TOPDIR}/cache") | ||
482 | bb.codeparser.parser_cache_init(data.getVar("BB_CACHEDIR")) | ||
476 | 483 | ||
477 | data = parse_config_file(os.path.join("conf", "bitbake.conf"), data) | 484 | data = parse_config_file(os.path.join("conf", "bitbake.conf"), data) |
478 | 485 | ||
diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py index b1cd6b25c2..5a7a6024d1 100644 --- a/bitbake/lib/bb/fetch2/__init__.py +++ b/bitbake/lib/bb/fetch2/__init__.py | |||
@@ -518,7 +518,7 @@ def fetcher_init(d): | |||
518 | else: | 518 | else: |
519 | raise FetchError("Invalid SRCREV cache policy of: %s" % srcrev_policy) | 519 | raise FetchError("Invalid SRCREV cache policy of: %s" % srcrev_policy) |
520 | 520 | ||
521 | _checksum_cache.init_cache(d) | 521 | _checksum_cache.init_cache(d.getVar("BB_CACHEDIR")) |
522 | 522 | ||
523 | for m in methods: | 523 | for m in methods: |
524 | if hasattr(m, "init"): | 524 | if hasattr(m, "init"): |