Skip to content

linux CMake icx

linux CMake icx #30

Workflow file for this run

name: linux CMake icx
on:
workflow_dispatch:
schedule:
- cron: "6 0 * * *"
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: add oneAPI to apt
shell: bash
run: |
cd /tmp
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
rm GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
sudo add-apt-repository -y "deb https://apt.repos.intel.com/oneapi all main"
- name: install oneAPI dpcpp and fortran compiler
shell: bash
run: |
sudo apt update
sudo apt install -y intel-oneapi-compiler-dpcpp-cpp
sudo apt install -y intel-oneapi-compiler-fortran
sudo apt install -y intel-oneapi-mpi-devel
- name: install oneAPI MKL library
shell: bash
run: |
sudo apt install -y intel-oneapi-mkl-devel
- name: configure
shell: bash
run: |
source /opt/intel/oneapi/setvars.sh
export PATH=$PATH:/opt/intel/oneapi/mpi/2021.10.0/bin:/opt/intel/oneapi/compiler/2023.2.1/linux/bin
cmake -S . -B build \
-DCMAKE_BUILD_TYPE="RelWithDebInfo" \
-DCMAKE_INSTALL_PREFIX=install \
-DHDF5_BUILD_FORTRAN=OFF \
-DHDF5_ENABLE_PARALLEL=OFF \
-DHDF5_BUILD_HL_LIB=ON \
-DCMAKE_CXX_COMPILER=dpcpp \
-DCMAKE_C_COMPILER=icx \
-DCMAKE_Fortran_COMPILER=ifx \
-DMKL_ROOT="/opt/intel/oneapi/mkl/latest" \
-DTBB_ROOT="/opt/intel/oneapi/tbb/latest" \
-DHDF5_ENABLE_SZIP_SUPPORT:BOOL=OFF
- name: build
shell: bash
run: |
source /opt/intel/oneapi/setvars.sh
cmake --build build
- name: test
shell: bash
run: |
source /opt/intel/oneapi/setvars.sh
export SYCL_DEVICE_FILTER=opencl.cpu
ctest --test-dir build --output-on-failure