name: Linux

on:
  push:
  pull_request:
    branches: [ master ]

jobs:
  build:
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest]
        compiler: [g++, clang++]
        flags: [-std=c++11, -std=c++17]
        optimize: [-O2]
    steps:
    - name: Checkout
      uses: actions/checkout@v2.0.0
    - name: Build and test
      env:
        CXX: ${{ matrix.compiler }}
        CXXFLAGS: ${{ matrix.flags }} ${{ matrix.optimize }}
      run: |
        mkdir build && cd build && cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DCMAKE_BUILD_TYPE=Release .. && cmake --build . && make test
