Spec-Zone.ru › CMake 3.18

CMP0092

Флаги предупреждений MSVC по умолчанию не включаются в CMAKE_<LANG>_FLAGS.

При использовании компиляторов, подобных MSVC, в CMake 3.14 и ниже, флаги предупреждений, такие как /W3, добавляются в CMAKE_<LANG>_FLAGS по умолчанию. Это создаёт проблемы для проектов, которые хотят программно выбрать другой уровень предупреждений. В частности, это требует изменения строк в переменных CMAKE_<LANG>_FLAGS с учётом значений по умолчанию CMake, чтобы их можно было заменить.

CMake 3.15 и выше по умолчанию не включают флаги предупреждений в значение CMAKE_<LANG>_FLAGS.

Этот параметр обеспечивает совместимость с проектами, которые не были обновлены для ожидаемого отсутствия флагов предупреждений. Параметр вступает в силу с первого вызова команды project() или enable_language(), которые инициализируют CMAKE_<LANG>_FLAGS для данного языка <LANG>.

Примечание

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

Поведение OLD для этого параметра заключается в размещении флагов предупреждений MSVC в значениях по умолчанию для CMAKE_<LANG>_FLAGS кэша. Поведение NEW для этого параметра заключается в том, чтобы не размещать флаги предупреждений MSVC в значениях по умолчанию кэша.

Этот параметр был введён в CMake версии 3.15. Используйте команду cmake_policy(), чтобы явно установить его в OLD или NEW. В отличие от многих параметров, CMake версии 3.18.4 не выводит предупреждений, когда этот параметр не установлен, а просто использует поведение OLD.

Примечание

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

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

Spec-Zone.ru

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