статическая библиотека iOS + предварительно обработанные заголовки - PullRequest
0 голосов
/ 13 июля 2011

Я создаю статическую библиотеку для iOS (файл .a), и у меня есть несколько заголовков, которые должны быть общедоступными. В настоящее время у меня есть 3 заголовка и 4-й заголовок, который #imports all 3, но это все еще означает, что когда я его распространяю, у меня есть несколько файлов заголовков.

Есть ли способ, чтобы Xcode автоматически копировал и вставлял содержимое заголовка, где оператор #import находится при компиляции framework / library, поэтому заголовок 1, расположенный рядом с библиотекой, содержит содержимое 3 других заголовков вместо 3 # импорт заявления? (т.е. запустить препроцессор в заголовке, который не компилируется)

Я всегда могу копировать и вставлять вручную каждый раз, но мне лень; P.

Ответы [ 2 ]

2 голосов
/ 13 июля 2011

Вы можете добавить «Run Script Build Phase» к вашей целевой библиотеке, чтобы каждый раз, когда вы собираете библиотеку, сценарий оболочки мог добавлять три файла в один общий файл.

Посмотрите на это для получения дополнительной информации о Xcode 3.x.

В Xcode 4 это похоже.Вы выбираете свою цель, затем вкладку Build Phases, и там вы можете поместить свой скрипт в «Run Script».

1 голос
/ 13 июля 2011

Самое простое решение - это не иметь три заголовочных файла, а только один с открытым API.

Это может быть не тот способ, которым вы привыкли организовывать свой код, но он работает,Если пользователи вашей статической библиотеки могут работать с одним файлом, то же самое можно сказать и о проекте статической библиотеки.Это избавит вас от необходимости ручного слияния или смешивания с XCode, сценариями оболочки и фазами сборки.

...