Аргумент xcodebuild PRODUCT_NAME влияет на все цели - PullRequest
8 голосов
/ 18 марта 2011

Я запускаю xcodebuild из командной строки и часто меняю PRODUCT_NAME, чтобы различать версии и конечные точки сервера (т. Е. MyProduct.r1234staging).Это создает несколько зависимых целей, которые являются статическими библиотеками, а затем конечное приложение.В версии команды для xcode 3 PRODUCT_NAME влияет только на конечный продукт, а не на библиотеки.Однако теперь кажется, что они устанавливают эти имена и для библиотек (то есть для сборки libMyProduct.r1234staging.a).

Это ожидаемое поведение?

1 Ответ

14 голосов
/ 13 июня 2011

Как я это исправил:

  1. Добавьте CUSTOM_BUNDLE_IDENTIFIER и CUSTOM_PRODUCT_NAME в пользовательский раздел настроек сборки.
  2. Добавьте файл .xcconfig в проект с CUSTOM_PRODUCT_NAME и CUSTOM_BILE CUSTOMк номинальным значениям.
  3. Задайте для имени продукта значение $ {CUSTOM_PRODUCT_NAME}, а для имени пакета - $ {CUSTOM_BUNDLE_IDENTIFIER} в файле info.plist.
  4. Установите для имени продукта значение $ {CUSTOM_PRODUCT_NAME} в разделенастройки сборки.

Когда я хочу изменить некоторые значения, я создаю новый файл xcconfig и указываю этот файл xcconfig, используя параметр -xcconfig для xcodebuild.Это позволяет менять настройки на лету.

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