| name: Presubmit |
| on: [push, pull_request] |
| |
| jobs: |
| build: |
| name: Build ${{ matrix.os }} |
| runs-on: ${{ matrix.os }} |
| strategy: |
| matrix: |
| os: [ubuntu-latest, macos-latest, windows-latest] |
| steps: |
| - uses: actions/checkout@v2 |
| - name: Install Ubuntu packages |
| if: matrix.os == 'ubuntu-latest' |
| run: sudo apt install -y dos2unix |
| - name: Install macOS packages |
| if: matrix.os == 'macos-latest' |
| run: brew install dos2unix |
| - name: Build |
| run: | |
| mkdir build |
| cd build |
| cmake -DCMAKE_INSTALL_PREFIX=install .. |
| cmake --build . --target install |
| - name: Build spec tools |
| run: | |
| cd tools/buildHeaders |
| mkdir build |
| cd build |
| cmake .. |
| cmake --build . --target install |
| - name: Build headers |
| run: | |
| cd tools/buildHeaders |
| ./bin/makeHeaders |
| - name: Check generated headers |
| run: git diff --exit-code |