summaryrefslogtreecommitdiffstats
path: root/.github/workflows/frozen.yml
blob: 0dcf504db268a743c48496fe9c3b285b1fb3d801 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
name: CI

on: [push]

jobs:
  build_frozen:
    runs-on: ${{ matrix.os }}
    strategy:
      fail-fast: false
      matrix:
        os:
          - ubuntu-latest
          - windows-latest
          - macOS-latest
        cmake_args:
          - ""
        cxxstandard:
          - 14
          - 17
          - 2a
    steps:
    - name: Checkout
      uses: actions/checkout@v1
      with:
        fetch-depth: 1

    - name: Prepare
      run: cmake -E make_directory build

    - name: Configure
      working-directory: build
      env:
          CXXFLAGS: ${{matrix.os == 'windows-latest' && '/std:' || '-std='}}c++${{matrix.cxxstandard}}
      run: cmake -DCMAKE_BUILD_TYPE=DEBUG "-Dfrozen.coverage=ON" -DCMAKE_VERBOSE_MAKEFILE=ON ..

    - name: Build
      working-directory: build
      run: cmake --build .

    - name: Test
      if: startsWith(matrix.os, 'windows') == false
      working-directory: build
      run: cmake --build . --target test