bitbake: siggen: Use lookup cache exclusively

All the values we need are already guaranteed to be in the lookupcache
so rather than fetch variables again, just use the cache. This gives a
small performance improvement and simplifies the code.

(Bitbake rev: 8ffaba61da7f195d7c3b64dce35b6a56272aecae)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie 2013-09-16 07:18:34 +00:00
parent 43c670accc
commit c971868360
1 changed files with 3 additions and 12 deletions

View File

@ -91,8 +91,7 @@ class SignatureGeneratorBasic(SignatureGenerator):
basehash = {}
for task in tasklist:
data = d.getVar(task, False)
lookupcache[task] = data
data = lookupcache[task]
if data is None:
bb.error("Task %s from %s seems to be empty?!" % (task, fn))
@ -115,16 +114,8 @@ class SignatureGeneratorBasic(SignatureGenerator):
alldeps = sorted(seen)
for dep in alldeps:
data = data + dep
if dep in lookupcache:
var = lookupcache[dep]
elif dep[-1] == ']':
vf = dep[:-1].split('[')
var = d.getVarFlag(vf[0], vf[1], False)
lookupcache[dep] = var
else:
var = d.getVar(dep, False)
lookupcache[dep] = var
if var:
var = lookupcache[dep]
if var is not None:
data = data + str(var)
self.basehash[fn + "." + task] = hashlib.md5(data).hexdigest()
taskdeps[task] = alldeps