summaryrefslogtreecommitdiff
path: root/xmake/actions/require
diff options
context:
space:
mode:
authorruki <[email protected]>2019-03-14 22:50:28 +0800
committerruki <[email protected]>2019-03-14 11:02:51 +0800
commitfbf5ca5b9f93713dd2d7017674aebcdd31aaa2aa (patch)
tree89f1bd9604f4f2bf58fe99b3fe67655c6d2f652f /xmake/actions/require
parentdd6aeb6af01259e38472228ecc1aa7c9fc96f7bd (diff)
add_configs for package
Diffstat (limited to 'xmake/actions/require')
-rw-r--r--xmake/actions/require/impl/package.lua3
-rw-r--r--xmake/actions/require/info.lua28
2 files changed, 30 insertions, 1 deletions
diff --git a/xmake/actions/require/impl/package.lua b/xmake/actions/require/impl/package.lua
index 6a1b0c986..b7945d5d4 100644
--- a/xmake/actions/require/impl/package.lua
+++ b/xmake/actions/require/impl/package.lua
@@ -128,7 +128,8 @@ function _parse_require(require_str, requires_extra, parentinfo)
group = require_extra.group, -- only uses the first package in same group
system = require_extra.system, -- default: true, we can set it to disable system package manually
option = require_extra.option, -- set and attach option
- config = require_extra.config, -- the build configuration of package
+ configs = require_extra.configs or -- the build configuration of package
+ require_extra.config, -- TODO deprecated
default = require_extra.default, -- default: true, we can set it to disable package manually
optional = parentinfo.optional or require_extra.optional -- default: false, inherit parentinfo.optional
}
diff --git a/xmake/actions/require/info.lua b/xmake/actions/require/info.lua
index a6fc25000..75c171559 100644
--- a/xmake/actions/require/info.lua
+++ b/xmake/actions/require/info.lua
@@ -154,6 +154,34 @@ function main(package_names)
end
end
+ -- show requires
+ cprint(" -> ${magenta}requires${clear}:")
+ cprint(" -> ${cyan}plat${clear}: %s", instance:plat())
+ cprint(" -> ${cyan}arch${clear}: %s", instance:arch())
+ cprint(" -> ${cyan}mode${clear}: %s", instance:mode())
+ local configs_required = instance:configs()
+ if configs_required then
+ cprint(" -> ${cyan}configs${clear}:")
+ for name, value in pairs(configs_required) do
+ cprint(" -> %s: %s", name, value)
+ end
+ end
+
+ -- show configs
+ local configs = instance:get("configs")
+ if configs then
+ cprint(" -> ${magenta}configs${clear}:")
+ for _, conf in ipairs(configs) do
+ cprint(" -> ${cyan}%s${clear}:", conf)
+ for name, value in pairs(instance:extraconf("configs", conf)) do
+ if type(value) == "table" then
+ value = string.serialize(value, true)
+ end
+ cprint(" -> %s: %s", name, value)
+ end
+ end
+ end
+
-- end
print("")
end