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