XCODE_LINK_BUILD_PHASE_MODE
Новое в версии 3.19.
При использовании генератора Xcode, библиотеки, которые нужно связать, будут указаны в файле проекта Xcode с помощью этапа сборки «Связать двоичный файл с библиотеками» или непосредственно в качестве флагов компоновщика. Первый вариант позволяет Xcode управлять путями сборки, что может быть необходимо при создании архивов Xcode, так как он может использовать разные пути сборки по сравнению с обычной сборкой.
Этот параметр управляет использованием этапа сборки «Связать двоичный файл с библиотеками» для целевого приложения, исполняемого файла, динамической библиотеки, динамической фреймворк-библиотеки или библиотеки модуля.
Возможные значения:
-
NONEБиблиотеки будут связаны путём указания флагов компоновщика напрямую. -
BUILT_ONLYЭтап сборки «Связать двоичный файл с библиотеками» будет использован для связи с другой целью в следующих условиях:- Целевая библиотека, с которой нужно связаться, является обычной, не импортированной, не интерфейсной библиотечной целью.
- Директория вывода целевого объекта не была изменена от своего значения по умолчанию (см.
RUNTIME_OUTPUT_DIRECTORYиLIBRARY_OUTPUT_DIRECTORY).
-
KNOWN_LOCATIONЭтап сборки «Связать двоичный файл с библиотеками» будет использован для связи с другой целью в тех же условиях, что и сBUILT_ONLY, а также:- Импортированные целевые библиотеки, кроме тех, тип которых
UNKNOWN. - Любые нецелевые библиотеки, указанные непосредственно с путём.
- Импортированные целевые библиотеки, кроме тех, тип которых
Во всех остальных случаях библиотеки будут связаны путём указания флагов компоновщика напрямую.
Предупреждение
Библиотеки, связанные с помощью «Связать двоичный файл с библиотеками», связываются после тех, которые связаны через обычные флаги компоновщика. Этот порядок следует учитывать при наличии разных статических библиотек, содержащих символы с одинаковым именем, так как первые будут иметь приоритет над последними.
Предупреждение
Если две или более директории содержат библиотеки с идентичными именами файлов, и некоторые библиотеки связаны из этих директорий, поиск пути поиска библиотек завершится связыванием библиотек из первой директории. Это известное ограничение Xcode.
Этот параметр инициализируется значением переменной CMAKE_XCODE_LINK_BUILD_PHASE_MODE, если она установлена при создании цели.
© 2000–2022 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.25/prop_tgt/XCODE_LINK_BUILD_PHASE_MODE.html