diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2014-01-24 15:51:47 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2014-01-24 15:51:47 +0000 |
commit | d6616da05fd5bf618426aded9fbfbc475578472e (patch) | |
tree | 7fe0a9fb94ef49f3df5be79e456a601c4a24bce5 | |
parent | 111f15ad02d7a76c7355f8e79f06d87a87a2905b (diff) | |
download | lua-aports-d6616da05fd5bf618426aded9fbfbc475578472e.tar.bz2 lua-aports-d6616da05fd5bf618426aded9fbfbc475578472e.tar.xz |
db: rename deps_exists to known_deps_exists
so we can ignore the unknown dependencies
-rw-r--r-- | aports/db.lua | 17 | ||||
-rwxr-xr-x | buildrepo.lua | 2 |
2 files changed, 15 insertions, 4 deletions
diff --git a/aports/db.lua b/aports/db.lua index 5302119..4bbee16 100644 --- a/aports/db.lua +++ b/aports/db.lua @@ -188,9 +188,20 @@ function Aports:each_reverse_dependency(pkg) end) end +function Aports:each_known_dependency(pkg) + return coroutine.wrap(function() + for dep in pkg:each_dependency() do + if self.apks[dep] then + coroutine.yield(dep) + end + end + end) +end + function Aports:each_pkg_with_name(name) if self.apks[name] == nil then - io.stderr:write("WARNING: "..name.." has no data\n") + io.stderr:write("WARNING: "..name..": not provided by any known APKBUILD\n") + return function() return nil end end return coroutine.wrap(function() for index, pkg in pairs(self.apks[name]) do @@ -263,8 +274,8 @@ function Aports:git_describe() return result end -function Aports:deps_exists(pkg) - for name in pkg:each_dependency() do +function Aports:known_deps_exists(pkg) + for name in self:each_known_dependency(pkg) do for dep in self:each_pkg_with_name(name) do if dep.pkgname ~= pkg.pkgname and dep:arch_enabled() and not dep:all_apks_exists() then return false diff --git a/buildrepo.lua b/buildrepo.lua index 1497800..8d5345c 100755 --- a/buildrepo.lua +++ b/buildrepo.lua @@ -178,7 +178,7 @@ for _,repo in pairs(args) do io.write(("%d/%d %d/%d %s\n"):format(tried, #pkgs, totally_built, stats[repo].aports, aport.pkgname)) - if not db:deps_exists(aport) then + if not db:known_deps_exists(aport) then warn("%s: Skipped due to missing dependencies", aport.pkgname) elseif build_aport(aport, repodest, logdir, opts.s) then built = built + 1 |