Spec-Zone.ru › CMake 3.11

CMP0067

Соответствие стандарту языка в сигнатуре исходного файла try_compile().

Подпись исходного файла try_compile() предназначена для того, чтобы позволять вызывающим сторонам проверять, смогут ли они скомпилировать данный исходный файл с текущей инструментальной цепочкой. Для соответствия поведению компилятора, любой режим стандарта языка должен совпадать. Однако CMake 3.7 и ниже этого не делали. CMake 3.8 и выше предпочитают учитывать настройки стандарта языка для C, CXX (C++), и CUDA используя значения переменных:

  • CMAKE_C_STANDARD
  • CMAKE_C_STANDARD_REQUIRED
  • CMAKE_C_EXTENSIONS
  • CMAKE_CXX_STANDARD
  • CMAKE_CXX_STANDARD_REQUIRED
  • CMAKE_CXX_EXTENSIONS
  • CMAKE_CUDA_STANDARD
  • CMAKE_CUDA_STANDARD_REQUIRED
  • CMAKE_CUDA_EXTENSIONS

Данный политический стандарт обеспечивает совместимость для проектов, которые не ожидают автоматического использования настроек стандарта языка.

Поведением этой политики для OLD является игнорирование переменных настроек стандарта языка при генерации тестового проекта try_compile. Поведением этой политики для NEW является учет переменных настроек стандарта языка.

Данная политика была введена в CMake версии 3.8. В отличие от большинства политик, CMake версии 3.11.4 по умолчанию не выводит предупреждение, когда эта политика не установлена, а просто использует старое поведение. См. документацию переменной CMAKE_POLICY_WARNING_CMP0067 для управления предупреждением.

Примечание

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

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

Spec-Zone.ru

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