From 0442229dc93fab0be84a302e22a5d2ba7cf15159 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Ho=C5=99e=C5=88ovsk=C3=BD?= Date: Fri, 27 Nov 2020 21:10:34 +0100 Subject: [PATCH] Start using GitHub actions for Linux builds For now we switched only some of the builds, those that do not need manually installed compiler packages to function. --- .github/workflows/linux-builds.yml | 48 ++++++++++++++++++++++++++++++ .travis.yml | 8 ----- 2 files changed, 48 insertions(+), 8 deletions(-) create mode 100644 .github/workflows/linux-builds.yml diff --git a/.github/workflows/linux-builds.yml b/.github/workflows/linux-builds.yml new file mode 100644 index 00000000..b561fc3f --- /dev/null +++ b/.github/workflows/linux-builds.yml @@ -0,0 +1,48 @@ +name: Linux builds + +on: [push, pull_request] + +jobs: + build: + runs-on: ubuntu-20.04 + strategy: + matrix: + cxx: +# - g++-6 + - g++-7 + - g++-8 + - g++-9 + - g++-10 +# - clang++-7 + - clang++-8 + - clang++-9 +# - clang++-10 + build_type: [Debug, Release] + std: [14] + + steps: + - uses: actions/checkout@v2 + + - name: Prepare environment + run: sudo apt install ninja-build + + - name: Configure build + working-directory: ${{runner.workspace}} + env: + CXX: ${{matrix.cxx}} + CXXFLAGS: ${{matrix.cxxflags}} + # Note: $GITHUB_WORKSPACE is distinct from ${{runner.workspace}}. + # This is important + run: | + cmake -Bbuild -H$GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.build_type}} \ + -DCMAKE_CXX_STANDARD=${{matrix.std}} -DCATCH_DEVELOPMENT_BUILD=ON \ + -G Ninja + + - name: Build tests + lib + working-directory: ${{runner.workspace}}/build + run: ninja + + - name: Run tests + working-directory: ${{runner.workspace}}/build + # Hardcode 2 cores we know are there + run: ctest -C ${{matrix.build_type}} -j 2 diff --git a/.travis.yml b/.travis.yml index 1d4d0dd0..7ab44fea 100644 --- a/.travis.yml +++ b/.travis.yml @@ -127,14 +127,6 @@ matrix: packages: ['g++-7', 'lcov'] env: COMPILER='g++-7' CPP14=1 EXAMPLES=1 COVERAGE=1 EXTRAS=1 - - os: linux - compiler: gcc - addons: - apt: - sources: *all_sources - packages: ['g++-8'] - env: COMPILER='g++-8' CPP17=1 - # OSX Clang Builds - os: osx osx_image: xcode9.4