diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2013-02-21 15:23:35 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-02-22 05:22:39 -0800 |
commit | 406cb9920fad57a23d2139f657c41598eb5087bf (patch) | |
tree | 8788a7c9b7bef5b160c9b5b3c2521b2010bf2dc9 | |
parent | 7d22ef28e64de06b6238d0ef9b664c0bee6efa46 (diff) | |
download | poky-406cb9920fad57a23d2139f657c41598eb5087bf.tar.gz |
bitbake: build.py: avoid deleting taint files when writing stamps
The stamp cleaning process that occurs before writing out new stamps for
a task was deleting taint files as well. This resulted in tasks that
were forcibly re-executed using the -f or -C command line options to
have their previous output restored from shared state when called upon a
second time, because the taint value was no longer incorporated into the
task signature and thus it was reverting to its previous value. This
also affected the kernel menuconfig command in OE-Core.
Note that the taint file *is* still deleted when doing -c clean, which
is the desired behaviour.
Fixes [YOCTO #3919].
(Bitbake rev: e6db0ee31178d4386802e720d75303ec7dc21519)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | bitbake/lib/bb/build.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py index 5f5a007196..d91ff53fcf 100644 --- a/bitbake/lib/bb/build.py +++ b/bitbake/lib/bb/build.py | |||
@@ -519,10 +519,13 @@ def make_stamp(task, d, file_name = None): | |||
519 | """ | 519 | """ |
520 | cleanmask = stamp_cleanmask_internal(task, d, file_name) | 520 | cleanmask = stamp_cleanmask_internal(task, d, file_name) |
521 | for mask in cleanmask: | 521 | for mask in cleanmask: |
522 | # Preserve sigdata files in the stamps directory | ||
523 | for name in glob.glob(mask): | 522 | for name in glob.glob(mask): |
523 | # Preserve sigdata files in the stamps directory | ||
524 | if "sigdata" in name: | 524 | if "sigdata" in name: |
525 | continue | 525 | continue |
526 | # Preserve taint files in the stamps directory | ||
527 | if name.endswith('.taint'): | ||
528 | continue | ||
526 | os.unlink(name) | 529 | os.unlink(name) |
527 | 530 | ||
528 | stamp = stamp_internal(task, d, file_name) | 531 | stamp = stamp_internal(task, d, file_name) |