[bitbake-devel] [PATCH 1/4] siggen: ensure nostamp tasks force dependent tasks to re-execute

Paul Eggleton paul.eggleton at linux.intel.com
Fri Dec 19 10:20:29 UTC 2014


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 at linux.intel.com>
---
 lib/bb/siggen.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lib/bb/siggen.py b/lib/bb/siggen.py
index 5103073..0c77d72 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
-- 
1.9.3




More information about the bitbake-devel mailing list