Spec-Zone.ru › CMake 3.16

LINK_INTERFACE_LIBRARIES

Список общедоступных интерфейсных библиотек для общей библиотеки или исполняемого файла.

По умолчанию подключение к общей библиотеке-цели транзитивно подключает цели, к которым сама библиотека была подключена. Для исполняемого файла с экспортом (см. свойство цели ENABLE_EXPORTS) не используются зависимости транзитивного подключения по умолчанию. Это свойство заменяет зависимости транзитивного подключения по умолчанию на явный список. Когда цель подключается к другой цели с помощью команды target_link_libraries(), перечисленные библиотеки (и рекурсивно их интерфейсные библиотеки подключения) также будут предоставлены другой цели. Если список пуст, то транзитивные зависимости подключения не будут включены при подключении этой цели к другой цели, даже если набор по умолчанию не пуст. Это свойство инициализируется значением переменной CMAKE_LINK_INTERFACE_LIBRARIES, если оно задано при создании цели. Это свойство игнорируется для STATIC библиотек.

Это свойство переопределяется свойством INTERFACE_LINK_LIBRARIES, если политика CMP0022 NEW.

Это свойство устарело. Используйте INTERFACE_LINK_LIBRARIES вместо него.

Создание переносимых пакетов

Обратите внимание, что не рекомендуется заполнять LINK_INTERFACE_LIBRARIES цели абсолютными путями к зависимостям. Это жестко закодирует в установленных пакетах пути к файлам библиотек зависимостей так, как они были найдены на машине, на которой был создан пакет.

См. раздел «Создание переносимых пакетов» в руководстве Создание переносимых пакетов cmake-packages(7) для обсуждения дополнительных мер предосторожности, которые необходимо принять при указании требований к использованию при создании пакетов для распространения.

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

Spec-Zone.ru

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