这个问题或多或少是这个问题的热身:
how to get cmake to add files to msvcs solution tree
它从来没有得到有效的答案,所以我想稍微改变一下:
是否可以使用 cmake 2.8.3 引入的 cmake 解决方案文件夹将文件直接添加到 vs 解决方案?我想做相当于 VS->Solution->Add->Existing Item 的 cmake。所以我的文件将出现在属于解决方案而不属于项目的文件夹中。
我找到了如何使用解决方案文件夹将目标分组到文件夹中的示例,代码如下:
set_property( GLOBAL PROPERTY USE_FOLDERS ON)
set_property(TARGET ${TARGET_NAME} PROPERTY FOLDER "Test")
那么我可以向文件夹中添加一个文件而不是目标吗?
最佳答案
这可能是不可能的。
CMake 将其 Assets 组织成项目 和目标。该项目对应于 Visual Studio 的解决方案文件,而每个目标将在各自的解决方案中生成一个 Visual Studio 项目。
现在的问题是 CMake 不允许向 CMake 项目添加文件。事实上,CMake 项目只不过是目标的集合,几乎不提供自定义选项。因此,您提到的 USE_FOLDERS
选项只能用于在解决方案中对 VS 项目进行分组,而不是单个文件。
最接近您要求的可能是添加一个 custom target保存您的文件。然而,这仍然会在解决方案中生成一个 VS 项目(除了你的文件之外,它还包含一堆其他东西)而不是一个普通文件夹。
关于c++ - 是否可以将文件添加到 Visual Studio 中的 CMake 生成的解决方案文件夹中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20251829/