1 macro(add_pdb_impl_folder group)
2 list(APPEND PDB_IMPL_SOURCES ${ARGN})
3 source_group(${group} FILES ${ARGN})
6 if(LLVM_ENABLE_DIA_SDK)
7 include_directories(${MSVC_DIA_SDK_DIR}/include)
8 set(LIBPDB_LINK_FOLDERS "${MSVC_DIA_SDK_DIR}\\lib")
9 if (CMAKE_SIZEOF_VOID_P EQUAL 8)
10 set(LIBPDB_LINK_FOLDERS "${LIBPDB_LINK_FOLDERS}\\amd64")
12 file(TO_CMAKE_PATH "${LIBPDB_LINK_FOLDERS}\\diaguids.lib" LIBPDB_ADDITIONAL_LIBRARIES)
14 add_pdb_impl_folder(DIA
16 DIA/DIAEnumDebugStreams.cpp
17 DIA/DIAEnumFrameData.cpp
18 DIA/DIAEnumInjectedSources.cpp
19 DIA/DIAEnumLineNumbers.cpp
20 DIA/DIAEnumSectionContribs.cpp
21 DIA/DIAEnumSourceFiles.cpp
22 DIA/DIAEnumSymbols.cpp
26 DIA/DIAInjectedSource.cpp
29 DIA/DIASectionContrib.cpp
35 set(LIBPDB_ADDITIONAL_HEADER_DIRS "${LLVM_MAIN_INCLUDE_DIR}/llvm/DebugInfo/PDB/DIA")
38 add_pdb_impl_folder(Native
39 Native/DbiModuleDescriptor.cpp
40 Native/DbiModuleDescriptorBuilder.cpp
41 Native/DbiModuleList.cpp
43 Native/DbiStreamBuilder.cpp
45 Native/GlobalsStream.cpp
49 Native/InfoStreamBuilder.cpp
50 Native/InjectedSourceStream.cpp
51 Native/ModuleDebugStream.cpp
52 Native/NativeCompilandSymbol.cpp
53 Native/NativeEnumGlobals.cpp
54 Native/NativeEnumInjectedSources.cpp
55 Native/NativeEnumModules.cpp
56 Native/NativeEnumTypes.cpp
57 Native/NativeExeSymbol.cpp
58 Native/NativeRawSymbol.cpp
59 Native/NativeSymbolEnumerator.cpp
60 Native/NativeTypeArray.cpp
61 Native/NativeTypeBuiltin.cpp
62 Native/NativeTypeEnum.cpp
63 Native/NativeTypeFunctionSig.cpp
64 Native/NativeTypePointer.cpp
65 Native/NativeTypeTypedef.cpp
66 Native/NativeTypeUDT.cpp
67 Native/NativeTypeVTShape.cpp
68 Native/NamedStreamMap.cpp
69 Native/NativeSession.cpp
71 Native/PDBFileBuilder.cpp
72 Native/PDBStringTable.cpp
73 Native/PDBStringTableBuilder.cpp
74 Native/PublicsStream.cpp
75 Native/GSIStreamBuilder.cpp
77 Native/SymbolCache.cpp
78 Native/SymbolStream.cpp
81 Native/TpiStreamBuilder.cpp
84 list(APPEND LIBPDB_ADDITIONAL_HEADER_DIRS "${LLVM_MAIN_INCLUDE_DIR}/llvm/DebugInfo/PDB/Native")
85 list(APPEND LIBPDB_ADDITIONAL_HEADER_DIRS "${LLVM_MAIN_INCLUDE_DIR}/llvm/DebugInfo/PDB")
87 add_llvm_library(LLVMDebugInfoPDB
93 PDBInterfaceAnchors.cpp
95 PDBSymbolAnnotation.cpp
97 PDBSymbolCompiland.cpp
98 PDBSymbolCompilandDetails.cpp
99 PDBSymbolCompilandEnv.cpp
104 PDBSymbolFuncDebugEnd.cpp
105 PDBSymbolFuncDebugStart.cpp
107 PDBSymbolPublicSymbol.cpp
109 PDBSymbolTypeArray.cpp
110 PDBSymbolTypeBaseClass.cpp
111 PDBSymbolTypeBuiltin.cpp
112 PDBSymbolTypeCustom.cpp
113 PDBSymbolTypeDimension.cpp
114 PDBSymbolTypeEnum.cpp
115 PDBSymbolTypeFriend.cpp
116 PDBSymbolTypeFunctionArg.cpp
117 PDBSymbolTypeFunctionSig.cpp
118 PDBSymbolTypeManaged.cpp
119 PDBSymbolTypePointer.cpp
120 PDBSymbolTypeTypedef.cpp
122 PDBSymbolTypeVTable.cpp
123 PDBSymbolTypeVTableShape.cpp
125 PDBSymbolUsingNamespace.cpp
130 ADDITIONAL_HEADER_DIRS
131 ${LIBPDB_ADDITIONAL_HEADER_DIRS}
134 target_link_libraries(LLVMDebugInfoPDB INTERFACE "${LIBPDB_ADDITIONAL_LIBRARIES}")