Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 13 additions & 7 deletions cpp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,16 @@ project(
VERSION "${RAPIDS_VERSION}"
LANGUAGES ${lang_list}
)

# Find CMake packages provided by installed wheels.
find_package(Python COMPONENTS Interpreter)
if(Python_FOUND)
include(${rapids-cmake-dir}/cython-core/find_prefix_paths.cmake)
rapids_cython_find_prefix_paths("${Python_EXECUTABLE}" wheel_prefix_paths)
set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS TRUE)
list(PREPEND CMAKE_PREFIX_PATH ${wheel_prefix_paths})
endif()

set(CMAKE_INSTALL_MESSAGE LAZY)

# Disable C++20 module scanning (not using modules, just C++20 features)
Expand Down Expand Up @@ -1599,13 +1609,9 @@ if(NOT BUILD_CPU_ONLY)
$<BUILD_LOCAL_INTERFACE:$<TARGET_NAME_IF_EXISTS:NCCL::NCCL>>
$<BUILD_LOCAL_INTERFACE:$<TARGET_NAME_IF_EXISTS:hnswlib::hnswlib>>
$<$<BOOL:${CUVS_NVTX}>:CUDA::nvtx3>
PRIVATE $<TARGET_NAME_IF_EXISTS:OpenMP::OpenMP_CXX>
$<COMPILE_ONLY:nvidia::cutlass::cutlass>
$<COMPILE_ONLY:cuco::cuco>
CUDA::nvJitLink
CUDA::nvrtc
rtcx::rtcx
$<BUILD_LOCAL_INTERFACE:kvikio::kvikio>
PRIVATE $<TARGET_NAME_IF_EXISTS:OpenMP::OpenMP_CXX> $<COMPILE_ONLY:nvidia::cutlass::cutlass>
$<COMPILE_ONLY:cuco::cuco> CUDA::nvJitLink CUDA::nvrtc rtcx::rtcx kvikio::kvikio
INTERFACE $<LINK_ONLY:kvikio::kvikio>
)

# ensure CUDA symbols aren't relocated to the middle of the debug build binaries
Expand Down
10 changes: 5 additions & 5 deletions cpp/cmake/thirdparty/get_kvikio.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,15 @@ function(find_and_configure_kvikio)

# ----------------------------------------------------------------------------
# KvikIO provides the GPUDirect Storage (cuFile) and POSIX file I/O backends used by the CAGRA
# ACE disk-mode build. Shared cuVS builds consume it privately, while installed static cuVS
# targets retain it as a link-only dependency. At runtime the conda 'libkvikio' package provides
# both the shared library and its CMake package configuration.
# ACE disk-mode build. cuVS consumes it privately, while installed cuVS targets retain it as a
# link-only dependency. At runtime package managers provide both the shared library and its CMake
# package configuration.
# ----------------------------------------------------------------------------
rapids_cpm_find(
kvikio ${PKG_VERSION}
GLOBAL_TARGETS kvikio::kvikio
BUILD_EXPORT_SET cuvs-static-exports
INSTALL_EXPORT_SET cuvs-static-exports
BUILD_EXPORT_SET cuvs-exports
INSTALL_EXPORT_SET cuvs-exports
CPM_ARGS
EXCLUDE_FROM_ALL TRUE
GIT_REPOSITORY https://github.com/${PKG_FORK}/kvikio.git
Expand Down
Loading