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-lto 47 llvm-mc 48 llvm-mcmarkup 49 llvm-nm 50 llvm-objdump 51 llvm-pdbdump 52 llvm-profdata 53 llvm-ranlib 54 llvm-readobj 55 llvm-rtdyld 56 llvm-size 57 llvm-split 58 llvm-symbolizer 59 llvm-tblgen 60 not 61 obj2yaml 62 opt 63 sancov 64 verify-uselistorder 65 yaml-bench 66 yaml2obj 67 ) 68 69 # If Intel JIT events are supported, depend on a tool that tests the listener. 70 if( LLVM_USE_INTEL_JITEVENTS ) 71 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-jitlistener) 72 endif( LLVM_USE_INTEL_JITEVENTS ) 73 74 if(TARGET LLVMgold) 75 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LLVMgold) 76 endif() 77 78 if(TARGET llvm-go) 79 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-go) 80 endif() 81 82 if(APPLE) 83 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LTO) 84 endif() 85 86 if(TARGET ocaml_llvm) 87 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} 88 ocaml_llvm 89 ocaml_llvm_all_backends 90 ocaml_llvm_analysis 91 ocaml_llvm_bitreader 92 ocaml_llvm_bitwriter 93 ocaml_llvm_executionengine 94 ocaml_llvm_irreader 95 ocaml_llvm_linker 96 ocaml_llvm_target 97 ocaml_llvm_ipo 98 ocaml_llvm_passmgr_builder 99 ocaml_llvm_scalar_opts 100 ocaml_llvm_transform_utils 101 ocaml_llvm_vectorize 102 ) 103 endif() 104 105 if(LLVM_BUILD_EXAMPLES) 106 list(APPEND LLVM_TEST_DEPENDS 107 Kaleidoscope-Ch3 108 Kaleidoscope-Ch4 109 Kaleidoscope-Ch5 110 Kaleidoscope-Ch6 111 Kaleidoscope-Ch7 112 ) 113 endif() 114 115 add_lit_testsuite(check-llvm "Running the LLVM regression tests" 116 ${CMAKE_CURRENT_BINARY_DIR} 117 PARAMS llvm_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg 118 llvm_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg 119 DEPENDS ${LLVM_TEST_DEPENDS} 120 ) 121 set_target_properties(check-llvm PROPERTIES FOLDER "Tests") 122 123 add_lit_testsuites(LLVM ${CMAKE_CURRENT_SOURCE_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 129 # Setup a legacy alias for 'check-llvm'. This will likely change to be an 130 # alias for 'check-all' at some point in the future. 131 add_custom_target(check) 132 add_dependencies(check check-llvm) 133 set_target_properties(check PROPERTIES FOLDER "Tests") 134