diff options
Diffstat (limited to 'bitbake/lib/bb/codeparser.py')
-rw-r--r-- | bitbake/lib/bb/codeparser.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/bitbake/lib/bb/codeparser.py b/bitbake/lib/bb/codeparser.py index 6ed2adeed9..25938d6586 100644 --- a/bitbake/lib/bb/codeparser.py +++ b/bitbake/lib/bb/codeparser.py | |||
@@ -6,12 +6,16 @@ import pickle | |||
6 | import bb.pysh as pysh | 6 | import bb.pysh as pysh |
7 | import os.path | 7 | import os.path |
8 | import bb.utils, bb.data | 8 | import bb.utils, bb.data |
9 | import hashlib | ||
9 | from itertools import chain | 10 | from itertools import chain |
10 | from bb.pysh import pyshyacc, pyshlex, sherrors | 11 | from bb.pysh import pyshyacc, pyshlex, sherrors |
11 | from bb.cache import MultiProcessCache | 12 | from bb.cache import MultiProcessCache |
12 | 13 | ||
13 | logger = logging.getLogger('BitBake.CodeParser') | 14 | logger = logging.getLogger('BitBake.CodeParser') |
14 | 15 | ||
16 | def bbhash(s): | ||
17 | return hashlib.md5(s.encode("utf-8")).hexdigest() | ||
18 | |||
15 | def check_indent(codestr): | 19 | def check_indent(codestr): |
16 | """If the code is indented, add a top level piece of code to 'remove' the indentation""" | 20 | """If the code is indented, add a top level piece of code to 'remove' the indentation""" |
17 | 21 | ||
@@ -270,7 +274,7 @@ class PythonParser(): | |||
270 | if not node or not node.strip(): | 274 | if not node or not node.strip(): |
271 | return | 275 | return |
272 | 276 | ||
273 | h = hash(str(node)) | 277 | h = bbhash(str(node)) |
274 | 278 | ||
275 | if h in codeparsercache.pythoncache: | 279 | if h in codeparsercache.pythoncache: |
276 | self.references = set(codeparsercache.pythoncache[h].refs) | 280 | self.references = set(codeparsercache.pythoncache[h].refs) |
@@ -315,7 +319,7 @@ class ShellParser(): | |||
315 | commands it executes. | 319 | commands it executes. |
316 | """ | 320 | """ |
317 | 321 | ||
318 | h = hash(str(value)) | 322 | h = bbhash(str(value)) |
319 | 323 | ||
320 | if h in codeparsercache.shellcache: | 324 | if h in codeparsercache.shellcache: |
321 | self.execs = set(codeparsercache.shellcache[h].execs) | 325 | self.execs = set(codeparsercache.shellcache[h].execs) |