premake:如何获得已定义配置的列表?



例如,我想要一个假设的函数get_configurations(),它可以让我在premake5.lua中做这样的事情:

workspace "myworkspace"
configurations { "debug", "release" }
project "myproject"
configurations { "projconfig" }
for _, cfg in ipairs(get_configurations()) do
print(cfg)
end

…并输出:

debug
release
projconfig

这可能吗?我看到有premake.configset,但不清楚如何使用它…

不,那不可能。在您的简单示例中,这看起来很容易,但在较大的项目中,在决定列表中最终包含哪些值时可能需要考虑许多因素。它可以通过目标平台、工具集或任意数量的其他变量进行过滤。稍后的块可能会删除先前设置的值。在运行所有脚本并编译最终配置以供导出之前,无法确定实际的列表。

然而,Premake只是Lua,所以你总是可以定义一个配置列表并将其与变量关联,或者将你的设置包装在一个函数中并传递值。

最新更新