FROMLIST: Makefile: add -fuse-ld=lld to KBUILD_HOSTLDFLAGS when LLVM=1
While moving Android kernels over to use LLVM=1, we observe the failure when building in a hermetic docker image: HOSTCC scripts/basic/fixdep clang: error: unable to execute command: Executable "ld" doesn't exist! The is because the build of the host utility fixdep builds the fixdep executable in one step by invoking the compiler as the driver, rather than individual compile then link steps. Clang when configured from source defaults to use the system's linker, and not LLVM's own LLD, unless the CMake config -DCLANG_DEFAULT_LINKER='lld' is set when configuring a build of clang itself. Don't rely on the compiler's implicit default linker; be explicit. Fixes: commit a0d1c951 ("kbuild: support LLVM=1 to switch the default tools to Clang/LLVM") Reported-by:Matthias Maennich <maennich@google.com> Signed-off-by:
Nick Desaulniers <ndesaulniers@google.com> Reviewed-by:
Nathan Chancellor <natechancellor@gmail.com> Cc: stable@vger.kernel.org Bug: 116869922 Bug: 141693040 Link: https://lore.kernel.org/lkml/20200820220955.3325555-1-ndesaulniers@google.com/T/#u Signed-off-by:
Nick Desaulniers <ndesaulniers@google.com> Change-Id: I54b79beceb669ec06a017d3f5c3627ccf3655986 Signed-off-by:
Matthias Maennich <maennich@google.com>
Loading
Please sign in to comment