1 if(LLVM_BUILD_EXAMPLES) 2 set(ENABLE_EXAMPLES 1) 3 endif() 4 5 configure_lit_site_cfg( 6 ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in 7 ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg 8 ) 9 configure_lit_site_cfg( 10 ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.site.cfg.in 11 ${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg 12 ) 13 14 # Don't include check-llvm into check-all without LLVM_BUILD_TOOLS. 15 if(NOT LLVM_BUILD_TOOLS) 16 set(EXCLUDE_FROM_ALL ON) 17 endif() 18 19 # Set the depends list as a variable so that it can grow conditionally. 20 # NOTE: Sync the substitutions in test/lit.cfg when adding to this list. 21 set(LLVM_TEST_DEPENDS 22 BugpointPasses 23 FileCheck 24 LLVMHello 25 UnitTests 26 bugpoint 27 count 28 llc 29 lli 30 lli-child-target 31 llvm-ar 32 llvm-as 33 llvm-bcanalyzer 34 llvm-c-test 35 llvm-config 36 llvm-cov 37 llvm-cxxdump 38 llvm-diff 39 llvm-dis 40 llvm-dsymutil 41 llvm-dwarfdump 42 llvm-dwp 43 llvm-extract 44 llvm-lib 45 llvm-link 46 llvm-mc 47 llvm-mcmarkup 48 llvm-nm 49 llvm-objdump 50 llvm-pdbdump 51 llvm-profdata 52 llvm-ranlib 53 llvm-readobj 54 llvm-rtdyld 55 llvm-size 56 llvm-split 57 llvm-symbolizer 58 llvm-tblgen 59 not 60 obj2yaml 61 opt 62 sancov 63 sanstats 64 verify-uselistorder 65 yaml-bench 66 yaml2obj 67 ) 68 69 if(TARGET llvm-lto) 70 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-lto) 71 endif() 72 73 # If Intel JIT events are supported, depend on a tool that tests the listener. 74 if( LLVM_USE_INTEL_JITEVENTS ) 75 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-jitlistener) 76 endif( LLVM_USE_INTEL_JITEVENTS ) 77 78 if(TARGET LLVMgold) 79 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LLVMgold) 80 endif() 81 82 if(TARGET llvm-go) 83 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-go) 84 endif() 85 86 if(TARGET LTO) 87 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LTO) 88 endif() 89 90 if(TARGET ocaml_llvm) 91 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} 92 ocaml_llvm 93 ocaml_llvm_all_backends 94 ocaml_llvm_analysis 95 ocaml_llvm_bitreader 96 ocaml_llvm_bitwriter 97 ocaml_llvm_executionengine 98 ocaml_llvm_irreader 99 ocaml_llvm_linker 100 ocaml_llvm_target 101 ocaml_llvm_ipo 102 ocaml_llvm_passmgr_builder 103 ocaml_llvm_scalar_opts 104 ocaml_llvm_transform_utils 105 ocaml_llvm_vectorize 106 ) 107 endif() 108 109 if(LLVM_BUILD_EXAMPLES) 110 list(APPEND LLVM_TEST_DEPENDS 111 Kaleidoscope-Ch3 112 Kaleidoscope-Ch4 113 Kaleidoscope-Ch5 114 Kaleidoscope-Ch6 115 Kaleidoscope-Ch7 116 ) 117 endif() 118 119 add_custom_target(llvm-test-depends DEPENDS ${LLVM_TEST_DEPENDS}) 120 set_target_properties(llvm-test-depends PROPERTIES FOLDER "Tests") 121 122 add_lit_testsuite(check-llvm "Running the LLVM regression tests" 123 ${CMAKE_CURRENT_BINARY_DIR} 124 PARAMS llvm_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg 125 llvm_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg 126 DEPENDS ${LLVM_TEST_DEPENDS} 127 ) 128 set_target_properties(check-llvm PROPERTIES FOLDER "Tests") 129 130 add_lit_testsuites(LLVM ${CMAKE_CURRENT_SOURCE_DIR} 131 PARAMS llvm_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg 132 llvm_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg 133 DEPENDS ${LLVM_TEST_DEPENDS} 134 ) 135 136 # Setup a legacy alias for 'check-llvm'. This will likely change to be an 137 # alias for 'check-all' at some point in the future. 138 add_custom_target(check) 139 add_dependencies(check check-llvm) 140 set_target_properties(check PROPERTIES FOLDER "Tests") 141