@@ -18,6 +18,7 @@ include(CheckIncludeFiles)
1818include (CheckSymbolExists)
1919include (LibompCheckFortranFlag)
2020include (LLVMCheckCompilerLinkerFlag)
21+ include (OffloadOpenmpCommon)
2122
2223# Check for versioned symbols
2324function (libomp_check_version_symbols retval)
@@ -132,7 +133,6 @@ if(WIN32)
132133elseif (NOT APPLE )
133134 llvm_check_compiler_linker_flag(C -Wl,-x LIBOMP_HAVE_X_FLAG)
134135 llvm_check_compiler_linker_flag(C -Wl,--as-needed LIBOMP_HAVE_AS_NEEDED_FLAG)
135- llvm_check_compiler_linker_flag(C "-Wl,--version-script=${LIBOMP_SRC_DIR} /exports_test_so.txt" LIBOMP_HAVE_VERSION_SCRIPT_FLAG)
136136 llvm_check_compiler_linker_flag(C -static -libgcc LIBOMP_HAVE_STATIC_LIBGCC_FLAG)
137137 llvm_check_compiler_linker_flag(C -Wl,-z,noexecstack LIBOMP_HAVE_Z_NOEXECSTACK_FLAG)
138138endif ()
@@ -302,48 +302,6 @@ if(${LIBOMP_STATS})
302302 endif ()
303303endif ()
304304
305- # Check if OMPT support is available
306- # Currently, __builtin_frame_address() is required for OMPT
307- # Weak attribute is required for Unices (except Darwin), LIBPSAPI is used for Windows
308- check_c_source_compiles("int main(int argc, char** argv) {
309- void* p = __builtin_frame_address(0);
310- return 0;}" LIBOMP_HAVE___BUILTIN_FRAME_ADDRESS)
311- check_c_source_compiles("__attribute__ ((weak)) int foo(int a) { return a*a; }
312- int main(int argc, char** argv) {
313- return foo(argc);}" LIBOMP_HAVE_WEAK_ATTRIBUTE)
314- set (CMAKE_REQUIRED_LIBRARIES psapi)
315- check_c_source_compiles("#include <windows.h>
316- #include <psapi.h>
317- int main(int artc, char** argv) {
318- return EnumProcessModules(NULL, NULL, 0, NULL);
319- }" LIBOMP_HAVE_PSAPI)
320- set (CMAKE_REQUIRED_LIBRARIES)
321- if (NOT LIBOMP_HAVE___BUILTIN_FRAME_ADDRESS)
322- set (LIBOMP_HAVE_OMPT_SUPPORT FALSE )
323- else ()
324- if ( # hardware architecture supported?
325- ((LIBOMP_ARCH STREQUAL x86_64) OR
326- (LIBOMP_ARCH STREQUAL i386) OR
327- # (LIBOMP_ARCH STREQUAL arm) OR
328- (LIBOMP_ARCH STREQUAL aarch64) OR
329- (LIBOMP_ARCH STREQUAL aarch64_32) OR
330- (LIBOMP_ARCH STREQUAL aarch64_a64fx) OR
331- (LIBOMP_ARCH STREQUAL ppc64le) OR
332- (LIBOMP_ARCH STREQUAL ppc64) OR
333- (LIBOMP_ARCH STREQUAL riscv64) OR
334- (LIBOMP_ARCH STREQUAL loongarch64) OR
335- (LIBOMP_ARCH STREQUAL s390x))
336- AND # OS supported?
337- ((WIN32 AND LIBOMP_HAVE_PSAPI) OR APPLE OR
338- (NOT (WIN32 OR ${CMAKE_SYSTEM_NAME} MATCHES "AIX" ) AND LIBOMP_HAVE_WEAK_ATTRIBUTE)))
339- set (LIBOMP_HAVE_OMPT_SUPPORT TRUE )
340- else ()
341- set (LIBOMP_HAVE_OMPT_SUPPORT FALSE )
342- endif ()
343- endif ()
344-
345- set (LIBOMP_HAVE_OMPT_SUPPORT ${LIBOMP_HAVE_OMPT_SUPPORT} PARENT_SCOPE)
346-
347305# Check if HWLOC support is available
348306if (${LIBOMP_USE_HWLOC} )
349307 find_path (LIBOMP_HWLOC_INCLUDE_DIR NAMES hwloc.h HINTS ${LIBOMP_HWLOC_INSTALL_DIR} PATH_SUFFIXES include )
0 commit comments