如何从cmake文件中排除子目录



我使用cmake,在dir中我有很多子目录像这样

main_dir

- sub_dir_a
- sub_dir_b
- sub_dir_c
.
.
- sub_dir_z

假设我需要包含所有子目录,除了"sub_dir_z"在cmake中,我使用命令

target_include_directories

不包括每个单独的子目录并省略"sub_dir_z"有什么命令是我可以直接执行的吗"main_dir"上的Target_include_directories;并排除"sub_dir_z">

">

没有这样的命令。但是您可以通过组合其他命令轻松地自己实现它。像这样:

file(GLOB SUB_FOLDERS LIST_DIRECTORIES true "*")
list(FILTER SUB_FOLDERS EXCLUDE REGEX "sub_dir_z")
target_include_directories(YourTarget PRIVATE ${SUB_FOLDERS})

最新更新