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-23 10:18:20 +0000 |
| commit | 7b70d5e8a481a7485a3866623efce993ddd9b607 (patch) | |
| tree | 01f48e1e4a9adc65e531f56090eaa87aa82fb236 | |
| parent | c91b10cae886067c9a69fa93fa7fc64488db4cf7 (diff) | |
| download | poky-7b70d5e8a481a7485a3866623efce993ddd9b607.tar.gz | |
bitbake: 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.
(Bitbake rev: 73498afc3d45beede5b8f24a9acd523a1663b793)
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/siggen.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py index 5103073539..0c77d72112 100644 --- a/bitbake/lib/bb/siggen.py +++ b/bitbake/lib/bb/siggen.py | |||
| @@ -187,6 +187,12 @@ class SignatureGeneratorBasic(SignatureGenerator): | |||
| 187 | self.file_checksum_values[k][f] = cs | 187 | self.file_checksum_values[k][f] = cs |
| 188 | data = data + cs | 188 | data = data + cs |
| 189 | 189 | ||
| 190 | taskdep = dataCache.task_deps[fn] | ||
| 191 | if 'nostamp' in taskdep and task in taskdep['nostamp']: | ||
| 192 | # Nostamp tasks need an implicit taint so that they force any dependent tasks to run | ||
| 193 | import uuid | ||
| 194 | data = data + str(uuid.uuid4()) | ||
| 195 | |||
| 190 | taint = self.read_taint(fn, task, dataCache.stamp[fn]) | 196 | taint = self.read_taint(fn, task, dataCache.stamp[fn]) |
| 191 | if taint: | 197 | if taint: |
| 192 | data = data + taint | 198 | data = data + taint |
