pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
graphviz: Import 11.0.0
Module Name: pkgsrc-wip
Committed By: Michael Baeuerle <micha%NetBSD.org@localhost>
Pushed By: micha
Date: Mon Apr 29 13:03:38 2024 +0200
Changeset: 90c0430d4c7ea293c0a5e6a6f907ab7c939e3e11
Modified Files:
Makefile
Added Files:
graphviz/COMMIT_MSG
graphviz/DEINSTALL
graphviz/DESCR
graphviz/INSTALL
graphviz/Makefile
graphviz/PLIST
graphviz/buildlink3.mk
graphviz/distinfo
graphviz/options.mk
graphviz/patches/patch-config_config__perl.pl
graphviz/patches/patch-configure.ac
graphviz/patches/patch-lib_gvc_Makefile.am
graphviz/patches/patch-plugin_gs_gvloadimage__gs.c
Log Message:
graphviz: Import 11.0.0
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=90c0430d4c7ea293c0a5e6a6f907ab7c939e3e11
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 1 +
graphviz/COMMIT_MSG | 136 +++++++++
graphviz/DEINSTALL | 9 +
graphviz/DESCR | 10 +
graphviz/INSTALL | 9 +
graphviz/Makefile | 143 ++++++++++
graphviz/PLIST | 311 +++++++++++++++++++++
graphviz/buildlink3.mk | 22 ++
graphviz/distinfo | 9 +
graphviz/options.mk | 127 +++++++++
graphviz/patches/patch-config_config__perl.pl | 15 +
graphviz/patches/patch-configure.ac | 24 ++
graphviz/patches/patch-lib_gvc_Makefile.am | 15 +
graphviz/patches/patch-plugin_gs_gvloadimage__gs.c | 33 +++
14 files changed, 864 insertions(+)
diffs:
diff --git a/Makefile b/Makefile
index 4ce3c9a806..7f290fa199 100644
--- a/Makefile
+++ b/Makefile
@@ -1310,6 +1310,7 @@ SUBDIR+= gramscii
SUBDIR+= grandr
SUBDIR+= granite
SUBDIR+= graphmonkey
+SUBDIR+= graphviz
SUBDIR+= grass-Spearfish
SUBDIR+= graveman
SUBDIR+= grc
diff --git a/graphviz/COMMIT_MSG b/graphviz/COMMIT_MSG
new file mode 100644
index 0000000000..4105d9ebe0
--- /dev/null
+++ b/graphviz/COMMIT_MSG
@@ -0,0 +1,136 @@
+graphics/graphviz: Update to 11.0.0
+
+## [11.0.0] – 2024-04-28
+
+### Added
+
+- `gv2gml` gained a `-y` option to output the yWorks.com variant of GML instead
+ of the default.
+- A new command line option, `--filepath=…` has been added to perform the
+ function previously served by the `$GV_FILE_PATH` environment variable, use of
+ which was removed in Graphviz 6.0.1. Unlike the old `$GV_FILE_PATH` mechanism,
+ `--filepath=…` takes effect regardless of the setting of the `$SERVER_NAME`
+ environment variable. #2396
+
+### Changed
+
+- `gvpack`, in addition to recognizing a “cluster” name prefix as a mark of a
+ cluster, now recognizes this case insensitively as well as recognizing the
+ `cluster` attribute. This is more consistent with how the Graphviz libraries
+ work.
+- **Breaking**: `pkg-config` (.pc) files shipped with Graphviz now include
+ `${prefix}/include` in the include path in addition to
+ `${prefix}/include/graphviz`. Previously this missing path meant building
+ Graphviz demo examples against an installation of Graphviz in a non-system
+ path would not work. #2474
+- The core PostScript output format (`-Tps`) warns if using an
+ out-of-specification font name. To avoid this, use a more sophisticated output
+ format like Cairo (`-Tps:cairo`) that does font name lookup and translation.
+ #218
+- **Breaking**: The libpack functions `putRects`, `packRects`, `putGraphs`,
+ `packGraphs`, `packSubgraphs`, `pack_graph`, `shiftGraphs`, `ccomps`,
+ `cccomps`, and `pccomps` now take the number of items they are operating on
+ (`ng`) as a `size_t`.
+- **Breaking**: The `bsearch_cmpf` and `qsort_cmpf` typedefs have been removed.
+- `dot -c -v`, when constructing the config6 file, includes comments explaining
+ any attempted actions that failed during plugin loading. #2456
+- **Breaking**: The `Ndim` global is now a `unsigned short`.
+- fdpgen no longer truncates graph names when inferring new names for connected
+ component subgraphs.
+- **Breaking**: The `nodequeue` type has been removed.
+- **Breaking**: The field `Agraphinfo_t.n_nodes` has been removed. The function
+ `agnnodes` is a more robust way of retrieving the number of nodes.
+- The `-q` command line option will now suppress “no hard-coded metrics…”
+ and other font lookup warnings. #2379
+- **Breaking**: The `CMP` and `SGN` macros have been removed.
+- The CMake build system no longer early-binds all enabled plugins into
+ `dot`/`dot.exe`. This early binding was a change introduced in 10.0.1, but was
+ not noted in this changelog. Traditionally, of the three Graphviz build
+ systems (Autotools, CMake, MS Build), only changes to the Autotools build
+ system were noted in this changelog under the assumption that packaging
+ ecosystems making use of the other two build systems would need finer grained
+ details and would be monitoring the Git commit history instead. This seems to
+ not be the case, so in future side-effecting changes to any of the three build
+ systems will be included here. #2527, #2528
+- The precision of `sep`- and `esep`-based calculations has been improved.
+- **Breaking**: Defines `AGRAPH`, `AGNODE`, `AGOUTEDGE`, `AGINEDGE`, and `AGEDGE` are
+ replaced with `enum`.
+- **Breaking**: The `obj_state_t.url_bsplinemap_poly_n` field is now a `size_t`
+ and the `obj_state_t.url_bsplinemap_n` field is now a `size_t *`.
+- **Breaking**: The `Ppoly_t.pn` (`Ppolyline_t.pn`) field is now a `size_t`.
+- **Breaking**: The `Proutespline` function takes its `n_barriers` parameter as
+ a `size_t`.
+- **Breaking**: The `gvattr_t` type and the `GVJ_t.selected_obj_attributes` and
+ `GVJ_t.selected_obj_type_name` fields have been removed.
+- **Breaking**: The `gv_argvlist_t` type and functions that operate on it have
+ been removed.
+- Control characters in some error messages are escaped, preventing certain
+ types of text injection that could cause user confusion.
+- **Breaking**: `GVJ_t.numkeys` is a `size_t`.
+
+### Fixed
+
+- Indexing within `gvNextInputGraph` no longer incorrectly retains the index
+ from prior use of the GVC context. When using Graphviz libraries
+ programmatically, this could previously cause crashes or misbehavior. #2484
+- Color schemes, typically controlled through the `colorscheme` attribute are
+ now pushed and popped as they are applied and released. Previously processing
+ multiple graphs wherein the first uses color schemes but later ones do not
+ could result in color schemes being incorrectly retained and reapplied or
+ use-after-free memory accesses.
+- The GDI+ plugin, when asked to render a graphic metafile, no longer references
+ uninitialized memory. This bug was introduced in Graphviz 2.24.0.
+- A `free` of an invalid pointer in `edgepaint` was fixed. #2513
+- `gvmap` no longer references uninitialized variables when trying to process
+ triangles and encountering only 2 points.
+- Using the `point` shape in combination with `peripheries=0` no longer causes
+ out of bounds memory writes. This was a regression in Graphviz 7.0.0. #2497
+- Unsafe use of a dangling pointer in `ccomps` has been removed. This was a
+ regression in Graphviz 7.1.0.
+- `gvcolor` no longer crashes when processing color names longer than 127
+ characters.
+- Interleaving calls to `colorxlate` and `gvrender_resolve_color` no longer
+ confuse internal caching mechanisms. Callers should now get the correct color
+ back.
+- The `nop2` layout engine provided by the neato layout plugin is now equivalent
+ to `neato -n2` as intended instead of mistakenly being equivalent to
+ `nop`/`nop1`/`neato -n1`.
+- An off-by-one error in rank installation was corrected. Previously, an unusual
+ `rank=same` constraint could cause a crash when installing ranks. #1308
+- `gxl2gv` no longer crashes or misbehaves when symlinked to a non-ASCII file
+ name. This is a rare scenario that normal users should not encounter.
+- `mm2gv` no longer crashes or misbehaves when reading malformed Matrix Market
+ files with non-ASCII bytes in the header.
+- A stack buffer overflow in `mm2gv` when processing malformed Matrix Market
+ files has been fixed.
+- The `newrank` attribute is treated as a boolean instead of any value
+ (including `"false"`) being coerced into `"true"`. #2521
+- Crashes and misbehavior no longer occur when the `sides` attribute contains
+ non-ASCII characters.
+- Graphviz binaries like `dot.exe` and `neato.exe` no longer crash or misbehave
+ when symlinked to a non-ASCII file name on Windows. This is a rare scenario
+ that normal users should not encounter.
+- GVPR programs that use `tolower` or `toupper` on strings containing non-ASCII
+ characters no longer crash. These functions do not lowercase/uppercase
+ non-ASCII characters, so users probably still do not want to use non-ASCII
+ strings in a GVPR program.
+- Some `routesplines` miscalculations that led to lost edges and fatal errors
+ have been avoided. #2368
+- An inaccuracy involving an edge case when constructing lines within libpack
+ has been corrected.
+- A bug in the internal heap implementation used in the network simplex
+ algorithm has been corrected. This would previously cause certain runs to
+ infer incorrect ordering or subtrees. This was a regression in Graphviz
+ 2.40.0. #2391, #2529
+- Compass points may be more accurately placed on the node boundary in some cases.
+- A very small random adjustment in the calculation of the space available for
+ edge routing around ellipse shaped nodes in fdp and neato layouts, has been
+ removed.
+- Incorrect edge splines for ellipse shaped nodes with ports using fdp or
+ neato. #2168
+- Incorrect edge splines for ellipse and polygon shaped nodes with ports and
+ large penwidths using fdp or neato, causing the same symptoms as #2168.
+- Incorrect edge splines for polygon shaped nodes with ports more than one
+ periphery using fdp or neato, causing the same symptoms as #2168.
+- Adjust the space available for edge routing based on penwidth when
+ using fdp or neato and `splines=ortho`.
diff --git a/graphviz/DEINSTALL b/graphviz/DEINSTALL
new file mode 100644
index 0000000000..03d91fd863
--- /dev/null
+++ b/graphviz/DEINSTALL
@@ -0,0 +1,9 @@
+# $NetBSD$
+
+: ${PKG_PREFIX=@PREFIX@}
+
+case ${STAGE} in
+DEINSTALL)
+ ${RM} ${PKG_PREFIX}/lib/graphviz/config6
+ ;;
+esac
diff --git a/graphviz/DESCR b/graphviz/DESCR
new file mode 100644
index 0000000000..0f0918af1c
--- /dev/null
+++ b/graphviz/DESCR
@@ -0,0 +1,10 @@
+Graphviz is a set of graph drawing tools from AT&T Research and Lucent Bell
+Laboratories.
+
+It includes:
+- dot: makes hierarchical layouts of directed graphs
+- neato: makes "spring" model layouts of undirected graphs
+- tcldot: a customizable graphical interface written in TCL
+ (part of "tcl" option)
+- libcgraph: the base library for graph tools
+- various associated utilities
diff --git a/graphviz/INSTALL b/graphviz/INSTALL
new file mode 100644
index 0000000000..47a3696bab
--- /dev/null
+++ b/graphviz/INSTALL
@@ -0,0 +1,9 @@
+# $NetBSD$
+
+: ${PKG_PREFIX=@PREFIX@}
+
+case ${STAGE} in
+POST-INSTALL)
+ ${PKG_PREFIX}/bin/dot -c
+ ;;
+esac
diff --git a/graphviz/Makefile b/graphviz/Makefile
new file mode 100644
index 0000000000..28db93c044
--- /dev/null
+++ b/graphviz/Makefile
@@ -0,0 +1,143 @@
+# $NetBSD$
+
+DISTNAME= graphviz-11.0.0
+CATEGORIES= graphics
+MASTER_SITES= ${MASTER_SITE_GITLAB:=api/v4/projects/4207231/packages/generic/graphviz-releases/${PKGVERSION_NOREV}/}
+#EXTRACT_SUFX= .tar.xz
+
+MAINTAINER= micha%NetBSD.org@localhost
+HOMEPAGE= https://www.graphviz.org/
+COMMENT= Graph Drawing Programs from AT&T Research and Lucent Bell Labs
+LICENSE= epl-v1.0
+
+CHECK_FILES_SKIP+= ${PREFIX}/lib/graphviz/config6
+CHECK_PORTABILITY_SKIP+= windows/*
+
+USE_LANGUAGES= c c++
+USE_CC_FEATURES+= c99
+USE_CXX_FEATURES+= c++11 unique_ptr
+
+USE_TOOLS+= automake autoreconf makeinfo bison flex gmake groff pkg-config
+USE_LIBTOOL= yes
+GNU_CONFIGURE= yes
+GNU_CONFIGURE_STRICT= no # has sub-configures
+CONFIGURE_ARGS+= --disable-d
+CONFIGURE_ARGS+= --disable-debug
+CONFIGURE_ARGS+= --disable-go
+CONFIGURE_ARGS+= --disable-guile
+CONFIGURE_ARGS+= --disable-io
+CONFIGURE_ARGS+= --disable-java
+CONFIGURE_ARGS+= --disable-javascript
+CONFIGURE_ARGS+= --disable-man-pdfs
+CONFIGURE_ARGS+= --disable-ocaml
+CONFIGURE_ARGS+= --disable-php
+CONFIGURE_ARGS+= --disable-python
+CONFIGURE_ARGS+= --disable-python3
+CONFIGURE_ARGS+= --disable-r
+CONFIGURE_ARGS+= --disable-ruby
+CONFIGURE_ARGS+= --disable-sharp
+CONFIGURE_ARGS+= --enable-ltdl
+CONFIGURE_ARGS+= --enable-rpath
+CONFIGURE_ARGS+= --without-ann
+CONFIGURE_ARGS+= --without-devil
+CONFIGURE_ARGS+= --without-gdiplus
+CONFIGURE_ARGS+= --without-glade
+CONFIGURE_ARGS+= --without-glitz
+CONFIGURE_ARGS+= --without-glut
+CONFIGURE_ARGS+= --without-gtkgl
+CONFIGURE_ARGS+= --without-gtkglext
+CONFIGURE_ARGS+= --without-lasi
+CONFIGURE_ARGS+= --without-ming
+CONFIGURE_ARGS+= --without-qt
+CONFIGURE_ARGS+= --without-smyrna
+CONFIGURE_ARGS+= --with-digcola
+CONFIGURE_ARGS+= --with-expat
+CONFIGURE_ARGS+= --with-fontconfig
+CONFIGURE_ARGS+= --with-freetype2
+CONFIGURE_ARGS+= --with-gts
+CONFIGURE_ARGS+= --with-ipsepcola
+CONFIGURE_ARGS+= --with-ortho
+CONFIGURE_ARGS+= --with-pangocairo
+CONFIGURE_ARGS+= --with-sfdp
+CONFIGURE_ARGS+= --with-visio
+CONFIGURE_ARGS+= --with-webp
+# build fails when PHP and/or Ruby are also installed
+CONFIGURE_ENV+= ac_cv_prog_PHP=
+CONFIGURE_ENV+= ac_cv_prog_RUBY=
+
+CPPFLAGS+= -DNO_POSTSCRIPT_ALIAS=1
+LDFLAGS.SunOS+= -lsocket -lnsl
+
+PKGCONFIG_OVERRIDE+= lib/cdt/libcdt.pc.in
+PKGCONFIG_OVERRIDE+= lib/cgraph/libcgraph.pc.in
+PKGCONFIG_OVERRIDE+= lib/edgepaint/liblab_gamut.pc.in
+PKGCONFIG_OVERRIDE+= lib/expr/libexpr.pc.in
+PKGCONFIG_OVERRIDE+= lib/gvc/libgvc.pc.in
+PKGCONFIG_OVERRIDE+= lib/gvpr/libgvpr.pc.in
+PKGCONFIG_OVERRIDE+= lib/pack/libpack.pc.in
+PKGCONFIG_OVERRIDE+= lib/pathplan/libpathplan.pc.in
+PKGCONFIG_OVERRIDE+= lib/sfdpgen/libsfdp.pc.in
+PKGCONFIG_OVERRIDE+= lib/xdot/libxdot.pc.in
+
+# With lua51 there's a PLIST divergence and it isn't obvious whether
+# it's serious or not, or what causes it.
+LUA_VERSIONS_INCOMPATIBLE= 51
+
+REPLACE_LUA+= tclpkg/gv/demo/modgraph.lua
+
+REPLACE_INTERPRETER+= tclsh
+REPLACE.tclsh.old= .*tclsh
+REPLACE.tclsh.new= ${PREFIX}/bin/tclsh
+REPLACE_FILES.tclsh= tclpkg/gv/demo/modgraph.tcl
+
+REPLACE_PERL+= tclpkg/gv/demo/modgraph.pl contrib/dotmcl.pl \
+ contrib/dirgraph/dirgraph.pl
+
+.include "../../mk/bsd.prefs.mk"
+
+# Override Xaw type configured by user
+XAW_TYPE= standard
+
+.if ${OPSYS} == "NetBSD" && ${MACHINE_ARCH} == "powerpc"
+# Forces link with -lgomp directly instead of via dlopen()
+# so we don't overflow thread-local storage in ld.elf_so
+CFLAGS+= -fopenmp
+CONFIGURE_ARGS+= CFLAGS="${CFLAGS}"
+.endif
+
+.if ${OPSYS} == "FreeBSD"
+SUBST_CLASSES+= sfflags
+SUBST_STAGE.sfflags= pre-configure
+SUBST_MESSAGE.sfflags= Fixing SF_FLAGS identifier for FreeBSD.
+SUBST_FILES.sfflags= lib/sfio/sfclrlock.c lib/sfio/sfio_t.h lib/sfio/sfio.h
+SUBST_FILES.sfflags+= lib/sfio/sfnew.c lib/sfio/sfopen.c lib/sfio/sfset.c
+SUBST_SED.sfflags= -e 's|SF_FLAGS|SFIO_FLAGS|g'
+.endif
+
+pre-configure:
+ cd ${WRKSRC} && autoreconf -fiv
+
+# Remove temporary files and directories created by re-linking "libgv_lua.la".
+post-install:
+ ${RM} -rf ${DESTDIR}${PREFIX}/lib/graphviz/lua/gv.so \
+ ${DESTDIR}${PREFIX}/lib/graphviz/tcl/tcl \
+ ${DESTDIR}${PREFIX}/lib/lua/5.1/gv.so
+
+.include "options.mk"
+
+DEPENDS+= urw-fonts-[0-9]*:../../fonts/urw-fonts
+
+.include "../../converters/libiconv/buildlink3.mk"
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../devel/libltdl/buildlink3.mk"
+BUILDLINK_API_DEPENDS.pango+= pango>=1.22.0
+.include "../../devel/pango/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../fonts/fontconfig/buildlink3.mk"
+.include "../../graphics/freetype2/buildlink3.mk"
+.include "../../graphics/gts/buildlink3.mk"
+.include "../../graphics/libwebp/buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../textproc/expat/buildlink3.mk"
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/graphviz/PLIST b/graphviz/PLIST
new file mode 100644
index 0000000000..0fedf45078
--- /dev/null
+++ b/graphviz/PLIST
@@ -0,0 +1,311 @@
+@comment $NetBSD$
+bin/acyclic
+bin/bcomps
+bin/ccomps
+bin/circo
+bin/cluster
+${PLIST.gd}bin/diffimg
+bin/dijkstra
+bin/dot
+bin/dot2gxl
+bin/dot_builtins
+bin/edgepaint
+bin/fdp
+bin/gc
+bin/gml2gv
+bin/graphml2gv
+bin/gv2gml
+bin/gv2gxl
+bin/gvcolor
+bin/gvgen
+bin/gvmap
+bin/gvmap.sh
+bin/gvpack
+bin/gvpr
+bin/gxl2dot
+bin/gxl2gv
+bin/mm2gv
+bin/neato
+bin/nop
+bin/osage
+bin/patchwork
+bin/prune
+bin/sccmap
+bin/sfdp
+bin/tred
+bin/twopi
+bin/unflatten
+${PLIST.x11}bin/vimdot
+include/graphviz/arith.h
+include/graphviz/cdt.h
+include/graphviz/cgraph.h
+include/graphviz/color.h
+include/graphviz/geom.h
+include/graphviz/graphviz_version.h
+include/graphviz/gvc.h
+include/graphviz/gvcext.h
+include/graphviz/gvcjob.h
+include/graphviz/gvcommon.h
+include/graphviz/gvconfig.h
+include/graphviz/gvplugin.h
+include/graphviz/gvplugin_device.h
+include/graphviz/gvplugin_layout.h
+include/graphviz/gvplugin_loadimage.h
+include/graphviz/gvplugin_render.h
+include/graphviz/gvplugin_textlayout.h
+include/graphviz/gvpr.h
+include/graphviz/pack.h
+include/graphviz/pathgeom.h
+include/graphviz/pathplan.h
+include/graphviz/textspan.h
+include/graphviz/types.h
+include/graphviz/usershape.h
+include/graphviz/xdot.h
+lib/graphviz/libgvplugin_core.la
+lib/graphviz/libgvplugin_dot_layout.la
+${PLIST.gd}lib/graphviz/libgvplugin_gd.la
+${PLIST.ghostscript}${PLIST.x11}lib/graphviz/libgvplugin_gs.la
+lib/graphviz/libgvplugin_kitty.la
+lib/graphviz/libgvplugin_neato_layout.la
+lib/graphviz/libgvplugin_pango.la
+${PLIST.poppler}lib/graphviz/libgvplugin_poppler.la
+${PLIST.quartz}lib/graphviz/libgvplugin_quartz.la
+${PLIST.svg}lib/graphviz/libgvplugin_rsvg.la
+lib/graphviz/libgvplugin_vt.la
+lib/graphviz/libgvplugin_webp.la
+${PLIST.x11}lib/graphviz/libgvplugin_xlib.la
+${PLIST.lua}lib/graphviz/lua/libgv_lua.la
+${PLIST.perl}lib/graphviz/perl/gv.pm
+${PLIST.perl}lib/graphviz/perl/gv.so
+${PLIST.perl}lib/graphviz/perl/libgv_perl.la
+${PLIST.tcl}${PLIST.x11}lib/graphviz/tcl/libgdtclft.la
+${PLIST.tcl}lib/graphviz/tcl/libgv_tcl.la
+${PLIST.tcl}lib/graphviz/tcl/libtcldot.la
+${PLIST.tcl}lib/graphviz/tcl/libtcldot_builtin.la
+${PLIST.tcl}lib/graphviz/tcl/libtclplan.la
+${PLIST.tcl}lib/graphviz/tcl/pkgIndex.tcl
+lib/libcdt.la
+lib/libcgraph.la
+lib/libgvc.la
+lib/libgvpr.la
+lib/libpathplan.la
+lib/libxdot.la
+${PLIST.lua}lib/lua/gv.so
+${PLIST.perl}${PERL5_SUB_INSTALLVENDORARCH}/gv.pm
+${PLIST.perl}${PERL5_SUB_INSTALLVENDORARCH}/gv.so
+lib/pkgconfig/libcdt.pc
+lib/pkgconfig/libcgraph.pc
+lib/pkgconfig/libgvc.pc
+lib/pkgconfig/libgvpr.pc
+lib/pkgconfig/libpathplan.pc
+lib/pkgconfig/libxdot.pc
+${PLIST.tcl}${PLIST.x11}lib/tcl${TCL_BASEVER}/graphviz/libgdtclft.la
+${PLIST.tcl}lib/tcl${TCL_BASEVER}/graphviz/libgv_tcl.la
+${PLIST.tcl}lib/tcl${TCL_BASEVER}/graphviz/libtcldot.la
+${PLIST.tcl}lib/tcl${TCL_BASEVER}/graphviz/libtcldot_builtin.la
+${PLIST.tcl}lib/tcl${TCL_BASEVER}/graphviz/libtclplan.la
+${PLIST.tcl}lib/tcl${TCL_BASEVER}/graphviz/pkgIndex.tcl
+man/man1/acyclic.1
+man/man1/bcomps.1
+man/man1/ccomps.1
+man/man1/circo.1
+man/man1/cluster.1
+${PLIST.gd}man/man1/diffimg.1
+man/man1/dijkstra.1
+man/man1/dot.1
+man/man1/dot2gxl.1
+man/man1/edgepaint.1
+man/man1/fdp.1
+man/man1/gc.1
+man/man1/gml2gv.1
+man/man1/graphml2gv.1
+man/man1/gv2gml.1
+man/man1/gv2gxl.1
+man/man1/gvcolor.1
+man/man1/gvgen.1
+man/man1/gvmap.1
+man/man1/gvmap.sh.1
+man/man1/gvpack.1
+man/man1/gvpr.1
+man/man1/gxl2dot.1
+man/man1/gxl2gv.1
+man/man1/mm2gv.1
+man/man1/neato.1
+man/man1/nop.1
+man/man1/osage.1
+man/man1/patchwork.1
+man/man1/prune.1
+man/man1/sccmap.1
+man/man1/sfdp.1
+man/man1/tred.1
+man/man1/twopi.1
+man/man1/unflatten.1
+${PLIST.x11}man/man1/vimdot.1
+man/man3/cdt.3
+man/man3/cgraph.3
+man/man3/expr.3
+${PLIST.tcl}${PLIST.gd}man/man3/gdtclft.3tcl
+${PLIST.lua}man/man3/gv.3lua
+${PLIST.perl}man/man3/gv.3perl
+${PLIST.swig}man/man3/gv.3python
+${PLIST.tcl}man/man3/gv.3tcl
+man/man3/gvc.3
+man/man3/gvpr.3
+man/man3/pack.3
+man/man3/pathplan.3
+${PLIST.tcl}man/man3/tcldot.3tcl
+man/man3/xdot.3
+man/man7/graphviz.7
+share/doc/graphviz/AUTHORS
+share/doc/graphviz/Agraph.pdf
+share/doc/graphviz/CHANGELOG.md
+share/doc/graphviz/COPYING
+share/doc/graphviz/Dot.ref
+share/doc/graphviz/FAQ.html
+share/doc/graphviz/NEWS
+share/doc/graphviz/build.html
+share/doc/graphviz/char.html
+share/doc/graphviz/cpl1.0.txt
+share/doc/graphviz/dotguide.pdf
+share/doc/graphviz/gdtclft.entities.example.png
+share/doc/graphviz/index.html
+share/doc/graphviz/info/arrows.html
+share/doc/graphviz/info/attrs.html
+share/doc/graphviz/info/colors.html
+share/doc/graphviz/info/command.html
+share/doc/graphviz/info/index.html
+share/doc/graphviz/info/lang.html
+share/doc/graphviz/info/output.html
+share/doc/graphviz/info/shapes.html
+share/doc/graphviz/internal_todo.html
+share/doc/graphviz/latex_suggestions.txt
+share/doc/graphviz/libguide.pdf
+share/doc/graphviz/neatoguide.pdf
+share/doc/graphviz/pspdf.png
+share/doc/graphviz/schema/arguments.xml
+share/doc/graphviz/schema/attributes.xml
+share/doc/graphviz/schema/attributes.xslt
+${PLIST.tcl}share/doc/graphviz/tcldot.html
+share/doc/graphviz/todo.html
+share/doc/graphviz/winbuild.html
+${PLIST.tcl}share/graphviz/demo/doted.tcl
+${PLIST.tcl}share/graphviz/demo/doted.tcl.README
+${PLIST.tcl}share/graphviz/demo/entities.html
+${PLIST.tcl}share/graphviz/demo/entities.tcl
+${PLIST.tcl}share/graphviz/demo/entities.tcl.README
+${PLIST.tcl}share/graphviz/demo/gcat.tcl
+${PLIST.tcl}share/graphviz/demo/gcat.tcl.README
+${PLIST.lua}share/graphviz/demo/modgraph.lua
+${PLIST.perl}share/graphviz/demo/modgraph.pl
+${PLIST.tcl}share/graphviz/demo/modgraph.tcl
+${PLIST.tcl}share/graphviz/demo/pathplan.tcl
+${PLIST.tcl}share/graphviz/demo/pathplan.tcl.README
+${PLIST.tcl}share/graphviz/demo/pathplan_data/boxes.dat
+${PLIST.tcl}share/graphviz/demo/pathplan_data/dpd.dat
+${PLIST.tcl}share/graphviz/demo/pathplan_data/funny.dat
+${PLIST.tcl}share/graphviz/demo/pathplan_data/maze.dat
+${PLIST.tcl}share/graphviz/demo/pathplan_data/nested.dat
+${PLIST.tcl}share/graphviz/demo/pathplan_data/northo.dat
+${PLIST.tcl}share/graphviz/demo/pathplan_data/obs.dat
+${PLIST.tcl}share/graphviz/demo/pathplan_data/other.dat
+${PLIST.tcl}share/graphviz/demo/pathplan_data/paths.dat
+${PLIST.tcl}share/graphviz/demo/pathplan_data/rotor.dat
+${PLIST.tcl}share/graphviz/demo/pathplan_data/u.dat
+${PLIST.tcl}share/graphviz/demo/pathplan_data/unknown.dat
+share/graphviz/graphs/directed/KW91.gv
+share/graphviz/graphs/directed/Latin1.gv
+share/graphviz/graphs/directed/NaN.gv
+share/graphviz/graphs/directed/abstract.gv
+share/graphviz/graphs/directed/alf.gv
+share/graphviz/graphs/directed/arrows.gv
+share/graphviz/graphs/directed/awilliams.gv
+share/graphviz/graphs/directed/biological.gv
+share/graphviz/graphs/directed/clust.gv
+share/graphviz/graphs/directed/clust1.gv
+share/graphviz/graphs/directed/clust2.gv
+share/graphviz/graphs/directed/clust3.gv
+share/graphviz/graphs/directed/clust4.gv
+share/graphviz/graphs/directed/clust5.gv
+share/graphviz/graphs/directed/crazy.gv
+share/graphviz/graphs/directed/ctext.gv
+share/graphviz/graphs/directed/dfa.gv
+share/graphviz/graphs/directed/fig6.gv
+share/graphviz/graphs/directed/fsm.gv
+share/graphviz/graphs/directed/grammar.gv
+share/graphviz/graphs/directed/hashtable.gv
+share/graphviz/graphs/directed/honda-tokoro.gv
+share/graphviz/graphs/directed/japanese.gv
+share/graphviz/graphs/directed/jcctree.gv
+share/graphviz/graphs/directed/jsort.gv
+share/graphviz/graphs/directed/ldbxtried.gv
+share/graphviz/graphs/directed/longflat.gv
+share/graphviz/graphs/directed/mike.gv
+share/graphviz/graphs/directed/nhg.gv
+share/graphviz/graphs/directed/oldarrows.gv
+share/graphviz/graphs/directed/pgram.gv
+share/graphviz/graphs/directed/pm2way.gv
+share/graphviz/graphs/directed/pmpipe.gv
+share/graphviz/graphs/directed/polypoly.gv
+share/graphviz/graphs/directed/proc3d.gv
+share/graphviz/graphs/directed/psfonttest.gv
+share/graphviz/graphs/directed/record2.gv
+share/graphviz/graphs/directed/records.gv
+share/graphviz/graphs/directed/rowe.gv
+share/graphviz/graphs/directed/russian.gv
+share/graphviz/graphs/directed/sdh.gv
+share/graphviz/graphs/directed/shells.gv
+share/graphviz/graphs/directed/states.gv
+share/graphviz/graphs/directed/structs.gv
+share/graphviz/graphs/directed/switch.gv
+share/graphviz/graphs/directed/table.gv
+share/graphviz/graphs/directed/train11.gv
+share/graphviz/graphs/directed/trapeziumlr.gv
+share/graphviz/graphs/directed/tree.gv
+share/graphviz/graphs/directed/triedds.gv
+share/graphviz/graphs/directed/try.gv
+share/graphviz/graphs/directed/unix.gv
+share/graphviz/graphs/directed/unix2.gv
+share/graphviz/graphs/directed/viewfile.gv
+share/graphviz/graphs/directed/world.gv
+share/graphviz/graphs/undirected/ER.gv
+share/graphviz/graphs/undirected/Heawood.gv
+share/graphviz/graphs/undirected/Petersen.gv
+share/graphviz/graphs/undirected/ngk10_4.gv
+share/graphviz/graphs/undirected/process.gv
+share/graphviz/gvpr/addedges
+share/graphviz/gvpr/addranks
+share/graphviz/gvpr/addrings
+share/graphviz/gvpr/anon
+share/graphviz/gvpr/attr
+share/graphviz/gvpr/bb
+share/graphviz/gvpr/bbox
+share/graphviz/gvpr/binduce
+share/graphviz/gvpr/bipart
+share/graphviz/gvpr/chkclusters
+share/graphviz/gvpr/chkedges
+share/graphviz/gvpr/cliptree
+share/graphviz/gvpr/col
+share/graphviz/gvpr/collapse
+share/graphviz/gvpr/color
+share/graphviz/gvpr/cycle
+share/graphviz/gvpr/dechain
+share/graphviz/gvpr/deghist
+share/graphviz/gvpr/deledges
+share/graphviz/gvpr/delmulti
+share/graphviz/gvpr/delnodes
+share/graphviz/gvpr/depath
+share/graphviz/gvpr/dijkstra
+share/graphviz/gvpr/flatten
+share/graphviz/gvpr/get-layers-list
+share/graphviz/gvpr/group
+share/graphviz/gvpr/histogram
+share/graphviz/gvpr/indent
+share/graphviz/gvpr/knbhd
+share/graphviz/gvpr/maxdeg
+share/graphviz/gvpr/path
+share/graphviz/gvpr/rotate
+share/graphviz/gvpr/scale
+share/graphviz/gvpr/scalexy
+share/graphviz/gvpr/span
+share/graphviz/gvpr/topon
+share/graphviz/gvpr/treetoclust
diff --git a/graphviz/buildlink3.mk b/graphviz/buildlink3.mk
new file mode 100644
index 0000000000..9067077c00
--- /dev/null
+++ b/graphviz/buildlink3.mk
@@ -0,0 +1,22 @@
+# $NetBSD$
+
+BUILDLINK_TREE+= graphviz
+
+.if !defined(GRAPHVIZ_BUILDLINK3_MK)
+GRAPHVIZ_BUILDLINK3_MK:=
+
+USE_CC_FEATURES+= c99
+USE_CXX_FEATURES+= c++11 unique_ptr
+
+BUILDLINK_API_DEPENDS.graphviz+= graphviz>=2.26.3
+BUILDLINK_ABI_DEPENDS.graphviz+= graphviz>=11.0.0
+BUILDLINK_PKGSRCDIR.graphviz?= ../../wip/graphviz
+
+.include "../../converters/libiconv/buildlink3.mk"
+.include "../../devel/libltdl/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../textproc/expat/buildlink3.mk"
+.endif # GRAPHVIZ_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -graphviz
diff --git a/graphviz/distinfo b/graphviz/distinfo
new file mode 100644
index 0000000000..10e2264917
--- /dev/null
+++ b/graphviz/distinfo
@@ -0,0 +1,9 @@
+$NetBSD$
+
+BLAKE2s (graphviz-11.0.0.tar.gz) = 854ea061b8bbce60238ff383bd09d5e193f5ae959354de219e0b718f4609d903
+SHA512 (graphviz-11.0.0.tar.gz) = 624d54b34ce4205452db9a7ee81c93b82e688173679d8080ced46f9e4c62e16ca615b6c298b2ca44a5bfcea99162e8b3c794770fd5d45da8b546ab6d9189f64b
+Size (graphviz-11.0.0.tar.gz) = 27292727 bytes
+SHA1 (patch-config_config__perl.pl) = 430acb7d7ee3e149de0af9832c5a29602884f83e
+SHA1 (patch-configure.ac) = dcb9fd2822d3eb5dddcda5a55746d51114f92d06
+SHA1 (patch-lib_gvc_Makefile.am) = 180b45f810e5bb3948509d50b5be3b159b38a78f
+SHA1 (patch-plugin_gs_gvloadimage__gs.c) = 982ac1db252e3224633069db956c5dc803cd5ea9
diff --git a/graphviz/options.mk b/graphviz/options.mk
new file mode 100644
index 0000000000..a5b443ba31
--- /dev/null
+++ b/graphviz/options.mk
@@ -0,0 +1,127 @@
+# $NetBSD$
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.graphviz
+PKG_SUPPORTED_OPTIONS= gd ghostscript lua perl poppler svg tcl x11
+PKG_SUGGESTED_OPTIONS= gd
+.if exists(/System/Library/Frameworks/Quartz.framework)
+PKG_SUPPORTED_OPTIONS+= quartz
+PKG_SUGGESTED_OPTIONS+= quartz
+.else
+PKG_SUGGESTED_OPTIONS+= x11
+.endif
+
+.include "../../mk/bsd.options.mk"
+
+PLIST_VARS+= gd ghostscript lua perl poppler quartz svg swig tcl x11
+
+# Basic graphic format support, especially GIF
+.if !empty(PKG_OPTIONS:Mgd)
+. include "../../graphics/gd/buildlink3.mk"
+PLIST.gd= yes
+CONFIGURE_ARGS+= --with-libgd
+.else
+CONFIGURE_ARGS+= --without-libgd
+.endif
+
+# Better support for PS/PDF, plus EPS
+.if !empty(PKG_OPTIONS:Mghostscript)
+. include "../../print/ghostscript/buildlink3.mk"
+# Also required as tool dependency according to documentation
+TOOL_DEPENDS+= ghostscript-[0-9]*:../../print/ghostscript
+PLIST.ghostscript= yes
+CONFIGURE_ARGS+= --with-ghostscript
+.else
+CONFIGURE_ARGS+= --without-ghostscript
+.endif
+
+# Support for reading PDF images
+.if !empty(PKG_OPTIONS:Mpoppler)
+BUILDLINK_API_DEPENDS.poppler+= poppler>=23.12.0
+. include "../../print/poppler/buildlink3.mk"
+PLIST.poppler= yes
+CONFIGURE_ARGS+= --with-poppler
+.else
+CONFIGURE_ARGS+= --without-poppler
+.endif
+
+# Support for Quartz on macOS
+.if !empty(PKG_OPTIONS:Mquartz)
+PLIST.quartz= yes
+CONFIGURE_ARGS+= --with-quartz
+.else
+CONFIGURE_ARGS+= --without-quartz
+.endif
+
+# Support for SVG images. Attention: librsvg has large dependencies!
+.if !empty(PKG_OPTIONS:Msvg)
+BUILDLINK_API_DEPENDS.librsvg+= librsvg>=2.36.0
+. include "../../graphics/librsvg/buildlink3.mk"
+PLIST.svg= yes
+CONFIGURE_ARGS+= --with-rsvg
+.else
+CONFIGURE_ARGS+= --without-rsvg
+.endif
+
+# X11 graphics supports as well as X11 frontend support
+.if !empty(PKG_OPTIONS:Mx11)
+. include "../../mk/xaw.buildlink3.mk"
+. include "../../x11/libXrender/buildlink3.mk"
+PLIST.x11= yes
+CONFIGURE_ENV+= X11BASE=${X11BASE}
+CONFIGURE_ARGS+= --with-x
+.else
+CONFIGURE_ARGS+= --without-x
+.endif
+
+USING_SWIG= no
+
+# Extension language support
+.if !empty(PKG_OPTIONS:Mlua)
+USING_SWIG= yes
+. include "../../lang/lua/tool.mk"
+. include "../../lang/lua/buildlink3.mk"
+. include "../../lang/lua/application.mk"
+PLIST.lua= yes
+CONFIGURE_ARGS+= --enable-lua
+.else
+CONFIGURE_ARGS+= --disable-lua
+.endif
+
+# Extension language support
+.if !empty(PKG_OPTIONS:Mtcl)
+. if empty(PKG_OPTIONS:Mx11)
+PKG_FAIL_REASON= "tcl option requires x11 option"
+. endif
+USING_SWIG= yes
+. include "../../lang/tcl/Makefile.version"
+. include "../../x11/tk/buildlink3.mk"
+PLIST.tcl= yes
+PLIST_SUBST+= TCL_BASEVER=${TCL_BASEVER}
+CONFIGURE_ENV+= TCLCONFIG=${TCLCONFIG_SH:Q}
+CONFIGURE_ENV+= TKCONFIG=${TKCONFIG_SH:Q}
+CONFIGURE_ARGS+= --with-tclsh=${TCLSH:Q}
+CONFIGURE_ARGS+= --enable-tcl
+.else
+CONFIGURE_ARGS+= --disable-tcl
+.endif
+
+# Extension language support
+.if !empty(PKG_OPTIONS:Mperl)
+USING_SWIG= yes
+. include "../../lang/perl5/buildlink3.mk"
+PLIST.perl= yes
+USE_TOOLS+= perl
+CONFIGURE_ARGS+= --enable-perl
+.else
+CONFIGURE_ARGS+= --disable-perl
+.endif
+
+# Required by some of the other options
+.if !empty(USING_SWIG:Myes)
+PLIST.swig= yes
+# Tool dependency according to documentation
+TOOL_DEPENDS+= swig>=1.3.29:../../devel/swig
+CONFIGURE_ARGS+= --enable-swig
+.else
+CONFIGURE_ARGS+= --disable-swig
+.endif
diff --git a/graphviz/patches/patch-config_config__perl.pl b/graphviz/patches/patch-config_config__perl.pl
new file mode 100644
index 0000000000..e5535469b4
--- /dev/null
+++ b/graphviz/patches/patch-config_config__perl.pl
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Add rpath for pkgsrc
+
+--- config/config_perl.pl.orig 2013-08-01 17:35:15.000000000 +0000
++++ config/config_perl.pl
+@@ -4,7 +4,7 @@ if ($ARGV[0] eq "PERL_LIBS") {
+ $archlib = $Config{archlib};
+ $libperl = $Config{libperl};
+ $libperl =~ s/lib([^\.]+).*/$1/;
+- print "-L$archlib/CORE -l$libperl";
++ print "-Wl,-rpath,$archlib/CORE -L$archlib/CORE -l$libperl";
+ }
+ if ($ARGV[0] eq "PERL_INCLUDES") {
+ $archlib = $Config{archlib};
diff --git a/graphviz/patches/patch-configure.ac b/graphviz/patches/patch-configure.ac
new file mode 100644
index 0000000000..0834ec9433
--- /dev/null
+++ b/graphviz/patches/patch-configure.ac
@@ -0,0 +1,24 @@
+$NetBSD$
+
+Use the same path for all platforms in pkgsrc.
+
+--- configure.ac.orig 2024-02-10 22:00:40.000000000 +0000
++++ configure.ac
+@@ -92,8 +92,7 @@ if test -z "${LIBPOSTFIX++}"; then
+ case "${host_os}" in
+ *linux* )
+ case "${host_cpu}" in
+- aarch64 | powerpc64 | powerpc64le | s390x | x86_64 | sparc64 | mips64* | riscv64 | e2k )
+- LIBPOSTFIX="64"
++ aarch64* | powerpc64 | powerpc64le | s390x | x86_64 | sparc64 | mips64* | riscv64 | e2k )
+ INTGOSIZE=64
+ ;;
+ esac
+@@ -101,7 +100,6 @@ if test -z "${LIBPOSTFIX++}"; then
+ *solaris* )
+ case "${host_cpu}" in
+ x86_64 | sparc64 )
+- LIBPOSTFIX="/64"
+ INTGOSIZE=64
+ ;;
+ esac
diff --git a/graphviz/patches/patch-lib_gvc_Makefile.am b/graphviz/patches/patch-lib_gvc_Makefile.am
new file mode 100644
index 0000000000..b019ae3ccd
--- /dev/null
+++ b/graphviz/patches/patch-lib_gvc_Makefile.am
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Link with pthread library, if needed.
+
+--- lib/gvc/Makefile.am.orig 2022-07-07 15:43:58.000000000 +0000
++++ lib/gvc/Makefile.am
+@@ -54,7 +54,7 @@ libgvc_la_LIBADD = $(libgvc_C_la_LIBADD)
+ $(top_builddir)/lib/cdt/libcdt.la \
+ $(top_builddir)/lib/cgraph/libcgraph.la \
+ $(top_builddir)/lib/pathplan/libpathplan.la \
+- $(EXPAT_LIBS) $(Z_LIBS) $(MATH_LIBS)
++ $(EXPAT_LIBS) $(Z_LIBS) $(MATH_LIBS) ${PTHREAD_LDFLAGS} ${PTHREAD_LIBS}
+ libgvc_la_DEPENDENCIES = $(libgvc_C_la_DEPENDENCIES)
+
+ .3.3.pdf:
diff --git a/graphviz/patches/patch-plugin_gs_gvloadimage__gs.c b/graphviz/patches/patch-plugin_gs_gvloadimage__gs.c
new file mode 100644
index 0000000000..1a95d08e50
--- /dev/null
+++ b/graphviz/patches/patch-plugin_gs_gvloadimage__gs.c
@@ -0,0 +1,33 @@
+$NetBSD$
+
+ghostscript-agpl enforces using gserrors.h which is not included
+by default in ghostscript-gpl, so conditionalise based upon which
+one is being used.
+
+--- plugin/gs/gvloadimage_gs.c.orig 2022-10-11 18:31:29.000000000 +0000
++++ plugin/gs/gvloadimage_gs.c
+@@ -77,6 +77,16 @@ static void gs_error(GVJ_t * job, const
+
+ assert (err < 0);
+
++#ifdef gserrors_INCLUDED /* ghostscript-agpl uses gserrors.h */
++ if (err >= gs_error_VMerror)
++ errsrc = "PostScript Level 1";
++ else if (err >= gs_error_unregistered)
++ errsrc = "PostScript Level 2";
++ else if (err >= gs_error_invalidid)
++ errsrc = "DPS error";
++ else
++ errsrc = "Ghostscript internal error";
++#else
+ if (err >= e_VMerror)
+ errsrc = "PostScript Level 1";
+ else if (err >= e_unregistered)
+@@ -85,6 +95,7 @@ static void gs_error(GVJ_t * job, const
+ errsrc = "DPS error";
+ else
+ errsrc = "Ghostscript internal error";
++#endif
+
+ job->common->errorfn("%s: %s() returned: %d (%s)\n",
+ name, funstr, err, errsrc);
Home |
Main Index |
Thread Index |
Old Index