[RFC PATCH 1/2] classes/buildhistory: record SRC_URI

Paul Eggleton
2020-10-19T04:04:00Z

From: Paul Eggleton <paul.eggleton@microsoft.com>

It can be useful to record SRC_URI into buildhistory for the purposes of
tracking exactly which sources got built (we already have SRCREV) as
well as getting an indication when changes to the SRC_URI relate to
changes in the output.

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
---
meta/classes/buildhistory.bbclass | 3 +++
1 file changed, 3 insertions(+)

diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
index 0f26c3c..7d5e3eb 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -116,6 +116,7 @@ python buildhistory_emit_pkghistory() {
self.srcrev = ""
self.layer = ""
self.config = ""
+ self.src_uri = ""

class PackageInfo:
@@ -258,6 +259,7 @@ python buildhistory_emit_pkghistory() {
rcpinfo.packages = packages
rcpinfo.layer = layer
rcpinfo.config = sortlist(oe.utils.squashspaces(d.getVar('PACKAGECONFIG') or ""))
+ rcpinfo.src_uri = oe.utils.squashspaces(d.getVar('SRC_URI') or "")
write_recipehistory(rcpinfo, d)

bb.build.exec_func("read_subpackage_metadata", d)
@@ -368,6 +370,7 @@ def write_recipehistory(rcpinfo, d):
f.write(u"PACKAGES = %s\n" % rcpinfo.packages)
f.write(u"LAYER = %s\n" % rcpinfo.layer)
f.write(u"CONFIG = %s\n" % rcpinfo.config)
+ f.write(u"SRC_URI = %s\n" % rcpinfo.src_uri)

write_latest_srcrev(d, pkghistdir)

--
1.8.3.1