From 3c6978c8db59f152693f9fae65dbab13ecfcaad4 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Mon, 3 Feb 2020 23:44:20 +0100 Subject: kernel-yocto.bbclass: export LD in the environment used by kconf_check * resolves following exceptions in log.do_kernel_configcheck: DEBUG: Executing python function do_kernel_configcheck Traceback (most recent call last): File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 2776, in _expand_macro res += args[int(new_args[0])] ValueError: invalid literal for int() with base 10: 'error-if' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/symbol_why.py", line 295, in conf = kconfiglib.Kconfig( kconf, show_errors, show_errors ) File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 947, in __init__ self._init(filename, warn, warn_to_stderr, encoding) File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 1085, in _init self._parse_block(None, self.top_node, self.top_node).next = None File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 2982, in _parse_block prev = self._parse_block(None, parent, prev) File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 2907, in _parse_block while self._next_line(): File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 2234, in _next_line self._tokens = self._tokenize(line) File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 2364, in _tokenize self._parse_assignment(s) File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 2604, in _parse_assignment s, i = self._expand_macro(s, i, ()) File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 2780, in _expand_macro res += self._fn_val(new_args) File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 2843, in _fn_val return py_fn(self, *args) File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 6769, in _error_if_fn kconf.filename, kconf.linenr, msg)) kconfiglib.KconfigError: scripts/Kconfig.include:39: gold linker 'x86_64-oe-linux-ld --sysroot=/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot ' not supported Traceback (most recent call last): File "/OE/build/oe-core/tmp-glibc/work/qemux86_64-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/usr/bin/kconfiglib.py", line 2776, in _expand_macro res += args[int(new_args[0])] ValueError: invalid literal for int() with base 10: 'error-if' * there is still 291 mismatched options in default 5.4.15 builds, but at least the 11804 lines long log doesn't start with 9022 lines of above exceptions DEBUG: Executing python function do_kernel_configcheck [mismatch (291)]: /OE/build/oe-core/tmp-glibc/work-shared/qemux86-64/kernel-source/.kernel-meta/cfg/mismatch.txt There were hardware options requested that do not have a corresponding value present in the final ".config" file. This probably means you aren't getting the config you wanted. WARNING: [kernel config]: specified values did not make it into the kernel's final configuration: ... (From OE-Core rev: d3083e941578fb343454e106eba349adcc525ad3) Signed-off-by: Martin Jansa Signed-off-by: Richard Purdie --- meta/classes/kernel-yocto.bbclass | 1 + 1 file changed, 1 insertion(+) (limited to 'meta/classes/kernel-yocto.bbclass') diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index 87c681f1c3..141eeafeb9 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass @@ -370,6 +370,7 @@ python do_kernel_configcheck() { env = os.environ.copy() env['PATH'] = "%s:%s%s" % (d.getVar('PATH'), s, "/scripts/util/") + env['LD'] = "${KERNEL_LD}" try: configs = subprocess.check_output(['scc', '--configs', '-o', s + '/.kernel-meta'], env=env).decode('utf-8') -- cgit v1.2.3-54-g00ecf