プロジェクトに OCLint を追加しようとしてきましたが、ほとんどの場合で動作します
cd ${SRCROOT}
xcodebuild clean
xcodebuild -target {TARGET} -configuration Debug -scheme {SCHEME} | tee ${TARGET_TEMP_DIR}/xcodebuild.log
cd ${TARGET_TEMP_DIR}
oclint-xcodebuild
cp ${TARGET_TEMP_DIR}/compile_commands.json ${SRCROOT}/compile_commands.json
cd ${TARGET_TEMP_DIR}
oclint-json-compilation-database -e -v -- -report-type xcode
問題は、実行スクリプトで xcodebuild を呼び出す必要がなく、xcode でプロジェクトをビルドするたびに xcodebuild を 2 回実行する必要がないことです。xcodeのビルドコマンドからxcodebuild.logファイルを作成する方法を見つけた人はいますか?
DerivedData/{Project}/Logs/Build に移動して、そこにある .xactivitylog ファイルを解凍する方法に関する情報を見つけましたが、oclint-xcodebuild コマンドが空の compile_commands.json ファイルを作成する大量のゴミが含まれています。