]> code.ossystems Code Review - meta-freescale.git/commitdiff
fsl-u-boot-localversion: Easy LOCALVERSION handling
authorOtavio Salvador <otavio@ossystems.com.br>
Mon, 1 Sep 2014 14:20:32 +0000 (11:20 -0300)
committerOtavio Salvador <otavio@ossystems.com.br>
Mon, 1 Sep 2014 15:18:36 +0000 (12:18 -0300)
This class allow for easy extending of U-Boot recipes to easy the
LOCALVERSION handling, allowing to reuse of code between different
U-Boot recipes

The following options are supported:

 SCMVERSION        Puts the Git hash in U-Boot local version
 LOCALVERSION      Value used in LOCALVERSION (default to '+fslc')

This about avoid code duplication among Layerscape and i.MX.

Change-Id: Icec618092d1f70606051619b6f6118f50e7f1ba5
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
meta-fsl-arm/classes/fsl-u-boot-localversion.bbclass [new file with mode: 0644]

diff --git a/meta-fsl-arm/classes/fsl-u-boot-localversion.bbclass b/meta-fsl-arm/classes/fsl-u-boot-localversion.bbclass
new file mode 100644 (file)
index 0000000..f7e0971
--- /dev/null
@@ -0,0 +1,27 @@
+# Freescale U-Boot LOCALVERSION extension
+#
+# This allow to easy reuse of code between different U-Boot recipes
+#
+# The following options are supported:
+#
+#  SCMVERSION        Puts the Git hash in U-Boot local version
+#  LOCALVERSION      Value used in LOCALVERSION (default to '+fslc')
+#
+# Copyright 2014 (C) O.S. Systems Software LTDA.
+
+SCMVERSION ??= "y"
+LOCALVERSION ??= "+fslc"
+
+UBOOT_LOCALVERSION = "${LOCALVERSION}"
+
+do_compile_prepend() {
+       if [ "${SCMVERSION}" = "y" ]; then
+               # Add GIT revision to the local version
+               head=`git rev-parse --verify --short HEAD 2> /dev/null`
+               printf "%s%s%s" "${UBOOT_LOCALVERSION}" +g $head > ${S}/.scmversion
+               printf "%s%s%s" "${UBOOT_LOCALVERSION}" +g $head > ${B}/.scmversion
+    else
+               printf "%s" "${UBOOT_LOCALVERSION}" > ${S}/.scmversion
+               printf "%s" "${UBOOT_LOCALVERSION}" > ${B}/.scmversion
+       fi
+}