mirror of
https://git.yoctoproject.org/meta-ti
synced 2026-06-05 02:11:00 +00:00
setup-defconfig.inc: implement config fragments by using in-kernel script
* Use in-kernel merge_config.sh script and KERNEL_CONFIG_FRAGMENTS list * Move copying provided defconfig from own task to do_configure() for atomicity * Don't use curly brackets for shell variables to avoid conflict with Bitbake Signed-off-by: Denys Dmytriyenko <denys@ti.com> Reviewed-by: Chase Maupin <chase.maupin@ti.com>
This commit is contained in:
@@ -5,28 +5,32 @@ KERNEL_LOCALVERSION ?= ""
|
||||
# Check the defconfig file and see if it points to an in kernel
|
||||
# defconfig that should be used, or if it is a complete config file
|
||||
|
||||
addtask setup_defconfig before do_configure after do_patch
|
||||
do_setup_defconfig() {
|
||||
# define our own do_configure that will:
|
||||
# 1. Check the .config file and see if string use-kernel-config= is present
|
||||
# 2. If the use-kernel-config string is present parse out the config to use
|
||||
# and run make $config
|
||||
# 3. else run yes '' | oe_runmake oldconfig like the default do_configure
|
||||
# does
|
||||
do_configure() {
|
||||
# Always copy the defconfig file to .config to keep consistency
|
||||
# between the case where there is a real config and the in kernel
|
||||
# tree config
|
||||
cp ${WORKDIR}/defconfig ${S}/.config
|
||||
}
|
||||
|
||||
# define our own do_configure that will:
|
||||
# 1. Check the .config file and see if string use-kernel-config= is present
|
||||
# 2. If the use-kernel-config string is present parse out the config to use
|
||||
# and run make ${config}
|
||||
# 3. else run yes '' | oe_runmake oldconfig like the default do_configure
|
||||
# does
|
||||
do_configure() {
|
||||
echo ${KERNEL_LOCALVERSION} > ${B}/.scmversion
|
||||
echo ${KERNEL_LOCALVERSION} > ${S}/.scmversion
|
||||
config=`cat ${S}/.config | grep use-kernel-config | cut -d= -f2`
|
||||
if [ "x${config}" != "x" ]
|
||||
if [ ! -z "$config" ]
|
||||
then
|
||||
oe_runmake ${config}
|
||||
oe_runmake $config
|
||||
else
|
||||
yes '' | oe_runmake oldconfig
|
||||
fi
|
||||
|
||||
# check for fragments
|
||||
if [ ! -z "${KERNEL_CONFIG_FRAGMENTS}" ]
|
||||
then
|
||||
( cd ${WORKDIR} && ${S}/scripts/kconfig/merge_config.sh -m -r -O ${S} ${S}/.config ${KERNEL_CONFIG_FRAGMENTS} 1>&2 )
|
||||
yes '' | oe_runmake oldconfig
|
||||
fi
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user