diff options
Diffstat (limited to 'bitbake/lib/bb/utils.py')
| -rw-r--r-- | bitbake/lib/bb/utils.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/bitbake/lib/bb/utils.py b/bitbake/lib/bb/utils.py index e564bb6ff4..cd5fcede3c 100644 --- a/bitbake/lib/bb/utils.py +++ b/bitbake/lib/bb/utils.py | |||
| @@ -298,10 +298,15 @@ def better_compile(text, file, realfile, mode = "exec", lineno = None): | |||
| 298 | will print the offending lines. | 298 | will print the offending lines. |
| 299 | """ | 299 | """ |
| 300 | try: | 300 | try: |
| 301 | cache = bb.methodpool.compile_cache(text) | ||
| 302 | if cache: | ||
| 303 | return cache | ||
| 301 | code = compile(text, realfile, mode, ast.PyCF_ONLY_AST) | 304 | code = compile(text, realfile, mode, ast.PyCF_ONLY_AST) |
| 302 | if lineno is not None: | 305 | if lineno is not None: |
| 303 | ast.increment_lineno(code, lineno) | 306 | ast.increment_lineno(code, lineno) |
| 304 | return compile(code, realfile, mode) | 307 | code = compile(code, realfile, mode) |
| 308 | bb.methodpool.compile_cache_add(text, code) | ||
| 309 | return code | ||
| 305 | except Exception as e: | 310 | except Exception as e: |
| 306 | error = [] | 311 | error = [] |
| 307 | # split the text into lines again | 312 | # split the text into lines again |
