summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2024-12-24 10:36:53 +0800
committerGitHub <[email protected]>2024-12-24 10:36:53 +0800
commitc2d7c1d703c6716ae46fdfad46dc09ace18be559 (patch)
tree268199003bfac15f80720e416d48fc2a55fb6bed
parent4f408ebd0c944fecb9777c5b07ec57af1f5798b2 (diff)
parent0a381cb3638bde102c8ce45d7a6f669b86ffd0bd (diff)
Merge pull request #5998 from ifarbod/feature/clang-cl-arm-support
Add ARM target support for Windows in clang-cl toolchain
-rw-r--r--xmake/toolchains/clang-cl/load.lua24
1 files changed, 16 insertions, 8 deletions
diff --git a/xmake/toolchains/clang-cl/load.lua b/xmake/toolchains/clang-cl/load.lua
index 3763b8d2e..f73499118 100644
--- a/xmake/toolchains/clang-cl/load.lua
+++ b/xmake/toolchains/clang-cl/load.lua
@@ -75,16 +75,24 @@ function main(toolchain)
end
end
- local march
+ local target
if toolchain:is_arch("x86_64", "x64") then
- march = "-m64"
- elseif toolchain:is_arch("i386", "x86") then
- march = "-m32"
+ target = "x86_64-pc"
+ elseif toolchain:is_arch("i386", "x86", "i686") then
+ target = "i686-pc"
+ elseif toolchain:is_arch("arm64", "aarch64") then
+ target = "aarch64"
+ elseif toolchain:is_arch("arm64ec") then
+ target = "arm64ec"
+ elseif toolchain:is_arch("arm") then
+ target = "armv7"
end
- if march then
- toolchain:add("cxflags", march)
- toolchain:add("mxflags", march)
- toolchain:add("asflags", march)
+
+ target = target .. "-windows-msvc"
+ if target then
+ toolchain:add("cxflags", "--target=" .. target)
+ toolchain:add("mxflags", "--target=" .. target)
+ toolchain:add("asflags", "--target=" .. target)
end
end