summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2021-01-08 00:35:32 +0800
committerruki <[email protected]>2021-01-08 00:35:32 +0800
commit5f1accca63f38b619205bc778b503442f7d3fd94 (patch)
tree4a86fa2c0f9d2d01f2d68798a5b11f1d786349b8
parent0d532ddf2b5228cb41f1e699a183de63072d90d4 (diff)
fix load package
-rw-r--r--xmake/actions/require/impl/package.lua22
1 files changed, 12 insertions, 10 deletions
diff --git a/xmake/actions/require/impl/package.lua b/xmake/actions/require/impl/package.lua
index 634a7cfdc..1bfe5361f 100644
--- a/xmake/actions/require/impl/package.lua
+++ b/xmake/actions/require/impl/package.lua
@@ -452,11 +452,13 @@ end
function _inherit_parent_configs(requireinfo, parentinfo)
local requireinfo_configs = requireinfo.configs or {}
local parentinfo_configs = parentinfo.configs or {}
- if requireinfo_configs.vs_runtime == nil then
- requireinfo_configs.vs_runtime = parentinfo_configs.vs_runtime
- end
- if requireinfo_configs.pic == nil then
- requireinfo_configs.pic = parentinfo_configs.pic
+ if not requireinfo_configs.shared then
+ if requireinfo_configs.vs_runtime == nil then
+ requireinfo_configs.vs_runtime = parentinfo_configs.vs_runtime
+ end
+ if requireinfo_configs.pic == nil then
+ requireinfo_configs.pic = parentinfo_configs.pic
+ end
end
requireinfo.configs = requireinfo_configs
end
@@ -494,17 +496,17 @@ function _load_package(packagename, requireinfo, opt)
-- merge requireinfo from `add_requireconfs()`
_merge_requireinfo(requireinfo, opt.requirepath)
+ -- inherit some builtin configs of parent package, e.g. vs_runtime, pic
+ if opt.parentinfo and package:kind() ~= "binary" then
+ _inherit_parent_configs(requireinfo, opt.parentinfo)
+ end
+
-- select package version
local version, source = _select_package_version(package, requireinfo)
if version then
package:version_set(version, source)
end
- -- inherit some builtin configs of parent package, e.g. vs_runtime, pic
- if opt.parentinfo and package:kind() ~= "binary" and not package:config("shared") then
- _inherit_parent_configs(requireinfo, opt.parentinfo)
- end
-
-- get package key
local packagekey = _get_packagekey(packagename, requireinfo, version)