2

在 CMake 中,命令 SUBDIRS() 和 ADD_SUBDIRECTORY() 有什么区别

当我阅读 PoDoFo src 时,我发现一些 CMakeLists.txt 使用 SUBDIRS 一些使用 ADD_SUBDIRECTORY,我是新手!谢谢!

4

2 回答 2

7

CMake 邮件列表

ADD_SUBDIRECTORY()在调用子目录时处理子目录,而SUBDIRS()将目录推送到在当前 CMakeLists 文件末尾处理的列表中 - 这是旧的行为,一些变量被“无序”初始化,或者至少在意外情况下命令。

(...)

因此,如果您在父目录中设置变量,则在使用时它们将不会在子目录中看到SUBDIRS()

此外,在CMake 的文档中建议您ADD_SUBDIRECTORY()改为使用它,因为SUBDIRS()已弃用。

于 2015-06-17T14:19:18.223 回答
3

subdirs 已弃用,请使用 add_subdirectory

http://www.cmake.org/cmake/help/git-next/command/subdirs.html

于 2013-11-06T16:32:46.513 回答