summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Jansa <martin.jansa@gmail.com>2020-02-03 19:11:50 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-02-04 15:56:29 +0000
commit3fa3b0540d792f04d9dd768da9d04bd9b321fd5b (patch)
tree0891ad7ff8393e064c4fe8383549e07e585475f5
parent3bfe8cad8364ac89dfaf9bacad4a318f70ab19cc (diff)
downloadpoky-3fa3b0540d792f04d9dd768da9d04bd9b321fd5b.tar.gz
kernel.bbclass: set LD in KERNEL_CONFIG_COMMAND to fix 5.4+ builds when gold is enabled
* with 5.4 kernel the do_configure fails when gold is enabled (with ld-is-gold in DISTRO_FEATURES) * bfd is already being set in KERNEL_LD: kernel-arch.bbclass:KERNEL_LD = "${CCACHE}${HOST_PREFIX}ld.bfd ${HOST_LD_KERNEL_ARCH}" but KERNEL_LD is currently respected only by do_compile and do_compile_kernel modules and new kernel which contains a check for gold in Kbuild: https://lore.kernel.org/lkml/alpine.DEB.2.21.1907161434260.1767@nanos.tec.linutronix.de/ more details: https://lore.kernel.org/r/CAMe9rOqMqkQ0LNpm25yE_Yt0FKp05WmHOrwc0aRDb53miFKM+w@mail.gmail.com will fail during the configuration even when gold wouldn't be used to build it in the end, add LD setting to KERNEL_CONFIG_COMMAND to prevent premature error when configuring scripts/kconfig/conf --olddefconfig Kconfig scripts/Kconfig.include:39: gold linker 'x86_64-oe-linux-ld' not supported make[2]: *** [/OE/build/oe-core/tmp-glibc/work-shared/qemux86-64/kernel-source/scripts/kconfig/Makefile:73: olddefconfig] Error 1 (From OE-Core rev: 66c1f4b0abd3483759f9e4141a80f982eaf8ccfd) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/kernel.bbclass2
1 files changed, 1 insertions, 1 deletions
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
index 750988f4e5..15219c596f 100644
--- a/meta/classes/kernel.bbclass
+++ b/meta/classes/kernel.bbclass
@@ -508,7 +508,7 @@ sysroot_stage_all () {
508 : 508 :
509} 509}
510 510
511KERNEL_CONFIG_COMMAND ?= "oe_runmake_call -C ${S} CC="${KERNEL_CC}" O=${B} olddefconfig || oe_runmake -C ${S} O=${B} CC="${KERNEL_CC}" oldnoconfig" 511KERNEL_CONFIG_COMMAND ?= "oe_runmake_call -C ${S} CC="${KERNEL_CC}" LD="${KERNEL_LD}" O=${B} olddefconfig || oe_runmake -C ${S} O=${B} CC="${KERNEL_CC}" LD="${KERNEL_LD}" oldnoconfig"
512 512
513python check_oldest_kernel() { 513python check_oldest_kernel() {
514 oldest_kernel = d.getVar('OLDEST_KERNEL') 514 oldest_kernel = d.getVar('OLDEST_KERNEL')