summaryrefslogtreecommitdiffstats
path: root/lib/bb/cache.py
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-10-05 22:21:34 +0100
committerChris Larson <chris_larson@mentor.com>2010-12-29 23:51:07 -0700
commit189a5f29c7c775c0988eed2dad860b1f790ca409 (patch)
treeeedc63e30b12858c8f6210d27bd391017b08e4d3 /lib/bb/cache.py
parent1d318acb06a80c635dc2b4a935cb2fafb603f40c (diff)
downloadbitbake-189a5f29c7c775c0988eed2dad860b1f790ca409.tar.gz
runqueue: implement cache checking from metadata
This lets us speed up setscene processing, by letting the function from the metadata inform us about the necessity of running the setscene functions. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'lib/bb/cache.py')
-rw-r--r--lib/bb/cache.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/bb/cache.py b/lib/bb/cache.py
index 2d6eac1a9..2f8935076 100644
--- a/lib/bb/cache.py
+++ b/lib/bb/cache.py
@@ -72,6 +72,7 @@ recipe_fields = (
'file_depends',
'tasks',
'basetaskhashes',
+ 'hashfilename',
)
@@ -116,6 +117,7 @@ class RecipeInfo(namedtuple('RecipeInfo', recipe_fields)):
return RecipeInfo(
tasks = tasks,
basetaskhashes = cls.taskvar('BB_BASEHASH', tasks, metadata),
+ hashfilename = cls.getvar('BB_HASHFILENAME', metadata),
file_depends = metadata.getVar('__depends', False),
task_deps = metadata.getVar('_task_deps', False) or
@@ -554,6 +556,7 @@ class CacheData(object):
self.preferred = {}
self.tasks = {}
self.basetaskhash = {}
+ self.hashfn = {}
"""
Indirect Cache variables
@@ -610,6 +613,7 @@ class CacheData(object):
if not info.broken and not info.not_world:
self.possible_world.append(fn)
+ self.hashfn[fn] = info.hashfilename
for task, taskhash in info.basetaskhashes.iteritems():
identifier = '%s.%s' % (fn, task)
self.basetaskhash[identifier] = taskhash