在 CMake 中,虽然它是一个出色的跨平台工具,但它也非常适合管理复杂的大型配置。我遇到的一个障碍是允许其他跨平台项目拥有特殊的“Visual Studio”项目。也就是说,在编译特定的 Visual Studio 项目时,我需要 CMake 的输出来拥有表单设计器 .resx 文件。这最终在一个标签中,如下所示:
<ItemGroup>
<EmbeddedResource Include="Form1.resX">
<DependentUpon>Form1.h</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
如果我可以编写自定义规则、编写文本或以其他方式对 Visual Studio .vcxproj 文件中的内容进行更低级别的控制,我就可以做到这一点。
.vcxproj.filters 文件有一个对应的条目:
<ItemGroup>
<EmbeddedResource Include="Form1.resX">
<Filter>Resource Files</Filter>
</EmbeddedResource>
</ItemGroup>
还需要将资源文件添加到 .vcxproj:
<ItemGroup>
<ResourceCompile Include="app.rc" />
</ItemGroup>
对于 .vcxproj.filters:
<ItemGroup>
<ResourceCompile Include="app.rc">
<Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
这是对 CMake 的代码更改还是可以添加的其他内容?如果是代码更改,请指出必须在哪里进行代码更改,我可以考虑进行必要的更新。