summaryrefslogtreecommitdiff
path: root/xmake/modules/private/action/require/impl/package.lua
diff options
context:
space:
mode:
Diffstat (limited to 'xmake/modules/private/action/require/impl/package.lua')
-rw-r--r--xmake/modules/private/action/require/impl/package.lua8
1 files changed, 8 insertions, 0 deletions
diff --git a/xmake/modules/private/action/require/impl/package.lua b/xmake/modules/private/action/require/impl/package.lua
index 840814040..5335ae73a 100644
--- a/xmake/modules/private/action/require/impl/package.lua
+++ b/xmake/modules/private/action/require/impl/package.lua
@@ -1437,6 +1437,14 @@ function _must_depend_on(package, dep)
local librarydeps = hashset.from(manifest.librarydeps)
return librarydeps:has(dep:name())
end
+ -- If we mark it as public, even if binary package is already installed,
+ -- we need also to install it's public dep and export the it's envs.
+ --
+ -- @see https://github.com/xmake-io/xmake-repo/pull/6207
+ -- https://github.com/xmake-io/xmake/pull/6101
+ if package:is_binary() and package:extraconf("deps", dep:name(), "public") then
+ return true
+ end
end
-- compatible with all previous link dependencies?