diff options
| author | ruki <[email protected]> | 2022-01-09 21:40:16 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-01-09 21:40:16 +0800 |
| commit | 175c4cb26d1ca68a1ef90c78e5d99e7252cc02a8 (patch) | |
| tree | 2687c3dbd268d88e349ff0fd363d45a4138ebae7 | |
| parent | 4c95d421bd81c9b3279763a84f138f707f642c01 (diff) | |
| parent | 2cc2da4c49c4a6b6649a316b60865dab889e7f76 (diff) | |
Merge pull request #1965 from Zmmfly/dev
Armclang aarch64 判断以及-mcpu --cpu差异支持
| -rw-r--r-- | xmake/toolchains/armclang/xmake.lua | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/xmake/toolchains/armclang/xmake.lua b/xmake/toolchains/armclang/xmake.lua index 46f22a2ba..dc8c1c696 100644 --- a/xmake/toolchains/armclang/xmake.lua +++ b/xmake/toolchains/armclang/xmake.lua @@ -45,10 +45,22 @@ toolchain("armclang") on_load(function (toolchain) local arch = toolchain:arch() if arch then - toolchain:add("cxflags", "-target=arm-arm-none-eabi") - toolchain:add("cxflags", "-mcpu=" .. arch:lower()) - toolchain:add("asflags", "-target=arm-arm-none-eabi") - toolchain:add("asflags", "-mcpu=" .. arch:lower()) - toolchain:add("ldflags", "--cpu " .. arch) + local arch_cpu = arch:lower() + local arch_cpu_ld = "" + local arch_target = "" + if arch_cpu:startswith("cortex-m") then + arch_cpu_ld = arch_cpu:replace("cortex-m", "Cortex-M", {plain = true}) + arch_target = "arm-arm-none-eabi" + end + if arch_cpu:startswith("cortex-a") then + arch_cpu_ld = arch_cpu:replace("cortex-a", "Cortex-A", {plain = true}) + arch_target = "aarch64-arm-none-eabi" + end + toolchain:add("cxflags", "-target=" .. arch_target) + toolchain:add("cxflags", "-mcpu=" .. arch_cpu) + toolchain:add("asflags", "-target=" .. arch_target) + toolchain:add("asflags", "-mcpu=" .. arch_cpu) + toolchain:add("ldflags", "--cpu " .. arch_cpu_ld) end end) + |
