在CMake中,虽然它是一个很好的跨平台工具,但它对于管理复杂和大型配置也很棒。我碰到的一个障碍就是允许一个跨平台的项目有专门的“Visual Studio”项目。也就是说,在编译特定的视觉工作室项目时,我需要CMake的输出来拥有表单设计器.resx文件。这在标签结束如下:在cmake中添加Visual Studio .resx文件
<ItemGroup>
<EmbeddedResource Include="Form1.resX">
<DependentUpon>Form1.h</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
我能做到这一点,如果我可以写一个自定义规则,或书写文字,或以其他方式在什么进入视觉工作室.vcxproj文件的更多低级别控制。
的.vcxproj.filters文件有对应的条目:
<ItemGroup>
<EmbeddedResource Include="Form1.resX">
<Filter>Resource Files</Filter>
</EmbeddedResource>
</ItemGroup>
还有一个要求,让加入.vcxproj资源文件:
<ItemGroup>
<ResourceCompile Include="app.rc" />
</ItemGroup>
而到了.vcxproj。过滤器:
<ItemGroup>
<ResourceCompile Include="app.rc">
<Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
这是一个代码改变CMake的或东西,否则会被添加?如果是代码更改,则需要指出代码更改的位置,我可以考虑进行必要的更新。
可能是相关的:http://stackoverflow.com/questions/8183156/cmake-and-visual-studio-resource-files – arrowd
讨论资源文件,但.resX文件与设计者的.h文件关联在.vcxproj中,并再次用于.vcxproj.filters文件中。它比资源更复杂。如果它们设置不当,那么视觉工作室设计师将无法工作。由于这些都只是项目文件中的纯文本项目,我看不出有任何理由CMAKE不能用于包含它们......但我不确定是否有某种方法可以使它无需代码更改到CMAKE本身。 – DigitalInBlue
比从未更好的迟到?我实现了这一点,已经在GitHub CMake项目上做了一个pull请求。希望这将成为未来的一项功能! – DigitalInBlue