diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2014-12-19 10:20:29 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-12-21 17:29:00 +0000 |
commit | 73498afc3d45beede5b8f24a9acd523a1663b793 (patch) | |
tree | 0cc59df8f54d56dc5a53f17bb5003b2156cf849d /lib/bb/siggen.py | |
parent | 18cd0ce6a55c9065c3f1bf223b47d817b5efcd8f (diff) | |
download | openembedded-core-contrib-73498afc3d45beede5b8f24a9acd523a1663b793.tar.gz |
siggen: ensure nostamp tasks force dependent tasks to re-execute
If a nostamp task is depended on by a non-nostamp task, then we want the
signature of that task to change such that it re-executes afterwards.
This is an unusual situation, but we want this to work in OE in
externalsrc.bbclass so that compilation happens every time it is
requested.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb/siggen.py')
-rw-r--r-- | lib/bb/siggen.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/bb/siggen.py b/lib/bb/siggen.py index 5103073539..0c77d72112 100644 --- a/lib/bb/siggen.py +++ b/lib/bb/siggen.py @@ -187,6 +187,12 @@ class SignatureGeneratorBasic(SignatureGenerator): self.file_checksum_values[k][f] = cs data = data + cs + taskdep = dataCache.task_deps[fn] + if 'nostamp' in taskdep and task in taskdep['nostamp']: + # Nostamp tasks need an implicit taint so that they force any dependent tasks to run + import uuid + data = data + str(uuid.uuid4()) + taint = self.read_taint(fn, task, dataCache.stamp[fn]) if taint: data = data + taint |