kernel-yocto: allow branch auditing to be suspended

When working on the yocto-bsp and kernel-lab update for yocto 1.2
we found it was impossible for a end-user BSP to isolate patches
on a branch, since with the following commit:

  [kernel-yocto: enforce SRC_URI specified branch]

Any new branch would be switched to whatever was specified on the
SRC_URI and undoing the work that the yocto-bsp tool did to support
board specific patches.

To fix this, we'll keep the enforcing of branch consistency enabled
by default, but introduce a variable "KMETA_AUDIT" that when not
set will skip the check.

There's no impact for existing users, and it is only something that
other plumbing commands and tools will need to use (or care about).

[YOCTO: #9120]

(From OE-Core rev: 1d4c120edeb6e45665eafd6962a10ebb89d758eb)

(From OE-Core rev: 364a3ba6a3e92fd24be1f9898683f3ae71ac143d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Bruce Ashfield 2016-04-21 11:23:45 -04:00 committed by Richard Purdie
parent f911299295
commit de9f4b6982
2 changed files with 15 additions and 9 deletions

View File

@ -170,15 +170,20 @@ do_patch() {
fi
fi
current_branch=`git rev-parse --abbrev-ref HEAD`
machine_branch="${@ get_machine_branch(d, "${KBRANCH}" )}"
if [ "${current_branch}" != "${machine_branch}" ]; then
bbwarn "After meta data application, the kernel tree branch is ${current_branch}. The"
bbwarn "SRC_URI specified branch ${machine_branch}. The branch will be forced to ${machine_branch},"
bbwarn "but this means the board meta data (.scc files) do not match the SRC_URI specification."
bbwarn "The meta data and branch ${machine_branch} should be inspected to ensure the proper"
bbwarn "kernel is being built."
git checkout -f ${machine_branch}
if [ -n "${KMETA_AUDIT}" ]; then
current_branch=`git rev-parse --abbrev-ref HEAD`
machine_branch="${@ get_machine_branch(d, "${KBRANCH}" )}"
if [ "${current_branch}" != "${machine_branch}" ]; then
bbwarn "After meta data application, the kernel tree branch is ${current_branch}."
bbwarn "The SRC_URI specified branch ${machine_branch}."
bbwarn ""
bbwarn "The branch will be forced to ${machine_branch}, but this means the board meta data"
bbwarn "(.scc files) do not match the SRC_URI specification."
bbwarn ""
bbwarn "The meta data and branch ${machine_branch} should be inspected to ensure the proper"
bbwarn "kernel is being built."
git checkout -f ${machine_branch}
fi
fi
if [ "${machine_srcrev}" != "AUTOINC" ]; then

View File

@ -35,6 +35,7 @@ SRCREV_FORMAT ?= "meta_machine"
# 2: report options that are not hardware related, but set by a BSP
KCONF_AUDIT_LEVEL ?= "1"
KCONF_BSP_AUDIT_LEVEL ?= "0"
KMETA_AUDIT ?= "yes"
LINUX_VERSION_EXTENSION ?= "-yocto-${LINUX_KERNEL_TYPE}"