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() или cmake_minimum_required(). Если она не установлена, CMake не выдает предупреждение и использует поведение OLD.
Примечание
Поведение OLD этой политики — deprecated by definition и может быть удалено в будущих версиях CMake.
© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.31/policy/CMP0138.html