summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoriFarbod <[email protected]>2024-12-21 04:59:33 +0330
committeriFarbod <[email protected]>2024-12-21 04:59:33 +0330
commit1357190186c3f304945e99b9dc11e07330f2fcbe (patch)
treee1ee6a46588021066755421c0e4f3dbcecb98b8c
parent4f408ebd0c944fecb9777c5b07ec57af1f5798b2 (diff)
Add ARM target support for Windows in clang-cl toolchain
-rw-r--r--xmake/toolchains/clang-cl/load.lua23
1 files changed, 17 insertions, 6 deletions
diff --git a/xmake/toolchains/clang-cl/load.lua b/xmake/toolchains/clang-cl/load.lua
index 3763b8d2e..11c4581f7 100644
--- a/xmake/toolchains/clang-cl/load.lua
+++ b/xmake/toolchains/clang-cl/load.lua
@@ -75,16 +75,27 @@ function main(toolchain)
end
end
- local march
+ local target
if toolchain:is_arch("x86_64", "x64") then
+ target = "x86_64-pc"
march = "-m64"
- elseif toolchain:is_arch("i386", "x86") then
+ elseif toolchain:is_arch("i386", "x86", "i686") then
+ target = "i686-pc"
march = "-m32"
+ 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