Skip to content

Add baseline CI

Add baseline CI #4

Workflow file for this run

name: github-Linux-baseline
on:
pull_request:
types: [ opened, reopened, synchronize ]
paths-ignore:
- '**/*.md'
push: # for direct quick fixes
branches:
- 'main'
- 'develop'
paths-ignore:
- '**/*.md'
concurrency:
group: ${ {github.event_name }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{github.event_name == 'pull_request'}}
jobs:
CI:
name: baseline
continue-on-error: false
strategy:
fail-fast: false
matrix:
image:
- ubuntu-20.04-gnu_9-eigen_3.3.7-gtest
- ubuntu-20.04-clang_9-eigen_3.3.7-gtest
- fedora-34-gnu_11-eigen_3.3.7-gtest
- fedora-34-clang_12-eigen_3.3.7-gtest
#- intel_oneapi-eigen_3.3.7-gtest
build_type:
- Release
- Debug
cmake_extra_args:
- ''
include:
- image: ubuntu-20.04_gnu-11_eigen-3.3.7_gtest
build_type: Release
cmake_extra_args: '-D CMAKE_CXX_STANDARD=20 -D PRESSIO_ENABLE_CXX20=ON'
- image: ubuntu-20.04_clang-12_eigen-3.3.7_gtest
build_type: Release
cmake_extra_args: '-D CMAKE_CXX_STANDARD=20 -D PRESSIO_ENABLE_CXX20=ON'
- image: fedora-34-gnu_11-eigen_3.3.7-gtest
build_type: Release
cmake_extra_args: '-D CMAKE_CXX_STANDARD=20 -D PRESSIO_ENABLE_CXX20=ON'
- image: fedora-34-clang_12-eigen_3.3.7-gtest
build_type: Release
cmake_extra_args: '-D CMAKE_CXX_STANDARD=20 -D PRESSIO_ENABLE_CXX20=ON'
runs-on: ubuntu-latest
container: pressiomodelreduction/${{ matrix.image }}
env:
num_cpus: 2
eigen_inc_dir: /usr/local/eigen/install/include/eigen3
steps:
- uses: actions/checkout@v4
- name: Checkout pressio
uses: actions/checkout@v4
with:
repository: Pressio/pressio
path: pressio
- name: Configure
run: |
cmake -B pressio-builddir \
-D CMAKE_BUILD_TYPE:STRING=${{ matrix.build_type }} \
-D CMAKE_C_COMPILER=$CC \
-D CMAKE_CXX_COMPILER=$CXX \
-D CMAKE_CXX_FLAGS='' \
-D CMAKE_INSTALL_PREFIX:PATH=../install \
-D CMAKE_VERBOSE_MAKEFILE:BOOL=ON \
${{ matrix.cmake_extra_args }} \
-D PRESSIO_ENABLE_DEBUG_PRINT=ON \
-D PRESSIO_ENABLE_TPL_EIGEN:BOOL=ON \
-D EIGEN_INCLUDE_DIR=$eigen_inc_dir \
-S pressio
- name: Build
run: |
cmake --build pressio-builddir --target install