[meta-ti] [PATCH master] kernel .inc: fix the breakage due to S!=B separation in master
Denys Dmytriyenko
denys at ti.com
Fri Feb 27 13:29:33 PST 2015
Actually, this change is generic enough and works fine on daisy, where B==S
On Fri, Feb 27, 2015 at 02:49:37PM -0500, Denys Dmytriyenko wrote:
> From: Denys Dmytriyenko <denys at ti.com>
>
> Signed-off-by: Denys Dmytriyenko <denys at ti.com>
> ---
> recipes-kernel/linux/multi-kernel.inc | 7 +++----
> recipes-kernel/linux/setup-defconfig.inc | 20 ++++++++++----------
> 2 files changed, 13 insertions(+), 14 deletions(-)
>
> diff --git a/recipes-kernel/linux/multi-kernel.inc b/recipes-kernel/linux/multi-kernel.inc
> index b3358f9..5d21d4e 100644
> --- a/recipes-kernel/linux/multi-kernel.inc
> +++ b/recipes-kernel/linux/multi-kernel.inc
> @@ -54,7 +54,7 @@ do_compileconfigs () {
>
> for configname in ${WORKDIR}/configs/* ; do
> # Copy in alternative config
> - cd ${S}
> + cd ${B}
> cp $configname ${WORKDIR}/defconfig
>
> # Build and Install this alternative kernel
> @@ -96,7 +96,7 @@ do_compileconfigs () {
>
> # Restore the regular 'defconfig'
> cp ${WORKDIR}/defconfig.save ${WORKDIR}/defconfig
> - cd ${S}
> + cd ${B}
> do_configure
> fi
> }
> @@ -106,8 +106,7 @@ do_deploy_append () {
> install -d ${DEPLOYDIR}
>
> # Drop the regular defconfig along side the others for consistency
> - cd ${S}
> - cp .config ${DEPLOYDIR}/config-${PV}-${PR}-${MACHINE}.config
> + cp ${B}/.config ${DEPLOYDIR}/config-${PV}-${PR}-${MACHINE}.config
>
> # add symlink
> cd ${DEPLOYDIR}
> diff --git a/recipes-kernel/linux/setup-defconfig.inc b/recipes-kernel/linux/setup-defconfig.inc
> index 2c169cd..2b67bfc 100644
> --- a/recipes-kernel/linux/setup-defconfig.inc
> +++ b/recipes-kernel/linux/setup-defconfig.inc
> @@ -11,27 +11,27 @@ 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
> + cp ${WORKDIR}/defconfig ${B}/.config
>
> echo ${KERNEL_LOCALVERSION} > ${B}/.scmversion
> echo ${KERNEL_LOCALVERSION} > ${S}/.scmversion
>
> # First, check if pointing to a combined config with config fragments
> - config=`cat ${S}/.config | grep use-combined-config | cut -d= -f2`
> + config=`cat ${B}/.config | grep use-combined-config | cut -d= -f2`
> if [ -n "$config" ]
> then
> - cp $config ${S}/.config
> + cp ${S}/$config ${B}/.config
> fi
>
> # Second, extract any config fragments listed in the defconfig
> - config=`cat ${S}/.config | grep config-fragment | cut -d= -f2`
> + config=`cat ${B}/.config | grep config-fragment | cut -d= -f2`
> if [ -n "$config" ]
> then
> configfrags=""
> for f in $config
> do
> # Check if the config fragment is available
> - if [ ! -e "$f" ]
> + if [ ! -e "${S}/$f" ]
> then
> echo "Could not find kernel config fragment $f"
> exit 1
> @@ -43,12 +43,12 @@ do_configure() {
> fi
>
> # Third, check if pointing to a known in kernel defconfig
> - config=`cat ${S}/.config | grep use-kernel-config | cut -d= -f2`
> + config=`cat ${B}/.config | grep use-kernel-config | cut -d= -f2`
> if [ -n "$config" ]
> then
> - oe_runmake $config
> + oe_runmake -C ${S} O=${B} $config
> else
> - yes '' | oe_runmake oldconfig
> + yes '' | oe_runmake -C ${S} O=${B} oldconfig
> fi
>
> # Fourth, handle config fragments specified in the recipe
> @@ -70,7 +70,7 @@ do_configure() {
> # Now that all the fragments are located merge them
> if [ -n "${KERNEL_CONFIG_FRAGMENTS}" -o -n "$configfrags" ]
> then
> - ( cd ${WORKDIR} && ${S}/scripts/kconfig/merge_config.sh -m -r -O ${S} ${S}/.config $configfrags ${KERNEL_CONFIG_FRAGMENTS} 1>&2 )
> - yes '' | oe_runmake oldconfig
> + ( cd ${WORKDIR} && ${S}/scripts/kconfig/merge_config.sh -m -r -O ${B} ${B}/.config $configfrags ${KERNEL_CONFIG_FRAGMENTS} 1>&2 )
> + yes '' | oe_runmake -C ${S} O=${B} oldconfig
> fi
> }
> --
> 2.2.0
>
More information about the meta-ti
mailing list