CMP0138
Новое в версии 3.24.
CheckIPOSupported использует флаги из вызывающего проекта.
Модуль CheckIPOSupported команда check_ipo_supported() компилирует тестовый проект, чтобы определить, поддерживает ли инструмент INTERPROCEDURAL_OPTIMIZATION. CMake 3.23 и ниже выполняют проверку со значениями по умолчанию переменных CMAKE_<LANG>_FLAGS и CMAKE_<LANG>_FLAGS_<CONFIG> для текущей среды и настроек инструментария. Однако некоторые проекты могут изменять эти переменные флагов, добавляя флаги, влияющие на доступность функций IPO инструментария. CMake 3.24 и выше предпочитают учитывать значения вызывающего проекта для этих переменных. Эта политика обеспечивает совместимость для проектов, которые не были обновлены, чтобы ожидать этого поведения.
Поведение OLD для этой политики заключается в игнорировании значений вызывающего проекта для переменных CMAKE_<LANG>_FLAGS и CMAKE_<LANG>_FLAGS_<CONFIG>. Поведение NEW для этой политики заключается в использовании значений этих переменных в качестве флагов компилятора в тестовом проекте.
Эта политика была введена в CMake версии 3.24. Используйте команду cmake_policy(), чтобы явно установить её в OLD или NEW. В отличие от многих политик, CMake версии 3.25.1 не предупреждает, когда эта политика не установлена, и просто использует поведение OLD.
Примечание
Поведение OLD политики deprecated by definition и может быть удалено в будущих версиях CMake.
© 2000–2022 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.25/policy/CMP0138.html