summary refs log tree commit diff
path: root/init/Kconfig
diff options
context:
space:
mode:
authorMasahiro Yamada <masahiroy@kernel.org>2020-07-01 00:06:24 +0900
committerMasahiro Yamada <masahiroy@kernel.org>2020-07-02 00:57:45 +0900
commitb816b3db15f68690ee72a4a414624f8e82942b25 (patch)
treedefed5906aa7bed07ef2eb81367a18087cd942dc /init/Kconfig
parent8f8499a910e63f9973b95c183e2d3bccfe9845ac (diff)
downloadlinux-b816b3db15f68690ee72a4a414624f8e82942b25.tar.gz
kbuild: fix CONFIG_CC_CAN_LINK(_STATIC) for cross-compilation with Clang
scripts/cc-can-link.sh tests if the compiler can link userspace
programs.

When $(CC) is GCC, it is checked against the target architecture
because the toolchain prefix is specified as a part of $(CC).

When $(CC) is Clang, it is checked against the host architecture
because --target option is missing.

Pass $(CLANG_FLAGS) to scripts/cc-can-link.sh to evaluate the link
capability for the target architecture.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nathan Chancellor <natechancellor@gmail.com>
Diffstat (limited to 'init/Kconfig')
-rw-r--r--init/Kconfig8
1 files changed, 4 insertions, 4 deletions
diff --git a/init/Kconfig b/init/Kconfig
index a46aa8f3174d..0498af567f70 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -49,13 +49,13 @@ config CLANG_VERSION
 
 config CC_CAN_LINK
 	bool
-	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) $(m64-flag)) if 64BIT
-	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) $(m32-flag))
+	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m64-flag)) if 64BIT
+	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m32-flag))
 
 config CC_CAN_LINK_STATIC
 	bool
-	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) -static $(m64-flag)) if 64BIT
-	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) -static $(m32-flag))
+	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m64-flag) -static) if 64BIT
+	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m32-flag) -static)
 
 config CC_HAS_ASM_GOTO
 	def_bool $(success,$(srctree)/scripts/gcc-goto.sh $(CC))