1import("//llvm/lib/DebugInfo/PDB/enable_dia.gni")
2
3static_library("PDB") {
4  output_name = "LLVMDebugInfoPDB"
5  deps = [
6    "//llvm/include/llvm/Config:config",
7    "//llvm/lib/DebugInfo/CodeView",
8    "//llvm/lib/DebugInfo/MSF",
9    "//llvm/lib/Object",
10    "//llvm/lib/Support",
11  ]
12  sources = [
13    "GenericError.cpp",
14    "IPDBSourceFile.cpp",
15    "Native/DbiModuleDescriptor.cpp",
16    "Native/DbiModuleDescriptorBuilder.cpp",
17    "Native/DbiModuleList.cpp",
18    "Native/DbiStream.cpp",
19    "Native/DbiStreamBuilder.cpp",
20    "Native/EnumTables.cpp",
21    "Native/GSIStreamBuilder.cpp",
22    "Native/GlobalsStream.cpp",
23    "Native/Hash.cpp",
24    "Native/HashTable.cpp",
25    "Native/InfoStream.cpp",
26    "Native/InfoStreamBuilder.cpp",
27    "Native/InjectedSourceStream.cpp",
28    "Native/ModuleDebugStream.cpp",
29    "Native/NamedStreamMap.cpp",
30    "Native/NativeCompilandSymbol.cpp",
31    "Native/NativeEnumGlobals.cpp",
32    "Native/NativeEnumInjectedSources.cpp",
33    "Native/NativeEnumModules.cpp",
34    "Native/NativeEnumTypes.cpp",
35    "Native/NativeExeSymbol.cpp",
36    "Native/NativeRawSymbol.cpp",
37    "Native/NativeSession.cpp",
38    "Native/NativeSymbolEnumerator.cpp",
39    "Native/NativeTypeArray.cpp",
40    "Native/NativeTypeBuiltin.cpp",
41    "Native/NativeTypeEnum.cpp",
42    "Native/NativeTypeFunctionSig.cpp",
43    "Native/NativeTypePointer.cpp",
44    "Native/NativeTypeTypedef.cpp",
45    "Native/NativeTypeUDT.cpp",
46    "Native/NativeTypeVTShape.cpp",
47    "Native/PDBFile.cpp",
48    "Native/PDBFileBuilder.cpp",
49    "Native/PDBStringTable.cpp",
50    "Native/PDBStringTableBuilder.cpp",
51    "Native/PublicsStream.cpp",
52    "Native/RawError.cpp",
53    "Native/SymbolCache.cpp",
54    "Native/SymbolStream.cpp",
55    "Native/TpiHashing.cpp",
56    "Native/TpiStream.cpp",
57    "Native/TpiStreamBuilder.cpp",
58    "PDB.cpp",
59    "PDBContext.cpp",
60    "PDBExtras.cpp",
61    "PDBInterfaceAnchors.cpp",
62    "PDBSymDumper.cpp",
63    "PDBSymbol.cpp",
64    "PDBSymbolAnnotation.cpp",
65    "PDBSymbolBlock.cpp",
66    "PDBSymbolCompiland.cpp",
67    "PDBSymbolCompilandDetails.cpp",
68    "PDBSymbolCompilandEnv.cpp",
69    "PDBSymbolCustom.cpp",
70    "PDBSymbolData.cpp",
71    "PDBSymbolExe.cpp",
72    "PDBSymbolFunc.cpp",
73    "PDBSymbolFuncDebugEnd.cpp",
74    "PDBSymbolFuncDebugStart.cpp",
75    "PDBSymbolLabel.cpp",
76    "PDBSymbolPublicSymbol.cpp",
77    "PDBSymbolThunk.cpp",
78    "PDBSymbolTypeArray.cpp",
79    "PDBSymbolTypeBaseClass.cpp",
80    "PDBSymbolTypeBuiltin.cpp",
81    "PDBSymbolTypeCustom.cpp",
82    "PDBSymbolTypeDimension.cpp",
83    "PDBSymbolTypeEnum.cpp",
84    "PDBSymbolTypeFriend.cpp",
85    "PDBSymbolTypeFunctionArg.cpp",
86    "PDBSymbolTypeFunctionSig.cpp",
87    "PDBSymbolTypeManaged.cpp",
88    "PDBSymbolTypePointer.cpp",
89    "PDBSymbolTypeTypedef.cpp",
90    "PDBSymbolTypeUDT.cpp",
91    "PDBSymbolTypeVTable.cpp",
92    "PDBSymbolTypeVTableShape.cpp",
93    "PDBSymbolUnknown.cpp",
94    "PDBSymbolUsingNamespace.cpp",
95    "UDTLayout.cpp",
96  ]
97  if (llvm_enable_dia_sdk) {
98    sources += [
99      "DIA/DIADataStream.cpp",
100      "DIA/DIAEnumDebugStreams.cpp",
101      "DIA/DIAEnumFrameData.cpp",
102      "DIA/DIAEnumInjectedSources.cpp",
103      "DIA/DIAEnumLineNumbers.cpp",
104      "DIA/DIAEnumSectionContribs.cpp",
105      "DIA/DIAEnumSourceFiles.cpp",
106      "DIA/DIAEnumSymbols.cpp",
107      "DIA/DIAEnumTables.cpp",
108      "DIA/DIAError.cpp",
109      "DIA/DIAFrameData.cpp",
110      "DIA/DIAInjectedSource.cpp",
111      "DIA/DIALineNumber.cpp",
112      "DIA/DIARawSymbol.cpp",
113      "DIA/DIASectionContrib.cpp",
114      "DIA/DIASession.cpp",
115      "DIA/DIASourceFile.cpp",
116      "DIA/DIATable.cpp",
117    ]
118    libs = [ "diaguids.lib" ]
119  }
120}
121