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