Home | History | Annotate | Download | only in PDB
      1 macro(add_pdb_impl_folder group)
      2   list(APPEND PDB_IMPL_SOURCES ${ARGN})
      3   source_group(${group} FILES ${ARGN})
      4 endmacro()
      5 
      6 if(HAVE_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")
     11   endif()
     12   file(TO_CMAKE_PATH "${LIBPDB_LINK_FOLDERS}\\diaguids.lib" LIBPDB_ADDITIONAL_LIBRARIES)
     13 
     14   add_pdb_impl_folder(DIA
     15     DIA/DIADataStream.cpp
     16     DIA/DIAEnumDebugStreams.cpp
     17     DIA/DIAEnumLineNumbers.cpp
     18     DIA/DIAEnumSourceFiles.cpp
     19     DIA/DIAEnumSymbols.cpp
     20     DIA/DIALineNumber.cpp
     21     DIA/DIARawSymbol.cpp
     22     DIA/DIASession.cpp
     23     DIA/DIASourceFile.cpp
     24     )
     25 
     26     set(LIBPDB_ADDITIONAL_HEADER_DIRS "${LLVM_MAIN_INCLUDE_DIR}/llvm/DebugInfo/PDB/DIA")
     27 
     28 endif()
     29 
     30 list(APPEND LIBPDB_ADDITIONAL_HEADER_DIRS "${LLVM_MAIN_INCLUDE_DIR}/llvm/DebugInfo/PDB")
     31 
     32 add_llvm_library(LLVMDebugInfoPDB
     33   IPDBSourceFile.cpp
     34   PDB.cpp
     35   PDBContext.cpp
     36   PDBExtras.cpp
     37   PDBInterfaceAnchors.cpp
     38   PDBSymbol.cpp
     39   PDBSymbolAnnotation.cpp
     40   PDBSymbolBlock.cpp
     41   PDBSymbolCompiland.cpp
     42   PDBSymbolCompilandDetails.cpp
     43   PDBSymbolCompilandEnv.cpp
     44   PDBSymbolCustom.cpp
     45   PDBSymbolData.cpp
     46   PDBSymbolExe.cpp
     47   PDBSymbolFunc.cpp
     48   PDBSymbolFuncDebugEnd.cpp
     49   PDBSymbolFuncDebugStart.cpp
     50   PDBSymbolLabel.cpp
     51   PDBSymbolPublicSymbol.cpp
     52   PDBSymbolThunk.cpp
     53   PDBSymbolTypeArray.cpp
     54   PDBSymbolTypeBaseClass.cpp
     55   PDBSymbolTypeBuiltin.cpp
     56   PDBSymbolTypeCustom.cpp
     57   PDBSymbolTypeDimension.cpp
     58   PDBSymbolTypeEnum.cpp
     59   PDBSymbolTypeFriend.cpp
     60   PDBSymbolTypeFunctionArg.cpp
     61   PDBSymbolTypeFunctionSig.cpp
     62   PDBSymbolTypeManaged.cpp
     63   PDBSymbolTypePointer.cpp
     64   PDBSymbolTypeTypedef.cpp
     65   PDBSymbolTypeUDT.cpp
     66   PDBSymbolTypeVTable.cpp
     67   PDBSymbolTypeVTableShape.cpp
     68   PDBSymbolUnknown.cpp
     69   PDBSymbolUsingNamespace.cpp
     70   PDBSymDumper.cpp
     71   ${PDB_IMPL_SOURCES}
     72 
     73   ADDITIONAL_HEADER_DIRS
     74   ${LIBPDB_ADDITIONAL_HEADER_DIRS}
     75   )
     76 
     77 target_link_libraries(LLVMDebugInfoPDB INTERFACE "${LIBPDB_ADDITIONAL_LIBRARIES}")
     78