From 61f0e446ae77166a88b9a7695488010d327610d8 Mon Sep 17 00:00:00 2001 From: Erwin Janssen Date: Sat, 1 Apr 2017 09:53:42 +0200 Subject: [PATCH] Add plugin/gdiplus to CMake build The dynamic library 'gvplugin_gdiplus' is, besides from the libraries in lib, also dependent on gdiplus. This is a Windows only library that is assumed to be available on Windows systems. The only check added for this project is `if(WIN32)`. --- plugin/CMakeLists.txt | 1 + plugin/gdiplus/CMakeLists.txt | 45 +++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 plugin/gdiplus/CMakeLists.txt diff --git a/plugin/CMakeLists.txt b/plugin/CMakeLists.txt index f942ef714..771d06b80 100644 --- a/plugin/CMakeLists.txt +++ b/plugin/CMakeLists.txt @@ -1,3 +1,4 @@ add_subdirectory(core) add_subdirectory(dot_layout) add_subdirectory(gd) +add_subdirectory(gdiplus) diff --git a/plugin/gdiplus/CMakeLists.txt b/plugin/gdiplus/CMakeLists.txt new file mode 100644 index 000000000..c2a26f690 --- /dev/null +++ b/plugin/gdiplus/CMakeLists.txt @@ -0,0 +1,45 @@ +if (WIN32) + +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${GRAPHVIZ_LIB_DIR}/cdt + ${GRAPHVIZ_LIB_DIR}/cgraph + ${GRAPHVIZ_LIB_DIR}/common + ${GRAPHVIZ_LIB_DIR}/gvc + ${GRAPHVIZ_LIB_DIR}/pathplan +) + +add_library(gvplugin_gdiplus SHARED + # Header files + FileStream.h + gvplugin_gdiplus.h + + # Source files + FileStream.cpp + gvdevice_gdiplus.cpp + gvloadimage_gdiplus.cpp + gvplugin_gdiplus.cpp + gvrender_gdiplus.cpp + gvtextlayout_gdiplus.cpp +) + +target_link_libraries(gvplugin_gdiplus + gvc + gdiplus +) + +# Installation location of library files +install( + TARGETS gvplugin_gdiplus + RUNTIME DESTINATION ${BINARY_INSTALL_DIR} + LIBRARY DESTINATION ${PLUGIN_INSTALL_DIR} + ARCHIVE DESTINATION ${LIBRARY_INSTALL_DIR} +) + +# Specify library version and soversion +set_target_properties(gvplugin_gdiplus PROPERTIES + VERSION ${GRAPHVIZ_PLUGIN_VERSION}.0.0 + SOVERSION ${GRAPHVIZ_PLUGIN_VERSION} +) + +endif (WIN32) -- 2.40.0