Spec-Zone.ru › CMake 3.31

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

Spec-Zone.ru

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