boost: fix llvm toolchain (#4490)

* boost: fix llvm toolchain

* fix vs_toolset
pull/4495/head
star9029 8 months ago committed by GitHub
parent 99022980ea
commit 68a51878cd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 5
      packages/b/boost/xmake.lua

@ -247,6 +247,9 @@ package("boost")
if package:has_tool("cxx", "clang_cl") then if package:has_tool("cxx", "clang_cl") then
build_toolset = "clang-win" build_toolset = "clang-win"
build_toolchain = package:toolchain("clang-cl") build_toolchain = package:toolchain("clang-cl")
elseif package:has_tool("cxx", "clang") then
build_toolset = "clang-win"
build_toolchain = package:toolchain("clang") or package:toolchain("llvm")
elseif package:has_tool("cxx", "cl") then elseif package:has_tool("cxx", "cl") then
build_toolset = "msvc" build_toolset = "msvc"
build_toolchain = package:toolchain("msvc") build_toolchain = package:toolchain("msvc")
@ -388,6 +391,7 @@ package("boost")
if package:is_plat("windows") and package:version():le("1.85.0") then if package:is_plat("windows") and package:version():le("1.85.0") then
local vs_toolset = build_toolchain:config("vs_toolset") local vs_toolset = build_toolchain:config("vs_toolset")
if vs_toolset then
local vs_toolset_ver = import("core.base.semver").new(vs_toolset) local vs_toolset_ver = import("core.base.semver").new(vs_toolset)
local minor = vs_toolset_ver:minor() local minor = vs_toolset_ver:minor()
if minor and minor >= 40 then if minor and minor >= 40 then
@ -398,6 +402,7 @@ package("boost")
io.replace("tools/build/src/tools/msvc.jam", "14.3", "14.4", {plain = true}) io.replace("tools/build/src/tools/msvc.jam", "14.3", "14.4", {plain = true})
end end
end end
end
local ok = os.execv("./b2", argv, {envs = runenvs, try = true, stdout = "boost-log.txt"}) local ok = os.execv("./b2", argv, {envs = runenvs, try = true, stdout = "boost-log.txt"})
if ok ~= 0 then if ok ~= 0 then
raise("boost build failed, please check log in " .. path.join(os.curdir(), "boost-log.txt")) raise("boost build failed, please check log in " .. path.join(os.curdir(), "boost-log.txt"))

Loading…
Cancel
Save