我们正在使用 CMake 为 Visual Studio 2008 生成解决方案文件。除了构建库和可执行文件的常规源项目之外,我还想要一个仅包含配置文件的项目。这些文件用于在运行时配置项目的行为。构建项目不需要它们,但是将它们包含在解决方案中可以方便地编辑这些文件。我能够使用add_custom_target
这样的方式完成此操作:
file(GLOB ini_files ${PROJECT_SOURCE_DIR}/../config/ini/*)
source_group(ini FILES ${ini_files})
file(GLOB xml_files ${PROJECT_SOURCE_DIR}/../config/xml/*)
source_group(xml FILES ${xml_files})
add_custom_target(config SOURCES ${ini_files} ${xml_files})
这给了我一个“配置”项目,其中包含配置文件作为子文件夹。但是,还有一个名为“config”的链接指向一些不存在的文件。我认为这应该是该规则创建的目标的链接。由于没有任何东西要构建,这将仍然是一个死链接。现在我的问题是:
- add_custom_target 是完成我想要的正确方法吗?如果没有,有什么更好的解决方案?
- 如果是正确的方法,我怎样才能摆脱目标名称的链接?另外,我想删除“CMake Rules”文件夹以使配置项目尽可能干净。