Skip to content

Commit

Permalink
Fix thrust package to work with newer FindOpenMP.cmake. (#2421)
Browse files Browse the repository at this point in the history
The FindOpenMP module shipped with CMake started
(unnecessarily...) including the SHELL: prefix on it's -fopenmp flag.
  • Loading branch information
alliepiper committed Sep 18, 2024
1 parent e3c2e2b commit 8ced877
Showing 1 changed file with 11 additions and 5 deletions.
16 changes: 11 additions & 5 deletions thrust/thrust/cmake/thrust-config.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -618,11 +618,17 @@ endmacro()
# Wrap the OpenMP flags for CUDA targets
function(thrust_fixup_omp_target omp_target)
get_target_property(opts ${omp_target} INTERFACE_COMPILE_OPTIONS)
if (opts MATCHES "\\$<\\$<COMPILE_LANGUAGE:CXX>:([^>]*)>")
target_compile_options(${omp_target} INTERFACE
$<$<COMPILE_LANG_AND_ID:CUDA,NVIDIA>:-Xcompiler=${CMAKE_MATCH_1}>
)
endif()
foreach (opt IN LISTS opts)
if (opts MATCHES "\\$<\\$<COMPILE_LANGUAGE:CXX>:SHELL:([^>]*)>")
target_compile_options(${omp_target} INTERFACE
$<$<COMPILE_LANG_AND_ID:CUDA,NVIDIA>:SHELL:-Xcompiler=${CMAKE_MATCH_1}>
)
elseif (opts MATCHES "\\$<\\$<COMPILE_LANGUAGE:CXX>:([^>]*)>")
target_compile_options(${omp_target} INTERFACE
$<$<COMPILE_LANG_AND_ID:CUDA,NVIDIA>:-Xcompiler=${CMAKE_MATCH_1}>
)
endif()
endforeach()
endfunction()

# This must be a macro instead of a function to ensure that backends passed to
Expand Down

0 comments on commit 8ced877

Please sign in to comment.