CMP0067
Соблюдение языкового стандарта в сигнатуре файла исходного кода try_compile().
Сигнатура файла исходного кода try_compile() предназначена для того, чтобы позволить вызывающим сторонам проверить, смогут ли они скомпилировать данный файл исходного кода с текущей инструментальной цепочкой. Для соответствия поведению компилятора, любой режим языкового стандарта должен совпадать. Однако CMake 3.7 и ниже этого не делали. CMake 3.8 и выше предпочитают соблюдать настройки языкового стандарта для C, CXX (C++), и CUDA, используя значения переменных:
CMAKE_C_STANDARDCMAKE_C_STANDARD_REQUIREDCMAKE_C_EXTENSIONSCMAKE_CXX_STANDARDCMAKE_CXX_STANDARD_REQUIREDCMAKE_CXX_EXTENSIONSCMAKE_CUDA_STANDARDCMAKE_CUDA_STANDARD_REQUIREDCMAKE_CUDA_EXTENSIONS
Данный политик обеспечивает совместимость для проектов, которые не ожидают автоматического использования настроек языкового стандарта.
Поведение данного политикa OLD заключается в игнорировании переменных настроек языкового стандарта при генерации проекта try_compile теста. Поведение NEW данного политикa заключается в соблюдении переменных настроек языкового стандарта.
Этот политик был введен в CMake версии 3.8. В отличие от большинства политик, CMake версии 3.16.9 по умолчанию не предупреждает, если этот политик не задан, и просто использует поведение OLD. Смотрите документацию переменной CMAKE_POLICY_WARNING_CMP0067 для управления предупреждением.
Примечание
Поведение политикa 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/CMP0067.html