1if(LLVM_BUILD_EXAMPLES) 2 set(ENABLE_EXAMPLES 1) 3endif() 4 5configure_lit_site_cfg( 6 ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in 7 ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg 8 ) 9configure_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. 15if(NOT LLVM_BUILD_TOOLS) 16 set(EXCLUDE_FROM_ALL ON) 17endif() 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. 21set(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. 70if( LLVM_USE_INTEL_JITEVENTS ) 71 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-jitlistener) 72endif( LLVM_USE_INTEL_JITEVENTS ) 73 74if(TARGET LLVMgold) 75 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LLVMgold) 76endif() 77 78if(TARGET llvm-go) 79 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-go) 80endif() 81 82if(APPLE) 83 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LTO) 84endif() 85 86if(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 ) 103endif() 104 105if(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 ) 113endif() 114 115add_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 ) 121set_target_properties(check-llvm PROPERTIES FOLDER "Tests") 122 123add_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. 131add_custom_target(check) 132add_dependencies(check check-llvm) 133set_target_properties(check PROPERTIES FOLDER "Tests") 134