blob: 50dc98a8121c4e655e23f97ef2afb85f3799f025 [file] [log] [blame]
Lang Hamesd76e0672015-08-27 20:31:44 +00001if(LLVM_BUILD_EXAMPLES)
2 set(ENABLE_EXAMPLES 1)
3endif()
4
Chandler Carruth3511dd32012-06-28 06:36:24 +00005configure_lit_site_cfg(
Daniel Dunbar21079ca2011-11-04 23:04:05 +00006 ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
7 ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
Chandler Carruth3511dd32012-06-28 06:36:24 +00008 )
9configure_lit_site_cfg(
Daniel Dunbar21079ca2011-11-04 23:04:05 +000010 ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.site.cfg.in
11 ${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
Chandler Carruth3511dd32012-06-28 06:36:24 +000012 )
Daniel Dunbar21079ca2011-11-04 23:04:05 +000013
NAKAMURA Takumi02a0ac42012-10-10 13:33:00 +000014# 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
Andrew Kaylor93fe3dc2012-11-21 20:38:26 +000019# Set the depends list as a variable so that it can grow conditionally.
Alp Toker5e9ed7c2013-10-28 23:37:49 +000020# NOTE: Sync the substitutions in test/lit.cfg when adding to this list.
NAKAMURA Takumib39be042013-07-08 08:44:30 +000021set(LLVM_TEST_DEPENDS
NAKAMURA Takumi303f0f52013-12-03 23:22:25 +000022 llvm-config
NAKAMURA Takumib39be042013-07-08 08:44:30 +000023 UnitTests
24 BugpointPasses
25 LLVMHello
NAKAMURA Takumiafd8d162014-03-04 16:13:30 +000026 bugpoint
NAKAMURA Takumib39be042013-07-08 08:44:30 +000027 llc
28 lli
Andrew Kaylorc4832372013-10-02 22:27:23 +000029 lli-child-target
NAKAMURA Takumib39be042013-07-08 08:44:30 +000030 llvm-ar
31 llvm-as
32 llvm-bcanalyzer
NAKAMURA Takumi3f1f0c92013-10-23 17:57:04 +000033 llvm-c-test
NAKAMURA Takumifed0ccf2013-07-08 08:44:36 +000034 llvm-cov
David Majnemerf45bbd02015-03-15 01:30:58 +000035 llvm-cxxdump
NAKAMURA Takumib39be042013-07-08 08:44:30 +000036 llvm-diff
37 llvm-dis
Frederic Riss231f7142014-12-12 17:31:24 +000038 llvm-dsymutil
NAKAMURA Takumib39be042013-07-08 08:44:30 +000039 llvm-dwarfdump
Peter Collingbourne244ecf52014-10-23 02:33:23 +000040 llvm-extract
Peter Collingbournebc051632015-06-09 21:50:22 +000041 llvm-lib
NAKAMURA Takumie9b89b42012-11-01 02:13:50 +000042 llvm-link
Andrew Kaylorc4832372013-10-02 22:27:23 +000043 llvm-lto
NAKAMURA Takumie9b89b42012-11-01 02:13:50 +000044 llvm-mc
45 llvm-mcmarkup
46 llvm-nm
47 llvm-objdump
NAKAMURA Takumi59e569b2015-10-15 13:22:38 +000048 llvm-pdbdump
Duncan P. N. Exon Smith846a6272014-02-17 23:22:49 +000049 llvm-profdata
NAKAMURA Takumi1486e3a2014-12-04 01:34:11 +000050 llvm-ranlib
NAKAMURA Takumie9b89b42012-11-01 02:13:50 +000051 llvm-readobj
NAKAMURA Takumi8653bcf2013-01-25 23:24:07 +000052 llvm-rtdyld
NAKAMURA Takumi0e86e692014-12-04 01:27:53 +000053 llvm-size
Peter Collingbourne1dc6a8d2015-08-21 02:48:20 +000054 llvm-split
Evgeniy Stepanov3aa627b2013-03-13 09:35:18 +000055 llvm-symbolizer
NAKAMURA Takumi3189afc2014-01-18 19:01:08 +000056 llvm-tblgen
NAKAMURA Takumib39be042013-07-08 08:44:30 +000057 opt
NAKAMURA Takumib39be042013-07-08 08:44:30 +000058 FileCheck
59 count
60 not
NAKAMURA Takumi723b4492015-05-07 22:24:58 +000061 yaml-bench
NAKAMURA Takumib39be042013-07-08 08:44:30 +000062 yaml2obj
63 obj2yaml
Duncan P. N. Exon Smitha12e0232014-07-30 17:11:27 +000064 verify-uselistorder
NAKAMURA Takumib39be042013-07-08 08:44:30 +000065 )
Andrew Kaylor93fe3dc2012-11-21 20:38:26 +000066
67# If Intel JIT events are supported, depend on a tool that tests the listener.
68if( LLVM_USE_INTEL_JITEVENTS )
69 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-jitlistener)
70endif( LLVM_USE_INTEL_JITEVENTS )
71
Peter Collingbourned0ec5ab2014-09-10 22:20:49 +000072if(TARGET LLVMgold)
73 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LLVMgold)
74endif()
75
Peter Collingbournedfc98c22014-10-23 19:51:40 +000076if(TARGET llvm-go)
77 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-go)
78endif()
79
Peter Collingbournebbdc26b2015-03-19 23:55:38 +000080if(APPLE)
81 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LTO)
82endif()
83
Peter Zotovb20073c2014-12-01 19:50:23 +000084if(TARGET ocaml_llvm)
85 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS}
86 ocaml_llvm
87 ocaml_llvm_all_backends
88 ocaml_llvm_analysis
89 ocaml_llvm_bitreader
90 ocaml_llvm_bitwriter
91 ocaml_llvm_executionengine
92 ocaml_llvm_irreader
93 ocaml_llvm_linker
94 ocaml_llvm_target
95 ocaml_llvm_ipo
96 ocaml_llvm_passmgr_builder
97 ocaml_llvm_scalar_opts
Peter Zotov0d040f62014-12-01 19:50:39 +000098 ocaml_llvm_transform_utils
Peter Zotovb20073c2014-12-01 19:50:23 +000099 ocaml_llvm_vectorize
100 )
101endif()
102
Lang Hamesd76e0672015-08-27 20:31:44 +0000103if(LLVM_BUILD_EXAMPLES)
104 list(APPEND LLVM_TEST_DEPENDS
105 Kaleidoscope-Ch3
106 Kaleidoscope-Ch4
107 Kaleidoscope-Ch5
108 Kaleidoscope-Ch6
109 Kaleidoscope-Ch7
110 )
111endif()
112
Andrew Kaylor93fe3dc2012-11-21 20:38:26 +0000113add_lit_testsuite(check-llvm "Running the LLVM regression tests"
114 ${CMAKE_CURRENT_BINARY_DIR}
115 PARAMS llvm_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
116 llvm_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
117 DEPENDS ${LLVM_TEST_DEPENDS}
Chandler Carruthaa324c92012-06-27 09:44:16 +0000118 )
Chandler Carruth69ce6652012-06-30 10:14:14 +0000119set_target_properties(check-llvm PROPERTIES FOLDER "Tests")
Chandler Carruthaa324c92012-06-27 09:44:16 +0000120
Justin Bogner35b4b1a2015-03-25 08:07:47 +0000121add_lit_testsuites(LLVM ${CMAKE_CURRENT_SOURCE_DIR}
122 PARAMS llvm_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
123 llvm_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
124 DEPENDS ${LLVM_TEST_DEPENDS}
125 )
126
Chandler Carruthaa324c92012-06-27 09:44:16 +0000127# Setup a legacy alias for 'check-llvm'. This will likely change to be an
128# alias for 'check-all' at some point in the future.
Chandler Carrutha7f1f352012-07-02 21:45:22 +0000129add_custom_target(check)
130add_dependencies(check check-llvm)
Chandler Carruth69ce6652012-06-30 10:14:14 +0000131set_target_properties(check PROPERTIES FOLDER "Tests")