diff options
Diffstat (limited to 'src/luarocks/deps.lua')
-rw-r--r-- | src/luarocks/deps.lua | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/luarocks/deps.lua b/src/luarocks/deps.lua index b10594a3..4f16c2a6 100644 --- a/src/luarocks/deps.lua +++ b/src/luarocks/deps.lua | |||
@@ -543,9 +543,18 @@ function check_external_deps(rockspec, mode) | |||
543 | if f:match("%.so$") or f:match("%.dylib$") or f:match("%.dll$") then | 543 | if f:match("%.so$") or f:match("%.dylib$") or f:match("%.dll$") then |
544 | f = f:gsub("%.[^.]+$", "."..cfg.external_lib_extension) | 544 | f = f:gsub("%.[^.]+$", "."..cfg.external_lib_extension) |
545 | end | 545 | end |
546 | local testfile = dir.path(dirdata.dir, f) | 546 | if f:match("%*") then |
547 | if fs.exists(testfile) then | 547 | local replaced = f:gsub("%.", "%%."):gsub("%*", ".*") |
548 | found = true | 548 | for _, entry in ipairs(fs.list_dir(dirdata.dir)) do |
549 | if entry:match(replaced) then | ||
550 | found = true | ||
551 | break | ||
552 | end | ||
553 | end | ||
554 | else | ||
555 | found = fs.exists(dir.path(dirdata.dir, f)) | ||
556 | end | ||
557 | if found then | ||
549 | break | 558 | break |
550 | else | 559 | else |
551 | if failed_file then | 560 | if failed_file then |