From 7c4d469b84c49d55bd94554cbd156300729d9789 Mon Sep 17 00:00:00 2001 From: Niels Lohmann Date: Mon, 29 Jun 2026 09:36:08 +0200 Subject: [PATCH] :construction_worker: add ipcx and nvc++ Signed-off-by: Niels Lohmann --- .github/workflows/ubuntu.yml | 26 +++++++++++++++++++ cmake/ci.cmake | 26 +++++++++++++++++++ .../docs/community/quality_assurance.md | 2 ++ 3 files changed, 54 insertions(+) diff --git a/.github/workflows/ubuntu.yml b/.github/workflows/ubuntu.yml index 72176c255..6fcf3156a 100644 --- a/.github/workflows/ubuntu.yml +++ b/.github/workflows/ubuntu.yml @@ -247,6 +247,32 @@ jobs: . /opt/intel/oneapi/setvars.sh cmake --build build --target ci_icpc + ci_icpx: + runs-on: ubuntu-latest + container: intel/oneapi-hpckit:latest + steps: + - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + - name: Get latest CMake and ninja + uses: lukka/get-cmake@f5b8fbb4d77cec1acc5a5f9f0df4beffaf5d98d9 # v4.3.4 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: | + . /opt/intel/oneapi/setvars.sh + cmake --build build --target ci_icpx + + ci_nvhpc: + runs-on: ubuntu-latest + container: nvcr.io/nvidia/nvhpc:25.5-devel-cuda12.9-ubuntu22.04 + steps: + - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + - name: Get latest CMake and ninja + uses: lukka/get-cmake@f5b8fbb4d77cec1acc5a5f9f0df4beffaf5d98d9 # v4.3.4 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ci_nvhpc + ci_emscripten: runs-on: ubuntu-latest steps: diff --git a/cmake/ci.cmake b/cmake/ci.cmake index 559ce8f55..c497cd323 100644 --- a/cmake/ci.cmake +++ b/cmake/ci.cmake @@ -701,6 +701,32 @@ add_custom_target(ci_icpc COMMENT "Compile and test with ICPC" ) +add_custom_target(ci_icpx + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DCMAKE_C_COMPILER=icx -DCMAKE_CXX_COMPILER=icpx + -DJSON_BuildTests=ON -DJSON_FastTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_icpx + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_icpx + COMMAND cd ${PROJECT_BINARY_DIR}/build_icpx && ${CMAKE_CTEST_COMMAND} --parallel ${N} --exclude-regex "test-unicode" --output-on-failure + COMMENT "Compile and test with ICPX (Intel oneAPI DPC++/C++)" +) + +############################################################################### +# NVIDIA HPC SDK C++ Compiler +############################################################################### + +add_custom_target(ci_nvhpc + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DCMAKE_C_COMPILER=nvc -DCMAKE_CXX_COMPILER=nvc++ + -DJSON_BuildTests=ON -DJSON_FastTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_nvhpc + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_nvhpc + COMMAND cd ${PROJECT_BINARY_DIR}/build_nvhpc && ${CMAKE_CTEST_COMMAND} --parallel ${N} --exclude-regex "test-unicode" --output-on-failure + COMMENT "Compile and test with NVIDIA HPC SDK (nvc++)" +) + ############################################################################### # REUSE ############################################################################### diff --git a/docs/mkdocs/docs/community/quality_assurance.md b/docs/mkdocs/docs/community/quality_assurance.md index 7ddd93871..fd12e281f 100644 --- a/docs/mkdocs/docs/community/quality_assurance.md +++ b/docs/mkdocs/docs/community/quality_assurance.md @@ -82,6 +82,8 @@ violations will result in a failed build. | GNU 14.2.0 | arm64 | Linux 6.1.100 | Cirrus CI | | GNU 15.1.0 | x86_64 | Ubuntu 22.04.1 LTS | GitHub | | icpc (ICC) 2021.5.0 20211109 | x86_64 | Ubuntu 20.04.3 LTS | GitHub | + | icpx (Intel oneAPI DPC++/C++) 2025.x | x86_64 | Ubuntu 22.04.1 LTS | GitHub | + | nvc++ (NVIDIA HPC SDK) 25.5 | x86_64 | Ubuntu 22.04.1 LTS | GitHub | | MSVC 19.0.24241.7 | x86 | Windows 8.1 | AppVeyor | | MSVC 19.16.27035.0 | x86 | Windows-10 (Build 14393) | AppVeyor | | MSVC 19.29.30157.0 | x86 | Windows-10 (Build 17763) | AppVeyor |