2
0
mirror of https://github.com/boostorg/outcome.git synced 2026-01-21 05:02:14 +00:00
Files
outcome/.github/workflows/ci.yml
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) ddf99136d0 Merging commit ned14/outcome@71c42c00d9:
- Bump Boost min cmake required to 3.10 to match standalone Outcome. Also bump minium cmake to 3.10
everywhere else in Outcome, as CI is now failing due to us requested too old a cmake. #314

Replaces https://github.com/boostorg/outcome/pull/8
2025-10-09 20:08:55 +00:00

66 lines
2.8 KiB
YAML

name: Continuous Integration
on:
push:
branches:
- '*'
- '*/*'
pull_request:
branches:
- develop
jobs:
build:
name: ${{ matrix.name }}
strategy:
fail-fast: false
matrix:
include:
- { name: "MSVC 14.3 - C++17-20", os: windows-2022, cxxstd: '17,20', cmake_args: -G "Visual Studio 17 2022" -A x64, }
- { name: "clang-cl 14.3 - C++14,20", os: windows-2022, cxxstd: '14,20', cmake_args: -G "Visual Studio 17 2022" -T ClangCL -A x64, }
# - { name: "MSVC 14.2 - C++14-17", os: windows-2019, cxxstd: '14,17', cmake_args: -G "Visual Studio 16 2019" -A x64, }
- { name: "GCC 12 - C++17-20", os: ubuntu-22.04, cc: gcc-12, cxx: g++-12, cxxstd: '17,20', install: g++-12, }
- { name: "GCC 11 - C++14,20", os: ubuntu-22.04, cc: gcc-11, cxx: g++-11, cxxstd: '14,20', install: g++-11, }
# The GCC 10 this runner has is broken
# - { name: "GCC 10 - C++17-20", os: ubuntu-22.04, cc: gcc-10, cxx: g++-10, cxxstd: '17,20', }
# - { name: "GCC 9 - C++17-20", os: ubuntu-22.04, cc: gcc-9, cxx: g++-9, cxxstd: '17,20', install: g++-9, }
# - { name: "GCC 8 - C++14-17", os: ubuntu-20.04, cc: gcc-8, cxx: g++-8, cxxstd: '14,17', install: g++-8, }
# - { name: "GCC 7 - C++14", os: ubuntu-20.04, cc: gcc-7, cxx: g++-7, cxxstd: 14, install: g++-7, }
- { name: "Clang 14 - C++17-20", os: ubuntu-22.04, cc: clang-14, cxx: clang++-14, cxxstd: '17,20', install: clang-14, }
- { name: "Clang 13 - C++14,20", os: ubuntu-22.04, cc: clang-13, cxx: clang++-13, cxxstd: '14,20', install: clang-13, }
- { name: "Clang 12 - C++17-20", os: ubuntu-22.04, cc: clang-12, cxx: clang++-12, cxxstd: '17,20', install: clang-12, }
# - { name: "Clang 11 - C++14-17", os: ubuntu-20.04, cc: clang-11, cxx: clang++-11, cxxstd: '14,17', install: clang-11, }
- { name: "AppleClang 13", os: macos-12, cxxstd: 17 }
runs-on: ${{ matrix.os }}
steps:
- name: Outcome checkout
uses: actions/checkout@v4
- name: Install packages
if: startsWith(matrix.os, 'ubuntu') && matrix.install
run: sudo apt-get install -y ${{ matrix.install }}
- name: Boost checkout
uses: ./.github/actions/boost_clone
with:
boost_dir: boost
branch: ${{ (github.ref_name == 'master' && 'master') || 'develop' }}
modules: config,exception,system,throw_exception,test
- name: CMake Run (C++${{ matrix.cxxstd }})
uses: ./.github/actions/cmake_run
with:
cxxstd: ${{ matrix.cxxstd }}
cxx: ${{ matrix.cxx }}
cc: ${{ matrix.cc }}
extra-args: ${{ format('-D BOOST_SRC_DIR=boost {0}', matrix.cmake_args) }}
build-target: tests