C++ 在CMake中,什么';s command SUBDIRS()和ADD_SUBDIRECTORY()之间的区别

C++ 在CMake中,什么';s command SUBDIRS()和ADD_SUBDIRECTORY()之间的区别,c++,build,cmake,build-automation,C++,Build,Cmake,Build Automation,在CMake中,command SUBDIRS()和ADD_SUBDIRECTORY()之间有什么区别 当我阅读PoDoFo src时,我发现一些CMakeLists.txt使用子目录,一些使用ADD_子目录, 我是新手!谢谢 不推荐使用子目录,请使用add_子目录 来自: ADD_SUBDIRECTORY()在调用子目录时处理该子目录,而SUBDIRS()将目录推到列表上,该列表在当前CMakeLists文件末尾处理-这是旧行为,一些变量被初始化为“无序”,或者至少以意外顺序进行初始化 (……

在CMake中,command SUBDIRS()和ADD_SUBDIRECTORY()之间有什么区别

当我阅读PoDoFo src时,我发现一些CMakeLists.txt使用子目录,一些使用ADD_子目录,
我是新手!谢谢

不推荐使用子目录,请使用add_子目录

来自:

ADD_SUBDIRECTORY()
在调用子目录时处理该子目录,而
SUBDIRS()
将目录推到列表上,该列表在当前CMakeLists文件末尾处理-这是旧行为,一些变量被初始化为“无序”,或者至少以意外顺序进行初始化

(……)

因此,如果在父目录中设置变量,则在使用
SUBDIRS()
时,在subdir中将看不到这些变量


此外,建议您使用
ADD\u SUBDIRECTORY()
,因为
SUBDIRS()
已被弃用。

SUBDIRS已弃用,请使用ADD_subdirectory@Anycorn这应该是一个答案。