如何解决是否可以在 MSBUILD 属性中创建一个属性表来禁用匹配通配符字符串的文件的预编译头
我正在尝试开发一些 MSBUILD 技能,我觉得我应该能够创建一个满足我要求的用户属性文件。 在我们专有的构建系统中,我们有一个插件,它接受 *.foo 类型的文件并为生成的 *_foo.cpp 模块创建一个项目列表。但是,它继承了这些项目的全局项目属性。具体来说,如果我为普通的 *.cpp 文件打开了预编译头文件,_foo.cpp 模块也会启用预编译头文件。而且,好吧,无论是谁创作了插件,都认为没有人会这样做。 所以我想我应该能够导入一个属性表来创建一个 ItemList=_foo.cpp 并指示编译器禁用预编译的头文件,但目前我不知道如何做到这一点。
我的另一个选择是修改插件,它是用C#编写的,这样它在将这些文件插入到项目中时专门关闭编译器预编译头选项......但目前我'我很好奇我会怎么做。
我仍在挖掘,但我假设有一个名为“CCcompile”的项目列表,其中包含项目中的所有 *.cpp 源。我只想用属性表更改其中的一个子集。但我不确定我是否可以那样做。
一有时间,我会用一个示例项目文件更新这个问题。
我认为,如果这是可能的,MSBUILD 专家将能够引导我找到一些面包屑以到达我想去的地方。
目前我知道我可以创建一个只包含 *_foo.cpp 模块的新 ItemList,但这将是一个单独的重复项目列表。我需要修改现有项目列表中与 *_foo.cpp 字符串匹配的文件的属性。
所以我正在研究 msbuild,因为我有时间。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。