在预构建脚本中,如何获取项目的“kind”?

我正在尝试添加一个后构建步骤,它会在项目编译后运行一个可执行文件。要做到这一点,编译器需要提前知道它是.exe还是.dll。我如何在premake步骤中查找项目的扩展名(或premake“kind”)?我正在使用premake 4.3和Visual Studio 2010。谢谢!

点赞
用户93921
用户93921

在 Premake4 中没有很好的方法来实现这个,你最好的方法可能是使用配置过滤器来复制命令。

configuration { "ConsoleApp or WindowedApp" }
   postbuildcommands { "thecmd --kind=exe" }
configuration { "StaticLib or SharedLib" }
   postbuildcommands { "thecmd --kind=lib" }

在 Premake5 中,你可以使用 tokens。

postbuildcommands {
   "thecmd --kind=%{iif(cfg.kind:endswith("App"), "exe", "lib")}"
}
2015-03-16 15:53:51