diff options
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/lib/bb/cooker.py | 5 | ||||
-rw-r--r-- | bitbake/lib/bb/parse/__init__.py | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 77b7f3dde1..b3d6cd9e34 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -189,7 +189,7 @@ class BBCooker: | |||
189 | 189 | ||
190 | # If being called by something like tinfoil, we need to clean cached data | 190 | # If being called by something like tinfoil, we need to clean cached data |
191 | # which may now be invalid | 191 | # which may now be invalid |
192 | bb.parse.__mtime_cache = {} | 192 | bb.parse.clear_cache() |
193 | bb.parse.BBHandler.cached_statements = {} | 193 | bb.parse.BBHandler.cached_statements = {} |
194 | 194 | ||
195 | self.ui_cmdline = None | 195 | self.ui_cmdline = None |
@@ -247,7 +247,9 @@ class BBCooker: | |||
247 | def config_notifications(self, event): | 247 | def config_notifications(self, event): |
248 | if event.maskname == "IN_Q_OVERFLOW": | 248 | if event.maskname == "IN_Q_OVERFLOW": |
249 | bb.warn("inotify event queue overflowed, invalidating caches.") | 249 | bb.warn("inotify event queue overflowed, invalidating caches.") |
250 | self.parsecache_valid = False | ||
250 | self.baseconfig_valid = False | 251 | self.baseconfig_valid = False |
252 | bb.parse.clear_cache() | ||
251 | return | 253 | return |
252 | if not event.pathname in self.configwatcher.bbwatchedfiles: | 254 | if not event.pathname in self.configwatcher.bbwatchedfiles: |
253 | return | 255 | return |
@@ -259,6 +261,7 @@ class BBCooker: | |||
259 | if event.maskname == "IN_Q_OVERFLOW": | 261 | if event.maskname == "IN_Q_OVERFLOW": |
260 | bb.warn("inotify event queue overflowed, invalidating caches.") | 262 | bb.warn("inotify event queue overflowed, invalidating caches.") |
261 | self.parsecache_valid = False | 263 | self.parsecache_valid = False |
264 | bb.parse.clear_cache() | ||
262 | return | 265 | return |
263 | if not event.pathname in self.inotify_modified_files: | 266 | if not event.pathname in self.inotify_modified_files: |
264 | self.inotify_modified_files.append(event.pathname) | 267 | self.inotify_modified_files.append(event.pathname) |
diff --git a/bitbake/lib/bb/parse/__init__.py b/bitbake/lib/bb/parse/__init__.py index a2952ecc0f..2fc4002db5 100644 --- a/bitbake/lib/bb/parse/__init__.py +++ b/bitbake/lib/bb/parse/__init__.py | |||
@@ -84,6 +84,10 @@ def update_cache(f): | |||
84 | logger.debug(1, "Updating mtime cache for %s" % f) | 84 | logger.debug(1, "Updating mtime cache for %s" % f) |
85 | update_mtime(f) | 85 | update_mtime(f) |
86 | 86 | ||
87 | def clear_cache(): | ||
88 | global __mtime_cache | ||
89 | __mtime_cache = {} | ||
90 | |||
87 | def mark_dependency(d, f): | 91 | def mark_dependency(d, f): |
88 | if f.startswith('./'): | 92 | if f.startswith('./'): |
89 | f = "%s/%s" % (os.getcwd(), f[2:]) | 93 | f = "%s/%s" % (os.getcwd(), f[2:]) |