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.16.9 не предупреждает, когда эта политика не задана, и просто использует поведение 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.16/policy/CMP0092.html