在CMake中,如何获取某个目录中存在的非递归目录列表? 我可以看到不推荐使用GLOB。
答案 0 :(得分:1)
为什么不推荐GLOB?这就是GLOB的用途。我喜欢GLOB,特别是在这样的情况下,抓住多件物品非常有帮助。
The macro from this question可能是您正在寻找的内容。
MACRO(SUBDIRLIST result curdir)
FILE(GLOB children RELATIVE ${curdir} ${curdir}/*)
SET(dirlist "")
FOREACH(child ${children})
IF(IS_DIRECTORY ${curdir}/${child})
LIST(APPEND dirlist ${child})
ENDIF()
ENDFOREACH()
SET(${result} ${dirlist})
ENDMACRO()
您基本上从当前源目录中获取项目,检查它是否是目录,如果是,请将其附加到列表中。
建议在该宏的链接中重新说明。