import("//clang/utils/TableGen/clang_tablegen.gni") clang_tablegen("Opcodes") { visibility = [ ":AST" ] args = [ "-gen-clang-opcodes" ] td_file = "Interp/Opcodes.td" } clang_tablegen("AttrDocTable") { visibility = [ ":AST" ] args = [ "-gen-clang-attr-doc-table" ] td_file = "//clang/include/clang/Basic/Attr.td" } static_library("AST") { output_name = "clangAST" configs += [ "//llvm/utils/gn/build:clang_code" ] deps = [ ":AttrDocTable", ":Opcodes", "//clang/include/clang/AST:AttrImpl", "//clang/include/clang/AST:AttrNodeTraverse", "//clang/include/clang/AST:AttrTextNodeDump", "//clang/include/clang/AST:CommentCommandInfo", "//clang/include/clang/AST:CommentHTMLNamedCharacterReferences", "//clang/include/clang/AST:CommentHTMLTags", "//clang/include/clang/AST:CommentHTMLTagsProperties", "//clang/include/clang/AST:DeclNodes", "//clang/lib/Basic", "//clang/lib/Lex", "//llvm/lib/BinaryFormat", "//llvm/lib/Frontend/OpenMP", "//llvm/lib/Support", ] # Generated files used in public headers should be in public_deps, the rest # in regular deps. public_deps = [ "//clang/include/clang/AST:AbstractBasicReader", "//clang/include/clang/AST:AbstractBasicWriter", "//clang/include/clang/AST:AbstractTypeReader", "//clang/include/clang/AST:AbstractTypeWriter", "//clang/include/clang/AST:AttrVisitor", "//clang/include/clang/AST:Attrs", "//clang/include/clang/AST:CommentCommandList", "//clang/include/clang/AST:CommentNodes", "//clang/include/clang/AST:StmtNodes", "//clang/include/clang/AST:TypeNodes", ] sources = [ "APValue.cpp", "ASTConcept.cpp", "ASTConsumer.cpp", "ASTContext.cpp", "ASTDiagnostic.cpp", "ASTDumper.cpp", "ASTImporter.cpp", "ASTImporterLookupTable.cpp", "ASTStructuralEquivalence.cpp", "ASTTypeTraits.cpp", "AttrDocTable.cpp", "AttrImpl.cpp", "CXXInheritance.cpp", "Comment.cpp", "CommentBriefParser.cpp", "CommentCommandTraits.cpp", "CommentLexer.cpp", "CommentParser.cpp", "CommentSema.cpp", "ComparisonCategories.cpp", "ComputeDependence.cpp", "DataCollection.cpp", "Decl.cpp", "DeclBase.cpp", "DeclCXX.cpp", "DeclFriend.cpp", "DeclGroup.cpp", "DeclObjC.cpp", "DeclOpenMP.cpp", "DeclPrinter.cpp", "DeclTemplate.cpp", "DeclarationName.cpp", "Expr.cpp", "ExprCXX.cpp", "ExprClassification.cpp", "ExprConcepts.cpp", "ExprConstant.cpp", "ExprObjC.cpp", "ExternalASTMerger.cpp", "ExternalASTSource.cpp", "FormatString.cpp", "InheritViz.cpp", "Interp/ByteCodeEmitter.cpp", "Interp/ByteCodeExprGen.cpp", "Interp/ByteCodeGenError.cpp", "Interp/ByteCodeStmtGen.cpp", "Interp/Context.cpp", "Interp/Descriptor.cpp", "Interp/Disasm.cpp", "Interp/EvalEmitter.cpp", "Interp/Frame.cpp", "Interp/Function.cpp", "Interp/Interp.cpp", "Interp/InterpBlock.cpp", "Interp/InterpFrame.cpp", "Interp/InterpStack.cpp", "Interp/InterpState.cpp", "Interp/Pointer.cpp", "Interp/PrimType.cpp", "Interp/Program.cpp", "Interp/Record.cpp", "Interp/Source.cpp", "Interp/State.cpp", "ItaniumCXXABI.cpp", "ItaniumMangle.cpp", "JSONNodeDumper.cpp", "Mangle.cpp", "MicrosoftCXXABI.cpp", "MicrosoftMangle.cpp", "NSAPI.cpp", "NestedNameSpecifier.cpp", "ODRHash.cpp", "OSLog.cpp", "OpenMPClause.cpp", "ParentMap.cpp", "ParentMapContext.cpp", "PrintfFormatString.cpp", "QualTypeNames.cpp", "Randstruct.cpp", "RawCommentList.cpp", "RecordLayout.cpp", "RecordLayoutBuilder.cpp", "ScanfFormatString.cpp", "SelectorLocationsKind.cpp", "Stmt.cpp", "StmtCXX.cpp", "StmtIterator.cpp", "StmtObjC.cpp", "StmtOpenMP.cpp", "StmtPrinter.cpp", "StmtProfile.cpp", "StmtViz.cpp", "TemplateBase.cpp", "TemplateName.cpp", "TextNodeDumper.cpp", "Type.cpp", "TypeLoc.cpp", "TypePrinter.cpp", "VTTBuilder.cpp", "VTableBuilder.cpp", ] }