@@ -224,24 +224,6 @@ if(USE_CUDA)
224224 add_subdirectory (${PROJECT_SOURCE_DIR} /gputreeshap)
225225
226226 find_package (CUDAToolkit REQUIRED)
227- find_package (CCCL CONFIG)
228- if (NOT CCCL_FOUND)
229- message (STATUS "Standalone CCCL not found. Attempting to use CCCL from CUDA Toolkit..." )
230- find_package (CCCL CONFIG
231- HINTS ${CUDAToolkit_LIBRARY_DIR} /cmake)
232- if (NOT CCCL_FOUND)
233- message (STATUS "Could not locate CCCL from CUDA Toolkit. Using Thrust and CUB from CUDA Toolkit..." )
234- find_package (libcudacxx CONFIG REQUIRED
235- HINTS ${CUDAToolkit_LIBRARY_DIR} /cmake)
236- find_package (CUB CONFIG REQUIRED
237- HINTS ${CUDAToolkit_LIBRARY_DIR} /cmake)
238- find_package (Thrust CONFIG REQUIRED
239- HINTS ${CUDAToolkit_LIBRARY_DIR} /cmake)
240- thrust_create_target(Thrust HOST CPP DEVICE CUDA)
241- add_library (CCCL::CCCL INTERFACE IMPORTED GLOBAL )
242- target_link_libraries (CCCL::CCCL INTERFACE libcudacxx::libcudacxx CUB::CUB Thrust)
243- endif ()
244- endif ()
245227endif ()
246228
247229if (FORCE_COLORED_OUTPUT AND (CMAKE_GENERATOR STREQUAL "Ninja" ) AND
@@ -327,6 +309,28 @@ if(PLUGIN_RMM)
327309 list (REMOVE_ITEM rmm_link_libs CUDA::cudart)
328310 list (APPEND rmm_link_libs CUDA::cudart_static)
329311 set_target_properties (rmm::rmm PROPERTIES INTERFACE_LINK_LIBRARIES "${rmm_link_libs} " )
312+
313+ # Pick up patched CCCL from RMM
314+ elseif (USE_CUDA)
315+ # If using CUDA and not RMM, search for CCCL.
316+ find_package (CCCL CONFIG)
317+ if (NOT CCCL_FOUND)
318+ message (STATUS "Standalone CCCL not found. Attempting to use CCCL from CUDA Toolkit..." )
319+ find_package (CCCL CONFIG
320+ HINTS ${CUDAToolkit_LIBRARY_DIR} /cmake)
321+ if (NOT CCCL_FOUND)
322+ message (STATUS "Could not locate CCCL from CUDA Toolkit. Using Thrust and CUB from CUDA Toolkit..." )
323+ find_package (libcudacxx CONFIG REQUIRED
324+ HINTS ${CUDAToolkit_LIBRARY_DIR} /cmake)
325+ find_package (CUB CONFIG REQUIRED
326+ HINTS ${CUDAToolkit_LIBRARY_DIR} /cmake)
327+ find_package (Thrust CONFIG REQUIRED
328+ HINTS ${CUDAToolkit_LIBRARY_DIR} /cmake)
329+ thrust_create_target(Thrust HOST CPP DEVICE CUDA)
330+ add_library (CCCL::CCCL INTERFACE IMPORTED GLOBAL )
331+ target_link_libraries (CCCL::CCCL INTERFACE libcudacxx::libcudacxx CUB::CUB Thrust)
332+ endif ()
333+ endif ()
330334endif ()
331335
332336if (PLUGIN_SYCL)
0 commit comments