mirror of
https://git.yoctoproject.org/poky
synced 2026-06-02 01:19:52 +00:00
kernel-yocto: ensure that only a single defconfig is processed
As a follow up to the changes to ensure that KBUILD_DEFCONFIG will always get its defconfig into the processing, we also should ensure that we don't get both a KBUILD_DEFCONFIG and a SRC_URI defconfig in the configuration queue. If both are in the configuration queue, we end up with competing values and a potentially long running check of 5000+ options x 2 against the final .config. By removing the defconfig found from the SRC_URI when one is found via KBUILD_DEFCONFIG, we ensure that only one will be processed. (From OE-Core rev: d831b1cbff2901f10f79bb43c839839f73c428a3) Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 7e98c295c1bb511ece51b5f8c97f26c173ddaf76) Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
ec834113ec
commit
5ea6b59d8e
@@ -107,6 +107,8 @@ do_kernel_metadata() {
|
|||||||
cmp "${WORKDIR}/defconfig" "${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG}"
|
cmp "${WORKDIR}/defconfig" "${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG}"
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
bbwarn "defconfig detected in WORKDIR. ${KBUILD_DEFCONFIG} skipped"
|
bbwarn "defconfig detected in WORKDIR. ${KBUILD_DEFCONFIG} skipped"
|
||||||
|
else
|
||||||
|
cp -f ${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG} ${WORKDIR}/defconfig
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
cp -f ${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG} ${WORKDIR}/defconfig
|
cp -f ${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG} ${WORKDIR}/defconfig
|
||||||
@@ -117,10 +119,19 @@ do_kernel_metadata() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
sccs="$sccs ${@" ".join(find_sccs(d))}"
|
sccs_from_src_uri="${@" ".join(find_sccs(d))}"
|
||||||
patches="${@" ".join(find_patches(d))}"
|
patches="${@" ".join(find_patches(d))}"
|
||||||
feat_dirs="${@" ".join(find_kernel_feature_dirs(d))}"
|
feat_dirs="${@" ".join(find_kernel_feature_dirs(d))}"
|
||||||
|
|
||||||
|
# a quick check to make sure we don't have duplicate defconfigs
|
||||||
|
# If there's a defconfig in the SRC_URI, did we also have one from
|
||||||
|
# the KBUILD_DEFCONFIG processing above ?
|
||||||
|
if [ -n "$sccs" ]; then
|
||||||
|
# we did have a defconfig from above. remove any that might be in the src_uri
|
||||||
|
sccs_from_src_uri=$(echo $sccs_from_src_uri | sed 's/defconfig//g')
|
||||||
|
fi
|
||||||
|
sccs="$sccs $sccs_from_src_uri"
|
||||||
|
|
||||||
# check for feature directories/repos/branches that were part of the
|
# check for feature directories/repos/branches that were part of the
|
||||||
# SRC_URI. If they were supplied, we convert them into include directives
|
# SRC_URI. If they were supplied, we convert them into include directives
|
||||||
# for the update part of the process
|
# for the update part of the process
|
||||||
|
|||||||
Reference in New Issue
Block a user