diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-05-25 23:19:41 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-05-25 23:39:37 +0100 |
commit | fe5f742865c6578b99396ddda282c71c0a4dc557 (patch) | |
tree | 331c8a29fcf3c1b82ee4dbe59f81749613bdeab5 /bitbake/lib/bb/build.py | |
parent | 1607d7b6809eb3f0aa8d09713a4e467a1f4585a2 (diff) | |
download | poky-fe5f742865c6578b99396ddda282c71c0a4dc557.tar.gz |
build/siggen: Ensure a task signature file is generated for each task that is executed
Tracing down signature changes and dependencies is hard unless the complete task
chain can be evaultated. Since we have the data available at task exeuction
time, writing it to disk makes sense.
This change is suboptimal internal knowledge stamp_internal() has leaks into
make_stamp() and the concepts used by this code need revisiting but the change
brings enough usability benefit to warrant its inclusion despite that.
Addresses issue [YOCTO #1074]
(Bitbake rev: 139b8a625818225c358a1b8363518d7ed6913188)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/build.py')
-rw-r--r-- | bitbake/lib/bb/build.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py index 80bb887383..f1384ef312 100644 --- a/bitbake/lib/bb/build.py +++ b/bitbake/lib/bb/build.py | |||
@@ -416,6 +416,12 @@ def make_stamp(task, d, file_name = None): | |||
416 | f = open(stamp, "w") | 416 | f = open(stamp, "w") |
417 | f.close() | 417 | f.close() |
418 | 418 | ||
419 | # If we're in task context, write out a signature file for each task | ||
420 | # as it completes | ||
421 | if not task.endswith("_setscene") and task != "do_setscene" and not file_name: | ||
422 | file_name = d.getVar('BB_FILENAME', True) | ||
423 | bb.parse.siggen.dump_sigtask(file_name, task, d.getVar('STAMP', True), True) | ||
424 | |||
419 | def del_stamp(task, d, file_name = None): | 425 | def del_stamp(task, d, file_name = None): |
420 | """ | 426 | """ |
421 | Removes a stamp for a given task | 427 | Removes a stamp for a given task |