Spec-Zone.ru › CMake 3.23

CMP0117

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

Флаг RTTI MSVC /GR по умолчанию не добавляется в CMAKE_CXX_FLAGS.

При использовании компиляторов, подобных MSVC, в CMake 3.19 и ниже, флаг RTTI /GR по умолчанию добавляется в CMAKE_CXX_FLAGS. Это поведение унаследовано от поддержки версий MSVC, начиная с Visual Studio 2003 и ниже, которые не включали RTTI по умолчанию. Оно больше не требуется. Более того, это проблематично для проектов, которые хотят изменить /GR- программно. В частности, это требует редактирования строки переменной CMAKE_CXX_FLAGS с знанием значения по умолчанию CMake для его замены.

CMake 3.20 и выше предпочитают по умолчанию не включать /GR в значение CMAKE_CXX_FLAGS.

Эта политика обеспечивает совместимость с проектами, которые не были обновлены, чтобы ожидать отсутствие флага /GR. Параметры политики вступают в силу с момента первого вызова команды project() или enable_language(), инициализирующего CMAKE_CXX_FLAGS.

Примечание

После того, как политика вступила в силу в начале проекта для определённого языка, это решение должно использоваться во всей дереве проекта для данного языка. В проектах с вложенными проектами в подкаталогах, убедитесь, что все они конвертированы вместе.

Поведением OLD для этой политики является размещение флага MSVC /GR в значении по умолчанию для кэша CMAKE_CXX_FLAGS. Поведением NEW для этой политики является не размещение флага MSVC /GR в значение по умолчанию кэша.

Эта политика была введена в CMake версии 3.20. Используйте команду cmake_policy(), чтобы явно установить её на OLD или NEW. В отличие от многих политик, CMake версии 3.23.3 не выдаёт предупреждение, когда эта политика не установлена, а просто использует поведение 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.23/policy/CMP0117.html

Spec-Zone.ru

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