From: Ioan-Adrian Ratiu <adrian.ra...@ni.com>

do_kernel_configme calls merge_config.sh (installed in the sysroot by
the kern-tools-native recipe) which may invoke the compiler to complete
the configuration process.

Depending on the build (and dependencies), this may error due to sysroot 
poisoning [1].

The errors are similar to:

  make[1]: Entering directory 
'4.1+gitAUTOINC+a7e53ecc27-r0/linux-x64-standard-build' HOSTCC  
scripts/basic/fixdep
  work-shared/x64/kernel-source/scripts/basic/fixdep.c:106:23: fatal error: 
sys/types.h: No such file or directory
  compilation terminated.
  make[2]: *** [work-shared/x64/kernel-source/scripts/basic/Makefile:22: 
scripts/basic/x86_64-nilrt-linux-fixdep] Error 1

Adding $TOOLCHAIN_OPTIONS to $CFLAGS before calling merge_configs.sh
fixes the error because $TOOLCHAIN_OPTIONS defines the sysroot and make
uses it to correctly compile & fill all missing kernel config options.

[1] 
http://lists.openembedded.org/pipermail/openembedded-core/2014-October/098253.html

Signed-off-by: Ioan-Adrian Ratiu <adrian.ra...@ni.com>
Signed-off-by: Bruce Ashfield <bruce.ashfi...@windriver.com>
---
 meta/classes/kernel-yocto.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/kernel-yocto.bbclass 
b/meta/classes/kernel-yocto.bbclass
index 9b8bab63ca09..068378f06796 100644
--- a/meta/classes/kernel-yocto.bbclass
+++ b/meta/classes/kernel-yocto.bbclass
@@ -255,7 +255,7 @@ do_kernel_configme() {
                bbfatal_log "Could not find configuration queue 
(${meta_dir}/config.queue)"
        fi
 
-       ARCH=${ARCH} merge_config.sh -O ${B} ${config_flags} ${configs} > 
${meta_dir}/cfg/merge_config_build.log 2>&1
+       CFLAGS="${CFLAGS} ${TOOLCHAIN_OPTIONS}" ARCH=${ARCH} merge_config.sh -O 
${B} ${config_flags} ${configs} > ${meta_dir}/cfg/merge_config_build.log 2>&1
        if [ $? -ne 0 ]; then
                bbfatal_log "Could not configure 
${KMACHINE}-${LINUX_KERNEL_TYPE}"
        fi
-- 
2.5.0

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to