From 2ba5d7639d226bb3ce6ba5b3ce82b5c16c9d7adc Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Tue, 22 Jun 2021 16:38:43 -0400 Subject: [PATCH] Use the 21.08 branch of rapids-cmake as rmm requires it (#278) Now that `rmm` uses `rapids-cmake` we need to update to the `21.08` branch to get the new `rapids_cmake_write_version_file` function Authors: - Robert Maynard (https://github.com/robertmaynard) Approvers: - Dante Gama Dessavre (https://github.com/dantegd) URL: https://github.com/rapidsai/raft/pull/278 --- cpp/CMakeLists.txt | 3 ++- cpp/cmake/thirdparty/get_thrust.cmake | 30 +++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 cpp/cmake/thirdparty/get_thrust.cmake diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index e8d9233fcb..f0e9a9a54e 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -19,7 +19,7 @@ include(FetchContent) FetchContent_Declare( rapids-cmake GIT_REPOSITORY https://github.com/rapidsai/rapids-cmake.git - GIT_TAG origin/branch-21.06 + GIT_TAG origin/branch-21.08 ) FetchContent_MakeAvailable(rapids-cmake) include(rapids-cmake) @@ -104,6 +104,7 @@ endif(NOT DISABLE_OPENMP OR NOT ${DISABLE_OPENMP}) # add third party dependencies using CPM rapids_cpm_init() +include(cmake/thirdparty/get_thrust.cmake) include(cmake/thirdparty/get_rmm.cmake) include(cmake/thirdparty/get_cuco.cmake) diff --git a/cpp/cmake/thirdparty/get_thrust.cmake b/cpp/cmake/thirdparty/get_thrust.cmake new file mode 100644 index 0000000000..6dd9a91870 --- /dev/null +++ b/cpp/cmake/thirdparty/get_thrust.cmake @@ -0,0 +1,30 @@ +# ============================================================================= +# Copyright (c) 2021, NVIDIA CORPORATION. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except +# in compliance with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software distributed under the License +# is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express +# or implied. See the License for the specific language governing permissions and limitations under +# the License. +# ============================================================================= + +# Use CPM to find or clone thrust +function(find_and_configure_thrust VERSION) + + rapids_cpm_find( + Thrust ${VERSION} + BUILD_EXPORT_SET raft-exports + INSTALL_EXPORT_SET raft-exports + CPM_ARGS + GIT_REPOSITORY https://github.com/NVIDIA/thrust.git + GIT_TAG ${VERSION} + GIT_SHALLOW TRUE + OPTIONS "THRUST_INSTALL OFF") + +endfunction() + +find_and_configure_thrust(1.12.0)