Spec-Zone.ru › CMake 3.26

CMP0089

Новое в версии 3.15.

Идентификатор компилятора для XL-компиляторов IBM на основе Clang теперь XLClang.

CMake 3.15 и выше распознает, что XL-компиляторы IBM на основе Clang, которые определяют __ibmxl__ - это новый фронтенд, отличный от xlc с другой командной строкой и набором возможностей. CMake теперь предпочитает представлять это проектам, устанавливая переменную CMAKE_<LANG>_COMPILER_ID в значение XLClang вместо XL. Однако существующие проекты могут предполагать, что идентификатор компилятора для XL-компиляторов на основе Clang - это просто XL как это было в версиях CMake до 3.15. Поэтому данная политика определяет для XL-компиляторов на основе Clang, какой идентификатор компилятора следует сообщить в переменной CMAKE_<LANG>_COMPILER_ID после того, как язык <LANG> будет включён командой project() или enable_language(). Политика должна быть установлена до вызова любой из этих команд.

Поведение OLD для этой политики - использовать идентификатор компилятора XL. Поведение NEW для этой политики - использовать идентификатор компилятора XLClang.

Данная политика была введена в CMake версии 3.15. Используйте команду cmake_policy() для явного задания этой политики в значение OLD или NEW. В отличие от большинства политик, CMake версии 3.26.0-rc3 по умолчанию не выдает предупреждение, когда эта политика не задана, и просто использует поведение OLD. См. документацию переменной CMAKE_POLICY_WARNING_CMP0089 для управления предупреждением.

Примечание

Поведение 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/CMP0089.html

Spec-Zone.ru

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