CMP0129
Новое в версии 3.23.
Идентификатор компилятора для компиляторов MCST LCC теперь LCC, а не GNU.
CMake 3.23 и выше распознаёт компилятор MCST LCC как отличающийся от GNU, со своим собственным командным интерпретатором и набором возможностей. CMake теперь предпочитает представлять его проектам, устанавливая переменную CMAKE_<LANG>_COMPILER_ID в значение LCC вместо GNU. Однако, существующие проекты могут предполагать идентификатор компилятора для LCC как GNU , как это было в версиях CMake до 3.23. Поэтому данная политика определяет, какой идентификатор компилятора для компилятора MCST LCC будет сообщаться в переменную CMAKE_<LANG>_COMPILER_ID после того, как язык <LANG> будет включён командой project() или enable_language(). Политика должна быть установлена до вызова любой из этих команд.
Поведение OLD для этой политики заключается в использовании идентификатора компилятора GNU (и установке CMAKE_<LANG>_COMPILER_VERSION на поддерживаемую версию компилятора GNU). Поведение NEW для этой политики заключается в использовании идентификатора компилятора LCC, установке CMAKE_<LANG>_SIMULATE_ID на GNU и CMAKE_<LANG>_SIMULATE_VERSION на поддерживаемую версию компилятора GNU.
Эта политика была введена в версии CMake 3.23. Используйте команду cmake_policy(), чтобы явно установить эту политику в значение OLD или NEW. В отличие от большинства политик, CMake версии 3.26.0-rc3 не выводит предупреждение по умолчанию, когда эта политика не установлена, и просто использует поведение OLD. См. документацию переменной CMAKE_POLICY_WARNING_CMP0129 для управления предупреждением.
Примечание
Поведение OLD политики deprecated by definition и может быть удалено в будущих версиях CMake.
© 2000–2023 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.26/policy/CMP0129.html