我有一些事情在 Visual Studio 中找不到执行的好方法:
预构建步骤调用一个代码生成器,该生成器生成一些稍后编译的源文件。这可以通过在项目中添加空白文件(稍后将其替换为真实生成的文件)在有限程度上解决,但如果我不知道名称和/或自动生成的源文件的数量,它就不起作用。我可以很容易地在
GNU make
使用中解决它$(wildcard generated/*.c)
。如何使用 Visual Studio 做类似的事情?如果不需要修改文件(
"make"
行为),我可以阻止预构建/构建后事件运行吗?当前的解决方法是编写一个为我检查时间戳的包装器脚本,它可以工作,但有点笨拙。找到安装在 VS 之外的外部库和头文件的好方法是什么?在 *nix 的情况下,它们通常会安装在系统路径中,或者使用
autoconf
. 我想我可以在项目设置中使用用户定义的宏指定路径,但是在哪里放置这些宏以便可以轻松找到和调整它们的好地方?
为了清楚起见,我知道存在更好的 Windows 构建系统(CMake
, SCons
),但它们通常会自己生成 VS 项目文件,我需要将此项目集成到现有的 VS 构建系统中,所以我希望我只有普通的 VS项目文件,而不是生成的文件。