diff options
Diffstat (limited to 'src/luarocks/deps.lua')
-rw-r--r-- | src/luarocks/deps.lua | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/luarocks/deps.lua b/src/luarocks/deps.lua index 2edee8a6..05cbbc2d 100644 --- a/src/luarocks/deps.lua +++ b/src/luarocks/deps.lua | |||
@@ -849,4 +849,33 @@ function deps.get_deps_mode(args) | |||
849 | return args.deps_mode or cfg.deps_mode | 849 | return args.deps_mode or cfg.deps_mode |
850 | end | 850 | end |
851 | 851 | ||
852 | |||
853 | |||
854 | |||
855 | |||
856 | |||
857 | |||
858 | function deps.check_dependencies(repo, deps_mode) | ||
859 | local rocks_dir = path.rocks_dir(repo or cfg.root_dir) | ||
860 | assert(type(deps_mode) == "string") | ||
861 | if deps_mode == "none" then deps_mode = cfg.deps_mode end | ||
862 | |||
863 | local manifest = manif.load_manifest(rocks_dir) | ||
864 | if not manifest then | ||
865 | return | ||
866 | end | ||
867 | |||
868 | for name, versions in util.sortedpairs(manifest.repository) do | ||
869 | for version, version_entries in util.sortedpairs(versions, vers.compare_versions) do | ||
870 | for _, entry in ipairs(version_entries) do | ||
871 | if entry.arch == "installed" then | ||
872 | if manifest.dependencies[name] and manifest.dependencies[name][version] then | ||
873 | deps.report_missing_dependencies(name, version, manifest.dependencies[name][version], deps_mode, util.get_rocks_provided()) | ||
874 | end | ||
875 | end | ||
876 | end | ||
877 | end | ||
878 | end | ||
879 | end | ||
880 | |||
852 | return deps | 881 | return deps |