CMAKE_MAXIMUM_RECURSION_DEPTH

3.14 版新增。

CMake 脚本的最大递归深度。它旨在通过命令行使用 -DCMAKE_MAXIMUM_RECURSION_DEPTH=<x> 设置,或者在需要大递归深度的项目中在 CMakeLists.txt 文件内设置。设置此变量的项目应向用户提供一种覆盖它的方法。例如:

# About to perform deeply recursive actions
if(NOT CMAKE_MAXIMUM_RECURSION_DEPTH)
  set(CMAKE_MAXIMUM_RECURSION_DEPTH 2000)
endif()

如果未设置,或者设置为非整数值,则使用合理的默认限制。如果达到递归限制,脚本将立即以致命错误终止。

调用以下任何命令都会增加递归深度:

另请参阅 CMAKE_MAXIMUM_RECURSION_DEPTH 环境变量。