From 486959e2dbd516f9d7bce8493a1a55b9d890066e Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Wed, 30 Mar 2011 13:10:06 +0200 Subject: ap/aports.lua: implement recurse_until will recursively parse all build depends --- ap.in | 26 +++++--------------------- 1 file changed, 5 insertions(+), 21 deletions(-) (limited to 'ap.in') diff --git a/ap.in b/ap.in index 3d5925b..b0b973e 100755 --- a/ap.in +++ b/ap.in @@ -36,28 +36,11 @@ subcmd.recursdeps = { desc = "Recursively print all make dependencies for given packages", usage = "PKG...", run = function (opts) - local i - local visited = {} - local apkdb, rev = aports.init_apkdb(repodirs) - function recurs(pn) - if pn == nil or visited[pn] or apkdb[pn] == nil then - return - end - visited[pn] = true - local i,d, p - for i,p in pairs(apkdb[pn]) do - local _, d - for _, d in pairs(p.depends) do - recurs(d) - end - for _, d in pairs(p.makedepends) do - recurs(d) - end - end - print(pn) - end + local db, rev = aports.init_apkdb(repodirs) for i = 2, #opts do - recurs(opts[i]) + aports.recurs_until(db, opts[i], function(pn) + print(pn) + end) end end } @@ -130,6 +113,7 @@ while i <= #arg do i = i + 1 end + cmd = opts[1] if cmd == nil then -- cgit v1.2.3-60-g2f50