summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/buildhistory.bbclass12
-rw-r--r--meta/lib/oe/sstatesig.py10
2 files changed, 22 insertions, 0 deletions
diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
index eea1e72a28..4fc19a0fc2 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -600,6 +600,17 @@ POPULATE_SDK_POST_HOST_COMMAND[vardepvalueexclude] .= "| buildhistory_list_insta
600SDK_POSTPROCESS_COMMAND_append = " buildhistory_get_sdkinfo ; buildhistory_get_extra_sdkinfo; " 600SDK_POSTPROCESS_COMMAND_append = " buildhistory_get_sdkinfo ; buildhistory_get_extra_sdkinfo; "
601SDK_POSTPROCESS_COMMAND[vardepvalueexclude] .= "| buildhistory_get_sdkinfo ; buildhistory_get_extra_sdkinfo; " 601SDK_POSTPROCESS_COMMAND[vardepvalueexclude] .= "| buildhistory_get_sdkinfo ; buildhistory_get_extra_sdkinfo; "
602 602
603python buildhistory_write_sigs() {
604 if not "task" in (d.getVar('BUILDHISTORY_FEATURES') or "").split():
605 return
606
607 # Create sigs file
608 if hasattr(bb.parse.siggen, 'dump_siglist'):
609 taskoutdir = os.path.join(d.getVar('BUILDHISTORY_DIR'), 'task')
610 bb.utils.mkdirhier(taskoutdir)
611 bb.parse.siggen.dump_siglist(os.path.join(taskoutdir, 'tasksigs.txt'))
612}
613
603def buildhistory_get_build_id(d): 614def buildhistory_get_build_id(d):
604 if d.getVar('BB_WORKERCONTEXT') != '1': 615 if d.getVar('BB_WORKERCONTEXT') != '1':
605 return "" 616 return ""
@@ -765,6 +776,7 @@ python buildhistory_eventhandler() {
765 shutil.rmtree(olddir) 776 shutil.rmtree(olddir)
766 if e.data.getVar("BUILDHISTORY_COMMIT") == "1": 777 if e.data.getVar("BUILDHISTORY_COMMIT") == "1":
767 bb.note("Writing buildhistory") 778 bb.note("Writing buildhistory")
779 bb.build.exec_func("buildhistory_write_sigs", d)
768 localdata = bb.data.createCopy(e.data) 780 localdata = bb.data.createCopy(e.data)
769 localdata.setVar('BUILDHISTORY_BUILD_FAILURES', str(e._failures)) 781 localdata.setVar('BUILDHISTORY_BUILD_FAILURES', str(e._failures))
770 interrupted = getattr(e, '_interrupted', 0) 782 interrupted = getattr(e, '_interrupted', 0)
diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py
index 8d930134c9..3239bc63ae 100644
--- a/meta/lib/oe/sstatesig.py
+++ b/meta/lib/oe/sstatesig.py
@@ -211,6 +211,16 @@ class SignatureGeneratorOEBasicHash(bb.siggen.SignatureGeneratorBasicHash):
211 f.write(' "\n') 211 f.write(' "\n')
212 f.write('SIGGEN_LOCKEDSIGS_TYPES_%s = "%s"' % (self.machine, " ".join(l))) 212 f.write('SIGGEN_LOCKEDSIGS_TYPES_%s = "%s"' % (self.machine, " ".join(l)))
213 213
214 def dump_siglist(self, sigfile):
215 with open(sigfile, "w") as f:
216 tasks = []
217 for taskitem in self.taskhash:
218 (fn, task) = taskitem.rsplit(".", 1)
219 pn = self.lockedpnmap[fn]
220 tasks.append((pn, task, self.taskhash[taskitem]))
221 for (pn, task, taskhash) in sorted(tasks):
222 f.write('%s.%s %s\n' % (pn, task, taskhash))
223
214 def checkhashes(self, missed, ret, sq_fn, sq_task, sq_hash, sq_hashfn, d): 224 def checkhashes(self, missed, ret, sq_fn, sq_task, sq_hash, sq_hashfn, d):
215 warn_msgs = [] 225 warn_msgs = []
216 error_msgs = [] 226 error_msgs = []