From: Alfred Wingate <par...@protonmail.com> Building on llvm profiles is problematic if toolchain variables are not properly set. So set HOSTLD and HOSTAR to match at least the kernels own LLVM=1 variable to ensure a smoother build for end users.
For example an unset HOSTLD causes issues as it defaults to GNU ld otherwise. https://docs.kernel.org/kbuild/llvm.html#the-llvm-argument Signed-off-by: Alfred Wingate <par...@protonmail.com> Closes: https://github.com/gentoo/gentoo/pull/37690 Signed-off-by: Andrew Ammerlaan <andrewammerl...@gentoo.org> --- eclass/kernel-build.eclass | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass index f478cf636a27..893a1bdb449c 100644 --- a/eclass/kernel-build.eclass +++ b/eclass/kernel-build.eclass @@ -187,6 +187,10 @@ kernel-build_src_configure() { fi # force ld.bfd if we can find it easily + local HOSTLD="$(tc-getBUILD_LD)" + if type -P "${HOSTLD}.bfd" &>/dev/null; then + HOSTLD+=.bfd + fi local LD="$(tc-getLD)" if type -P "${LD}.bfd" &>/dev/null; then LD+=.bfd @@ -198,6 +202,8 @@ kernel-build_src_configure() { HOSTCC="$(tc-getBUILD_CC)" HOSTCXX="$(tc-getBUILD_CXX)" + HOSTLD="${HOSTLD}" + HOSTAR="$(tc-getBUILD_AR)" HOSTCFLAGS="${BUILD_CFLAGS}" HOSTLDFLAGS="${BUILD_LDFLAGS}" @@ -210,6 +216,7 @@ kernel-build_src_configure() { STRIP="$(tc-getSTRIP)" OBJCOPY="$(tc-getOBJCOPY)" OBJDUMP="$(tc-getOBJDUMP)" + READELF="$(tc-getREADELF)" # we need to pass it to override colliding Gentoo envvar ARCH=$(tc-arch-kernel) -- 2.45.2