How to add a build phase in a project template?

后端 未结 2 990
自闭症患者
自闭症患者 2021-02-01 10:54

I\'m trying to add a Run Script Build Phase to a target in a custom Project Template for Xcode 4.

Does anyone have any examples, tutorials, or tips on how to do this?

相关标签:
2条回答
  • 2021-02-01 11:12

    After quite a lot of trial-and-error I've worked it out. This is the extra key needed in the TemplateInfo.plist. This adds a script that will run after the other default build phases.

    <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 讨论(0)
  • 2021-02-01 11:32

    To answer to @Paulo Faria question, I found a way to add input and output files to a Run script phase (My template uses R.swift, which requires input and output files):

    <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>
    
    0 讨论(0)
提交回复
热议问题