# Copyright 2021 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. name: Build / test on: [push, pull_request] jobs: cmake: name: Build and test ${{ matrix.name }} runs-on: ubuntu-18.04 strategy: matrix: include: - name: Clang-5.0 extra_deps: clang-5.0 c_compiler: clang-5.0 cxx_compiler: clang++-5.0 - name: Clang-6.0 extra_deps: clang-6.0 c_compiler: clang-6.0 cxx_compiler: clang++-6.0 steps: - uses: actions/checkout@v2 - name: Install deps run: sudo apt-get install ${{ matrix.extra_deps }} - name: Build and test run: | export CMAKE_BUILD_PARALLEL_LEVEL=2 export CTEST_PARALLEL_LEVEL=2 CXXFLAGS=-Werror CC=${{ matrix.c_compiler }} CXX=${{ matrix.cxx_compiler }} cmake -B out . cmake --build out ctest --test-dir out bazel: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: bazelbuild/setup-bazelisk@v1 - uses: actions/cache@v2 with: path: ~/.cache/bazel key: bazel-${{ runner.os }} - run: bazel build //...