summaryrefslogtreecommitdiff
path: root/xmake/modules/private/utils/toolchain.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2024-06-11 00:56:18 +0800
committerruki <[email protected]>2024-06-11 00:56:18 +0800
commit33f3078f4dc7f1f804c91a3d0e30f61bd5f75d02 (patch)
tree62c96cffaaa20683963f0b54b8238473df2e893d /xmake/modules/private/utils/toolchain.lua
parentf0457bac853a7bfbeedf53995a36d60912f7595e (diff)
support latest vs2022 preview toolset
Diffstat (limited to 'xmake/modules/private/utils/toolchain.lua')
-rw-r--r--xmake/modules/private/utils/toolchain.lua10
1 files changed, 5 insertions, 5 deletions
diff --git a/xmake/modules/private/utils/toolchain.lua b/xmake/modules/private/utils/toolchain.lua
index 6297ec8e2..7476ff055 100644
--- a/xmake/modules/private/utils/toolchain.lua
+++ b/xmake/modules/private/utils/toolchain.lua
@@ -17,6 +17,7 @@
-- @author ruki
-- @file toolchain.lua
--
+import("core.base.semver")
-- is the compatible with the host?
function is_compatible_with_host(name)
@@ -35,15 +36,14 @@ end
function get_vs_toolset_ver(vs_toolset)
local toolset_ver
if vs_toolset then
- local verinfo = vs_toolset:split('%.')
- if #verinfo >= 2 then
- toolset_ver = "v" .. verinfo[1] .. (verinfo[2]:sub(1, 1) or "0")
- end
+ local verinfo = semver.new(vs_toolset)
+ toolset_ver = "v" .. verinfo:major() .. (tostring(verinfo:minor()):sub(1, 1) or "0")
-- @see https://github.com/xmake-io/xmake/pull/5176
- if toolset_ver and toolset_ver == "v144" and vs_toolset:startswith("14.40.") then
+ if toolset_ver and toolset_ver == "v144" and verinfo:ge("14.40") and verinfo:lt("14.42") then
toolset_ver = "v143"
end
end
return toolset_ver
end
+