Initial version of a LOC counter class 43/10643/2
authorJan-Simon Möller <jsmoeller@linuxfoundation.org>
Thu, 27 Jul 2017 21:20:19 +0000 (23:20 +0200)
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Wed, 16 Aug 2017 03:54:59 +0000 (03:54 +0000)
Usage:
 INHERIT += "cloc"

 cloc --sum-reports `find tmp/work/ -name "*clocreport" | grep -v "\-native"` --out cloc-summary.report

cloc needs to be installed on the host.

Change-Id: I70c7e707405c718b1685d49f4e84216c5408d2fb
Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org>
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10437
Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
Reviewed-by: Matt Ranostay <matt.ranostay@konsulko.com>
(cherry picked from commit 37c55f85ccf941bbbd8b3eae1eb31c596981304b)
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10643
ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>

meta-agl/classes/cloc.bbclass [new file with mode: 0644]

diff --git a/meta-agl/classes/cloc.bbclass b/meta-agl/classes/cloc.bbclass
new file mode 100644 (file)
index 0000000..53713bf
--- /dev/null
@@ -0,0 +1,29 @@
+# (C) 2017 Jan-Simon Möller <dl9pf@gmx.de>
+#
+# License: GPLv2
+#
+# summary with
+# cloc --sum-reports `find . -name "*clocreport" | grep -v "\-native" ` --out summary.report
+
+CLOC_DIRECTORY ??= "${DEPLOY_DIR}/cloc/"
+CLOCSTATEDIR = "${WORKDIR}/cloc-destdir/"
+
+python do_cloc() {
+
+    import subprocess
+
+    source_dir = d.getVar('S', True)
+    pn = d.getVar('PN', True)
+
+    destdir = d.expand('${CLOCSTATEDIR}')
+    bb.utils.mkdirhier(destdir)
+
+    cloc_cmd = 'cloc %s -q --out=%s/%s.clocreport' % (source_dir, destdir, pn )
+    subprocess.call(cloc_cmd, shell=True)
+
+}
+
+
+addtask cloc before do_configure after do_unpack
+
+EXPORT_FUNCTIONS do_cloc