Spaces:
Runtime error
Runtime error
File size: 1,111 Bytes
be11144 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# For every public header, build a translation unit containing `#include <header>`
# to let the compiler try to figure out warnings in that header if it is not otherwise
# included in tests, and also to verify if the headers are modular enough.
# .inl files are not globbed for, because they are not supposed to be used as public
# entrypoints.
file(GLOB_RECURSE headers
RELATIVE "${CUB_SOURCE_DIR}/cub"
CONFIGURE_DEPENDS
cub/*.cuh
)
set(headertest_srcs)
foreach (header IN LISTS headers)
set(headertest_src "headers/${header}.cu")
configure_file("${CUB_SOURCE_DIR}/cmake/header_test.in" "${headertest_src}")
list(APPEND headertest_srcs "${headertest_src}")
endforeach()
foreach(cub_target IN LISTS CUB_TARGETS)
cub_get_target_property(config_prefix ${cub_target} PREFIX)
set(headertest_target ${config_prefix}.headers)
add_library(${headertest_target} OBJECT ${headertest_srcs})
target_link_libraries(${headertest_target} PUBLIC ${cub_target})
cub_clone_target_properties(${headertest_target} ${cub_target})
add_dependencies(${config_prefix}.all ${headertest_target})
endforeach()
|