• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Test runner infrastructure for Flang. This configures the Flang test trees
2# for use by Lit, and delegates to LLVM's lit test handlers.
3
4llvm_canonicalize_cmake_booleans(
5  FLANG_STANDALONE_BUILD
6)
7
8set(FLANG_INTRINSIC_MODULES_DIR ${FLANG_BINARY_DIR}/include/flang)
9
10set(FLANG_TOOLS_DIR ${FLANG_BINARY_DIR}/bin)
11
12configure_lit_site_cfg(
13  ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.py.in
14  ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg.py
15  MAIN_CONFIG
16  ${CMAKE_CURRENT_SOURCE_DIR}/lit.cfg.py
17)
18
19configure_lit_site_cfg(
20  ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.site.cfg.py.in
21  ${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg.py
22  MAIN_CONFIG
23  ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.cfg.py
24)
25
26configure_lit_site_cfg(
27  ${CMAKE_CURRENT_SOURCE_DIR}/NonGtestUnit/lit.site.cfg.py.in
28  ${CMAKE_CURRENT_BINARY_DIR}/NonGtestUnit/lit.site.cfg.py
29  MAIN_CONFIG
30  ${CMAKE_CURRENT_SOURCE_DIR}/NonGtestUnit/lit.cfg.py
31)
32
33set(FLANG_TEST_PARAMS
34  flang_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg.py)
35
36set(FLANG_TEST_DEPENDS
37  f18 FileCheck count not module_files
38)
39
40if (LINK_WITH_FIR)
41  list(APPEND FLANG_TEST_DEPENDS tco)
42endif()
43
44if (FLANG_BUILD_NEW_DRIVER)
45  list(APPEND FLANG_TEST_DEPENDS flang-new)
46endif()
47
48if (FLANG_INCLUDE_TESTS)
49  if (FLANG_GTEST_AVAIL)
50    list(APPEND FLANG_TEST_DEPENDS FlangUnitTests)
51  endif()
52endif()
53
54add_custom_target(flang-test-depends DEPENDS ${FLANG_TEST_DEPENDS})
55
56add_lit_testsuite(check-flang "Running the Flang regression tests"
57  ${CMAKE_CURRENT_BINARY_DIR}
58  PARAMS ${FLANG_TEST_PARAMS}
59  DEPENDS ${FLANG_TEST_DEPENDS}
60)
61set_target_properties(check-flang PROPERTIES FOLDER "Tests")
62
63# In case of standalone builds.
64if (FLANG_STANDALONE_BUILD)
65  add_lit_testsuites(FLANG ${CMAKE_CURRENT_BINARY_DIR}
66    PARAMS ${FLANG_TEST_PARAMS}
67    DEPENDS ${FLANG_TEST_DEPENDS})
68else()
69  add_lit_testsuites(FLANG ${CMAKE_CURRENT_SOURCE_DIR}
70    PARAMS ${FLANG_TEST_PARAMS}
71    DEPENDS ${FLANG_TEST_DEPENDS})
72endif()
73