name: Lint on: [pull_request] jobs: clang-tidy: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v3 - name: Install clang-tidy run: | sudo apt-get update sudo apt-get install -y clang-tidy build-essential pkg-config libpng-dev libjpeg-dev libtiff-dev zlib1g-dev libssl-dev libx11-dev libgl1-mesa-dev libxrandr-dev libxxf86dga-dev libxcursor-dev libfreetype6-dev libvorbis-dev libeigen3-dev libopenal-dev libode-dev libbullet-dev libgtk-3-dev libassimp-dev libopenexr-dev - name: Prepare compile_commands.json run: | cmake -B build -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_UNITY_BUILD=OFF -DHAVE_PYTHON=OFF -DINTERROGATE_PYTHON_INTERFACE=OFF - name: Copy prebuilt files run: | for fn in **/*.prebuilt; do echo mkdir -p $(dirname "cmake/$fn"); echo cp "$fn" "cmake/${fn%.*}"; done - name: Create results directory run: | mkdir clang-tidy-result - name: Analyze run: | git diff -U0 HEAD^ | clang-tidy-diff -p1 -path build -export-fixes clang-tidy-result/fixes.yml - name: Post review uses: platisd/clang-tidy-pr-comments@master with: github_token: ${{ github.token }} clang_tidy_fixes: clang-tidy-result/fixes.yml request_changes: true suggestions_per_comment: 10