diff options
| -rw-r--r-- | xmake/modules/private/action/require/impl/package.lua | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/xmake/modules/private/action/require/impl/package.lua b/xmake/modules/private/action/require/impl/package.lua index 59ac7abed..7aa268022 100644 --- a/xmake/modules/private/action/require/impl/package.lua +++ b/xmake/modules/private/action/require/impl/package.lua @@ -365,7 +365,6 @@ function _init_requireinfo(requireinfo, package, opt) requireinfo.is_toplevel = true if not package:is_headeronly() then if package:is_cross() and package:is_library() then - -- TODO get extra configs of toolchain requireinfo.configs.toolchains = requireinfo.configs.toolchains or project.get("target.toolchains") or get_config("toolchain") end requireinfo.configs.vs_runtime = requireinfo.configs.vs_runtime or project.get("target.runtimes") or get_config("vs_runtime") @@ -381,6 +380,13 @@ function _set_requireinfo_default(requireinfo, package) requireinfo.configs.vs_runtime = "MT" end end + -- we need ensure readonly configs + for _, name in ipairs(table.keys(requireinfo.configs)) do + if package:config(name) ~= nil and package:extraconf("configs", name, "readonly") then + -- package:config() will use default value after loading package + requireinfo.configs[name] = nil + end + end end -- merge requireinfo from `add_requireconfs()` |
