XcodeにはBuild Phasesに独自のRun Scriptを追加できる機能があります。Cocoapods利用時に追加される"Embed Pods Frameworks"や、Carthage利用時に実行する"copy-frameworks"などもCustom Run Scriptの好例です。
Input FileおよびOutput Fileを指定することにより、Build時にLinterを走らせたり、任意のFrameworkを生成したりすることができます。さらに、Xcode10からはInput/Output File Listsという機能も追加され、より柔軟な使い方ができるようになりました。
Custom Run Scriptは簡単に追加・使用できる一方で、注意して取り扱わないとBuild時間の増加などの問題を引き起こす原因にもなります。
本トークでは、Custom Run Scriptについて、具体的な活用例を交えつつ、正しく活用していけるよう挙動の詳細なども解説していきます。