Динамическое обновление xcconfig в фазе сборки - PullRequest
1 голос
/ 02 марта 2020

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

Скажем, у нас есть главный проект A. И что у A есть зависимости B и C. У нас есть две рабочие области, которые содержат следующие проекты.

Рабочая область 1: A.xcodeproj B.xcodeproj

Рабочая область 2: A.xcodeproj B .xcodeproj C .xcodeproj

Для рабочей области 1 A и B существуют как проекты, но C будет рассматриваться как предварительно созданная среда. Для рабочей области 2 A, B и C существуют как проекты. Другими словами, A и B можно отлаживать в Workspace 1, тогда как A, B и C можно отлаживать в Workspace 2.

Цель состоит в том, чтобы иметь возможность иметь эти 2 (или более) рабочих пространства в таких способ, которым сборка не приводит к необходимости сначала изменять какие-либо из существующих файлов проекта.

У меня есть эта работа посредством фазы сборки, которая копирует файл xcconfig, который "конфигурирует" настройки сборки А. Эта фаза сборки выполняется с помощью другого файла проекта, который я назову Bootstrap.xcodeproj. Этот файл проекта содержит фазу сборки, которая копирует xcconfig, а также имеет A в качестве цели сборки, определенной в его схеме. Что я заметил, так это то, что независимо от того, включена или выключена параллельная сборка, иногда Bootstrap запускается до или после A. И даже если запускается до A, настройки сборки не всегда обновляются.

Это заметно, если я создаю Workspace 1, а затем Workspace 2. При создании Workspace 2 первая сборка не удастся, потому что он все еще использует xcconfig из Workspace 1.

Проверка, знает ли кто-нибудь способ получения Xcode обновить настройки сборки с xcconfig динамически или лучше организовать это.

1 Ответ

0 голосов
/ 03 марта 2020

Я нашел решение для этого отсюда: как заставить xcode запускать скрипт перед зависимостями?

Я переместил свой сценарий фазы сборки в Bootstrap до сценарий действия. Я сделал несколько сборок, и это, кажется, правильно позволяет использовать скопированную сумму xcconfig.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...