Skip to content

update apply

update apply #114

Workflow file for this run

name: CMake
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Debug
jobs:
build-linux:
strategy:
matrix:
compiler: [g++-10, g++-11, clang++-12, clang++-13, clang++-14]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Prepare
# Install necessary software
run: sudo apt-get install gfortran libopenblas-dev liblapacke-dev
- name: Configure CMake
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_CXX_COMPILER=${{matrix.compiler}} -DScilib_BUILD_BENCH=OFF
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
- name: Test
working-directory: ${{github.workspace}}/build
run: ctest -C ${{env.BUILD_TYPE}} --output-on-failure
build-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: Prepare
# Install necessary software
run: brew install openblas libomp
- name: Configure CMake
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DScilib_BUILD_BENCH=OFF
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
- name: Test
working-directory: ${{github.workspace}}/build
run: ctest -C ${{env.BUILD_TYPE}} --output-on-failure
build-windows:
runs-on: ${{matrix.os}}
strategy:
matrix:
os: [windows-2022, windows-2019]
env:
MKL_DIR: "D:/a/"
MKLROOT: "D:/a/intelmkl.static.win-x64.2023.2.0.49496/lib/native"
steps:
- uses: actions/checkout@v3
- name: Prepare
# Install necessary software
shell: pwsh
run: nuget install intelmkl.static.win-x64 -Version 2023.2.0.49496 -o ${{env.MKL_DIR}}
- name: Configure CMake
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DScilib_BUILD_BENCH=OFF
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
- name: Test
working-directory: ${{github.workspace}}/build
run: ctest -C ${{env.BUILD_TYPE}} --output-on-failure
# build-intel:
# runs-on: ubuntu-latest
#
# steps:
# - uses: actions/checkout@v3
#
# - name: Prepare
# # Install necessary software
# run: |
# wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
# echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
# sudo apt-get update
# sudo apt-get install intel-oneapi-mkl-devel intel-oneapi-compiler-dpcpp-cpp
# source /opt/intel/oneapi/setvars.sh intel64
#
# - name: Configure CMake
# run: |
# source /opt/intel/oneapi/setvars.sh intel64
# cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_CXX_COMPILER=icpx -DScilib_BUILD_BENCH=OFF
#
# - name: Build
# run: |
# source /opt/intel/oneapi/setvars.sh intel64
# cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
#
# - name: Test
# working-directory: ${{github.workspace}}/build
# run: |
# source /opt/intel/oneapi/setvars.sh intel64
# ctest -C ${{env.BUILD_TYPE}} --output-on-failure