summaryrefslogtreecommitdiff
path: root/xmake/modules
diff options
context:
space:
mode:
authorPaul Reilly <[email protected]>2020-09-17 16:44:27 +0100
committerPaul Reilly <[email protected]>2020-09-17 16:44:27 +0100
commit1b11965798c552d338e708595ebc6e944711cd40 (patch)
tree82827818cd74a3b12e2e884e5b05ca23e1aa42e5 /xmake/modules
parent86ad96245f082ec0b7c188385768d4b88d375256 (diff)
fix returning found package manager, tidy assembling log message
Diffstat (limited to 'xmake/modules')
-rw-r--r--xmake/modules/lib/detect/find_package.lua7
-rw-r--r--xmake/modules/package/manager/find_package.lua12
2 files changed, 10 insertions, 9 deletions
diff --git a/xmake/modules/lib/detect/find_package.lua b/xmake/modules/lib/detect/find_package.lua
index a0f44cb74..0aa0f17e1 100644
--- a/xmake/modules/lib/detect/find_package.lua
+++ b/xmake/modules/lib/detect/find_package.lua
@@ -74,8 +74,8 @@ function main(name, opt)
end
-- find package
- local found_manager_name, package_name, orig_manager_name
- result, found_manager_name, package_name, orig_manager_name = find_package(name, opt)
+ local found_manager_name, package_name
+ result, found_manager_name, package_name = find_package(name, opt)
-- cache result
cacheinfo[name] = result and result or false
@@ -87,8 +87,7 @@ function main(name, opt)
-- only display manager of found package if the package we searched for
-- did not specify a package manager
- found_manager_name = found_manager_name or ""
- local display_manager = orig_manager_name == found_manager_name and "" or found_manager_name .. "::"
+ local display_manager = name:find("::", 1, true) and "" or (found_manager_name or "") .. "::"
local display_name = display_manager .. package_name
cprint("checking for %s ... ${color.success}%s %s", name, display_name, result.version and result.version or "")
else
diff --git a/xmake/modules/package/manager/find_package.lua b/xmake/modules/package/manager/find_package.lua
index 6a3336cc9..93f7c8447 100644
--- a/xmake/modules/package/manager/find_package.lua
+++ b/xmake/modules/package/manager/find_package.lua
@@ -64,16 +64,17 @@ function _find_package_with_builtin_rule(package_name, opt)
end
-- find package from the given package manager
- local result, manager_name = nil, nil
+ local result = nil
+ local found_manager_name = nil
for _, manager_name in ipairs(managers) do
dprint("finding %s from %s ..", package_name, manager_name)
result = import("package.manager." .. manager_name .. ".find_package", {anonymous = true})(package_name, opt)
if result then
+ found_manager_name = manager_name
break
end
- manager_name = nil
end
- return result, manager_name
+ return result, found_manager_name
end
-- find package
@@ -146,6 +147,7 @@ end
--
-- @endcode
--
+
function main(name, opt)
-- get the copied options
@@ -169,7 +171,7 @@ function main(name, opt)
opt.version = require_version or opt.version
-- find package
- local found_manager_name
+ local found_manager_name = nil
result, found_manager_name = _find_package(manager_name, package_name, opt)
-- match version?
@@ -180,5 +182,5 @@ function main(name, opt)
end
-- ok?
- return result, found_manager_name, package_name, manager_name
+ return result, found_manager_name, package_name
end