meta-freescale/classes/fsl-kernel-localversion.bbclass
Mats Karrman 3b7f5a0069 fsl-kernel-localversion: Add preconfigure dependency on do_unpack
Even if 'externalsrc' is used, SRC_URI may specify a 'defconfig'.
However as the use of 'externalsrc' will do away with the do_patch
task, do_preconfigure is in risk of being run before the defconfig
is copied to the build directory. This patch adds a second dependency
on 'do_unpack' that makes sure this does not happen.

Signed-off-by: Mats Karrman <mats.dev.list@gmail.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2017-04-30 16:50:39 -03:00

42 lines
1.1 KiB
Plaintext

# Freescale Kernel LOCALVERSION extension
#
# This allow to easy reuse of code between different kernel recipes
#
# The following options are supported:
#
# SCMVERSION Puts the Git hash in kernel local version
# LOCALVERSION Value used in LOCALVERSION (default to '+fslc')
#
# Copyright 2014, 2015 (C) O.S. Systems Software LTDA.
SCMVERSION ??= "y"
LOCALVERSION ??= "+fslc"
kernel_conf_variable() {
CONF_SED_SCRIPT="$CONF_SED_SCRIPT /CONFIG_$1[ =]/d;"
if test "$2" = "n"
then
echo "# CONFIG_$1 is not set" >> ${B}/.config
else
echo "CONFIG_$1=$2" >> ${B}/.config
fi
}
do_preconfigure() {
mkdir -p ${B}
echo "" > ${B}/.config
CONF_SED_SCRIPT=""
kernel_conf_variable LOCALVERSION "\"${LOCALVERSION}\""
kernel_conf_variable LOCALVERSION_AUTO y
sed -e "${CONF_SED_SCRIPT}" < '${WORKDIR}/defconfig' >> '${B}/.config'
if [ "${SCMVERSION}" = "y" ]; then
# Add GIT revision to the local version
head=`git --git-dir=${S}/.git rev-parse --verify --short HEAD 2> /dev/null`
printf "%s%s" +g $head > ${S}/.scmversion
fi
}
addtask preconfigure before do_configure after do_unpack do_patch