diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 90f1781b..bd682e29 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,23 +1,130 @@ name: CI on: push: - branches: [ feature/github-actions-for-windows-compilers ] + branches: [ master ] pull_request: branches: [ master ] jobs: - build-windows-vs2019: - name: Windows VS2019 Debug - runs-on: [windows-latest] + build-gcc-linux: + name: GCC Linux + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-18.04, ubuntu-20.04] steps: - - name: Checkout - uses: actions/checkout@v2 - with: - submodules: recursive + - uses: actions/checkout@v2 - name: Build - run: "C:\Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/MSBuild/Current/Bin/msbuild.exe" /p:Configuration=Debug /p:Platform=x86 + run: | + cmake -DBUILD_TESTS=ON ./ + gcc --version + make + + - name: Run tests + run: ./test/etl_tests + + build-gcc-linux-no-stl: + name: GCC Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-18.04, ubuntu-20.04] + + steps: + - uses: actions/checkout@v2 + + - name: Build + run: | + cmake -DBUILD_TESTS=ON -DNO_STL=ON ./ + gcc --version + make + + - name: Run tests + run: ./test/etl_tests + + build-clang-9-linux: + name: Clang-9 Linux + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-18.04] + + steps: + - uses: actions/checkout@v2 + + - name: Build + run: | + export CC=clang-9 + export CXX=clang++-9 + cmake -D BUILD_TESTS=ON ./ + clang --version + make - name: Run tests run: ./test/etl_tests + + build-clang-9-linux-no-stl: + name: Clang-9 Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-18.04] + + steps: + - uses: actions/checkout@v2 + + - name: Build + run: | + export CC=clang-9 + export CXX=clang++-9 + cmake -D BUILD_TESTS=ON -DNO_STL=ON ./ + clang --version + make + + - name: Run tests + run: ./test/etl_tests + + build-clang-10-osx: + name: Clang-10 OSX + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [macos-10.15] + + steps: + - uses: actions/checkout@v2 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -D BUILD_TESTS=ON ./ + clang --version + make + + - name: Run tests + run: ./test/etl_tests + + build-clang-10-osx-no-stl: + name: Clang-10 OSX No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [macos-10.15] + + steps: + - uses: actions/checkout@v2 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -D BUILD_TESTS=ON -DNO_STL=ON ./ + clang --version + make + + - name: Run tests + run: ./test/etl_tests +