3737 - os : ubuntu-latest
3838 compiler : gcc
3939 compiler_version : 9
40- CUDA : " OFF "
40+ cuda_version : " 0 "
4141 BUILD_FLAGS : " -DSTIR_OPENMP=ON"
4242 BUILD_TYPE : " Release"
4343 parallelproj : " ON"
4646 - os : ubuntu-latest
4747 compiler : clang
4848 # compiler_version:
49- CUDA : " OFF "
49+ cuda_version : " 0 "
5050 BUILD_FLAGS : " -DSTIR_OPENMP=ON"
5151 BUILD_TYPE : " Release"
5252 parallelproj : " ON"
5656 - os : ubuntu-latest
5757 compiler : gcc
5858 compiler_version : 10
59- CUDA : " OFF "
59+ cuda_version : " 0 "
6060 BUILD_FLAGS : " -DSTIR_OPENMP=ON -DCMAKE_CXX_STANDARD=17"
6161 BUILD_TYPE : " Debug"
6262 parallelproj : " OFF"
6565 - os : ubuntu-latest
6666 compiler : gcc
6767 compiler_version : 12
68- CUDA : " OFF "
68+ cuda_version : " 0 "
6969 BUILD_FLAGS : " -DSTIR_OPENMP=ON -DCMAKE_CXX_STANDARD=14"
7070 BUILD_TYPE : " RelWithDebInfo"
7171 parallelproj : " ON"
7474 - os : ubuntu-latest
7575 compiler : gcc
7676 compiler_version : 12
77- CUDA : " ON "
77+ cuda_version : " 12.1.0 "
7878 BUILD_FLAGS : " -DSTIR_OPENMP=ON -DCMAKE_CXX_STANDARD=14"
7979 BUILD_TYPE : " Release"
8080 parallelproj : " ON"
8383 - os : macOS-latest
8484 compiler : gcc
8585 compiler_version : 11
86- CUDA : " OFF "
86+ cuda_version : " 0 "
8787 BUILD_FLAGS : " -DSTIR_OPENMP=OFF"
8888 parallelproj : " OFF"
8989 BUILD_TYPE : " Debug"
@@ -102,7 +102,7 @@ jobs:
102102 # let's run all of them, as opposed to aborting when one fails
103103 fail-fast : false
104104
105- name : ${{ matrix.os }}-${{ matrix.compiler }}${{ matrix.compiler_version }}-${{ matrix.BUILD_TYPE }}-pp=${{ matrix.parallelproj }}-ROOT=${{ matrix.ROOT }}
105+ name : ${{ matrix.os }}-${{ matrix.compiler }}- ${{ matrix.compiler_version }}-cuda${{ matrix.cuda_version }}-${{ matrix.BUILD_TYPE }}-pp=${{ matrix.parallelproj }}-ROOT=${{ matrix.ROOT }}
106106
107107 steps :
108108 - name : disk space
@@ -166,11 +166,12 @@ jobs:
166166 echo CC="$CC" >> $GITHUB_ENV
167167 echo CXX="$CXX" >> $GITHUB_ENV
168168
169- - if : ${{ matrix.CUDA }} == "ON"
169+ - if : ${{ ! matrix.cuda_version == '0' }}
170170 uses : Jimver/cuda-toolkit@v0.2.11
171171 id : cuda-toolkit
172172 with :
173- cuda : ' 12.1.0'
173+ cuda : ${{ matrix.cuda_version }}
174+ linux-local-args : ' ["--toolkit"]'
174175
175176 - name : install_dependencies
176177 shell : bash
@@ -232,15 +233,20 @@ jobs:
232233 git clone --depth 1 --branch v1.3.7 https://github.com/gschramm/parallelproj
233234 mkdir parallelproj/build
234235 cd parallelproj/build
235- cmake .. -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DSKIP_CUDA_LIB:BOOL=ON
236+ if test ! "${{matrix.cuda_version}}" == "0"; then
237+ extra_args="-DSKIP_CUDA_LIB:BOOL=ON"
238+ fi
239+ cmake .. -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} "${extra_args}"
236240 cmake --build . --target install --config Release
237241 cd ../..
238242 fi
239243 # Install NiftyPET
240- if test "${{matrix.CUDA}}XX " == "ONXX "; then
244+ if test ! "${{matrix.cuda_version}} " == "0 "; then
241245 export PATHTOOLS=${GITHUB_WORKSPACE}/NiftyPET_tools
242246 export HMUDIR=${GITHUB_WORKSPACE}/mmr_hardwareumaps
243247 python -m pip install "nipet>=2"
248+ niftypet_cmake_prefix=${{python -c "from niftypet.nipet import cmake_prefix; print(cmake_prefix)"}}
249+ echo NiftyPET_PREFIX="$niftypet_cmake_prefix" >> $GITHUB_ENV
244250 fi
245251
246252 # Install ROOT (warning: currently only valid on Ubuntu)
@@ -269,7 +275,7 @@ jobs:
269275 - name : ccache
270276 uses : hendrikmuhs/ccache-action@v1
271277 with :
272- key : ${{ matrix.os }}-${{ matrix.compiler }}-${{ matrix.compiler_version }}-${{ matrix.BUILD_TYPE }}
278+ key : ${{ matrix.os }}-${{ matrix.compiler }}-${{ matrix.compiler_version }}-cuda${{ matrix.cuda_version }}- ${{ matrix.BUILD_TYPE }}
273279 max-size : " 2G"
274280
275281 - name : configure
@@ -291,6 +297,7 @@ jobs:
291297 echo CMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" >> $GITHUB_ENV
292298 EXTRA_BUILD_FLAGS="-DBUILD_SWIG_PYTHON=ON -DPYTHON_EXECUTABLE=`which python`"
293299 EXTRA_BUILD_FLAGS="${EXTRA_BUILD_FLAGS} -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DCMAKE_BUILD_TYPE=${BUILD_TYPE}"
300+ EXTRA_BUILD_FLAGS="${EXTRA_BUILD_FLAGS} -DCMAKE_PREFIX_DIR=${NiftyPET_PREFIX}"
294301 EXTRA_BUILD_FLAGS="${EXTRA_BUILD_FLAGS} -DDOWNLOAD_ZENODO_TEST_DATA=ON"
295302 EXTRA_BUILD_FLAGS="${EXTRA_BUILD_FLAGS} -DDISABLE_STIR_LOCAL=OFF -DSTIR_LOCAL=${GITHUB_WORKSPACE}/examples/C++/src"
296303 echo "cmake flags $BUILD_FLAGS $EXTRA_BUILD_FLAGS"
0 commit comments