Spec-Zone.ru › CMake 3.28

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.28.6 не выводит предупреждение по умолчанию, когда эта политика не установлена, и просто использует поведение OLD. Смотрите документацию переменной CMAKE_POLICY_WARNING_CMP0129 для управления предупреждением.

Примечание

Поведение OLD этой политики deprecated by definition и может быть удалено в будущей версии CMake.

© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.28/policy/CMP0129.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API