summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bitbake/lib/bb/codeparser.py8
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
6import bb.pysh as pysh 6import bb.pysh as pysh
7import os.path 7import os.path
8import bb.utils, bb.data 8import bb.utils, bb.data
9import hashlib
9from itertools import chain 10from itertools import chain
10from bb.pysh import pyshyacc, pyshlex, sherrors 11from bb.pysh import pyshyacc, pyshlex, sherrors
11from bb.cache import MultiProcessCache 12from bb.cache import MultiProcessCache
12 13
13logger = logging.getLogger('BitBake.CodeParser') 14logger = logging.getLogger('BitBake.CodeParser')
14 15
16def bbhash(s):
17 return hashlib.md5(s.encode("utf-8")).hexdigest()
18
15def check_indent(codestr): 19def 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)