diff options
Diffstat (limited to 'vcpkg/ports/graphviz')
| -rw-r--r-- | vcpkg/ports/graphviz/cmake-project-include.cmake | 10 | ||||
| -rw-r--r-- | vcpkg/ports/graphviz/disable-pragma-lib.patch | 36 | ||||
| -rw-r--r-- | vcpkg/ports/graphviz/fix-dependencies.patch | 151 | ||||
| -rw-r--r-- | vcpkg/ports/graphviz/no-absolute-paths.patch | 10 | ||||
| -rw-r--r-- | vcpkg/ports/graphviz/portfile.cmake | 156 | ||||
| -rw-r--r-- | vcpkg/ports/graphviz/select-plugins.patch | 20 | ||||
| -rw-r--r-- | vcpkg/ports/graphviz/static-linkage.patch | 39 | ||||
| -rw-r--r-- | vcpkg/ports/graphviz/vcpkg.json | 42 | ||||
| -rw-r--r-- | vcpkg/ports/graphviz/webp-install.patch | 13 | ||||
| -rw-r--r-- | vcpkg/ports/graphviz/workaround-insufficiently-ugly-wchar-h.patch | 12 |
10 files changed, 489 insertions, 0 deletions
diff --git a/vcpkg/ports/graphviz/cmake-project-include.cmake b/vcpkg/ports/graphviz/cmake-project-include.cmake new file mode 100644 index 0000000..81a50f9 --- /dev/null +++ b/vcpkg/ports/graphviz/cmake-project-include.cmake @@ -0,0 +1,10 @@ +if(MSVC)
+ find_package(unofficial-getopt-win32 CONFIG REQUIRED)
+ set(GETOPT_LIBRARY "unofficial::getopt-win32::getopt" CACHE INTERNAL "vcpkg")
+ set(GETOPT_RUNTIME_LIBRARY "unused" CACHE INTERNAL "vcpkg")
+endif()
+
+if(MINGW AND BUILD_SHARED_LIBS AND NOT CMAKE_CROSSCOMPILING)
+ # Prevent running `configure_plugins.cmake`.
+ set(CMAKE_CROSSCOMPILING 1)
+endif()
diff --git a/vcpkg/ports/graphviz/disable-pragma-lib.patch b/vcpkg/ports/graphviz/disable-pragma-lib.patch new file mode 100644 index 0000000..b7dd0c1 --- /dev/null +++ b/vcpkg/ports/graphviz/disable-pragma-lib.patch @@ -0,0 +1,36 @@ +diff --git a/cmd/gvedit/main.cpp b/cmd/gvedit/main.cpp +index 98a2a4a..e810c36 100644 +--- a/cmd/gvedit/main.cpp ++++ b/cmd/gvedit/main.cpp +@@ -30,6 +30,7 @@ + + + #ifdef _MSC_VER ++#elif 0 + #pragma comment( lib, "cgraph.lib" ) + #pragma comment( lib, "gvc.lib" ) + #endif +diff --git a/plugin/gdk/gvloadimage_gdk.c b/plugin/gdk/gvloadimage_gdk.c +index 84c6a6a..0d3ec64 100644 +--- a/plugin/gdk/gvloadimage_gdk.c ++++ b/plugin/gdk/gvloadimage_gdk.c +@@ -22,6 +22,7 @@ + #include <gdk/gdkcairo.h> + + #ifdef _MSC_VER //*dependencies ++#elif 0 + #pragma comment( lib, "gvc.lib" ) + #pragma comment( lib, "glib-2.0.lib" ) + #pragma comment( lib, "cairo.lib" ) +diff --git a/plugin/webp/gvloadimage_webp.c b/plugin/webp/gvloadimage_webp.c +index c983556..446d43f 100644 +--- a/plugin/webp/gvloadimage_webp.c ++++ b/plugin/webp/gvloadimage_webp.c +@@ -24,6 +24,7 @@ + #include <webp/decode.h> + + #ifdef _MSC_VER //*dependencies ++#elif 0 + #pragma comment( lib, "gvc.lib" ) + #pragma comment( lib, "glib-2.0.lib" ) + #pragma comment( lib, "pango-1.0.lib" ) diff --git a/vcpkg/ports/graphviz/fix-dependencies.patch b/vcpkg/ports/graphviz/fix-dependencies.patch new file mode 100644 index 0000000..72ccafe --- /dev/null +++ b/vcpkg/ports/graphviz/fix-dependencies.patch @@ -0,0 +1,151 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 12fd424..11371df 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -185,12 +185,14 @@ find_package(PkgConfig) + if(PkgConfig_FOUND) + pkg_check_modules(GDK gdk-2.0) + pkg_check_modules(GDK_PIXBUF gdk-pixbuf-2.0) +- pkg_check_modules(LASI lasi) +- pkg_check_modules(POPPLER poppler-glib) ++ set(LASI_FOUND 0) ++ set(POPPLER_FOUND 0) + pkg_check_modules(RSVG librsvg-2.0) + pkg_check_modules(WEBP libwebp) ++ if(UNIX) + pkg_check_modules(X11 x11) + pkg_check_modules(XRENDER xrender) ++ endif() + else() + set(GDK_FOUND 0) + set(GDK_PIXBUF_FOUND 0) +diff --git a/cmake/FindCAIRO.cmake b/cmake/FindCAIRO.cmake +index 65bb42f..47949f6 100644 +--- a/cmake/FindCAIRO.cmake ++++ b/cmake/FindCAIRO.cmake +@@ -1,6 +1,6 @@ + include(FindPackageHandleStandardArgs) + +-if(WIN32) ++if(0) + find_path( + CAIRO_INCLUDE_DIR cairo.h + PATH_SUFFIXES cairo +@@ -39,7 +39,9 @@ if(WIN32) + ) + else() + find_package(PkgConfig) +- pkg_check_modules(CAIRO cairo) ++ pkg_check_modules(CAIRO cairo IMPORTED_TARGET) ++ set(CAIRO_LIBRARIES PkgConfig::CAIRO) ++ set(CAIRO_LINK_LIBRARIES PkgConfig::CAIRO) + + find_package_handle_standard_args(CAIRO DEFAULT_MSG + CAIRO_INCLUDE_DIRS +diff --git a/cmake/FindGD.cmake b/cmake/FindGD.cmake +index 0deb5e6..ef42889 100644 +--- a/cmake/FindGD.cmake ++++ b/cmake/FindGD.cmake +@@ -1,3 +1,11 @@ ++find_package(PkgConfig) ++pkg_check_modules(GD gdlib IMPORTED_TARGET) ++set(GD_LIBRARIES PkgConfig::GD) ++foreach(item IN ITEMS FONTCONFIG FREETYPE GIF JPEG PNG) ++ set(HAVE_GD_${item} 1) ++endforeach() ++return() ++ + find_path(GD_INCLUDE_DIR gd.h) + find_library(GD_LIBRARY NAMES gd libgd) + find_program(GD_RUNTIME_LIBRARY libgd.dll) +diff --git a/cmake/FindGTS.cmake b/cmake/FindGTS.cmake +index 8e544e9..88dd849 100644 +--- a/cmake/FindGTS.cmake ++++ b/cmake/FindGTS.cmake +@@ -1,5 +1,5 @@ + include(FindPackageHandleStandardArgs) +-if(WIN32) ++if(0) + find_path(GTS_INCLUDE_DIR gts.h) + find_path(GLIB_INCLUDE_DIR glib.h PATH_SUFFIXES glib-2.0) + find_path(GLIBCONFIG_INCLUDE_DIR glibconfig.h +@@ -40,7 +40,8 @@ if(WIN32) + ) + else() + find_package(PkgConfig) +- pkg_check_modules(GTS gts) ++ pkg_check_modules(GTS gts IMPORTED_TARGET) ++ set(GTS_LINK_LIBRARIES PkgConfig::GTS) + + find_package_handle_standard_args(GTS DEFAULT_MSG + GTS_INCLUDE_DIRS +diff --git a/cmake/FindLTDL.cmake b/cmake/FindLTDL.cmake +index e955b74..046e9e8 100644 +--- a/cmake/FindLTDL.cmake ++++ b/cmake/FindLTDL.cmake +@@ -17,4 +17,7 @@ mark_as_advanced(LTDL_INCLUDE_DIR LTDL_LIBRARY) + set(LTDL_INCLUDE_DIRS ${LTDL_INCLUDE_DIR}) + if(NOT WIN32 OR MINGW) + set(LTDL_LIBRARIES ${LTDL_LIBRARY}) ++ if(CMAKE_DL_LIBS AND NOT BUILD_SHARED_LIBS) ++ set(LTDL_LIBRARIES "${LTDL_LIBRARIES};${CMAKE_DL_LIBS}") ++ endif() + endif() +diff --git a/cmake/FindPANGOCAIRO.cmake b/cmake/FindPANGOCAIRO.cmake +index b92e5be..01c4cc7 100644 +--- a/cmake/FindPANGOCAIRO.cmake ++++ b/cmake/FindPANGOCAIRO.cmake +@@ -1,6 +1,6 @@ + include(FindPackageHandleStandardArgs) + +-if(WIN32) ++if(0) + find_path(PANGOCAIRO_INCLUDE_DIR pango/pangocairo.h PATH_SUFFIXES pango-1.0) + find_path(GLIB_INCLUDE_DIR glib.h PATH_SUFFIXES glib-2.0) + find_path(GLIBCONFIG_INCLUDE_DIR glibconfig.h +@@ -78,7 +78,9 @@ if(WIN32) + ) + else() + find_package(PkgConfig) +- pkg_check_modules(PANGOCAIRO pangocairo) ++ pkg_check_modules(PANGOCAIRO pangocairo IMPORTED_TARGET) ++ set(PANGOCAIRO_LIBRARIES PkgConfig::PANGOCAIRO) ++ set(PANGOCAIRO_LINK_LIBRARIES PkgConfig::PANGOCAIRO) # https://gitlab.kitware.com/cmake/cmake/-/issues/16154 + + find_package_handle_standard_args(PANGOCAIRO DEFAULT_MSG + PANGOCAIRO_INCLUDE_DIRS +diff --git a/cmd/dot/CMakeLists.txt b/cmd/dot/CMakeLists.txt +index d2ea435..3b068b0 100644 +--- a/cmd/dot/CMakeLists.txt ++++ b/cmd/dot/CMakeLists.txt +@@ -146,7 +146,6 @@ endif() + + find_package(PkgConfig) + if(PkgConfig_FOUND) +- pkg_check_modules(GTS gts) + if(GTS_FOUND) + target_include_directories(dot SYSTEM PRIVATE ${GTS_INCLUDE_DIRS}) + target_link_libraries(dot PRIVATE ${GTS_LINK_LIBRARIES}) +@@ -223,7 +222,7 @@ if(WEBP_FOUND) + endif() + + find_library(SOCKET socket) +-if(SOCKET) ++if(0) + target_link_libraries(dot PRIVATE ${SOCKET}) + endif() + +diff --git a/lib/cdt/CMakeLists.txt b/lib/cdt/CMakeLists.txt +index 4057b57..bf1a913 100644 +--- a/lib/cdt/CMakeLists.txt ++++ b/lib/cdt/CMakeLists.txt +@@ -68,3 +68,9 @@ set_target_properties(cdt PROPERTIES + VERSION 5.0.0 + SOVERSION 5 + ) ++ ++set(THREADS_PREFER_PTHREAD_FLAG ON) ++find_package(Threads) ++if(TARGET Threads::Threads) ++ target_link_libraries(cdt Threads::Threads) ++endif() diff --git a/vcpkg/ports/graphviz/no-absolute-paths.patch b/vcpkg/ports/graphviz/no-absolute-paths.patch new file mode 100644 index 0000000..2f18d47 --- /dev/null +++ b/vcpkg/ports/graphviz/no-absolute-paths.patch @@ -0,0 +1,10 @@ +diff --git a/lib/gvc/CMakeLists.txt b/lib/gvc/CMakeLists.txt +index b437bde..04fe8e8 100644 +--- a/lib/gvc/CMakeLists.txt ++++ b/lib/gvc/CMakeLists.txt +@@ -1,4 +1,4 @@ +-add_definitions(-DGVC_EXPORTS -DGVLIBDIR="${LIBRARY_INSTALL_DIR}/graphviz") ++add_definitions(-DGVC_EXPORTS -DGVLIBDIR="") + + add_library(gvc + # Header files diff --git a/vcpkg/ports/graphviz/portfile.cmake b/vcpkg/ports/graphviz/portfile.cmake new file mode 100644 index 0000000..93c6a82 --- /dev/null +++ b/vcpkg/ports/graphviz/portfile.cmake @@ -0,0 +1,156 @@ +set(VCPKG_POLICY_DLLS_IN_STATIC_LIBRARY enabled) # for plugins
+set(VCPKG_POLICY_DLLS_WITHOUT_EXPORTS enabled) # kitty and vt plugin not ready yet?
+
+vcpkg_from_gitlab(
+ GITLAB_URL https://gitlab.com
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO graphviz/graphviz
+ REF "${VERSION}"
+ SHA512 6b0cffaf4bde7df260894b1b9d74e8a1d5aec11736511a86d99bc369e3f8db99f7050ae917cf1a066cc7d87695a57ef5b9c19521d211fee48c8a0c41ad0f4aac
+ HEAD_REF main
+ PATCHES
+ disable-pragma-lib.patch
+ fix-dependencies.patch
+ no-absolute-paths.patch
+ select-plugins.patch
+ static-linkage.patch
+ webp-install.patch
+ workaround-insufficiently-ugly-wchar-h.patch # Avoids conflict between #define S and VS2022 17.13's <wchar.h>
+)
+
+vcpkg_list(SET OPTIONS)
+if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW)
+ vcpkg_download_distfile(
+ LTDL_H_PATH
+ URLS "https://gitlab.com/graphviz/graphviz-windows-dependencies/-/raw/141d3a21be904fa8dc2ae3ed01d36684db07a35d/x64/include/ltdl.h"
+ FILENAME graphviz-ltdl-141d3a21.h
+ SHA512 f2d20e849e35060536265f47014c40eb70e57dacd600a9db112fc465fbfa6a66217b44a8c3dc33039c260a27f09d9034b329b03cc28c32a22ec503fcd17b78cd
+ )
+ file(INSTALL "${LTDL_H_PATH}" DESTINATION "${SOURCE_PATH}/libltdl" RENAME ltdl.h)
+ vcpkg_list(APPEND OPTIONS "-DLTDL_INCLUDE_DIR=${SOURCE_PATH}/libltdl")
+endif()
+
+if(VCPKG_HOST_IS_WINDOWS)
+ vcpkg_acquire_msys(MSYS_ROOT PACKAGES gawk)
+ vcpkg_add_to_path("${MSYS_ROOT}/usr/bin")
+ unset(ENV{MSYSTEM_PREFIX})
+endif()
+
+vcpkg_find_acquire_program(BISON)
+vcpkg_find_acquire_program(FLEX)
+vcpkg_find_acquire_program(GIT)
+vcpkg_find_acquire_program(PYTHON3)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ "-DVERSION=${VERSION}"
+ "-DBISON_EXECUTABLE=${BISON}"
+ "-DFLEX_EXECUTABLE=${FLEX}"
+ "-DGIT=${GIT}"
+ "-DPython3_EXECUTABLE=${PYTHON3}"
+ "-DPKG_CONFIG_EXECUTABLE=${CURRENT_HOST_INSTALLED_DIR}/tools/pkgconf/pkgconf"
+ "-DCMAKE_PROJECT_INCLUDE=${CMAKE_CURRENT_LIST_DIR}/cmake-project-include.cmake"
+ -Dinstall_win_dependency_dlls=OFF
+ -Duse_win_pre_inst_libs=OFF
+ -Dwith_gvedit=OFF
+ -Dwith_smyrna=OFF
+ -DCMAKE_DISABLE_FIND_PACKAGE_ANN=ON
+ -DCMAKE_DISABLE_FIND_PACKAGE_DevIL=ON
+ -DCMAKE_REQUIRE_FIND_PACKAGE_CAIRO=ON
+ -DCMAKE_REQUIRE_FIND_PACKAGE_EXPAT=ON
+ -DCMAKE_REQUIRE_FIND_PACKAGE_GD=ON
+ -DCMAKE_REQUIRE_FIND_PACKAGE_LTDL=ON
+ -DCMAKE_REQUIRE_FIND_PACKAGE_PANGOCAIRO=ON
+ ${OPTIONS}
+ MAYBE_UNUSED_VARIABLES
+ install_win_dependency_dlls
+)
+vcpkg_cmake_install(ADD_BIN_TO_PATH)
+vcpkg_fixup_pkgconfig()
+
+if(VCPKG_TARGET_IS_WINDOWS)
+ file(GLOB headers "${CURRENT_PACKAGES_DIR}/include/graphviz/*.h")
+ foreach(file IN LISTS headers)
+ vcpkg_replace_string("${file}" "#ifdef GVDLL" "#if 1" IGNORE_UNCHANGED)
+ endforeach()
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
+ # static libs built with dllexport must be used with dllexport
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/graphviz/cdt.h" "#ifdef EXPORT_CDT" "#if 1")
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/graphviz/cgraph.h" "#ifdef EXPORT_CGRAPH" "#if 1")
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/graphviz/gvc.h" "#ifdef GVC_EXPORTS" "#if 1")
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/graphviz/gvplugin_loadimage.h" "#ifdef GVC_EXPORTS" "#if 1")
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/graphviz/pack.h" "#ifdef GVC_EXPORTS" "#if 1")
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/graphviz/pathgeom.h" "#ifdef PATHPLAN_EXPORTS" "#if 1")
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/graphviz/pathplan.h" "#ifdef PATHPLAN_EXPORTS" "#if 1")
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/graphviz/xdot.h" "#ifdef EXPORT_XDOT" "#if 1")
+ endif()
+endif()
+
+file(REMOVE_RECURSE
+ "${CURRENT_PACKAGES_DIR}/debug/include"
+ "${CURRENT_PACKAGES_DIR}/debug/share"
+ "${CURRENT_PACKAGES_DIR}/share/man"
+)
+
+file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/${PORT}")
+foreach(script_or_link IN ITEMS "dot2gxl${VCPKG_TARGET_EXECUTABLE_SUFFIX}" gvmap.sh)
+ if(EXISTS "${CURRENT_PACKAGES_DIR}/bin/${script_or_link}")
+ file(RENAME "${CURRENT_PACKAGES_DIR}/bin/${script_or_link}" "${CURRENT_PACKAGES_DIR}/tools/${PORT}/${script_or_link}")
+ file(REMOVE "${CURRENT_PACKAGES_DIR}/debug/bin/${script_or_link}")
+ endif()
+endforeach()
+vcpkg_copy_tools(
+ TOOL_NAMES
+ acyclic
+ bcomps
+ ccomps
+ circo
+ cluster
+ diffimg
+ dijkstra
+ dot
+ edgepaint
+ fdp
+ gc
+ gml2gv
+ graphml2gv
+ gv2gml
+ gv2gxl
+ gvcolor
+ gvgen
+ gvmap
+ gvpack
+ gvpr
+ gxl2dot
+ gxl2gv
+ mm2gv
+ neato
+ nop
+ osage
+ patchwork
+ prune
+ sccmap
+ sfdp
+ tred
+ twopi
+ unflatten
+ AUTO_CLEAN
+)
+
+file(GLOB plugin_config "${CURRENT_PACKAGES_DIR}/lib/graphviz/config*" "${CURRENT_PACKAGES_DIR}/bin/config*")
+if(NOT plugin_config)
+ message(WARNING
+ "In order to create the plugin configuration file, "
+ "you must run `dot -c` on the target system."
+ )
+endif()
+
+if(VCPKG_TARGET_IS_WINDOWS)
+ file(GLOB plugins "${CURRENT_PACKAGES_DIR}/bin/gvplugin_*")
+ file(COPY ${plugins} ${plugin_config} DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}")
+else()
+ file(COPY "${CURRENT_PACKAGES_DIR}/lib/graphviz" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}")
+endif()
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
diff --git a/vcpkg/ports/graphviz/select-plugins.patch b/vcpkg/ports/graphviz/select-plugins.patch new file mode 100644 index 0000000..eea7749 --- /dev/null +++ b/vcpkg/ports/graphviz/select-plugins.patch @@ -0,0 +1,20 @@ +diff --git a/plugin/CMakeLists.txt b/plugin/CMakeLists.txt +index c8cac8e..d14bf9c 100644 +--- a/plugin/CMakeLists.txt ++++ b/plugin/CMakeLists.txt +@@ -1,15 +1,11 @@ + add_subdirectory(core) +-add_subdirectory(devil) + add_subdirectory(dot_layout) + add_subdirectory(gd) + add_subdirectory(gdiplus) + add_subdirectory(gdk) +-add_subdirectory(gs) + add_subdirectory(kitty) +-add_subdirectory(lasi) + add_subdirectory(neato_layout) + add_subdirectory(pango) +-add_subdirectory(poppler) + add_subdirectory(quartz) + add_subdirectory(rsvg) + add_subdirectory(vt) diff --git a/vcpkg/ports/graphviz/static-linkage.patch b/vcpkg/ports/graphviz/static-linkage.patch new file mode 100644 index 0000000..7913275 --- /dev/null +++ b/vcpkg/ports/graphviz/static-linkage.patch @@ -0,0 +1,39 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 14f2847..e56a970 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -30,6 +30,9 @@ if(WIN32) + # libraries, so the GVDLL symbol can be unconditionally set until + # such support is introduced. + add_definitions(-DGVDLL) ++ if(NOT BUILD_SHARED_LIBS) ++ add_definitions(-DEXPORT_CDT -DEXPORT_CGHDR -DEXPORT_CGRAPH -DGVC_EXPORTS -DPATHPLAN_EXPORTS -DEXPORT_XDOT) ++ endif() + + option(install_win_dependency_dlls "Install 3rd party dependencies" ON) + endif() +diff --git a/plugin/gd/gvrender_gd.c b/plugin/gd/gvrender_gd.c +index 76bbbf2..f877fa7 100644 +--- a/plugin/gd/gvrender_gd.c ++++ b/plugin/gd/gvrender_gd.c +@@ -242,7 +242,7 @@ static void gdgen_end_page(GVJ_t * job) + #else + #define GD_IMPORT + #endif +-GD_IMPORT extern gdFontPtr gdFontTiny, gdFontSmall, gdFontMediumBold, gdFontLarge, gdFontGiant; ++BGD_EXPORT_DATA_PROT extern gdFontPtr gdFontTiny, gdFontSmall, gdFontMediumBold, gdFontLarge, gdFontGiant; + + void gdgen_text(gdImagePtr im, pointf spf, pointf epf, int fontcolor, double fontsize, int fontdpi, double fontangle, char *fontname, char *str) + { +diff --git a/plugin/pango/CMakeLists.txt b/plugin/pango/CMakeLists.txt +index aca7eec..901f118 100644 +--- a/plugin/pango/CMakeLists.txt ++++ b/plugin/pango/CMakeLists.txt +@@ -58,6 +58,7 @@ if(CAIRO_FOUND AND PANGOCAIRO_FOUND) + set_target_properties(gvplugin_pango PROPERTIES + VERSION ${GRAPHVIZ_PLUGIN_VERSION}.0.0 + SOVERSION ${GRAPHVIZ_PLUGIN_VERSION} ++ LINKER_LANGUAGE CXX # for cairo + ) + + if(MINGW) diff --git a/vcpkg/ports/graphviz/vcpkg.json b/vcpkg/ports/graphviz/vcpkg.json new file mode 100644 index 0000000..40444a9 --- /dev/null +++ b/vcpkg/ports/graphviz/vcpkg.json @@ -0,0 +1,42 @@ +{ + "name": "graphviz", + "version-semver": "10.0.1", + "port-version": 3, + "description": "Graph Visualization Tools", + "homepage": "https://graphviz.org/", + "license": "EPL-1.0", + "supports": "!staticcrt", + "dependencies": [ + { + "name": "cairo", + "default-features": false + }, + "expat", + "gdk-pixbuf", + "getopt", + "gts", + { + "name": "libgd", + "default-features": false, + "features": [ + "fontconfig", + "freetype", + "jpeg", + "png", + "tiff" + ] + }, + "librsvg", + "libwebp", + "pango", + { + "name": "pkgconf", + "host": true + }, + { + "name": "vcpkg-cmake", + "host": true + }, + "zlib" + ] +} diff --git a/vcpkg/ports/graphviz/webp-install.patch b/vcpkg/ports/graphviz/webp-install.patch new file mode 100644 index 0000000..4aa82dd --- /dev/null +++ b/vcpkg/ports/graphviz/webp-install.patch @@ -0,0 +1,13 @@ +diff --git a/plugin/webp/CMakeLists.txt b/plugin/webp/CMakeLists.txt +index 21913a8..4811930 100644 +--- a/plugin/webp/CMakeLists.txt ++++ b/plugin/webp/CMakeLists.txt +@@ -45,7 +45,7 @@ if(WEBP_FOUND) + install( + TARGETS gvplugin_webp + RUNTIME DESTINATION ${BINARY_INSTALL_DIR} +- LIBRARY DESTINATION ${LIBRARY_INSTALL_DIR} ++ LIBRARY DESTINATION ${PLUGIN_INSTALL_DIR} + ARCHIVE DESTINATION ${LIBRARY_INSTALL_DIR} + ) + diff --git a/vcpkg/ports/graphviz/workaround-insufficiently-ugly-wchar-h.patch b/vcpkg/ports/graphviz/workaround-insufficiently-ugly-wchar-h.patch new file mode 100644 index 0000000..f4d8a97 --- /dev/null +++ b/vcpkg/ports/graphviz/workaround-insufficiently-ugly-wchar-h.patch @@ -0,0 +1,12 @@ +diff --git a/lib/expr/expr.h b/lib/expr/expr.h +index 3d7fbd6..d6cfb53 100644 +--- a/lib/expr/expr.h ++++ b/lib/expr/expr.h +@@ -36,6 +36,7 @@ extern "C" { + #include <stddef.h> + #include <stdio.h> + #include <vmalloc/vmalloc.h> ++#include <wchar.h> + + #define EX_VERSION 20000101L + |