Spec-Zone.ru › CMake 3.26

CMP0131

Новое в версии 3.24.

LINK_LIBRARIES поддерживает генераторское выражение $<LINK_ONLY:...>.

CMake 3.23 и ниже документировали генераторское выражение $<LINK_ONLY:...> только для использования в INTERFACE_LINK_LIBRARIES. При использовании в LINK_LIBRARIES, содержимое, защищённое внутри $<LINK_ONLY:...>, всегда использовалось, даже при сборе требований для использования, не связанного с линковкой, таких как INTERFACE_COMPILE_DEFINITIONS.

CMake 3.24 и выше предпочитают поддерживать $<LINK_ONLY:...>, при использовании в LINK_LIBRARIES, используя защищённое содержимое только для зависимостей линковки, а не для других требований использования. Эта политика обеспечивает совместимость для проектов, которые не были обновлены с учётом этого изменения.

Поведение OLD для этой политики заключается в использовании содержимого LINK_LIBRARIES, защищённого с помощью $<LINK_ONLY:...>, даже для требований использования, не связанного с линковкой. Поведение NEW для этой политики заключается в использовании защищённого содержимого только для зависимостей линковки.

Эта политика была введена в версии CMake 3.24. Используйте команду cmake_policy(), чтобы явно установить эту политику в OLD или NEW. В отличие от многих политик, CMake версии 3.26.0-rc3 не выводит предупреждение, когда эта политика не установлена, а просто использует поведение OLD.

Примечание

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

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

Spec-Zone.ru

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