xref: /llvm-project/llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn (revision 4d70f5fe130d129efc0157342fb027f7b7b3bc22)
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