Spaces:
Runtime error
Runtime error
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() | |