diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-01-06 19:47:00 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-01-06 19:47:03 +0000 |
commit | 66c6200ff34e8eeca5d1a689bbf9d6a83818248f (patch) | |
tree | 0742e6e9e75424890996031703cc8956b918c513 /bitbake/lib/bb | |
parent | ec6e4793dc79c61b780b74571db4cd66c1c04251 (diff) | |
download | openembedded-core-66c6200ff34e8eeca5d1a689bbf9d6a83818248f.tar.gz openembedded-core-66c6200ff34e8eeca5d1a689bbf9d6a83818248f.tar.bz2 openembedded-core-66c6200ff34e8eeca5d1a689bbf9d6a83818248f.zip |
bitbake build/siggen/runqueue: Fix stampfile parameters
The current parameters are not useful to the stampfile generator function
as they can't uniquely define a task. This updated things so the
parameters can identify unique tasks.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r-- | bitbake/lib/bb/build.py | 5 | ||||
-rw-r--r-- | bitbake/lib/bb/runqueue.py | 12 | ||||
-rw-r--r-- | bitbake/lib/bb/siggen.py | 2 |
3 files changed, 10 insertions, 9 deletions
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py index 3fc01486ca..968e2ea562 100644 --- a/bitbake/lib/bb/build.py +++ b/bitbake/lib/bb/build.py @@ -373,7 +373,7 @@ def exec_task(fn, task, d): event.fire(failedevent, d) return 1 -def stamp_internal(task, d, file_name): +def stamp_internal(taskname, d, file_name): """ Internal stamp helper function Makes sure the stamp directory exists @@ -386,11 +386,12 @@ def stamp_internal(task, d, file_name): stamp = d.stamp[file_name] else: stamp = d.getVar('STAMP', True) + file_name = d.getVar('BB_FILENAME', True) if not stamp: return - stamp = "%s.%s" % (stamp, task) + stamp = bb.parse.siggen.stampfile(stamp, file_name, taskname) bb.utils.mkdirhier(os.path.dirname(stamp)) diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index bfb16b4f6e..16420b87a4 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py @@ -829,7 +829,7 @@ class RunQueue: continue fn = self.rqdata.taskData.fn_index[self.rqdata.runq_fnid[task]] taskname = self.rqdata.runq_task[task] - stampfile = "%s.%s" % (self.rqdata.dataCache.stamp[fn], taskname) + stampfile = bb.parse.siggen.stampfile(self.rqdata.dataCache.stamp[fn], fn, taskname) # If the stamp is missing its not current if not os.access(stampfile, os.F_OK): del unchecked[task] @@ -850,7 +850,7 @@ class RunQueue: if task in unchecked: fn = self.taskData.fn_index[self.rqdata.runq_fnid[task]] taskname = self.rqdata.runq_task[task] - stampfile = "%s.%s" % (self.rqdata.dataCache.stamp[fn], taskname) + stampfile = bb.parse.siggen.stampfile(self.rqdata.dataCache.stamp[fn], fn, taskname) iscurrent = True t1 = os.stat(stampfile)[stat.ST_MTIME] @@ -858,7 +858,7 @@ class RunQueue: if iscurrent: fn2 = self.taskData.fn_index[self.rqdata.runq_fnid[dep]] taskname2 = self.rqdata.runq_task[dep] - stampfile2 = "%s.%s" % (self.rqdata.dataCache.stamp[fn2], taskname2) + stampfile2 = bb.parse.siggen.stampfile(self.rqdata.dataCache.stamp[fn2], fn2, taskname2) if fn == fn2 or (fulldeptree and fn2 not in stampwhitelist): if dep in notcurrent: iscurrent = False @@ -910,7 +910,7 @@ class RunQueue: if taskname is None: taskname = self.rqdata.runq_task[task] - stampfile = bb.parse.siggen.stampfile(self.rqdata.dataCache.stamp[fn], taskname, self.rqdata.runq_hash[task]) + stampfile = bb.parse.siggen.stampfile(self.rqdata.dataCache.stamp[fn], fn, taskname) # If the stamp is missing its not current if not os.access(stampfile, os.F_OK): @@ -931,8 +931,8 @@ class RunQueue: if iscurrent: fn2 = self.rqdata.taskData.fn_index[self.rqdata.runq_fnid[dep]] taskname2 = self.rqdata.runq_task[dep] - stampfile2 = bb.parse.siggen.stampfile(self.rqdata.dataCache.stamp[fn2], taskname2, self.rqdata.runq_hash[dep]) - stampfile3 = bb.parse.siggen.stampfile(self.rqdata.dataCache.stamp[fn2], taskname2 + "_setscene", self.rqdata.runq_hash[dep]) + stampfile2 = bb.parse.siggen.stampfile(self.rqdata.dataCache.stamp[fn2], fn2, taskname2) + stampfile3 = bb.parse.siggen.stampfile(self.rqdata.dataCache.stamp[fn2], fn2, taskname2 + "_setscene") t2 = get_timestamp(stampfile2) t3 = get_timestamp(stampfile3) if t3 and t3 > t2: diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py index 94ae2b48ab..7d7a203b83 100644 --- a/bitbake/lib/bb/siggen.py +++ b/bitbake/lib/bb/siggen.py @@ -42,7 +42,7 @@ class SignatureGenerator(object): def set_taskdata(self, hashes, deps): return - def stampfile(self, stampbase, taskname, taskhash): + def stampfile(self, stampbase, file_name, taskname): return "%s.%s" % (stampbase, taskname) class SignatureGeneratorBasic(SignatureGenerator): |