Skip to content

Commit 397908e

Browse files
committed
Use ompstub by default on Windows on ARM
OpenMP is not supported on Windows on ARM yet. Therefore this PR modified Cmakelist to use ompstub on Windows on ARM for linking by default.
1 parent f434474 commit 397908e

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

runtime/flangrti/CMakeLists.txt

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -71,21 +71,26 @@ add_flang_library(flangrti_shared
7171
)
7272

7373
# Resolve symbols against libm
74-
target_link_libraries(flangrti_shared m)
74+
target_link_libraries(flangrti_shared PRIVATE m)
7575

7676
# Resolve symbols against libpthread
7777
find_package(Threads REQUIRED)
7878
if (CMAKE_THREAD_LIBS_INIT)
79-
target_link_libraries(flangrti_shared "${CMAKE_THREAD_LIBS_INIT}")
79+
target_link_libraries(flangrti_shared PRIVATE "${CMAKE_THREAD_LIBS_INIT}")
8080
endif()
8181

8282
# Import OpenMP
8383
if (NOT DEFINED LIBOMP_EXPORT_DIR)
84-
find_library(
85-
FLANG_LIBOMP
86-
libomp.so
87-
HINTS ${CMAKE_BINARY_DIR}/lib)
88-
target_link_libraries(flangrti_shared ${FLANG_LIBOMP})
84+
# OpenMP is not supported on Windows on ARM yet, use ompstub for linking by default
85+
if(NOT (MSVC AND ${TARGET_ARCHITECTURE} STREQUAL "aarch64"))
86+
find_library(
87+
FLANG_LIBOMP
88+
NAMES omp libomp
89+
HINTS ${CMAKE_BINARY_DIR}/lib)
90+
target_link_libraries(flangrti_shared PRIVATE ${FLANG_LIBOMP})
91+
else()
92+
target_link_libraries(flangrti_shared PRIVATE ompstub_shared)
93+
endif()
8994
endif()
9095

9196
find_library(

0 commit comments

Comments
 (0)