summaryrefslogtreecommitdiffstats
path: root/Tests
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2024-05-02 13:34:15 (GMT)
committerKitware Robot <kwrobot@kitware.com>2024-05-02 13:34:29 (GMT)
commit1d8848c4ce2e1b030f7d6129aa741d0db5a4b3cf (patch)
tree85c8e4261a793191f848cbae2e3cbc1de10e5de4 /Tests
parent8382fdd2e9b71ceec82a4893834e73b56ecd9aba (diff)
parentb07c637e42bb20410eebbfba693145b672451aaa (diff)
downloadCMake-1d8848c4ce2e1b030f7d6129aa741d0db5a4b3cf.zip
CMake-1d8848c4ce2e1b030f7d6129aa741d0db5a4b3cf.tar.gz
CMake-1d8848c4ce2e1b030f7d6129aa741d0db5a4b3cf.tar.bz2
Merge topic 'FindOpenMP-runtime-msvc'
b07c637e42 FindOpenMP: Add option to control OpenMP runtime with MSVC Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9475
Diffstat (limited to 'Tests')
-rw-r--r--Tests/FindOpenMP/Test/CMakeLists.txt13
1 files changed, 13 insertions, 0 deletions
diff --git a/Tests/FindOpenMP/Test/CMakeLists.txt b/Tests/FindOpenMP/Test/CMakeLists.txt
index ebdb6b8..7ead835 100644
--- a/Tests/FindOpenMP/Test/CMakeLists.txt
+++ b/Tests/FindOpenMP/Test/CMakeLists.txt
@@ -26,8 +26,21 @@ foreach(c C CXX Fortran)
endif()
endforeach()
+if(CMAKE_C_COMPILER_ID STREQUAL "MSVC"
+ AND CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 19.30
+ AND NOT CMAKE_C_COMPILER_ARCHITECTURE_ID STREQUAL "ARM64")
+ set(test_msvc_runtime 1)
+ set(OpenMP_RUNTIME_MSVC "llvm")
+endif()
+
find_package(OpenMP REQUIRED)
+if(test_msvc_runtime)
+ if(NOT OpenMP_C_FLAGS STREQUAL "-openmp:llvm")
+ message(FATAL_ERROR "OpenMP_RUNTIME_MSVC='${OpenMP_RUNTIME_MSVC}' not honored: '${OpenMP_C_FLAGS}'")
+ endif()
+endif()
+
foreach(c C CXX Fortran)
if(NOT "${OpenMP_TEST_${c}}")
continue()