FindCUDAToolkit: Support the new nvJitLink library in CUDA 12

This commit is contained in:
Robert Maynard
2022-12-12 13:28:50 -05:00
parent 07fe1c9eb8
commit d37d9c098c
3 changed files with 24 additions and 0 deletions
+17
View File
@@ -380,6 +380,18 @@ Targets Created:
- ``CUDA::nvrtc`` - ``CUDA::nvrtc``
.. _`cuda_toolkit_nvjitlink`:
nvJitLink
"""""""""
The `nvJItLink <https://docs.nvidia.com/cuda/>`_ (Runtime LTO Linking) library.
Targets Created:
- ``CUDA::nvJitLink`` starting in CUDA 12.0
- ``CUDA::nvJitLink_static`` starting in CUDA 12.0
.. _`cuda_toolkit_nvml`: .. _`cuda_toolkit_nvml`:
nvidia-ML nvidia-ML
@@ -1094,6 +1106,11 @@ if(CUDAToolkit_FOUND)
endif() endif()
endif() endif()
if(CUDAToolkit_VERSION VERSION_GREATER_EQUAL 12.0.0)
_CUDAToolkit_find_and_add_import_lib(nvJitLink DEPS cuda_driver)
_CUDAToolkit_find_and_add_import_lib(nvJitLink_static DEPS cuda_driver)
endif()
_CUDAToolkit_find_and_add_import_lib(nvml ALT nvidia-ml nvml) _CUDAToolkit_find_and_add_import_lib(nvml ALT nvidia-ml nvml)
if(WIN32) if(WIN32)
+3
View File
@@ -22,6 +22,9 @@ set(cuda_libs cudart cuda_driver cublas cufft cufftw curand cusolver cusparse)
if(CUDAToolkit_VERSION VERSION_GREATER_EQUAL 10.1) if(CUDAToolkit_VERSION VERSION_GREATER_EQUAL 10.1)
list(APPEND cuda_libs cublasLt) list(APPEND cuda_libs cublasLt)
endif() endif()
if(CUDAToolkit_VERSION_MAJOR VERSION_GREATER 11)
list(APPEND cuda_libs nvJitLink)
endif()
if(CUDAToolkit_VERSION_MAJOR VERSION_LESS 11) if(CUDAToolkit_VERSION_MAJOR VERSION_LESS 11)
list(APPEND cuda_libs nvgraph) list(APPEND cuda_libs nvgraph)
endif() endif()
+4
View File
@@ -20,10 +20,14 @@ set(cuda_libs cudart cuda_driver cublas cufft cufftw curand cusolver cusparse)
if(CUDAToolkit_VERSION VERSION_GREATER_EQUAL 10.1) if(CUDAToolkit_VERSION VERSION_GREATER_EQUAL 10.1)
list(APPEND cuda_libs cublasLt) list(APPEND cuda_libs cublasLt)
endif() endif()
if(CUDAToolkit_VERSION_MAJOR VERSION_GREATER 11)
list(APPEND cuda_libs nvJitLink)
endif()
if(CUDAToolkit_VERSION_MAJOR VERSION_LESS 11) if(CUDAToolkit_VERSION_MAJOR VERSION_LESS 11)
list(APPEND cuda_libs nvgraph) list(APPEND cuda_libs nvgraph)
endif() endif()
# Verify that all the CUDA:: targets and variables exist # Verify that all the CUDA:: targets and variables exist
foreach (cuda_lib IN LISTS cuda_libs) foreach (cuda_lib IN LISTS cuda_libs)
if(NOT CUDA_${cuda_lib}_LIBRARY) if(NOT CUDA_${cuda_lib}_LIBRARY)