Spec-Zone.ru › CMake 3.22

XCODE_LINK_BUILD_PHASE_MODE

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

При использовании генератора Xcode, библиотеки, которые должны быть подключены, будут указаны в файле проекта Xcode с помощью этапа сборки «Link Binary With Libraries» или напрямую как флаги линковщика. Первый вариант позволяет Xcode управлять путями сборки, что может быть необходимо при создании архивов Xcode, поскольку он может использовать разные пути сборки по сравнению с обычной сборкой.

Этот параметр контролирует использование этапа сборки «Link Binary With Libraries» для целевого объекта, представляющего собой пакет приложений, исполняемый файл, динамическую библиотеку, динамическую фреймворк или библиотеку модуля.

Возможные значения:

  • NONE Библиотеки будут подключены, указав напрямую флаги линковщика.
  • BUILT_ONLY Этап сборки «Link Binary With Libraries» будет использован для подключения к другому целевому объекту при следующих условиях:

    • Целевой объект, к которому осуществляется подключение, является обычной библиотекой (не импортированной, не интерфейсной).
    • Директория вывода целевого объекта, который собирается, не была изменена по сравнению с её значением по умолчанию (см. RUNTIME_OUTPUT_DIRECTORY и LIBRARY_OUTPUT_DIRECTORY).
  • KNOWN_LOCATION Этап сборки «Link Binary With Libraries» будет использован для подключения к другому целевому объекту при тех же условиях, что и с BUILT_ONLY, а также:

    • Импортированные библиотеки-целевые объекты, за исключением тех, тип которых UNKNOWN.
    • Любые библиотеки, не являющиеся целевыми объектами, указанные напрямую с путём.

Во всех остальных случаях библиотеки будут подключены, указав напрямую флаги линковщика.

Предупреждение

Библиотеки, подключенные с помощью «Link Binary With Libraries», подключаются после тех, которые подключены с помощью обычных флагов линковщика. Этот порядок следует учитывать при подключении различных статических библиотек, содержащих символы с одинаковым именем, поскольку первые из них будут иметь приоритет перед последними.

Предупреждение

Если две или более директории содержат библиотеки с одинаковыми именами файлов и некоторые библиотеки подключаются из этих директорий, поиск пути к библиотекам приведет к подключению библиотек из первой директории. Это известное ограничение Xcode.

Этот параметр инициализируется значением переменной CMAKE_XCODE_LINK_BUILD_PHASE_MODE, если она установлена при создании целевого объекта.

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

Spec-Zone.ru

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