summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2013-02-21 15:23:35 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-02-22 05:20:51 -0800
commite6db0ee31178d4386802e720d75303ec7dc21519 (patch)
tree7fd8f58c2518383a7f70cff6e5cfd4b79221ee92 /lib
parentf91b784be733c8a64da924be7cba3af7d20b1039 (diff)
downloadbitbake-e6db0ee31178d4386802e720d75303ec7dc21519.tar.gz
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]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib')
-rw-r--r--lib/bb/build.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/bb/build.py b/lib/bb/build.py
index 5f5a00719..d91ff53fc 100644
--- a/lib/bb/build.py
+++ b/lib/bb/build.py
@@ -519,10 +519,13 @@ def make_stamp(task, d, file_name = None):
"""
cleanmask = stamp_cleanmask_internal(task, d, file_name)
for mask in cleanmask:
- # Preserve sigdata files in the stamps directory
for name in glob.glob(mask):
+ # Preserve sigdata files in the stamps directory
if "sigdata" in name:
continue
+ # Preserve taint files in the stamps directory
+ if name.endswith('.taint'):
+ continue
os.unlink(name)
stamp = stamp_internal(task, d, file_name)