1set(LLVM_LINK_COMPONENTS 2 Analysis 3 BitReader 4 BitWriter 5 Core 6 Coroutines 7 Coverage 8 IPO 9 IRReader 10 InstCombine 11 Instrumentation 12 LTO 13 Linker 14 MC 15 ObjCARCOpts 16 Object 17 Passes 18 ProfileData 19 ScalarOpts 20 Support 21 Target 22 TransformUtils 23 ) 24 25# In a standard Clang+LLVM build, we need to generate intrinsics before 26# building codegen. In a standalone build, LLVM is already built and we don't 27# need this dependency. Furthermore, LLVM doesn't export it so we can't have 28# this dependency. 29set(codegen_deps intrinsics_gen) 30if (CLANG_BUILT_STANDALONE) 31 set(codegen_deps) 32endif() 33 34add_clang_library(clangCodeGen 35 BackendUtil.cpp 36 CGAtomic.cpp 37 CGBlocks.cpp 38 CGBuiltin.cpp 39 CGCUDABuiltin.cpp 40 CGCUDANV.cpp 41 CGCUDARuntime.cpp 42 CGCXX.cpp 43 CGCXXABI.cpp 44 CGCall.cpp 45 CGClass.cpp 46 CGCleanup.cpp 47 CGCoroutine.cpp 48 CGDebugInfo.cpp 49 CGDecl.cpp 50 CGDeclCXX.cpp 51 CGException.cpp 52 CGExpr.cpp 53 CGExprAgg.cpp 54 CGExprCXX.cpp 55 CGExprComplex.cpp 56 CGExprConstant.cpp 57 CGExprScalar.cpp 58 CGLoopInfo.cpp 59 CGObjC.cpp 60 CGObjCGNU.cpp 61 CGObjCMac.cpp 62 CGObjCRuntime.cpp 63 CGOpenCLRuntime.cpp 64 CGOpenMPRuntime.cpp 65 CGOpenMPRuntimeNVPTX.cpp 66 CGRecordLayoutBuilder.cpp 67 CGStmt.cpp 68 CGStmtOpenMP.cpp 69 CGVTT.cpp 70 CGVTables.cpp 71 CodeGenABITypes.cpp 72 CodeGenAction.cpp 73 CodeGenFunction.cpp 74 CodeGenModule.cpp 75 CodeGenPGO.cpp 76 CodeGenTBAA.cpp 77 CodeGenTypes.cpp 78 CoverageMappingGen.cpp 79 ItaniumCXXABI.cpp 80 MicrosoftCXXABI.cpp 81 ModuleBuilder.cpp 82 ObjectFilePCHContainerOperations.cpp 83 SanitizerMetadata.cpp 84 SwiftCallingConv.cpp 85 TargetInfo.cpp 86 VarBypassDetector.cpp 87 88 DEPENDS 89 ${codegen_deps} 90 91 LINK_LIBS 92 clangAnalysis 93 clangAST 94 clangAnalysis 95 clangBasic 96 clangFrontend 97 clangLex 98 ) 99