Как добавить этап сборки в шаблон проекта? - PullRequest
7 голосов
/ 05 апреля 2011

Я пытаюсь добавить фазу запуска сценария запуска к цели в пользовательском шаблоне проекта для Xcode 4.

У кого-нибудь есть примеры, учебные пособия или советы о том, как это сделать?

Я предполагаю, что это будет сделано в TemplateInfo.plist - но мои поиски оказываются бесплодными.

Ответы [ 2 ]

14 голосов
/ 05 апреля 2011

После большого количества проб и ошибок я решил это. Это дополнительный ключ, необходимый в TemplateInfo.plist. Это добавляет скрипт, который будет запускаться после других этапов сборки по умолчанию.

<key>Targets</key>
<array>
    <dict>
        <key>BuildPhases</key>
        <array>
            <dict>
                <key>Class</key>
                <string>ShellScript</string>
                <key>ShellPath</key>
                <string>/bin/sh</string>
                <key>ShellScript</key>
                <string># Just a comment</string>
            </dict>
        </array>
    </dict>
</array>
0 голосов
/ 23 мая 2019

Чтобы ответить на вопрос @Paulo Faria, я нашел способ добавить входные и выходные файлы на этапе сценария запуска (мой шаблон использует R.swift , для которого требуются входные и выходные файлы):

<key>Targets</key>
<array>
    <dict>
        <key>BuildPhases</key>
        <array>
            <dict>
                <key>Class</key>
                <string>ShellScript</string>
                <key>ShellPath</key>
                <string>/bin/sh</string>
                <key>Name</key>
                <string>R.swift</string>
                <key>ShellScript</key>
                <string>"$PODS_ROOT/R.swift/rswift" generate "$SRCROOT/R.generated.swift"</string>
                <key>InputFiles</key>
                <array>
                    <string>$TEMP_DIR/rswift-lastrun</string>
                </array>
                <key>OutputFiles</key>
                <array>
                    <string>$SRCROOT/R.generated.swift</string>
                </array>
            </dict>
        </array>
    </dict>
</array>
...