• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# NOTE: The tools are organized into groups of four consisting of one large and
2# three small executables. This is done to minimize memory load in parallel
3# builds.  Please retain this ordering.
4
5if( NOT WIN32 OR MSYS OR CYGWIN )
6  # We currently require 'sed' to build llvm-config, so don't try to build it
7  # on pure Win32.
8  add_subdirectory(llvm-config)
9endif()
10
11add_subdirectory(opt)
12add_subdirectory(llvm-as)
13add_subdirectory(llvm-dis)
14add_subdirectory(llvm-mc)
15
16add_subdirectory(llc)
17add_subdirectory(llvm-ar)
18add_subdirectory(llvm-nm)
19add_subdirectory(llvm-size)
20
21add_subdirectory(llvm-cov)
22add_subdirectory(llvm-prof)
23add_subdirectory(llvm-link)
24add_subdirectory(lli)
25
26add_subdirectory(llvm-extract)
27add_subdirectory(llvm-diff)
28add_subdirectory(macho-dump)
29add_subdirectory(llvm-objdump)
30add_subdirectory(llvm-readobj)
31add_subdirectory(llvm-rtdyld)
32add_subdirectory(llvm-dwarfdump)
33if( LLVM_USE_INTEL_JITEVENTS )
34  add_subdirectory(llvm-jitlistener)
35endif( LLVM_USE_INTEL_JITEVENTS )
36
37add_subdirectory(bugpoint)
38add_subdirectory(bugpoint-passes)
39add_subdirectory(llvm-bcanalyzer)
40add_subdirectory(llvm-stress)
41add_subdirectory(llvm-mcmarkup)
42
43add_subdirectory(llvm-symbolizer)
44
45add_subdirectory(obj2yaml)
46add_subdirectory(yaml2obj)
47
48if( NOT WIN32 )
49  add_subdirectory(lto)
50endif()
51
52if( LLVM_ENABLE_PIC )
53  # TODO: support other systems:
54  if( (CMAKE_SYSTEM_NAME STREQUAL "Linux")
55      OR (CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") )
56    add_subdirectory(gold)
57  endif()
58endif()
59
60add_llvm_external_project(clang)
61
62if( NOT LLVM_INCLUDE_TOOLS STREQUAL "bootstrap-only" )
63  add_llvm_external_project(lld)
64  add_llvm_external_project(lldb)
65  add_llvm_external_project(polly)
66endif()
67
68set(LLVM_COMMON_DEPENDS ${LLVM_COMMON_DEPENDS} PARENT_SCOPE)
69