]> code.ossystems Code Review - openembedded-core.git/commitdiff
kernel/yocto: fix search for defconfig from src_uri
authorAndrey Zhizhikin <andrey.z@gmail.com>
Wed, 1 Jul 2020 14:58:25 +0000 (14:58 +0000)
committerSteve Sakoman <steve@sakoman.com>
Sat, 11 Jul 2020 03:11:12 +0000 (17:11 -1000)
Fetcher provides full paths to defconfig and scc files, which awk
comparison operator does not catch during construction of
src_uri_defconfig and sccs_from_src_uri lists. This causes the
src_uri_defconfig variable to come out empty, and fails further
validation if defconfig is only supplied via SRC_URI.

Replace comparison operator with awk match function which searches for
sub-string during filtering, effectively placing defconfig from SRC_URI
into src_uri_defconfig and scc files in sccs_from_src_uri respectively.

Fixes: 23dcff0d396c (kernel/yocto: ensure that defconfigs are processed first)
Cc: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f52ce0fa98bf3bd72df7467031001f3128c145f2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
meta/classes/kernel-yocto.bbclass

index 41d8620e6754a0bae8d6e10c52fea3b85712064c..54a1a1627ab930afbd749f5a9c75bb314a6c268d 100644 (file)
@@ -156,9 +156,10 @@ do_kernel_metadata() {
        # 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 ?
-       src_uri_defconfig=$(echo $sccs_from_src_uri | awk '{ if ($0=="defconfig") { print $0 } }' RS=' ')
+       src_uri_defconfig=$(echo $sccs_from_src_uri | awk '(match($0, "defconfig") != 0) { print $0 }' RS=' ')
        # drop and defconfig's from the src_uri variable, we captured it just above here if it existed
-       sccs_from_src_uri=$(echo $sccs_from_src_uri | awk '{ if ($0!="defconfig") { print $0 } }' RS=' ')
+       sccs_from_src_uri=$(echo $sccs_from_src_uri | awk '(match($0, "defconfig") == 0) { print $0 }' RS=' ')
+
        if [ -n "$in_tree_defconfig" ]; then
                sccs_defconfig=$in_tree_defconfig
                if [ -n "$src_uri_defconfig" ]; then