Find{Threads,MPI}: Add support for CUDA with Clang
Currently CMake passes `-Xcompiler -pthread` flags to CUDA compilers irrespective of the actual CUDA compiler ID. This makes sure the additional `-Xcompiler` flag is only used with nvcc.
This commit is contained in:
parent
a354b7f21e
commit
80d37167fe
@ -1154,7 +1154,7 @@ macro(_MPI_create_imported_target LANG)
|
||||
endif()
|
||||
|
||||
# When this is consumed for compiling CUDA, use '-Xcompiler' to wrap '-pthread'.
|
||||
string(REPLACE "-pthread" "$<$<COMPILE_LANGUAGE:CUDA>:SHELL:-Xcompiler >-pthread"
|
||||
string(REPLACE "-pthread" "$<$<COMPILE_LANG_AND_ID:CUDA,NVIDIA>:SHELL:-Xcompiler >-pthread"
|
||||
_MPI_${LANG}_COMPILE_OPTIONS "${MPI_${LANG}_COMPILE_OPTIONS}")
|
||||
set_property(TARGET MPI::MPI_${LANG} PROPERTY INTERFACE_COMPILE_OPTIONS "${_MPI_${LANG}_COMPILE_OPTIONS}")
|
||||
unset(_MPI_${LANG}_COMPILE_OPTIONS)
|
||||
|
@ -238,8 +238,8 @@ if(THREADS_FOUND AND NOT TARGET Threads::Threads)
|
||||
|
||||
if(THREADS_HAVE_PTHREAD_ARG)
|
||||
set_property(TARGET Threads::Threads
|
||||
PROPERTY INTERFACE_COMPILE_OPTIONS "$<$<COMPILE_LANGUAGE:CUDA>:SHELL:-Xcompiler -pthread>"
|
||||
"$<$<NOT:$<COMPILE_LANGUAGE:CUDA>>:-pthread>")
|
||||
PROPERTY INTERFACE_COMPILE_OPTIONS "$<$<COMPILE_LANG_AND_ID:CUDA,NVIDIA>:SHELL:-Xcompiler -pthread>"
|
||||
"$<$<NOT:$<COMPILE_LANG_AND_ID:CUDA,NVIDIA>>:-pthread>")
|
||||
endif()
|
||||
|
||||
if(CMAKE_THREAD_LIBS_INIT)
|
||||
|
Loading…
Reference in New Issue
Block a user