summaryrefslogtreecommitdiff
path: root/xmake/modules/private/action/require/impl/package.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2024-01-28 18:26:13 +0800
committerruki <[email protected]>2024-01-28 18:26:13 +0800
commit4d8b4ad55eb3ccee0dd0e9c0fc0bafbb55ca04e6 (patch)
tree1d72f4249f755f3aff6e2287957bab096d3532a4 /xmake/modules/private/action/require/impl/package.lua
parentcf61b2b9e164b6655cc4ea9b983dddffaf297372 (diff)
fix runtimes MT
Diffstat (limited to 'xmake/modules/private/action/require/impl/package.lua')
-rw-r--r--xmake/modules/private/action/require/impl/package.lua14
1 files changed, 12 insertions, 2 deletions
diff --git a/xmake/modules/private/action/require/impl/package.lua b/xmake/modules/private/action/require/impl/package.lua
index 4ab054ba6..900041c35 100644
--- a/xmake/modules/private/action/require/impl/package.lua
+++ b/xmake/modules/private/action/require/impl/package.lua
@@ -571,8 +571,18 @@ function _finish_requireinfo(requireinfo, package)
end
requireinfo.configs = requireinfo.configs or {}
if not package:is_headeronly() then
- if requireinfo.configs.runtimes == nil and package:is_plat("windows") then
- requireinfo.configs.runtimes = "MT"
+ if package:is_plat("windows") then
+ -- @see https://github.com/xmake-io/xmake/issues/4477#issuecomment-1913249489
+ local runtimes = requireinfo.configs.runtimes
+ if runtimes then
+ runtimes = runtimes:split(",")
+ else
+ runtimes = {}
+ end
+ if not table.contains(runtimes, "MT", "MD", "MTd", "MDd") then
+ table.insert(runtimes, "MT")
+ end
+ requireinfo.configs.runtimes = table.concat(runtimes, ",")
end
end
-- we need to ensure readonly configs