[OE-core] [PATCH] log_srcrev.bbclass: add a bbclass for logging SRCREVs

Constantin Musca constantinx.musca at intel.com
Fri Feb 22 08:49:21 UTC 2013


- add a task which creates a file for each package with the following
format:

BB_FILENAME: ${BB_FILENAME}
SRC_URI: ${SRC_URI}
SRCREV: ${SRCREV}
FROM AUTOREV: no/yes

[YOCTO #3041]

Signed-off-by: Constantin Musca <constantinx.musca at intel.com>
---
 meta/classes/log_srcrev.bbclass | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
 create mode 100644 meta/classes/log_srcrev.bbclass

diff --git a/meta/classes/log_srcrev.bbclass b/meta/classes/log_srcrev.bbclass
new file mode 100644
index 0000000..b319e7b
--- /dev/null
+++ b/meta/classes/log_srcrev.bbclass
@@ -0,0 +1,20 @@
+SRCREV_LOGFILE ??= 'srcrev_log'
+
+python do_log_srcrev () {
+    srcrev = d.getVar('SRCREV', True)
+    if srcrev:
+        bbfile = d.getVar('BB_FILENAME', True)
+        src_uri = d.getVar('SRC_URI', True)
+        from_autorev = 'yes' if d.getVar('SRCREV', False) == 'AUTOINC' else 'no'
+
+        srcrevdir = d.expand('${TMPDIR}/srcrevs/${MULTIMACH_TARGET_SYS}/${PN}-${PV}/')
+        srcrevfile = os.path.join(srcrevdir, d.getVar('SRCREV_LOGFILE', True))
+        bb.utils.mkdirhier(os.path.dirname(srcrevfile))
+
+        with open(srcrevfile, 'w') as f:
+            f.write("BB_FILENAME: %s\nSRC_URI: %s\nSRCREV: %s\nFROM AUTOREV: %s\n"
+                    % (bbfile, src_uri, srcrev, from_autorev))
+}
+
+addtask do_log_srcrev after do_fetch
+do_log_srcrev[cleandirs] = "${TMPDIR}/srcrevs/${MULTIMACH_TARGET_SYS}/${PN}-${PV}/"
-- 
1.7.11.7





More information about the Openembedded-core mailing list