Spec-Zone.ru › CMake

CMP0056

Предупреждение

Поведение OLD этой политики было удалено в CMake версии 4.0. Эта политика должна быть установлена в NEW вызовом cmake_minimum_required() или cmake_policy().

Добавлено в версии 3.2.

Учитываются флаги компоновки в сигнатуре try_compile() для исходного файла.

Команда try_compile() с сигнатурой для исходного файла генерирует файл CMakeLists.txt, чтобы собрать исходный файл в исполняемый файл. Чтобы скомпилировать исходный файл так же, как он мог бы быть скомпилирован вызывающим проектом, сгенерированный проект задаёт переменной CMAKE_<LANG>_FLAGS значение, используемое в вызывающем проекте. В некоторых случаях может также потребоваться значение переменной CMAKE_EXE_LINKER_FLAGS, но CMake 3.1 и более ранние версии не задавали его в сгенерированном проекте. В CMake 3.2 и более поздних версиях предпочтительно задавать его, чтобы учитывались как флаги компоновщика, так и флаги компилятора. Эта политика обеспечивает совместимость с поведением до версии 3.2.

Поведение OLD этой политики — не задавать значение переменной CMAKE_EXE_LINKER_FLAGS в сгенерированном тестовом проекте. Поведение NEW этой политики — задать в тестовом проекте для переменной CMAKE_EXE_LINKER_FLAGS то же значение, что и в вызывающем проекте.

Если код проекта явно не задаёт эту политику, пользователи могут задать её в командной строке, определив в кэше переменную CMAKE_POLICY_DEFAULT_CMP0056.

Эта политика была добавлена в CMake версии 3.2. До её удаления в CMake версии 4.0 её можно было задать с помощью cmake_policy() или cmake_minimum_required(). Если она не была задана, CMake по умолчанию не выдавал предупреждение и использовал поведение OLD.

Сведения об управлении предупреждением в версиях CMake до 4.0 см. в документации переменной CMAKE_POLICY_WARNING_CMP0056.

© 2000–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/policy/CMP0056.html

Spec-Zone.ru

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