From: Bruce Ashfield Date: Mon, 13 Oct 2014 03:53:59 +0000 (-0400) Subject: kernel-yocto: fix branch validation for AUTOREV, non machine_meta kernels X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~32175 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=212a4bd9b086365c022842a2ac6a2a25bd486002;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git kernel-yocto: fix branch validation for AUTOREV, non machine_meta kernels The simplication of do_validate_branches missed a case where a custom kernel can supply SRCREV="${AUTOREV}", and not use SRCREV_machine at all. In this case, we will incorrectly try and test the tree for a non-existent commit, and break the build. By simplying the condition of the check to look for an empty SRCREV_machine, we can skip manipulating the tree and testing for a SRCREV. Signed-off-by: Bruce Ashfield Signed-off-by: Ross Burton --- diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index 7718f9ab1b5..e672a0e3a5a 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass @@ -288,12 +288,14 @@ do_validate_branches() { # check and we can exit early if [ "${machine_srcrev}" = "AUTOINC" ]; then bbnote "SRCREV validation is not required for AUTOREV" - elif [ "${machine_srcrev}" = "" ] && [ "${SRCREV}" != "AUTOINC" ]; then - # SRCREV_machine_ was not set. This means that a custom recipe - # that doesn't use the SRCREV_FORMAT "machine_meta" is being built. In - # this case, we need to reset to the give SRCREV before heading to patching - bbnote "custom recipe is being built, forcing SRCREV to ${SRCREV}" - force_srcrev="${SRCREV}" + elif [ "${machine_srcrev}" = "" ]; then + if [ "${SRCREV}" != "AUTOINC" ]; then + # SRCREV_machine_ was not set. This means that a custom recipe + # that doesn't use the SRCREV_FORMAT "machine_meta" is being built. In + # this case, we need to reset to the give SRCREV before heading to patching + bbnote "custom recipe is being built, forcing SRCREV to ${SRCREV}" + force_srcrev="${SRCREV}" + fi else git cat-file -t ${machine_srcrev} > /dev/null if [ $? -ne 0 ]; then