Spec-Zone.ru › CMake 3.29

INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE

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

Список библиотек, которые потребители этой библиотеки не должны рассматривать как прямые зависимости.

Это свойство целевого объекта может быть установлено для исключения элементов из конечного набора прямых зависимостей целевого объекта-зависимости. Это свойство обрабатывается после свойства INTERFACE_LINK_LIBRARIES_DIRECT целевого объекта всех других зависимостей целевого объекта-зависимости, поэтому исключение из прямой зависимости имеет приоритет над включением.

Начальный набор прямых зависимостей целевого объекта-зависимости задаётся его свойством LINK_LIBRARIES. Непрямые зависимости задаются транзитивным замыканием прямых зависимостей через их свойства INTERFACE_LINK_LIBRARIES. Любая зависимость может указывать дополнительные прямые зависимости, используя свойство INTERFACE_LINK_LIBRARIES_DIRECT. Набор прямых зависимостей затем фильтруется, чтобы исключить элементы, указанные в свойстве INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE какой-либо зависимости.

Исключение элемента из прямых зависимостей целевого объекта-зависимости не означает, что целевой объект-зависимость не будет ссылаться на этот элемент. Элемент может все еще быть связан как непрямая зависимость через свойство INTERFACE_LINK_LIBRARIES на других зависимостях.

Значение INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE может использовать generator expressions.

Примечание

Свойство целевого объекта INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE предназначено для расширенных случаев использования, таких как инъекция статических плагинов в исполняемый файл-потребитель. Его не следует использовать как замену организации обычных вызовов к target_link_libraries().

Для получения более подробной информации и примеров см. документацию к целевому свойству INTERFACE_LINK_LIBRARIES_DIRECT.

© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.29/prop_tgt/INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE.html

Spec-Zone.ru

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