LIVE / thrust /testing /cuda /CMakeLists.txt
Xu Ma
update
1c3c0d9
raw
history blame
1.01 kB
file(GLOB test_srcs
RELATIVE "${CMAKE_CURRENT_LIST_DIR}}"
CONFIGURE_DEPENDS
*.cu *.cpp
)
# These tests always build with RDC, so make sure that the sm_XX flags are
# compatible. See note in ThrustCudaConfig.cmake.
set(CMAKE_CUDA_FLAGS "${THRUST_CUDA_FLAGS_BASE} ${THRUST_CUDA_FLAGS_RDC}")
foreach(thrust_target IN LISTS THRUST_TARGETS)
thrust_get_target_property(config_device ${thrust_target} DEVICE)
if (NOT config_device STREQUAL "CUDA")
continue()
endif()
foreach(test_src IN LISTS test_srcs)
get_filename_component(test_name "${test_src}" NAME_WLE)
string(PREPEND test_name "cuda.")
thrust_add_test(test_target ${test_name} "${test_src}" ${thrust_target})
# All in testing/cuda will test device-side launch (aka calling parallel
# algorithms from device code), which requires the CUDA device-side runtime,
# which requires RDC, so these always need to be built with RDC.
thrust_enable_rdc_for_cuda_target(${test_target})
endforeach()
endforeach()