summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2021-04-27 22:51:19 +0800
committerruki <[email protected]>2021-04-27 22:51:19 +0800
commit1b2808af7509375c04644a05a109d641886a61ce (patch)
treed8fe4eac3d02a405dcdabc973d2c6fe387cebeea
parentd0ef3fca402b5a361ad48520c57b074fcb99b565 (diff)
improve to register packages
-rw-r--r--xmake/modules/private/action/require/impl/register_packages.lua21
1 files changed, 11 insertions, 10 deletions
diff --git a/xmake/modules/private/action/require/impl/register_packages.lua b/xmake/modules/private/action/require/impl/register_packages.lua
index 9bc1c52cb..630ae89fe 100644
--- a/xmake/modules/private/action/require/impl/register_packages.lua
+++ b/xmake/modules/private/action/require/impl/register_packages.lua
@@ -88,20 +88,21 @@ function _register_required_package(instance, required_package)
_register_required_package_base(instance, required_package)
_register_required_package_libs(instance, required_package)
_register_required_package_envs(instance, envs)
- local orderdeps = instance:orderdeps()
- if orderdeps then
- local total = #orderdeps
- for idx, _ in ipairs(orderdeps) do
- local dep = orderdeps[total + 1 - idx]
+ local linkdeps = instance:linkdeps()
+ if linkdeps then
+ local total = #linkdeps
+ for idx, _ in ipairs(linkdeps) do
+ local dep = linkdeps[total + 1 - idx]
if dep then
- -- we can only inherit all link deps of library package
- if instance:is_library() then
- _register_required_package_libs(dep, required_package, true)
- end
- _register_required_package_envs(dep, envs)
+ _register_required_package_libs(dep, required_package, true)
end
end
end
+ for _, dep in ipairs(instance:orderdeps()) do
+ if not dep:is_private() then
+ _register_required_package_envs(dep, envs)
+ end
+ end
if #table.keys(envs) > 0 then
required_package:add({envs = envs})
end