Spec-Zone.ru › CMake

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–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/prop_tgt/INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE.html

Spec-Zone.ru

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