如何在cmake中查找名为include的所有子目录

如何在cmake中查找名为include的所有子目录,cmake,Cmake,如何在cmake中找到所有名为include的目录?例如,如果目录结构如下所示: root include/ a/ include/ b/ c/ d/ include/ 我想为变量分配所有找到的路径: root/include root/a/include root/b/c/d/include 我尝试使用GLOBE\u RECURSE,但没有成功 file(GLOB_RECURSE include_dirs LIST_DIRECTORIES true

如何在cmake中找到所有名为include的目录?例如,如果目录结构如下所示:

root
include/
a/
  include/
b/
  c/
     d/
        include/
我想为变量分配所有找到的路径:

root/include
root/a/include
root/b/c/d/include
我尝试使用GLOBE\u RECURSE,但没有成功

file(GLOB_RECURSE include_dirs LIST_DIRECTORIES true
    RELATIVE ${CMAKE_SOURCE_DIR} "include")
自CMake 3.3以来,此功能一直有效,因为选项列表目录仅在此版本中出现。(默认情况下,对于全局递归模式,选项列表目录为false)


自CMake 3.3以来,此功能一直有效,因为选项列表目录仅在此版本中出现。(默认情况下,对于全局递归模式,选项列表目录为false)。

我不确定CMake中是否存在解决方案。我确实在Linux上提出了一个使用execute_进程和find的解决方案。其他操作系统也可以采用类似的解决方案。我不确定CMake中是否存在解决方案。我确实在Linux上提出了一个使用execute_进程和find的解决方案。其他操作系统也可以采用类似的解决方案。不仅将“包含”路径分配给“包含目录”,而且还分配给它们的父文件夹:root/、a/、b/、b/c、b/c/d。这应该会发生吗?嗯,实际上我已经用文件检查过了,不是用目录。明天我将测试目录。不仅“include”路径被分配给“include_dirs”,而且它们的父文件夹:root/、a/、b/、b/c、b/c/d。这应该会发生吗?嗯,实际上我已经用文件检查过了,不是用目录。我明天要考dirs。