Skip to content

Remove Travis configuration #1

Remove Travis configuration

Remove Travis configuration #1

Workflow file for this run

name: Build and run tests
on: [push, pull_request]
env:
CI_BUILD_DIR: build
TEST_INPUTS_DIR: inputs
TEST_OUTPUTS_DIR: outputs
TEST_CONFIG_FILE: ci-tests.cfg
TEST_SIM_NAME: mini-SURFS
TEST_FIXED_SEED: 123456
jobs:
build_and_test:
name: Build and test libprofit. OS=${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: ubuntu-latest
CXX: g++
omp: true
- os: ubuntu-latest
CXX: g++
poor_build: true
- os: ubuntu-latest
CXX: clang++
omp: true
- os: macos-latest
CXX: clang++
omp: false
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: Install system dependencies (Linux)
env:
REQUIRED_DEPS: ninja-build libgsl-dev
OPTIONAL_DEPS: ${{ matrix.poor_build && 'libfftw3-dev opencl-headers' || '' }}
if: ${{ matrix.os == 'ubuntu-latest' }}
run: |
sudo apt install $REQUIRED_DEPS $OPTIONAL_DEPS
- name: Install system dependencies (MacOS)
if: ${{ matrix.os == 'macos-latest' }}
run: |
brew install gsl fftw
- name: Configure
env:
SHARK_NO_OPENMP: ${{ matrix.omp && 'OFF' || 'ON' }}
CMAKE_EXTRA_FLAGS: ${{ matrix.poor_build && '-DLIBPROFIT_NO_OPENCL=ON -DLIBPROFIT_NO_OPENMP=ON -DLIBPROFIT_NO_FFTW=ON -DLIBPROFIT_NO_SIMD=ON' || '' }}
run: |
cmake -B ${CI_BUILD_DIR} -G Ninja \
-DSHARK_NO_OPENMP=$SHARK_NO_OPENMP \
-DSHARK_TEST=ON \
$CMAKE_EXTRA_FLAGS
- name: Build
run: cmake --build ${CI_BUILD_DIR}
- name: Run unit tests
run: |
cd ${CI_BUILD_DIR}
ctest --output-on-failure