From 8d59b1c7a39ade6d2247f06ab6c8cbfec97ff9e2 Mon Sep 17 00:00:00 2001 From: Robert Schoene Date: Thu, 14 Dec 2023 16:48:50 +0100 Subject: [PATCH] re-add compilers to actions --- .github/workflows/cmake.yml | 38 ++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 210009a5..4fd208f0 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -8,7 +8,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-20.04] - compiler: [g++-10] + compiler: [g++-7, g++-8, g++-10, g++-10, clang++-8, clang++-9, clang++-10] CUDA: ['0'] ONEAPI: ['2024.0'] @@ -18,30 +18,30 @@ jobs: CUDA_ROOT: '/usr/local/cuda' steps: - - name: Install g++-7 + - name: Install g++-7 (if needed) if: matrix.compiler == 'g++-7' run: | sudo apt install g++-7 - - name: Install g++-8 + - name: Install g++-8 (if needed) if: matrix.compiler == 'g++-8' run: | sudo apt install g++-8 - - name: Install clang++-8 + - name: Install clang++-8 (if needed) if: matrix.compiler == 'clang++-8' run: | sudo apt install clang-8 - - name: Install clang++-9 + - name: Install clang++-9 (if needed) if: matrix.compiler == 'clang++-9' run: | sudo apt install clang-9 - - name: Install clang++-10 + - name: Install clang++-10 (if needed) if: matrix.compiler == 'clang++-10' run: | sudo apt install clang-10 - uses: actions/checkout@v2 with: fetch-depth: '0' - - name: Install CUDA runtime + - name: Install CUDA runtime (if needed) if: matrix.CUDA != '0' run: | case ${{ matrix.CUDA }} in @@ -61,7 +61,7 @@ jobs: tar xpzf nvhpc_2022_225_Linux_x86_64_cuda_11.7.tar.gz sudo NVHPC_SILENT="true" NVHPC_INSTALL_DIR="$CUDA_ROOT" NVHPC_INSTALL_TYPE="single" ./nvhpc_2022_225_Linux_x86_64_cuda_11.7/install esac - - name: Install OneAPI Base-Toolkit + - name: Install OneAPI Base-Toolkit (if needed) if: matrix.ONEAPI != '0' 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 @@ -71,20 +71,14 @@ jobs: - name: Create build directory run: | mkdir build - - name: Run CMake configure + - name: Run CMake configure (default) if: matrix.CUDA == '0' && matrix.ONEAPI == '0' env: CXX: ${{ matrix.compiler }} run: | cd build cmake .. - - name: Run CMake configure - if: matrix.CUDA == '0' && matrix.ONEAPI !='0' - run: | - . /opt/intel/oneapi/${{ matrix.ONEAPI }}/oneapi-vars.sh - cd build - cmake -DFIRESTARTER_BUILD_TYPE="FIRESTARTER_ONEAPI" .. - - name: Run CMake configure + - name: Run CMake configure (CUDA) if: matrix.CUDA != '0' && matrix.CUDA != 'NVHPC-22.5' env: CXX: ${{ matrix.compiler }} @@ -100,7 +94,7 @@ jobs: cd build cmake -DFIRESTARTER_BUILD_TYPE="FIRESTARTER_CUDA" -DCMAKE_EXE_LINKER_FLAGS="-L${CUDA_ROOT}/lib64/stubs/" .. - - name: Run CMake configure + - name: Run CMake configure (CUDA with NVHPC) if: matrix.CUDA == 'NVHPC-22.5' env: CXX: ${{ matrix.compiler }} @@ -113,7 +107,13 @@ jobs: cd build cmake -DFIRESTARTER_BUILD_TYPE="FIRESTARTER_CUDA" -DCMAKE_EXE_LINKER_FLAGS=-L"$CUDA_ROOT/$NVARCH/22.5/cuda/11.7/lib64/stubs" -LA .. - - name: Build (default) + - name: Run CMake configure (OneAPI) + if: matrix.CUDA == '0' && matrix.ONEAPI !='0' + run: | + . /opt/intel/oneapi/${{ matrix.ONEAPI }}/oneapi-vars.sh + cd build + cmake -DFIRESTARTER_BUILD_TYPE="FIRESTARTER_ONEAPI" .. + - name: Build (default, CUDA) if: matrix.ONEAPI =='0' run: | cd build @@ -139,7 +139,7 @@ jobs: run: | cd build strip src/FIRESTARTER_ONEAPI - - name: Test FIRESTARTER + - name: Test FIRESTARTER (default) if: matrix.CUDA == '0' && matrix.ONEAPI == '0' run: ./build/src/FIRESTARTER -t 1 - uses: actions/upload-artifact@v2