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