mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 12:12:47 +01:00
4ea9d7ec0b
Summary: When this flag is specified, the target llvm-lto is not built, but is still used as a dependency of the test targets. cmake 2.8 silently ignored this situation, but with cmake_minimum_required(3.4) it becomes an error. Fix this by avoiding the inclusion of the target as a dependency. Reviewers: beanz Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D20882 llvm-svn: 271530
141 lines
3.6 KiB
CMake
141 lines
3.6 KiB
CMake
if(LLVM_BUILD_EXAMPLES)
|
|
set(ENABLE_EXAMPLES 1)
|
|
endif()
|
|
|
|
configure_lit_site_cfg(
|
|
${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
|
|
${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
|
|
)
|
|
configure_lit_site_cfg(
|
|
${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.site.cfg.in
|
|
${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
|
|
)
|
|
|
|
# Don't include check-llvm into check-all without LLVM_BUILD_TOOLS.
|
|
if(NOT LLVM_BUILD_TOOLS)
|
|
set(EXCLUDE_FROM_ALL ON)
|
|
endif()
|
|
|
|
# Set the depends list as a variable so that it can grow conditionally.
|
|
# NOTE: Sync the substitutions in test/lit.cfg when adding to this list.
|
|
set(LLVM_TEST_DEPENDS
|
|
BugpointPasses
|
|
FileCheck
|
|
LLVMHello
|
|
UnitTests
|
|
bugpoint
|
|
count
|
|
llc
|
|
lli
|
|
lli-child-target
|
|
llvm-ar
|
|
llvm-as
|
|
llvm-bcanalyzer
|
|
llvm-c-test
|
|
llvm-config
|
|
llvm-cov
|
|
llvm-cxxdump
|
|
llvm-diff
|
|
llvm-dis
|
|
llvm-dsymutil
|
|
llvm-dwarfdump
|
|
llvm-dwp
|
|
llvm-extract
|
|
llvm-lib
|
|
llvm-link
|
|
llvm-mc
|
|
llvm-mcmarkup
|
|
llvm-nm
|
|
llvm-objdump
|
|
llvm-pdbdump
|
|
llvm-profdata
|
|
llvm-ranlib
|
|
llvm-readobj
|
|
llvm-rtdyld
|
|
llvm-size
|
|
llvm-split
|
|
llvm-symbolizer
|
|
llvm-tblgen
|
|
not
|
|
obj2yaml
|
|
opt
|
|
sancov
|
|
sanstats
|
|
verify-uselistorder
|
|
yaml-bench
|
|
yaml2obj
|
|
)
|
|
|
|
if(TARGET llvm-lto)
|
|
set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-lto)
|
|
endif()
|
|
|
|
# If Intel JIT events are supported, depend on a tool that tests the listener.
|
|
if( LLVM_USE_INTEL_JITEVENTS )
|
|
set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-jitlistener)
|
|
endif( LLVM_USE_INTEL_JITEVENTS )
|
|
|
|
if(TARGET LLVMgold)
|
|
set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LLVMgold)
|
|
endif()
|
|
|
|
if(TARGET llvm-go)
|
|
set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-go)
|
|
endif()
|
|
|
|
if(TARGET LTO)
|
|
set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LTO)
|
|
endif()
|
|
|
|
if(TARGET ocaml_llvm)
|
|
set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS}
|
|
ocaml_llvm
|
|
ocaml_llvm_all_backends
|
|
ocaml_llvm_analysis
|
|
ocaml_llvm_bitreader
|
|
ocaml_llvm_bitwriter
|
|
ocaml_llvm_executionengine
|
|
ocaml_llvm_irreader
|
|
ocaml_llvm_linker
|
|
ocaml_llvm_target
|
|
ocaml_llvm_ipo
|
|
ocaml_llvm_passmgr_builder
|
|
ocaml_llvm_scalar_opts
|
|
ocaml_llvm_transform_utils
|
|
ocaml_llvm_vectorize
|
|
)
|
|
endif()
|
|
|
|
if(LLVM_BUILD_EXAMPLES)
|
|
list(APPEND LLVM_TEST_DEPENDS
|
|
Kaleidoscope-Ch3
|
|
Kaleidoscope-Ch4
|
|
Kaleidoscope-Ch5
|
|
Kaleidoscope-Ch6
|
|
Kaleidoscope-Ch7
|
|
)
|
|
endif()
|
|
|
|
add_custom_target(llvm-test-depends DEPENDS ${LLVM_TEST_DEPENDS})
|
|
set_target_properties(llvm-test-depends PROPERTIES FOLDER "Tests")
|
|
|
|
add_lit_testsuite(check-llvm "Running the LLVM regression tests"
|
|
${CMAKE_CURRENT_BINARY_DIR}
|
|
PARAMS llvm_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
|
|
llvm_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
|
|
DEPENDS ${LLVM_TEST_DEPENDS}
|
|
)
|
|
set_target_properties(check-llvm PROPERTIES FOLDER "Tests")
|
|
|
|
add_lit_testsuites(LLVM ${CMAKE_CURRENT_SOURCE_DIR}
|
|
PARAMS llvm_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
|
|
llvm_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
|
|
DEPENDS ${LLVM_TEST_DEPENDS}
|
|
)
|
|
|
|
# Setup a legacy alias for 'check-llvm'. This will likely change to be an
|
|
# alias for 'check-all' at some point in the future.
|
|
add_custom_target(check)
|
|
add_dependencies(check check-llvm)
|
|
set_target_properties(check PROPERTIES FOLDER "Tests")
|