blob: cf26abfe1c3be2a990c3bf38d43bb36bfd8d7e54 [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 Takumib39be042013-07-08 08:44:30 +000022 BugpointPasses
Mike Aizatsky14a06ac2015-11-12 19:34:21 +000023 FileCheck
NAKAMURA Takumib39be042013-07-08 08:44:30 +000024 LLVMHello
Mike Aizatsky14a06ac2015-11-12 19:34:21 +000025 UnitTests
NAKAMURA Takumiafd8d162014-03-04 16:13:30 +000026 bugpoint
Mike Aizatsky14a06ac2015-11-12 19:34:21 +000027 count
NAKAMURA Takumib39be042013-07-08 08:44:30 +000028 llc
29 lli
Andrew Kaylorc4832372013-10-02 22:27:23 +000030 lli-child-target
NAKAMURA Takumib39be042013-07-08 08:44:30 +000031 llvm-ar
32 llvm-as
33 llvm-bcanalyzer
NAKAMURA Takumi3f1f0c92013-10-23 17:57:04 +000034 llvm-c-test
Rafael Espindolab940b662016-09-06 19:16:48 +000035 llvm-cxxfilt
Mike Aizatsky14a06ac2015-11-12 19:34:21 +000036 llvm-config
NAKAMURA Takumifed0ccf2013-07-08 08:44:36 +000037 llvm-cov
David Majnemerf45bbd02015-03-15 01:30:58 +000038 llvm-cxxdump
NAKAMURA Takumib39be042013-07-08 08:44:30 +000039 llvm-diff
40 llvm-dis
Frederic Riss231f7142014-12-12 17:31:24 +000041 llvm-dsymutil
NAKAMURA Takumib39be042013-07-08 08:44:30 +000042 llvm-dwarfdump
David Blaikie32aa0492015-12-01 00:57:05 +000043 llvm-dwp
Peter Collingbourne244ecf52014-10-23 02:33:23 +000044 llvm-extract
Peter Collingbournebc051632015-06-09 21:50:22 +000045 llvm-lib
NAKAMURA Takumie9b89b42012-11-01 02:13:50 +000046 llvm-link
Teresa Johnson9ba95f92016-08-11 14:58:12 +000047 llvm-lto2
NAKAMURA Takumie9b89b42012-11-01 02:13:50 +000048 llvm-mc
49 llvm-mcmarkup
50 llvm-nm
51 llvm-objdump
Hal Finkel52031b72016-10-05 22:10:35 +000052 llvm-opt-report
NAKAMURA Takumi59e569b2015-10-15 13:22:38 +000053 llvm-pdbdump
Duncan P. N. Exon Smith846a6272014-02-17 23:22:49 +000054 llvm-profdata
NAKAMURA Takumi1486e3a2014-12-04 01:34:11 +000055 llvm-ranlib
NAKAMURA Takumie9b89b42012-11-01 02:13:50 +000056 llvm-readobj
NAKAMURA Takumi8653bcf2013-01-25 23:24:07 +000057 llvm-rtdyld
NAKAMURA Takumi0e86e692014-12-04 01:27:53 +000058 llvm-size
Peter Collingbourne1dc6a8d2015-08-21 02:48:20 +000059 llvm-split
Evgeniy Stepanov3aa627b2013-03-13 09:35:18 +000060 llvm-symbolizer
NAKAMURA Takumi3189afc2014-01-18 19:01:08 +000061 llvm-tblgen
NAKAMURA Takumib39be042013-07-08 08:44:30 +000062 not
Mike Aizatsky14a06ac2015-11-12 19:34:21 +000063 obj2yaml
64 opt
65 sancov
Peter Collingbournef0f5e872016-01-16 00:31:11 +000066 sanstats
Mike Aizatsky14a06ac2015-11-12 19:34:21 +000067 verify-uselistorder
NAKAMURA Takumi723b4492015-05-07 22:24:58 +000068 yaml-bench
NAKAMURA Takumib39be042013-07-08 08:44:30 +000069 yaml2obj
NAKAMURA Takumib39be042013-07-08 08:44:30 +000070 )
Andrew Kaylor93fe3dc2012-11-21 20:38:26 +000071
Pavel Labathec1c01e2016-06-02 16:29:07 +000072if(TARGET llvm-lto)
73 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-lto)
74endif()
75
Andrew Kaylor93fe3dc2012-11-21 20:38:26 +000076# If Intel JIT events are supported, depend on a tool that tests the listener.
77if( LLVM_USE_INTEL_JITEVENTS )
78 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-jitlistener)
79endif( LLVM_USE_INTEL_JITEVENTS )
80
Peter Collingbourned0ec5ab2014-09-10 22:20:49 +000081if(TARGET LLVMgold)
82 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LLVMgold)
83endif()
84
Peter Collingbournedfc98c22014-10-23 19:51:40 +000085if(TARGET llvm-go)
86 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-go)
87endif()
88
Pavel Labathec1c01e2016-06-02 16:29:07 +000089if(TARGET LTO)
Peter Collingbournebbdc26b2015-03-19 23:55:38 +000090 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LTO)
91endif()
92
Peter Zotovb20073c2014-12-01 19:50:23 +000093if(TARGET ocaml_llvm)
94 set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS}
95 ocaml_llvm
96 ocaml_llvm_all_backends
97 ocaml_llvm_analysis
98 ocaml_llvm_bitreader
99 ocaml_llvm_bitwriter
100 ocaml_llvm_executionengine
101 ocaml_llvm_irreader
102 ocaml_llvm_linker
103 ocaml_llvm_target
104 ocaml_llvm_ipo
105 ocaml_llvm_passmgr_builder
106 ocaml_llvm_scalar_opts
Peter Zotov0d040f62014-12-01 19:50:39 +0000107 ocaml_llvm_transform_utils
Peter Zotovb20073c2014-12-01 19:50:23 +0000108 ocaml_llvm_vectorize
109 )
110endif()
111
Lang Hamesd76e0672015-08-27 20:31:44 +0000112if(LLVM_BUILD_EXAMPLES)
113 list(APPEND LLVM_TEST_DEPENDS
114 Kaleidoscope-Ch3
115 Kaleidoscope-Ch4
116 Kaleidoscope-Ch5
117 Kaleidoscope-Ch6
118 Kaleidoscope-Ch7
119 )
120endif()
121
Chris Bieneman2d5e0772016-03-02 00:27:14 +0000122add_custom_target(llvm-test-depends DEPENDS ${LLVM_TEST_DEPENDS})
Aaron Ballman01a98542016-04-12 15:09:14 +0000123set_target_properties(llvm-test-depends PROPERTIES FOLDER "Tests")
Chris Bieneman2d5e0772016-03-02 00:27:14 +0000124
Andrew Kaylor93fe3dc2012-11-21 20:38:26 +0000125add_lit_testsuite(check-llvm "Running the LLVM regression tests"
126 ${CMAKE_CURRENT_BINARY_DIR}
127 PARAMS llvm_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
128 llvm_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
129 DEPENDS ${LLVM_TEST_DEPENDS}
Chandler Carruthaa324c92012-06-27 09:44:16 +0000130 )
Chandler Carruth69ce6652012-06-30 10:14:14 +0000131set_target_properties(check-llvm PROPERTIES FOLDER "Tests")
Chandler Carruthaa324c92012-06-27 09:44:16 +0000132
Justin Bogner35b4b1a2015-03-25 08:07:47 +0000133add_lit_testsuites(LLVM ${CMAKE_CURRENT_SOURCE_DIR}
134 PARAMS llvm_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
135 llvm_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
136 DEPENDS ${LLVM_TEST_DEPENDS}
137 )
138
Chandler Carruthaa324c92012-06-27 09:44:16 +0000139# Setup a legacy alias for 'check-llvm'. This will likely change to be an
140# alias for 'check-all' at some point in the future.
Chandler Carrutha7f1f352012-07-02 21:45:22 +0000141add_custom_target(check)
142add_dependencies(check check-llvm)
Chandler Carruth69ce6652012-06-30 10:14:14 +0000143set_target_properties(check PROPERTIES FOLDER "Tests")