summaryrefslogtreecommitdiff
path: root/xmake/actions/require/package.lua
diff options
context:
space:
mode:
Diffstat (limited to 'xmake/actions/require/package.lua')
-rw-r--r--xmake/actions/require/package.lua12
1 files changed, 10 insertions, 2 deletions
diff --git a/xmake/actions/require/package.lua b/xmake/actions/require/package.lua
index 5446a7e93..e48ce37fc 100644
--- a/xmake/actions/require/package.lua
+++ b/xmake/actions/require/package.lua
@@ -245,12 +245,20 @@ function _search_package(name)
return packages
end
--- sort package deps
+-- sort package deps
+--
+-- .e.g
+--
+-- a.deps = b
+-- b.deps = c
+--
+-- orderdeps: c -> b -> a
+--
function _sort_packagedeps(package)
local orderdeps = {}
for _, dep in pairs(package:deps()) do
table.join2(orderdeps, _sort_packagedeps(dep))
- table.insert(orderdeps, dep)
+ table.insert(orderdeps, dep)
end
return orderdeps
end