mirror of
https://git.yoctoproject.org/poky
synced 2026-05-31 12:49:46 +00:00
bitbake: siggen: Avoid taskhash mismatch errors for nostamp tasks when dependencies rehash
An example: NOTE: recipe binutils-cross-testsuite-2.32.0-r0: task do_check: Started ERROR: Taskhash mismatch b074da4334aff8aa06572e7a8725c941fa6b08de4ce714a65a90c0c0b680abea versus 17375278daed609a7129769b74a1336a37bdef14b534ae85189ccc033a9f2db4 for /home/pokybuild/yocto-worker/qemux86-64/build/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.32.bb:do_check NOTE: recipe binutils-cross-testsuite-2.32.0-r0: task do_check: Succeeded Is caused by a rehash in a dependency happening somewhere earlier in the build and the taint being reset. Change the code so that nostamp taints are preserved to avoid the issue. (Bitbake rev: 61624a3fc38e8546e01356d5ce7a09f21e7094ab) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -232,10 +232,14 @@ class SignatureGeneratorBasic(SignatureGenerator):
|
|||||||
taskdep = dataCache.task_deps[fn]
|
taskdep = dataCache.task_deps[fn]
|
||||||
if 'nostamp' in taskdep and task in taskdep['nostamp']:
|
if 'nostamp' in taskdep and task in taskdep['nostamp']:
|
||||||
# Nostamp tasks need an implicit taint so that they force any dependent tasks to run
|
# Nostamp tasks need an implicit taint so that they force any dependent tasks to run
|
||||||
import uuid
|
if tid in self.taints and self.taints[tid].startswith("nostamp:"):
|
||||||
taint = str(uuid.uuid4())
|
# Don't reset taint value upon every call
|
||||||
data = data + taint
|
data = data + self.taints[tid][8:]
|
||||||
self.taints[tid] = "nostamp:" + taint
|
else:
|
||||||
|
import uuid
|
||||||
|
taint = str(uuid.uuid4())
|
||||||
|
data = data + taint
|
||||||
|
self.taints[tid] = "nostamp:" + taint
|
||||||
|
|
||||||
taint = self.read_taint(fn, task, dataCache.stamp[fn])
|
taint = self.read_taint(fn, task, dataCache.stamp[fn])
|
||||||
if taint:
|
if taint:
|
||||||
|
|||||||
Reference in New Issue
Block a user