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>
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))
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