summaryrefslogtreecommitdiffstats
path: root/openmp/tools/archer/tests/CMakeLists.txt
blob: baf832a89562630fa19b795b213570c0f77c73d6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# CMakeLists.txt file for unit testing Archer runtime library.
include(CheckFunctionExists)
include(CheckLibraryExists)

# When using libgcc, -latomic may be needed for atomics
# (but when using compiler-rt, the atomics will be built-in)
# Note: we can not check for __atomic_load because clang treats it
# as special built-in and that breaks CMake checks
check_function_exists(__atomic_load_1 LIBARCHER_HAVE_BUILTIN_ATOMIC)
if(NOT LIBARCHER_HAVE_BUILTIN_ATOMIC)
  check_library_exists(atomic __atomic_load_1 "" LIBARCHER_HAVE_LIBATOMIC)
else()
  # not needed
  set(LIBARCHER_HAVE_LIBATOMIC 0)
endif()

set(LIBARCHER_TEST_PATH ${CMAKE_CURRENT_SOURCE_DIR})

set(LIBARCHER_TEST_FLAGS "" CACHE STRING
  "Extra compiler flags to send to the test compiler.")

macro(pythonize_bool var)
  if (${var})
    set(${var} True)
  else()
    set(${var} False)
  endif()
endmacro()

pythonize_bool(LIBARCHER_HAVE_LIBATOMIC)
pythonize_bool(OPENMP_TEST_COMPILER_HAS_TSAN_FLAGS)

add_openmp_testsuite(check-libarcher "Running libarcher tests" ${CMAKE_CURRENT_BINARY_DIR} DEPENDS archer omp)

# Configure the lit.site.cfg.in file
set(AUTO_GEN_COMMENT "## Autogenerated by libarcher configuration.\n# Do not edit!")
configure_file(lit.site.cfg.in lit.site.cfg @ONLY)
OpenPOWER on IntegriCloud