1add_llvm_tool_subdirectory(llvm-config) 2 3# Build polly before the tools: the tools link against polly when 4# LINK_POLLY_INTO_TOOLS is set. 5if(WITH_POLLY) 6 add_llvm_external_project(polly) 7else(WITH_POLLY) 8 list(APPEND LLVM_IMPLICIT_PROJECT_IGNORE "${LLVM_MAIN_SRC_DIR}/tools/polly") 9endif(WITH_POLLY) 10 11if( LLVM_BUILD_LLVM_DYLIB ) 12 add_llvm_tool_subdirectory(llvm-shlib) 13else() 14 ignore_llvm_tool_subdirectory(llvm-shlib) 15endif() 16 17add_llvm_tool_subdirectory(opt) 18add_llvm_tool_subdirectory(llvm-as) 19add_llvm_tool_subdirectory(llvm-dis) 20add_llvm_tool_subdirectory(llvm-mc) 21 22add_llvm_tool_subdirectory(llc) 23add_llvm_tool_subdirectory(llvm-ar) 24add_llvm_tool_subdirectory(llvm-nm) 25add_llvm_tool_subdirectory(llvm-size) 26 27add_llvm_tool_subdirectory(llvm-cov) 28add_llvm_tool_subdirectory(llvm-profdata) 29add_llvm_tool_subdirectory(llvm-link) 30add_llvm_tool_subdirectory(lli) 31 32add_llvm_tool_subdirectory(llvm-extract) 33add_llvm_tool_subdirectory(llvm-diff) 34add_llvm_tool_subdirectory(macho-dump) 35add_llvm_tool_subdirectory(llvm-objdump) 36add_llvm_tool_subdirectory(llvm-readobj) 37add_llvm_tool_subdirectory(llvm-rtdyld) 38add_llvm_tool_subdirectory(llvm-dwarfdump) 39add_llvm_tool_subdirectory(dsymutil) 40add_llvm_tool_subdirectory(llvm-cxxdump) 41if( LLVM_USE_INTEL_JITEVENTS ) 42 add_llvm_tool_subdirectory(llvm-jitlistener) 43else() 44 ignore_llvm_tool_subdirectory(llvm-jitlistener) 45endif( LLVM_USE_INTEL_JITEVENTS ) 46 47add_llvm_tool_subdirectory(bugpoint) 48add_llvm_tool_subdirectory(bugpoint-passes) 49add_llvm_tool_subdirectory(llvm-bcanalyzer) 50add_llvm_tool_subdirectory(llvm-stress) 51add_llvm_tool_subdirectory(llvm-mcmarkup) 52 53add_llvm_tool_subdirectory(verify-uselistorder) 54 55add_llvm_tool_subdirectory(llvm-symbolizer) 56 57add_llvm_tool_subdirectory(llvm-c-test) 58 59add_llvm_tool_subdirectory(obj2yaml) 60add_llvm_tool_subdirectory(yaml2obj) 61 62add_llvm_tool_subdirectory(llvm-go) 63 64add_llvm_tool_subdirectory(llvm-pdbdump) 65 66if(NOT CYGWIN AND LLVM_ENABLE_PIC) 67 add_llvm_tool_subdirectory(lto) 68 add_llvm_tool_subdirectory(llvm-lto) 69else() 70 ignore_llvm_tool_subdirectory(lto) 71 ignore_llvm_tool_subdirectory(llvm-lto) 72endif() 73 74add_llvm_tool_subdirectory(gold) 75 76add_llvm_external_project(clang) 77add_llvm_external_project(llgo) 78 79if( NOT LLVM_INCLUDE_TOOLS STREQUAL "bootstrap-only" ) 80 add_llvm_external_project(lld) 81 add_llvm_external_project(lldb) 82 83 # Automatically add remaining sub-directories containing a 'CMakeLists.txt' 84 # file as external projects. 85 add_llvm_implicit_external_projects() 86endif() 87 88set(LLVM_COMMON_DEPENDS ${LLVM_COMMON_DEPENDS} PARENT_SCOPE) 89