安装除CMake中文件夹以外的目录中的所有文件

时间:2014-10-28 14:22:59

标签: cmake

我想将名为scfg的文件夹下的所有文件安装到另一个包含scfg的位置,该文​​件夹包含.cfg,.xml文件和文件夹。下面的代码安装正确。

file(GLOB config_files "scfg/*.cfg")
install(FILES ${config_files} DESTINATION scfg)
file(GLOB xml_files "scfg/*.xml")
install(FILES ${xml_files} DESTINATION scfg)

但是将来可能会有更多类型不同于.cfg和.xml的文件。为了防止经常更改此文件,我正在寻找更通用的解决方案,例如安装除文件夹之外的所有文件类型。我听说过EXCLUDE关键字。但我不知道文件夹应该使用什么PATTERN。

1 个答案:

答案 0 :(得分:5)

它应该明确地排除子目录,然后像往常一样正确安装所有其他文件。

install(DIRECTORY scfg/ DESTINATION scfg
    PATTERN "scfg/config/" EXCLUDE
    PATTERN "scfg/xml/" EXCLUDE
)