mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-05 02:16:46 +00:00
791500fa0d
One part of my refactoring from r242705 is untenable due to how CMake caches variables. There is no way other than caching to allow variables to be set in one directory and globally readable, but we really don't want to cache the temporary value marking that a directory has already been included. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@242793 91177308-0d34-0410-b5e6-96231b3b80d8
45 lines
1.3 KiB
CMake
45 lines
1.3 KiB
CMake
# This file will recurse into all subdirectories that contain CMakeLists.txt
|
|
# Setting variables that match the pattern LLVM_TOOL_{NAME}_BUILD to Off will
|
|
# prevent traversing into a directory.
|
|
#
|
|
# The only tools that need to be explicitly added are ones that have explicit
|
|
# ordering requirements.
|
|
|
|
# Iterates all the subdirectories to create CMake options to enable/disable
|
|
# traversing each directory.
|
|
create_llvm_tool_options()
|
|
|
|
# Build polly before the tools: the tools link against polly when
|
|
# LINK_POLLY_INTO_TOOLS is set.
|
|
if(WITH_POLLY)
|
|
add_llvm_external_project(polly)
|
|
else()
|
|
set(LLVM_TOOL_POLLY_BUILD Off)
|
|
endif()
|
|
|
|
if(NOT LLVM_BUILD_LLVM_DYLIB )
|
|
set(LLVM_TOOL_LLVM_SHLIB_BUILD Off)
|
|
endif()
|
|
|
|
if(NOT LLVM_USE_INTEL_JITEVENTS )
|
|
set(LLVM_TOOL_LLVM_JITLISTENER_BUILD Off)
|
|
endif()
|
|
|
|
if(CYGWIN OR NOT LLVM_ENABLE_PIC)
|
|
set(LLVM_TOOL_LTO_BUILD Off)
|
|
set(LLVM_TOOL_LLVM_LTO_BUILD Off)
|
|
endif()
|
|
|
|
# Projects supported via LLVM_EXTERNAL_*_SOURCE_DIR need to be explicitly
|
|
# specified.
|
|
add_llvm_external_project(clang)
|
|
add_llvm_external_project(llgo)
|
|
add_llvm_external_project(lld)
|
|
add_llvm_external_project(lldb)
|
|
|
|
# Automatically add remaining sub-directories containing a 'CMakeLists.txt'
|
|
# file as external projects.
|
|
add_llvm_implicit_projects()
|
|
|
|
set(LLVM_COMMON_DEPENDS ${LLVM_COMMON_DEPENDS} PARENT_SCOPE)
|