123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375 |
- --- from llvm/CMakeLists.txt
- function get_llvm_all_projects()
- -- @see https://llvm.org/docs/CMake.html
- -- Some projects listed here can also go in LLVM_ENABLE_RUNTIMES. They should
- -- only appear in one of the two lists. If a project is a valid possiblity for
- -- both, prefer putting it in LLVM_ENABLE_RUNTIMES.
- return {
- "bolt",
- "clang",
- "clang-tools-extra", -- But we do not build clang tools.
- "libclc",
- "lld",
- "lldb",
- "mlir", -- TODO: incompleted.
- "polly"
- }
- end
- function get_llvm_extra_projects()
- return {
- "flang"
- }
- end
- function get_llvm_known_projects()
- return table.join(get_llvm_all_projects(), get_llvm_extra_projects())
- end
- function get_llvm_all_runtimes()
- return {
- "libc",
- "libunwind",
- "libcxxabi",
- "pstl",
- "libcxx",
- "compiler-rt",
- "openmp",
- "llvm-libgcc",
- "offload",
- "flang-rt"
- }
- end
- --- from cmake/llvm/LLVMExports.cmake
- function get_llvm_shared_libraries()
- return {
- "LLVM",
- "Remarks",
- "LTO"
- }
- end
- function get_llvm_static_libraries()
- return {
- "LLVMExegesisMips",
- "LLVMExegesisPowerPC",
- "LLVMExegesisAArch64",
- "LLVMExegesisX86",
- "LLVMOptDriver",
- "LLVMExegesis",
- "LLVMOrcDebugging",
- "LLVMBPFCodeGen",
- "LLVMAMDGPUCodeGen",
- "LLVMOrcJIT",
- "LLVMLTO",
- "LLVMPasses",
- "LLVMX86CodeGen",
- "LLVMRISCVCodeGen",
- "LLVMPowerPCCodeGen",
- "LLVMMipsCodeGen",
- "LLVMARMCodeGen",
- "LLVMAArch64CodeGen",
- "LLVMNVPTXCodeGen",
- "LLVMHexagonCodeGen",
- "LLVMCoroutines",
- "LLVMWebAssemblyCodeGen",
- "LLVMDWARFLinkerParallel",
- "LLVMDWARFLinkerClassic",
- "LLVMXCoreCodeGen",
- "LLVMVECodeGen",
- "LLVMSystemZCodeGen",
- "LLVMSparcCodeGen",
- "LLVMMSP430CodeGen",
- "LLVMLoongArchCodeGen",
- "LLVMLanaiCodeGen",
- "LLVMAVRCodeGen",
- "LLVMGlobalISel",
- "LLVMipo",
- "LLVMWebAssemblyUtils",
- "LLVMInterpreter",
- "LLVMDWARFLinker",
- "LLVMMIRParser",
- "LLVMAsmPrinter",
- "LLVMSelectionDAG",
- "LLVMFrontendOpenMP",
- "LLVMCodeGen",
- "LLVMFuzzMutate",
- "LLVMAMDGPUTargetMCA",
- "LLVMAMDGPUDisassembler",
- "LLVMAMDGPUAsmParser",
- "LLVMMCJIT",
- "LLVMScalarOpts",
- "LLVMAMDGPUDesc",
- "LLVMExecutionEngine",
- "LLVMLinker",
- "LLVMHipStdPar",
- "LLVMObjCARCOpts",
- "LLVMVectorize",
- "LLVMInstCombine",
- "LLVMAggressiveInstCombine",
- "LLVMInstrumentation",
- "LLVMFrontendOffloading",
- "LLVMAMDGPUUtils",
- "LLVMTarget",
- "LLVMTransformUtils",
- "LLVMFrontendDriver",
- "LLVMBitWriter",
- "LLVMIRPrinter",
- "LLVMCoverage",
- "LLVMAnalysis",
- "LLVMCFIVerify",
- "LLVMProfileData",
- "LLVMDebuginfod",
- "LLVMARMDisassembler",
- "LLVMARMAsmParser",
- "LLVMSymbolize",
- "LLVMDebugInfoLogicalView",
- "LLVMTextAPIBinaryReader",
- "LLVMDWP",
- "LLVMDebugInfoGSYM",
- "LLVMXRay",
- "LLVMLibDriver",
- "LLVMDlltoolDriver",
- "LLVMARMDesc",
- "LLVMRuntimeDyld",
- "LLVMJITLink",
- "LLVMDebugInfoPDB",
- "LLVMDebugInfoDWARF",
- "LLVMObjectYAML",
- "LLVMObjCopy",
- "LLVMCodeGenData",
- "LLVMInterfaceStub",
- "LLVMX86TargetMCA",
- "LLVMX86AsmParser",
- "LLVMWebAssemblyDisassembler",
- "LLVMWebAssemblyAsmParser",
- "LLVMVEAsmParser",
- "LLVMSystemZDisassembler",
- "LLVMSystemZAsmParser",
- "LLVMSparcAsmParser",
- "LLVMRISCVTargetMCA",
- "LLVMRISCVDisassembler",
- "LLVMRISCVAsmParser",
- "LLVMPowerPCAsmParser",
- "LLVMMSP430AsmParser",
- "LLVMMipsAsmParser",
- "LLVMLoongArchDisassembler",
- "LLVMLoongArchAsmParser",
- "LLVMLanaiDisassembler",
- "LLVMLanaiAsmParser",
- "LLVMHexagonDisassembler",
- "LLVMHexagonAsmParser",
- "LLVMBPFAsmParser",
- "LLVMAVRAsmParser",
- "LLVMAArch64Disassembler",
- "LLVMAArch64AsmParser",
- "LLVMObject",
- "LLVMXCoreDesc",
- "LLVMXCoreDisassembler",
- "LLVMX86Desc",
- "LLVMX86Disassembler",
- "LLVMWebAssemblyDesc",
- "LLVMVEDesc",
- "LLVMVEDisassembler",
- "LLVMSystemZDesc",
- "LLVMSparcDesc",
- "LLVMSparcDisassembler",
- "LLVMRISCVDesc",
- "LLVMPowerPCDesc",
- "LLVMPowerPCDisassembler",
- "LLVMNVPTXDesc",
- "LLVMMSP430Disassembler",
- "LLVMMSP430Desc",
- "LLVMMipsDesc",
- "LLVMMipsDisassembler",
- "LLVMLoongArchDesc",
- "LLVMLanaiDesc",
- "LLVMHexagonDesc",
- "LLVMBPFDesc",
- "LLVMBPFDisassembler",
- "LLVMAVRDesc",
- "LLVMAVRDisassembler",
- "LLVMAArch64Desc",
- "LLVMIRReader",
- "LLVMXCoreInfo",
- "LLVMX86Info",
- "LLVMWebAssemblyInfo",
- "LLVMVEInfo",
- "LLVMSystemZInfo",
- "LLVMSparcInfo",
- "LLVMRISCVInfo",
- "LLVMPowerPCInfo",
- "LLVMNVPTXInfo",
- "LLVMMSP430Info",
- "LLVMMipsInfo",
- "LLVMLoongArchInfo",
- "LLVMLanaiInfo",
- "LLVMHexagonInfo",
- "LLVMBPFInfo",
- "LLVMAVRInfo",
- "LLVMARMInfo",
- "LLVMAMDGPUInfo",
- "LLVMAArch64Info",
- "LLVMMCA",
- "LLVMMCDisassembler",
- "LLVMMCParser",
- "LLVMDiff",
- "LLVMAsmParser",
- "LLVMSandboxIR",
- "LLVMAArch64Utils",
- "LLVMCFGuard",
- "LLVMFrontendHLSL",
- "LLVMBitReader",
- "LLVMTextAPI",
- "LLVMMC",
- "LLVMCore",
- "LLVMTableGenCommon",
- "LLVMWindowsDriver",
- "LLVMOrcTargetProcess",
- "LLVMBinaryFormat",
- "LLVMFuzzerCLI",
- "LLVMRemarks",
- "LLVMTableGenBasic",
- "LLVMWindowsManifest",
- "LLVMTargetParser",
- "LLVMLineEditor",
- "LLVMARMUtils",
- "LLVMOrcShared",
- "LLVMDebugInfoBTF",
- "LLVMDebugInfoCodeView",
- "LLVMDebugInfoMSF",
- "LLVMOption",
- "LLVMFrontendOpenACC",
- "LLVMExtensions",
- "LLVMBitstreamReader",
- "LLVMCodeGenTypes",
- "LLVMFileCheck",
- "LLVMTableGen",
- "LLVMSupport",
- "LLVMDemangle",
- "Remarks", -- shared
- "LTO" -- shared
- }
- end
- function get_bolt_shared_libraries()
- return {} -- TODO
- end
- function get_bolt_static_libraries()
- return {
- "LLVMBOLTRewrite",
- "LLVMBOLTRuntimeLibs",
- "LLVMBOLTTargetRISCV",
- "LLVMBOLTTargetX86",
- "LLVMBOLTTargetAArch64",
- "LLVMBOLTProfile",
- "LLVMBOLTPasses",
- "LLVMBOLTCore",
- "LLVMBOLTUtils"
- }
- end
- function get_polly_shared_libraries()
- return {} -- TODO
- end
- function get_polly_static_libraries()
- return {
- "Polly",
- "LLVMPolly", -- shared
- "PollyISL",
- }
- end
- --- from cmake/clang/ClangTargets.cmake
- function get_clang_shared_libraries()
- return {
- "clang-cpp",
- "clang" -- Clang's stable CAPI (shared)
- }
- end
- function get_clang_static_libraries()
- return {
- "clangInterpreter",
- "clangFrontendTool",
- "clangStaticAnalyzerFrontend",
- "clangStaticAnalyzerCheckers",
- "clangTransformer",
- "clangStaticAnalyzerCore",
- "clangToolingRefactoring",
- "clangExtractAPI",
- "clangCrossTU",
- "clangHandleCXX",
- "clangDependencyScanning",
- "clangIndex",
- "clangTooling",
- "clangToolingSyntax",
- "clangRewriteFrontend",
- "clangARCMigrate",
- "clangCodeGen",
- "clangFrontend",
- "clangAnalysisFlowSensitiveModels",
- "clangSerialization",
- "clangParse",
- "clangFormat",
- "clangAnalysisFlowSensitive",
- "clangSema",
- "clangToolingInclusions",
- "clangAnalysis",
- "clangDynamicASTMatchers",
- "clangToolingCore",
- "clangInstallAPI",
- "clangToolingASTDiff",
- "clangToolingInclusionsStdlib",
- "clangEdit",
- "clangASTMatchers",
- "clangRewrite",
- "clangAST",
- "clangIndexSerialization",
- "clangDriver",
- "clangLex",
- "clangAPINotes",
- "clangHandleLLVM",
- "clangSupport",
- "clangDirectoryWatcher",
- "clangBasic",
- "clang", -- Clang's stable CAPI (shared)
- }
- end
- --- from cmake/lld/LLDTargets.cmake
- function get_lld_shared_libraries()
- return {} -- TODO
- end
- function get_lld_static_libraries()
- return {
- "lldMinGW",
- "lldWasm",
- "lldMachO",
- "lldELF",
- "lldCOFF",
- "lldCommon",
- }
- end
- --- lldb
- function get_lldb_shared_libraries()
- return {
- "lldb"
- }
- end
- function get_lldb_static_libraries()
- return {
- "lldb" -- shared
- }
- end
|