diff options
| author | Mikhail Gusarov <mikhail.gusarov@cfengine.com> | 2011-07-28 20:24:09 +0200 |
|---|---|---|
| committer | Mikhail Gusarov <mikhail.gusarov@cfengine.com> | 2011-07-28 20:24:09 +0200 |
| commit | e61a192b9f2fc206f1dbda5f7e604a1013902721 (patch) | |
| tree | a09b0fb6b83f5e78a1015146ce079d33a41c6efc | |
| parent | 25de237619d97b5c9ff04a846b20738d11162596 (diff) | |
| download | luarocks-e61a192b9f2fc206f1dbda5f7e604a1013902721.tar.gz luarocks-e61a192b9f2fc206f1dbda5f7e604a1013902721.tar.bz2 luarocks-e61a192b9f2fc206f1dbda5f7e604a1013902721.zip | |
Use provided subdirectories to look for files if specified (#32)
| -rw-r--r-- | src/luarocks/deps.lua | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/src/luarocks/deps.lua b/src/luarocks/deps.lua index 31018216..26c43047 100644 --- a/src/luarocks/deps.lua +++ b/src/luarocks/deps.lua | |||
| @@ -506,14 +506,6 @@ function check_external_deps(rockspec, mode) | |||
| 506 | patterns = cfg.runtime_external_deps_patterns | 506 | patterns = cfg.runtime_external_deps_patterns |
| 507 | subdirs = cfg.runtime_external_deps_subdirs | 507 | subdirs = cfg.runtime_external_deps_subdirs |
| 508 | end | 508 | end |
| 509 | local dirs = { | ||
| 510 | BINDIR = { subdir = subdirs.bin, testfile = "program", pattern = patterns.bin }, | ||
| 511 | INCDIR = { subdir = subdirs.include, testfile = "header", pattern = patterns.include }, | ||
| 512 | LIBDIR = { subdir = subdirs.lib, testfile = "library", pattern = patterns.lib } | ||
| 513 | } | ||
| 514 | if mode == "install" then | ||
| 515 | dirs.INCDIR = nil | ||
| 516 | end | ||
| 517 | if rockspec.external_dependencies then | 509 | if rockspec.external_dependencies then |
| 518 | for name, files in pairs(rockspec.external_dependencies) do | 510 | for name, files in pairs(rockspec.external_dependencies) do |
| 519 | local ok = true | 511 | local ok = true |
| @@ -522,9 +514,31 @@ function check_external_deps(rockspec, mode) | |||
| 522 | for _, extdir in ipairs(cfg.external_deps_dirs) do | 514 | for _, extdir in ipairs(cfg.external_deps_dirs) do |
| 523 | ok = true | 515 | ok = true |
| 524 | local prefix = vars[name.."_DIR"] | 516 | local prefix = vars[name.."_DIR"] |
| 517 | local dirs = { | ||
| 518 | BINDIR = { subdir = subdirs.bin, testfile = "program", pattern = patterns.bin }, | ||
| 519 | INCDIR = { subdir = subdirs.include, testfile = "header", pattern = patterns.include }, | ||
| 520 | LIBDIR = { subdir = subdirs.lib, testfile = "library", pattern = patterns.lib } | ||
| 521 | } | ||
| 522 | if mode == "install" then | ||
| 523 | dirs.INCDIR = nil | ||
| 524 | end | ||
| 525 | if not prefix then | 525 | if not prefix then |
| 526 | prefix = extdir | 526 | prefix = extdir |
| 527 | end | 527 | end |
| 528 | if type(prefix) == "table" then | ||
| 529 | if prefix.bin then | ||
| 530 | dirs.BINDIR.subdir = prefix.bin | ||
| 531 | end | ||
| 532 | if prefix.include then | ||
| 533 | if dirs.INCDIR then | ||
| 534 | dirs.INCDIR.subdir = prefix.include | ||
| 535 | end | ||
| 536 | end | ||
| 537 | if prefix.lib then | ||
| 538 | dirs.LIBDIR.subdir = prefix.lib | ||
| 539 | end | ||
| 540 | prefix = prefix.prefix | ||
| 541 | end | ||
| 528 | for dirname, dirdata in pairs(dirs) do | 542 | for dirname, dirdata in pairs(dirs) do |
| 529 | dirdata.dir = vars[name.."_"..dirname] or dir.path(prefix, dirdata.subdir) | 543 | dirdata.dir = vars[name.."_"..dirname] or dir.path(prefix, dirdata.subdir) |
| 530 | local file = files[dirdata.testfile] | 544 | local file = files[dirdata.testfile] |
