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()
Если она не установлена или установлена с нецелочисленным значением, используется разумное значение по умолчанию. Если предел рекурсии достигнут, скрипт завершается сразу с ошибкой.
Вызов следующих команд увеличивает глубину рекурсии:
include()find_package()add_subdirectory()try_compile()ctest_read_custom_files()-
ctest_run_script()(если не указаноNEW_PROCESS) - Пользовательские определённые
function()'s иmacro()'s (обратите внимание, чтоfunction()иmacro()сами по себе не увеличивают глубину рекурсии) - Чтение или запись переменных, отслеживаемых с помощью
variable_watch()
© 2000–2021 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.21/variable/CMAKE_MAXIMUM_RECURSION_DEPTH.html