On this page
CMAKE_MAXIMUM_RECURSION_DEPTH
Maximum recursion depth for CMake scripts. It is intended to be set on the command line with -DCMAKE_MAXIMUM_RECURSION_DEPTH=<x>, or within CMakeLists.txt by projects that require a large recursion depth. Projects that set this variable should provide the user with a way to override it. For example:
# About to perform deeply recursive actions
if(NOT CMAKE_MAXIMUM_RECURSION_DEPTH)
set(CMAKE_MAXIMUM_RECURSION_DEPTH 2000)
endif()
If it is not set, or is set to a non-integer value, a sensible default limit is used. If the recursion limit is reached, the script terminates immediately with a fatal error.
Calling any of the following commands increases the recursion depth:
include()find_package()add_subdirectory()try_compile()ctest_read_custom_files()ctest_run_script()(unlessNEW_PROCESSis specified)- User-defined
function()’s andmacro()’s (note thatfunction()andmacro()themselves don’t increase recursion depth) - Reading or writing variables that are being watched by a
variable_watch()
© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.15/variable/CMAKE_MAXIMUM_RECURSION_DEPTH.html