summaryrefslogtreecommitdiffstats
path: root/bitbake
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-26 08:46:25 -0800
commit98292d1ef1cb44cf96f0a28fbca6439eda55ce1b (patch)
tree690d4281ddbff9a5ffa88e802b404e285cf342ee /bitbake
parentc28505d8297d577924edff8c4232c6ffbf51cbe8 (diff)
downloadpoky-98292d1ef1cb44cf96f0a28fbca6439eda55ce1b.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: 4a97b83d1d48a5df58733058d41b665b9230198f) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/lib/bb/build.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py
index 43790a658a..1bda5d0da4 100644
--- a/bitbake/lib/bb/build.py
+++ b/bitbake/lib/bb/build.py
@@ -505,10 +505,13 @@ def make_stamp(task, d, file_name = None):
505 """ 505 """
506 cleanmask = stamp_cleanmask_internal(task, d, file_name) 506 cleanmask = stamp_cleanmask_internal(task, d, file_name)
507 for mask in cleanmask: 507 for mask in cleanmask:
508 # Preserve sigdata files in the stamps directory
509 for name in glob.glob(mask): 508 for name in glob.glob(mask):
509 # Preserve sigdata files in the stamps directory
510 if "sigdata" in name: 510 if "sigdata" in name:
511 continue 511 continue
512 # Preserve taint files in the stamps directory
513 if name.endswith('.taint'):
514 continue
512 os.unlink(name) 515 os.unlink(name)
513 516
514 stamp = stamp_internal(task, d, file_name) 517 stamp = stamp_internal(task, d, file_name)