Skip to content

FutureAwaiter Support Cancellation #23

FutureAwaiter Support Cancellation

FutureAwaiter Support Cancellation #23

Workflow file for this run

name: CMake_cpp20_modules
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
jobs:
build_with_clang:
strategy:
matrix:
clang_version: [20, 21]
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
# You can convert this to a matrix build if you need cross-platform coverage.
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v2
- name: deps
run: |
sudo apt update
wget https://apt.llvm.org/llvm.sh
chmod +x ./llvm.sh
sudo ./llvm.sh ${{matrix.clang_version}}
sudo apt install libaio-dev libgtest-dev libgmock-dev ninja-build/jammy -y
- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: CXX=clang++-${{matrix.clang_version}} CC=clang-${{matrix.clang_version}} cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DASYNC_SIMPLE_BUILD_MODULES=ON -GNinja
- name: Build
# Build your program with the given configuration
run: cd ${{github.workspace}}/build && ninja -j 9
- name: Test
working-directory: ${{github.workspace}}/build
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: ctest -C ${{env.BUILD_TYPE}} --output-on-failure