diff options
Diffstat (limited to 'src/ToolBox/SOS/diasdk/CMakeLists.txt')
-rw-r--r-- | src/ToolBox/SOS/diasdk/CMakeLists.txt | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/ToolBox/SOS/diasdk/CMakeLists.txt b/src/ToolBox/SOS/diasdk/CMakeLists.txt new file mode 100644 index 0000000000..07bbcdc9d9 --- /dev/null +++ b/src/ToolBox/SOS/diasdk/CMakeLists.txt @@ -0,0 +1,16 @@ +# replace backslashes in path with forward slash +STRING(REGEX REPLACE "\\\\" "/" VSINSTALLDIR $ENV{VSINSTALLDIR} ) + +# Generate managed type lib from dia2.idl +add_custom_target(dialib ALL + # generate tlb file from idl + COMMAND midl.exe /I"${VSINSTALLDIR}DIA SDK/include" /tlb ${CMAKE_CURRENT_BINARY_DIR}/dia2.tlb /Zp8 "${VSINSTALLDIR}DIA SDK/idl/dia2.idl" + # run tlbimp to generate managed type library + COMMAND TlbImp.exe /silent /namespace:Dia /unsafe /strictref:nopia ${CMAKE_CURRENT_BINARY_DIR}/dia2.tlb /out:${CMAKE_CURRENT_BINARY_DIR}/dialib.dll + COMMENT Generating managed type library from dia2.idl +) + +# In order to use dialib.dll as library target it needs to be imported into cmake +# Target is used in ToolBox/SOS/dactablegen/cmakelists.txt +add_library_clr(dialib_dll SHARED IMPORTED GLOBAL) +set_property(TARGET dialib_dll PROPERTY IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/dialib.dll) |