u-boot: Add UBOOT_LOCALVERSION to control version string
authorChase Maupin <Chase.Maupin@ti.com>
Thu, 11 Apr 2013 13:03:13 +0000 (08:03 -0500)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 22 Apr 2013 13:45:03 +0000 (14:45 +0100)
* Add a variable called UBOOT_LOCALVERSION which when set will
  place a version string in the .scmversion file of the u-boot
  sources.  This string will be picked up by the u-boot Makefile
  and will be appended to the u-boot version.  This is done to
  make it easier to identify what revision of the u-boot sources
  are being run.  For example you can use a setting like the
  following to add the short commit id to the u-boot version
  string:

UBOOT_LOCALVERSION = "-g${@d.getVar('SRCPV', True).partition('+')[2][0:7]}"

(From OE-Core rev: 566298409408c6103f7a9871bb13ae5449c4fd64)

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-bsp/u-boot/u-boot.inc

index ae53b90..6bbe457 100644 (file)
@@ -16,6 +16,11 @@ python () {
                raise bb.parse.SkipPackage("because UBOOT_MACHINE is not set")
 }
 
+# Allow setting an additional version string that will be picked up by the
+# u-boot build system and appended to the u-boot version.  If the .scmversion
+# file already exists it will not be overwritten.
+UBOOT_LOCALVERSION ?= ""
+
 # Some versions of u-boot use .bin and others use .img.  By default use .bin
 # but enable individual recipes to change this value.
 UBOOT_SUFFIX ?= "bin"
@@ -40,6 +45,13 @@ do_compile () {
        unset LDFLAGS
        unset CFLAGS
        unset CPPFLAGS
+
+       if [ ! -e ${B}/.scmversion -a ! -e ${S}/.scmversion ]
+       then
+               echo ${UBOOT_LOCALVERSION} > ${B}/.scmversion
+               echo ${UBOOT_LOCALVERSION} > ${S}/.scmversion
+       fi
+
        oe_runmake ${UBOOT_MACHINE}
        oe_runmake ${UBOOT_MAKE_TARGET}
 }