Spec-Zone.ru › CMake 3.12

CMP0056

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

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

Старое поведение для этой политики — не устанавливать значение переменной CMAKE_EXE_LINKER_FLAGS в сгенерированном тестовом проекте. Новое поведение для этой политики — установить значение переменной CMAKE_EXE_LINKER_FLAGS в тестовом проекте в соответствии с вызывающим проектом.

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

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

Примечание

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

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

Spec-Zone.ru

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