summaryrefslogtreecommitdiff
path: root/xmake/modules/private/action/require/impl/package.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2021-02-25 00:46:40 +0800
committerruki <[email protected]>2021-02-25 00:46:40 +0800
commit755d6cb62335f9b3a3cecf0830138886e9510f8a (patch)
treee473f2edb561578f23bed9fd8c8ed4c6a98243e9 /xmake/modules/private/action/require/impl/package.lua
parent1b934fa63f73cf2bad6f605f353b3021e601fb82 (diff)
fix depend order for package
Diffstat (limited to 'xmake/modules/private/action/require/impl/package.lua')
-rw-r--r--xmake/modules/private/action/require/impl/package.lua10
1 files changed, 7 insertions, 3 deletions
diff --git a/xmake/modules/private/action/require/impl/package.lua b/xmake/modules/private/action/require/impl/package.lua
index 9d2c87bc4..3095e10a9 100644
--- a/xmake/modules/private/action/require/impl/package.lua
+++ b/xmake/modules/private/action/require/impl/package.lua
@@ -196,9 +196,13 @@ end
--
function _sort_packagedeps(package)
local orderdeps = {}
- for _, dep in pairs(package:deps()) do
- table.join2(orderdeps, _sort_packagedeps(dep))
- table.insert(orderdeps, dep)
+ local deps = package:deps()
+ if deps then
+ for _, depname in ipairs(table.orderkeys(deps)) do
+ local dep = deps[depname]
+ table.join2(orderdeps, _sort_packagedeps(dep))
+ table.insert(orderdeps, dep)
+ end
end
return orderdeps
end