Warning, /acts/Traccc/extern/cccl/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # TRACCC library, part of the ACTS project (R&D line)
0002 #
0003 # (c) 2021-2024 CERN for the benefit of the ACTS project
0004 #
0005 # Mozilla Public License Version 2.0
0006
0007 # CMake include(s).
0008 cmake_minimum_required(VERSION 3.25)
0009 include(FetchContent)
0010
0011 # Tell the user what's happening.
0012 message(STATUS "Building CCCL as part of the TRACCC project")
0013
0014 # Declare where to get Thrust from.
0015 set(TRACCC_CCCL_SOURCE
0016 "URL;https://github.com/NVIDIA/cccl/archive/refs/tags/v2.7.0.tar.gz;URL_MD5;83e431ebcb0a5c055fbd927754bec951"
0017 CACHE STRING
0018 "Source for CCCL, when built as part of this project"
0019 )
0020 mark_as_advanced(TRACCC_CCCL_SOURCE)
0021 # Note that we must not use SYSTEM here. Otherwise nvcc would pick up Thrust
0022 # from its own installation, and not from the version that we are downloading.
0023 FetchContent_Declare(CCCL ${TRACCC_CCCL_SOURCE})
0024
0025 # There are a few things to configure here... May not all be necessary but
0026 # can't hurt.
0027 set(CCCL_ENABLE_INSTALL_RULES ON CACHE BOOL "Install CCCL as part of traccc.")
0028 set(THRUST_ENABLE_INSTALL_RULES
0029 ON
0030 CACHE BOOL
0031 "Install Thrust as part of traccc."
0032 )
0033 set(CUB_ENABLE_INSTALL_RULES ON CACHE BOOL "Install CUB as part of traccc.")
0034 set(libcudacxx_ENABLE_INSTALL_RULES
0035 ON
0036 CACHE BOOL
0037 "Install libcudacxx as part of traccc."
0038 )
0039 set(CCCL_ENABLE_LIBCUDACXX OFF CACHE BOOL "Disable libcudacxx")
0040 set(CCCL_ENABLE_CUB ON CACHE BOOL "Enable CUB")
0041 set(CCCL_ENABLE_THRUST ON CACHE BOOL "Enable Thrust")
0042 set(CCCL_ENABLE_TESTING OFF CACHE BOOL "Disable CCCL tests")
0043 set(CCCL_ENABLE_EXAMPLES OFF CACHE BOOL "Disable CCCL examples")
0044 set(CCCL_ENABLE_BENCHMARKS OFF CACHE BOOL "Disable CCCL benchmarks")
0045 set(THRUST_ENABLE_TESTING OFF CACHE BOOL "Disable Thrust tests")
0046 set(THRUST_ENABLE_EXAMPLES OFF CACHE BOOL "Disable Thrust examples")
0047 set(THRUST_ENABLE_HEADER_TESTING OFF CACHE BOOL "Disable Thrust header testing")
0048 set(CUB_ENABLE_TESTING OFF CACHE BOOL "Disable CUB tests")
0049 set(CUB_ENABLE_EXAMPLES OFF CACHE BOOL "Disable CUB examples")
0050 set(CUB_ENABLE_HEADER_TESTING OFF CACHE BOOL "Disable CUB header testing")
0051
0052 # Get it into the current directory.
0053 FetchContent_MakeAvailable(CCCL)