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