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