1import("//clang/utils/TableGen/clang_tablegen.gni") 2 3clang_tablegen("Opcodes") { 4 visibility = [ ":AST" ] 5 args = [ "-gen-clang-opcodes" ] 6 td_file = "ByteCode/Opcodes.td" 7} 8 9clang_tablegen("AttrDocTable") { 10 visibility = [ ":AST" ] 11 args = [ "-gen-clang-attr-doc-table" ] 12 td_file = "//clang/include/clang/Basic/Attr.td" 13} 14 15static_library("AST") { 16 output_name = "clangAST" 17 configs += [ "//llvm/utils/gn/build:clang_code" ] 18 deps = [ 19 ":AttrDocTable", 20 ":Opcodes", 21 "//clang/include/clang/AST:AttrImpl", 22 "//clang/include/clang/AST:AttrNodeTraverse", 23 "//clang/include/clang/AST:AttrTextNodeDump", 24 "//clang/include/clang/AST:CommentCommandInfo", 25 "//clang/include/clang/AST:CommentHTMLNamedCharacterReferences", 26 "//clang/include/clang/AST:CommentHTMLTags", 27 "//clang/include/clang/AST:CommentHTMLTagsProperties", 28 "//clang/include/clang/AST:DeclNodes", 29 "//clang/lib/Basic", 30 "//clang/lib/Lex", 31 "//llvm/lib/BinaryFormat", 32 "//llvm/lib/Frontend/OpenMP", 33 "//llvm/lib/Support", 34 "//llvm/lib/TargetParser", 35 ] 36 37 # Generated files used in public headers should be in public_deps, the rest 38 # in regular deps. 39 public_deps = [ 40 "//clang/include/clang/AST:AbstractBasicReader", 41 "//clang/include/clang/AST:AbstractBasicWriter", 42 "//clang/include/clang/AST:AbstractTypeReader", 43 "//clang/include/clang/AST:AbstractTypeWriter", 44 "//clang/include/clang/AST:AttrVisitor", 45 "//clang/include/clang/AST:Attrs", 46 "//clang/include/clang/AST:CommentCommandList", 47 "//clang/include/clang/AST:CommentNodes", 48 "//clang/include/clang/AST:StmtNodes", 49 "//clang/include/clang/AST:TypeNodes", 50 ] 51 sources = [ 52 "APValue.cpp", 53 "ASTConcept.cpp", 54 "ASTConsumer.cpp", 55 "ASTContext.cpp", 56 "ASTDiagnostic.cpp", 57 "ASTDumper.cpp", 58 "ASTImporter.cpp", 59 "ASTImporterLookupTable.cpp", 60 "ASTStructuralEquivalence.cpp", 61 "ASTTypeTraits.cpp", 62 "AttrDocTable.cpp", 63 "AttrImpl.cpp", 64 "Availability.cpp", 65 "ByteCode/BitcastBuffer.cpp", 66 "ByteCode/ByteCodeEmitter.cpp", 67 "ByteCode/Compiler.cpp", 68 "ByteCode/Context.cpp", 69 "ByteCode/Descriptor.cpp", 70 "ByteCode/Disasm.cpp", 71 "ByteCode/DynamicAllocator.cpp", 72 "ByteCode/EvalEmitter.cpp", 73 "ByteCode/EvaluationResult.cpp", 74 "ByteCode/Floating.cpp", 75 "ByteCode/Frame.cpp", 76 "ByteCode/Function.cpp", 77 "ByteCode/FunctionPointer.cpp", 78 "ByteCode/Interp.cpp", 79 "ByteCode/InterpBlock.cpp", 80 "ByteCode/InterpBuiltin.cpp", 81 "ByteCode/InterpBuiltinBitCast.cpp", 82 "ByteCode/InterpFrame.cpp", 83 "ByteCode/InterpShared.cpp", 84 "ByteCode/InterpStack.cpp", 85 "ByteCode/InterpState.cpp", 86 "ByteCode/MemberPointer.cpp", 87 "ByteCode/Pointer.cpp", 88 "ByteCode/PrimType.cpp", 89 "ByteCode/Program.cpp", 90 "ByteCode/Record.cpp", 91 "ByteCode/Source.cpp", 92 "ByteCode/State.cpp", 93 "CXXInheritance.cpp", 94 "Comment.cpp", 95 "CommentBriefParser.cpp", 96 "CommentCommandTraits.cpp", 97 "CommentLexer.cpp", 98 "CommentParser.cpp", 99 "CommentSema.cpp", 100 "ComparisonCategories.cpp", 101 "ComputeDependence.cpp", 102 "DataCollection.cpp", 103 "Decl.cpp", 104 "DeclBase.cpp", 105 "DeclCXX.cpp", 106 "DeclFriend.cpp", 107 "DeclGroup.cpp", 108 "DeclObjC.cpp", 109 "DeclOpenMP.cpp", 110 "DeclPrinter.cpp", 111 "DeclTemplate.cpp", 112 "DeclarationName.cpp", 113 "DynamicRecursiveASTVisitor.cpp", 114 "Expr.cpp", 115 "ExprCXX.cpp", 116 "ExprClassification.cpp", 117 "ExprConcepts.cpp", 118 "ExprConstant.cpp", 119 "ExprObjC.cpp", 120 "ExternalASTMerger.cpp", 121 "ExternalASTSource.cpp", 122 "FormatString.cpp", 123 "InheritViz.cpp", 124 "ItaniumCXXABI.cpp", 125 "ItaniumMangle.cpp", 126 "JSONNodeDumper.cpp", 127 "Mangle.cpp", 128 "MicrosoftCXXABI.cpp", 129 "MicrosoftMangle.cpp", 130 "NSAPI.cpp", 131 "NestedNameSpecifier.cpp", 132 "ODRDiagsEmitter.cpp", 133 "ODRHash.cpp", 134 "OSLog.cpp", 135 "OpenACCClause.cpp", 136 "OpenMPClause.cpp", 137 "ParentMap.cpp", 138 "ParentMapContext.cpp", 139 "PrintfFormatString.cpp", 140 "QualTypeNames.cpp", 141 "Randstruct.cpp", 142 "RawCommentList.cpp", 143 "RecordLayout.cpp", 144 "RecordLayoutBuilder.cpp", 145 "ScanfFormatString.cpp", 146 "SelectorLocationsKind.cpp", 147 "Stmt.cpp", 148 "StmtCXX.cpp", 149 "StmtIterator.cpp", 150 "StmtObjC.cpp", 151 "StmtOpenACC.cpp", 152 "StmtOpenMP.cpp", 153 "StmtPrinter.cpp", 154 "StmtProfile.cpp", 155 "StmtViz.cpp", 156 "TemplateBase.cpp", 157 "TemplateName.cpp", 158 "TextNodeDumper.cpp", 159 "Type.cpp", 160 "TypeLoc.cpp", 161 "TypePrinter.cpp", 162 "VTTBuilder.cpp", 163 "VTableBuilder.cpp", 164 ] 165} 166