| name: CI |
| on: |
| push: |
| branches: [master] |
| jobs: |
| build: |
| runs-on: ${{ matrix.os }} |
| strategy: |
| fail-fast: false |
| matrix: |
| os: [macos-latest, ubuntu-latest] |
| env: |
| CC: clang |
| CXX: clang++ |
| steps: |
| - uses: actions/checkout@v2 |
| - run: make && make test |
| shell: bash |
| build-clang: |
| runs-on: ubuntu-latest |
| strategy: |
| fail-fast: false |
| matrix: |
| tag: [9, 10, 11, 12] |
| env: |
| CC: clang-${{ matrix.tag }} |
| CXX: clang++-${{ matrix.tag }} |
| steps: |
| - uses: actions/checkout@v2 |
| - name: Install Clang ${{ matrix.tag }} |
| run: | |
| wget https://apt.llvm.org/llvm.sh |
| chmod +x ./llvm.sh |
| sudo ./llvm.sh ${{ matrix.tag }} |
| shell: bash |
| - run: make && make test |
| shell: bash |
| build-gcc: |
| runs-on: ubuntu-latest |
| container: gcc:${{ matrix.tag }} |
| strategy: |
| fail-fast: false |
| matrix: |
| tag: [4, 5, 6, 7, 8, 9, 10] |
| env: |
| CC: gcc |
| CXX: g++ |
| steps: |
| - uses: actions/checkout@v2 |
| - run: make && make test |
| shell: bash |