Skip to content

Commit

Permalink
Add GHA CI
Browse files Browse the repository at this point in the history
  • Loading branch information
ashtum committed May 30, 2024
1 parent 844e3f3 commit 9007594
Showing 1 changed file with 144 additions and 0 deletions.
144 changes: 144 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
name: CI

on:
pull_request:
push:
branches:
- master
- develop
- feature/**
- pr/**

jobs:
posix:
strategy:
fail-fast: false
matrix:
include:
# - compiler: g++-7
# cxxstd: "17"
# os: ubuntu-20.04
# install: g++-7
# - compiler: g++-8
# cxxstd: "17,2a"
# os: ubuntu-20.04
# install: g++-8
# - compiler: g++-9
# cxxstd: "17,2a"
# os: ubuntu-20.04
# - compiler: g++-10
# cxxstd: "17,2a"
# os: ubuntu-20.04
# install: g++-10
# - compiler: g++-11
# cxxstd: "17,2a"
# os: ubuntu-22.04
# install: g++-11
# - compiler: g++-12
# cxxstd: "17,20,2b"
# os: ubuntu-22.04
# install: g++-12
# - compiler: g++-13
# cxxstd: "17,20,2b"
# os: ubuntu-24.04
# install: g++-13
# - compiler: clang++-6.0
# cxxstd: "17"
# os: ubuntu-18.04
# install: clang-6.0
# - compiler: clang++-7
# cxxstd: "17"
# os: ubuntu-18.04
# install: clang-7
# - compiler: clang++-8
# cxxstd: "17"
# os: ubuntu-20.04
# install: clang-8
# - compiler: clang++-9
# cxxstd: "17,2a"
# os: ubuntu-20.04
# install: clang-9
# - compiler: clang++-10
# cxxstd: "17,2a"
# os: ubuntu-20.04
# - compiler: clang++-11
# cxxstd: "17,2a"
# os: ubuntu-20.04
# - compiler: clang++-12
# cxxstd: "17,2a"
# os: ubuntu-20.04
# - compiler: clang++-13
# cxxstd: "17,20,2b"
# os: ubuntu-22.04
# install: clang-13
# - compiler: clang++-14
# cxxstd: "17,20,2b"
# os: ubuntu-22.04
# install: clang-14
- compiler: clang++-15
install: clang-15
cxxstd: "17,20,2b"
os: ubuntu-22.04
- compiler: clang++-16
install: clang-16
cxxstd: "17,20,2b"
os: ubuntu-24.04
- compiler: clang++-17
install: clang-17
cxxstd: "17,20,2b"
os: ubuntu-24.04
- compiler: clang++-18
install: clang-18
cxxstd: "17,20,2b"
os: ubuntu-24.04
# macos
# - compiler: clang
# os: macos-12
# cxxstd: "17,20,2b"
# supported: true
# - compiler: clang
# os: macos-13
# cxxstd: "17,20,2b"
# supported: true
# - compiler: clang
# os: macos-14
# cxxstd: "17,20,2b"
# supported: true

runs-on: ${{matrix.os}}

steps:
- uses: actions/checkout@v3

- name: Install packages
if: matrix.install
run: sudo apt install ${{matrix.install}}

- name: Build
run: |
mkdir build
cd build
standards=$(sed 's/,/ /g' <<<"${{matrix.cxxstd}}")
variants="Debug Release"
err=0
for standard in ${standards} ; do
for variant in ${variants} ; do
if [[ err -ne 0 ]] ; then
echo "skipping: ${standard} ${variant}"
else
echo "running: ${standard} ${variant}"
cmake .. -DCMAKE_CXX_COMPILER=${{matrix.compiler}} -DCMAKE_CXX_STANDARD=${standard} -DCMAKE_BUILD_TYPE=${variant}
cmake --build .
err=$?
fi
done
done
[[ $err -ne 0 ]] && false || "true"
- name: Run tests
run: |
cd build/test
./driver

0 comments on commit 9007594

Please sign in to comment.