是否可以根据条件包含AdditionalIncludeDirectories 条目?我知道我们可以根据配置和平台添加它,但更重要的是,如果在本地运行还是在 teamcity 服务器上运行,我们可以以某种方式添加特定路径吗?
这基本上是需要的,因为有些文件夹在本地和服务器上的打包方式不同,我们无法修改它们。如果我只有一个,我可以在 TC 上构建,也可以在本地构建。两者都没有。
示例:
本地 ->
..\..\..\lib_name\include
在服务器上 ->
$(OutDir)\include
我想说
if 'Local':
..\..\..\lib_name\include
else:
$(OutDir)\include
请建议最佳选择。
是的,您可以使用环境变量来做到这一点。在服务器上设置
TEAMCITY_BUILD
或类似的内容。本地不会存在。
在项目文件中,检查此变量。如果设置了,则使用服务器路径,否则使用本地路径。
类似:
set TEAMCITY_BUILD=true
.vcxproj
中添加条件来检查TEAMCITY_BUILD
是否存在。在此基础上使用正确的路径。您可以根据构建的运行位置来控制构建,而无需每次都更改内容。