summaryrefslogtreecommitdiff
path: root/xmake/modules/private/action/require/impl/package.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2022-08-18 23:38:10 +0800
committerruki <[email protected]>2022-08-18 23:38:10 +0800
commitefa7402d57ba0e2df823a180bfeb2b05732d12c7 (patch)
treea774f4dc9b00af5aba040a882fc414730d0e4a9d /xmake/modules/private/action/require/impl/package.lua
parentc98ec57baf0aa7d66200783282f2ff9175ea1d8c (diff)
revert requires
Diffstat (limited to 'xmake/modules/private/action/require/impl/package.lua')
-rw-r--r--xmake/modules/private/action/require/impl/package.lua28
1 files changed, 15 insertions, 13 deletions
diff --git a/xmake/modules/private/action/require/impl/package.lua b/xmake/modules/private/action/require/impl/package.lua
index 7a18e1684..aa7fc9b96 100644
--- a/xmake/modules/private/action/require/impl/package.lua
+++ b/xmake/modules/private/action/require/impl/package.lua
@@ -466,6 +466,19 @@ function _init_requireinfo(requireinfo, package, opt)
requireinfo.configs = requireinfo.configs or {}
if opt.is_toplevel then
requireinfo.is_toplevel = true
+ if not package:is_headeronly() then
+ if package:is_library() then
+ requireinfo.configs.toolchains = requireinfo.configs.toolchains or project.get("target.toolchains")
+ if project.policy("package.inherit_external_configs") then
+ requireinfo.configs.toolchains = requireinfo.configs.toolchains or get_config("toolchain")
+ end
+ end
+ requireinfo.configs.vs_runtime = requireinfo.configs.vs_runtime or project.get("target.runtimes")
+ if project.policy("package.inherit_external_configs") then
+ requireinfo.configs.vs_runtime = requireinfo.configs.vs_runtime or get_config("vs_runtime")
+ end
+ requireinfo.configs.lto = requireinfo.configs.lto or project.policy("build.optimization.lto")
+ end
end
end
@@ -475,19 +488,8 @@ function _finish_requireinfo(requireinfo, package)
if package:is_headeronly() then
requireinfo.configs.vs_runtime = nil
else
- if package:is_library() then
- requireinfo.configs.toolchains = requireinfo.configs.toolchains or project.get("target.toolchains")
- if project.policy("package.inherit_external_configs") then
- requireinfo.configs.toolchains = requireinfo.configs.toolchains or get_config("toolchain")
- end
- end
- requireinfo.configs.vs_runtime = requireinfo.configs.vs_runtime or project.get("target.runtimes")
- if project.policy("package.inherit_external_configs") then
- requireinfo.configs.vs_runtime = requireinfo.configs.vs_runtime or get_config("vs_runtime")
- end
- requireinfo.configs.lto = requireinfo.configs.lto or project.policy("build.optimization.lto")
- if package:is_plat("windows") then
- requireinfo.configs.vs_runtime = requireinfo.configs.vs_runtime or "MT"
+ if requireinfo.configs.vs_runtime == nil and package:is_plat("windows") then
+ requireinfo.configs.vs_runtime = "MT"
end
end
-- we need ensure readonly configs