[oe-commits] [openembedded-core] 25/25: kernel-yocto.bbclass: export LD in the environment used by kconf_check

git at git.openembedded.org git at git.openembedded.org
Tue Feb 4 15:57:24 UTC 2020


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master
in repository openembedded-core.

commit d3083e941578fb343454e106eba349adcc525ad3
Author: Martin Jansa <martin.jansa at gmail.com>
AuthorDate: Mon Feb 3 23:44:20 2020 +0100

    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 <module>
        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:
      ...
    
    Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/classes/kernel-yocto.bbclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass
index 87c681f..141eeaf 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')

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list