3 # `Demangle', `Support' and `TableGen' libraries are added on the top-level
7 add_subdirectory(FuzzMutate)
8 add_subdirectory(FileCheck)
9 add_subdirectory(InterfaceStub)
10 add_subdirectory(IRPrinter)
11 add_subdirectory(IRReader)
12 add_subdirectory(CodeGen)
13 add_subdirectory(BinaryFormat)
14 add_subdirectory(Bitcode)
15 add_subdirectory(Bitstream)
16 add_subdirectory(DWARFLinker)
17 add_subdirectory(Extensions)
18 add_subdirectory(Frontend)
19 add_subdirectory(Transforms)
20 add_subdirectory(Linker)
21 add_subdirectory(Analysis)
25 add_subdirectory(ObjCopy)
26 add_subdirectory(Object)
27 add_subdirectory(ObjectYAML)
28 add_subdirectory(Option)
29 add_subdirectory(Remarks)
30 add_subdirectory(Debuginfod)
31 add_subdirectory(DebugInfo)
33 add_subdirectory(ExecutionEngine)
34 add_subdirectory(Target)
35 add_subdirectory(AsmParser)
36 add_subdirectory(LineEditor)
37 add_subdirectory(ProfileData)
38 add_subdirectory(Passes)
39 add_subdirectory(TargetParser)
40 add_subdirectory(TextAPI)
41 add_subdirectory(ToolDrivers)
42 add_subdirectory(XRay)
43 if (LLVM_INCLUDE_TESTS)
44 add_subdirectory(Testing)
46 add_subdirectory(WindowsDriver)
47 add_subdirectory(WindowsManifest)
49 set(LLVMCONFIGLIBRARYDEPENDENCIESINC "${LLVM_BINARY_DIR}/tools/llvm-config/LibraryDependencies.inc")
51 # Special components which don't have any source attached but aggregate other
53 add_llvm_component_group(all-targets LINK_COMPONENTS ${LLVM_TARGETS_TO_BUILD})
54 add_llvm_component_group(Engine)
56 # The native target may not be enabled when cross compiling
57 if(TARGET ${LLVM_NATIVE_ARCH})
58 add_llvm_component_group(Native LINK_COMPONENTS ${LLVM_NATIVE_ARCH})
59 add_llvm_component_group(NativeCodeGen LINK_COMPONENTS ${LLVM_NATIVE_ARCH}CodeGen)
61 add_llvm_component_group(Native)
62 add_llvm_component_group(NativeCodeGen)
65 # Component post-processing
66 LLVMBuildResolveComponentsLink()
67 LLVMBuildGenerateCFragment(OUTPUT ${LLVMCONFIGLIBRARYDEPENDENCIESINC})