pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

graphviz: Update to 12.0.0



Module Name:	pkgsrc-wip
Committed By:	Michael Baeuerle <micha%NetBSD.org@localhost>
Pushed By:	micha
Date:		Fri Jul 5 12:06:38 2024 +0200
Changeset:	4d74b1d0e178c1dacd0e8be9ece1045a8f8b8ece

Modified Files:
	graphviz/COMMIT_MSG
	graphviz/Makefile
	graphviz/buildlink3.mk
	graphviz/distinfo
	graphviz/patches/patch-lib_gvc_Makefile.am

Log Message:
graphviz: Update to 12.0.0

- Support for building the Graphviz TCL bindings has been integrated into the
  CMake build system. This is controllable by the `-Denable_tcl={AUTO|ON|OFF}`
  option.
- Support for building the SWIG-generated TCL language bindings has been
  integrated into the CMake build system. This is controllable by the
  `-Denable_swig={AUTO|ON|OFF}` option.
- Support for building the SWIG-generated C# language bindings has been
  integrated into the CMake build system. This is controllable by the
  `-Denable_sharp={AUTO|ON|OFF}` option.

- The Catch2-based test suite in the CMake build system has been ported from
  Catch2 v2 to Catch2 v3. Support for Catch2 v2 has been removed. #2465
- The Windows release artifacts are now built on Windows 2022 and Visual Studio
  2022 17 and toolset v143.
- The macOS release artifacts are now built on macOS 13 (Ventura).
- The CMake build system no longer links `dot_builtins` against libsocket.
- The CMake build system now only compiles `dot_builtins` if building shared
  libraries (`-DBUILD_SHARED_LIBS=ON`).
- **Breaking**: the `polygon_t.style` member is now a struct.
- **Breaking**: the `LEN` and `MAXDOUBLE` constants have been removed.
- Accuracy in processing compass points has been improved.
- **Breaking**: the `CMYK_BYTE` member of the `color_type_t` enum and the
  corresponding `gvolor_t.u.cmyk` field have been removed. The color format this
  mapped to was neither documented nor implemented correctly.
- The Windows releases available for download on graphviz.org now only include
  CMake-produced packages, not MS Build-produced packages. The MS Build packages
  are available in the
  [Gitlab package registry](https://gitlab.com/graphviz/graphviz/-/packages) if
  needed.
- The CMake build system more pervasively sets rpaths of compiled binaries,
  libraries, and plugins, which should result in them more reliably finding
  their supporting components.
  without `$LD_LIBRARY_PATH`/`$DYLD_LIBRARY_PATH` tricks.
- **Breaking**: the `Agraph_t.n_id` field is now an opaque pointer.
- **Breaking**: the libpack functions `putGraphs`, `putRects`, and `shiftGraphs`
  now operate on floating-point points (`pointf`) instead of integer points
  (`point`).
- **Breaking**: the `BF2B` macro has been removed.
- **Breaking**: the undocumented `-Tmp` output format has been removed.
- **Breaking**: the arith.h header defines neither `_GNU_SOURCE` nor `sincos`
  any more. None of the build systems attempt to discover `sincos` any more.
- The FIG output format (`-Tfig`) supports up to 512 custom colors. The previous
  limit was 256, after which it would crash (see note in the “Fixed” section).
- **Breaking**: The TCL binding’s `tcldot_layout` function no longer tries to
  fallback to the `dot` layout engine if the requested engine is unavailable but
  instead fails with an error message.
- The TCL binding’s graph `render` command no longer ignores layout errors.
- The TCL binding’s graph `write` command now does layout unconditionally,
  regardless of what output renderer is selected.
- The CMake build system builds cgraph++ and gvc++ as either shared or static
  libraries, respecting the `BUILD_SHARED_LIBS` setting.
- Discovery of the fcntl.h header has been removed from all build systems. This
  header is now unconditionally assumed to exist.
- **Breaking**: `obj_state_t.gradient_frac` is now a `double`.
- **Breaking**: `path.nbox` is now a `size_t`.
- The change described as “Some `routesplines` miscalculations that led to lost
  edges and fatal errors have been avoided” in 11.0.0 has been reverted. The fix
  for this caused other problems.
- **Breaking**: the `d` and `disc` parameters have been removed from
  `Dtcompar_f`.
- CentOS packages are no longer provided.
- In the CMake build system, the minimum required CMake version has been
  increased to 3.14.1.
- **Breaking**: the `disc` parameter has been removed from `Dtfree_f`.
- Gvedit no longer depends on the getopt library.

- The CMake build system now uses absolute paths to PangoCairo libraries during
  linking, resolving build problems on macOS.
- The CMake build system’s path for third-party headers for the DevIL plugin has
  been corrected.
- Edges not rendering properly when using ports and the `crow` arrowhead/tail
  with Windows `Release` builds. #2490
- A duplicate prototype of `aghtmlstr` has been removed.
- `agrelabel_node` (or equivalently, `agrename` when operating on a node) no
  longer corrupts the node-by-id set, causing a crash. This bug was preventing
  `gxl2gv` from processing inputs that used node `name` attributes. #2300
- Accuracy improvements have fixed an assertion failure on macOS. #2538
- The FIG output format (`-Tfig`) no longer crashes when handling more than 256
  colors.
- The `scale` operation implemented by the TCL binding’s tclpathplan scales
  relative to the center of the points being scaled instead of reading
  uninitialized memory.
- The xlib plugin sets “close-on-exec” on the file descriptors it creates,
  preventing them leaking into either web browsers it starts or other processes
  created by the hosting application.
- A sign confusion issue in neatogen’s weighting calculations was fixed. This
  was a regression in Graphviz 11.0.0.
- The CMake build system no longer attaches `dllimport`/`dllexport` annotations
  when compiling static libraries on Windows and MinGW.
- An issue with linking gvpack when building static libraries in the CMake build
  system was fixed.
- An sfdp use-after-free issue was fixed. #2556
- Using `concentrate=true` once again works. This was a regression in Graphviz
  11.0.0. #2559
- `overlap="scale"` no longer causes nodes to be placed on top of one another.
  This was a regression in Graphviz 7.0.5. #2564
- libpack code now understands a cluster to be indicated by the common rules,
  including the “cluster” prefix being case insensitive and the `cluster=true`
  attribute as an alternative. #2187, #2555

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=4d74b1d0e178c1dacd0e8be9ece1045a8f8b8ece

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 graphviz/COMMIT_MSG                        | 110 ++++++++++++++++++++++++++++-
 graphviz/Makefile                          |   2 +-
 graphviz/buildlink3.mk                     |   2 +-
 graphviz/distinfo                          |   8 +--
 graphviz/patches/patch-lib_gvc_Makefile.am |  10 +--
 5 files changed, 120 insertions(+), 12 deletions(-)

diffs:
diff --git a/graphviz/COMMIT_MSG b/graphviz/COMMIT_MSG
index 4105d9ebe0..8d0394d9d3 100644
--- a/graphviz/COMMIT_MSG
+++ b/graphviz/COMMIT_MSG
@@ -1,4 +1,112 @@
-graphics/graphviz: Update to 11.0.0
+graphics/graphviz: Update to 12.0.0
+
+## [12.0.0] – 2024-07-04
+
+### Added
+
+- Support for building the Graphviz TCL bindings has been integrated into the
+  CMake build system. This is controllable by the `-Denable_tcl={AUTO|ON|OFF}`
+  option.
+- Support for building the SWIG-generated TCL language bindings has been
+  integrated into the CMake build system. This is controllable by the
+  `-Denable_swig={AUTO|ON|OFF}` option.
+- Support for building the SWIG-generated C# language bindings has been
+  integrated into the CMake build system. This is controllable by the
+  `-Denable_sharp={AUTO|ON|OFF}` option.
+
+### Changed
+
+- The Catch2-based test suite in the CMake build system has been ported from
+  Catch2 v2 to Catch2 v3. Support for Catch2 v2 has been removed. #2465
+- The Windows release artifacts are now built on Windows 2022 and Visual Studio
+  2022 17 and toolset v143.
+- The macOS release artifacts are now built on macOS 13 (Ventura).
+- The CMake build system no longer links `dot_builtins` against libsocket.
+- The CMake build system now only compiles `dot_builtins` if building shared
+  libraries (`-DBUILD_SHARED_LIBS=ON`).
+- **Breaking**: the `polygon_t.style` member is now a struct.
+- **Breaking**: the `LEN` and `MAXDOUBLE` constants have been removed.
+- Accuracy in processing compass points has been improved.
+- **Breaking**: the `CMYK_BYTE` member of the `color_type_t` enum and the
+  corresponding `gvolor_t.u.cmyk` field have been removed. The color format this
+  mapped to was neither documented nor implemented correctly.
+- The Windows releases available for download on graphviz.org now only include
+  CMake-produced packages, not MS Build-produced packages. The MS Build packages
+  are available in the
+  [Gitlab package registry](https://gitlab.com/graphviz/graphviz/-/packages) if
+  needed.
+- The CMake build system more pervasively sets rpaths of compiled binaries,
+  libraries, and plugins, which should result in them more reliably finding
+  their supporting components.
+  without `$LD_LIBRARY_PATH`/`$DYLD_LIBRARY_PATH` tricks.
+- **Breaking**: the `Agraph_t.n_id` field is now an opaque pointer.
+- **Breaking**: the libpack functions `putGraphs`, `putRects`, and `shiftGraphs`
+  now operate on floating-point points (`pointf`) instead of integer points
+  (`point`).
+- **Breaking**: the `BF2B` macro has been removed.
+- **Breaking**: the undocumented `-Tmp` output format has been removed.
+- **Breaking**: the arith.h header defines neither `_GNU_SOURCE` nor `sincos`
+  any more. None of the build systems attempt to discover `sincos` any more.
+- The FIG output format (`-Tfig`) supports up to 512 custom colors. The previous
+  limit was 256, after which it would crash (see note in the “Fixed” section).
+- **Breaking**: The TCL binding’s `tcldot_layout` function no longer tries to
+  fallback to the `dot` layout engine if the requested engine is unavailable but
+  instead fails with an error message.
+- The TCL binding’s graph `render` command no longer ignores layout errors.
+- The TCL binding’s graph `write` command now does layout unconditionally,
+  regardless of what output renderer is selected.
+- The CMake build system builds cgraph++ and gvc++ as either shared or static
+  libraries, respecting the `BUILD_SHARED_LIBS` setting.
+- Discovery of the fcntl.h header has been removed from all build systems. This
+  header is now unconditionally assumed to exist.
+- **Breaking**: `obj_state_t.gradient_frac` is now a `double`.
+- **Breaking**: `path.nbox` is now a `size_t`.
+- The change described as “Some `routesplines` miscalculations that led to lost
+  edges and fatal errors have been avoided” in 11.0.0 has been reverted. The fix
+  for this caused other problems.
+- **Breaking**: the `d` and `disc` parameters have been removed from
+  `Dtcompar_f`.
+- CentOS packages are no longer provided.
+- In the CMake build system, the minimum required CMake version has been
+  increased to 3.14.1.
+- **Breaking**: the `disc` parameter has been removed from `Dtfree_f`.
+- Gvedit no longer depends on the getopt library.
+
+### Fixed
+
+- The CMake build system now uses absolute paths to PangoCairo libraries during
+  linking, resolving build problems on macOS.
+- The CMake build system’s path for third-party headers for the DevIL plugin has
+  been corrected.
+- Edges not rendering properly when using ports and the `crow` arrowhead/tail
+  with Windows `Release` builds. #2490
+- A duplicate prototype of `aghtmlstr` has been removed.
+- `agrelabel_node` (or equivalently, `agrename` when operating on a node) no
+  longer corrupts the node-by-id set, causing a crash. This bug was preventing
+  `gxl2gv` from processing inputs that used node `name` attributes. #2300
+- Accuracy improvements have fixed an assertion failure on macOS. #2538
+- The FIG output format (`-Tfig`) no longer crashes when handling more than 256
+  colors.
+- The `scale` operation implemented by the TCL binding’s tclpathplan scales
+  relative to the center of the points being scaled instead of reading
+  uninitialized memory.
+- The xlib plugin sets “close-on-exec” on the file descriptors it creates,
+  preventing them leaking into either web browsers it starts or other processes
+  created by the hosting application.
+- A sign confusion issue in neatogen’s weighting calculations was fixed. This
+  was a regression in Graphviz 11.0.0.
+- The CMake build system no longer attaches `dllimport`/`dllexport` annotations
+  when compiling static libraries on Windows and MinGW.
+- An issue with linking gvpack when building static libraries in the CMake build
+  system was fixed.
+- An sfdp use-after-free issue was fixed. #2556
+- Using `concentrate=true` once again works. This was a regression in Graphviz
+  11.0.0. #2559
+- `overlap="scale"` no longer causes nodes to be placed on top of one another.
+  This was a regression in Graphviz 7.0.5. #2564
+- libpack code now understands a cluster to be indicated by the common rules,
+  including the “cluster” prefix being case insensitive and the `cluster=true`
+  attribute as an alternative. #2187, #2555
 
 ## [11.0.0] – 2024-04-28
 
diff --git a/graphviz/Makefile b/graphviz/Makefile
index 28db93c044..219c1944f1 100644
--- a/graphviz/Makefile
+++ b/graphviz/Makefile
@@ -1,6 +1,6 @@
 # $NetBSD$
 
-DISTNAME=	graphviz-11.0.0
+DISTNAME=	graphviz-12.0.0
 CATEGORIES=	graphics
 MASTER_SITES=	${MASTER_SITE_GITLAB:=api/v4/projects/4207231/packages/generic/graphviz-releases/${PKGVERSION_NOREV}/}
 #EXTRACT_SUFX=	.tar.xz
diff --git a/graphviz/buildlink3.mk b/graphviz/buildlink3.mk
index 9067077c00..b62126b624 100644
--- a/graphviz/buildlink3.mk
+++ b/graphviz/buildlink3.mk
@@ -9,7 +9,7 @@ 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_ABI_DEPENDS.graphviz+=	graphviz>=12.0.0
 BUILDLINK_PKGSRCDIR.graphviz?=		../../wip/graphviz
 
 .include "../../converters/libiconv/buildlink3.mk"
diff --git a/graphviz/distinfo b/graphviz/distinfo
index 10e2264917..cf8479c340 100644
--- a/graphviz/distinfo
+++ b/graphviz/distinfo
@@ -1,9 +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
+BLAKE2s (graphviz-12.0.0.tar.gz) = afcf0e8d7a875387234daaf4ac5f35124a40eaf0be9032092c9a1eb84e97af86
+SHA512 (graphviz-12.0.0.tar.gz) = abce2766f1f57f48e711361113ee496d67ab555d8bb9757377b8b8ad38e7e025f239f48ad8effb869eeca5fe15a095c2468eee81a18c1d72a8be6383a97a59f8
+Size (graphviz-12.0.0.tar.gz) = 27373201 bytes
 SHA1 (patch-config_config__perl.pl) = 430acb7d7ee3e149de0af9832c5a29602884f83e
 SHA1 (patch-configure.ac) = dcb9fd2822d3eb5dddcda5a55746d51114f92d06
-SHA1 (patch-lib_gvc_Makefile.am) = 180b45f810e5bb3948509d50b5be3b159b38a78f
+SHA1 (patch-lib_gvc_Makefile.am) = a8067feb25afcc81ab6048bb6a8f1aa1e93af878
 SHA1 (patch-plugin_gs_gvloadimage__gs.c) = 982ac1db252e3224633069db956c5dc803cd5ea9
diff --git a/graphviz/patches/patch-lib_gvc_Makefile.am b/graphviz/patches/patch-lib_gvc_Makefile.am
index b019ae3ccd..ab36e12c27 100644
--- a/graphviz/patches/patch-lib_gvc_Makefile.am
+++ b/graphviz/patches/patch-lib_gvc_Makefile.am
@@ -2,14 +2,14 @@ $NetBSD$
 
 Link with pthread library, if needed.
 
---- lib/gvc/Makefile.am.orig	2022-07-07 15:43:58.000000000 +0000
+--- lib/gvc/Makefile.am.orig	2024-07-04 07:59:36.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 \
+@@ -49,7 +49,7 @@ libgvc_la_LIBADD = $(libgvc_C_la_LIBADD)
  	$(top_builddir)/lib/pathplan/libpathplan.la \
+ 	$(top_builddir)/lib/cgraph/libcgraph.la \
+ 	$(top_builddir)/lib/cdt/libcdt.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:
+ 	rm -f $@; pdffile=$@; psfile=$${pdffile%pdf}ps; \


Home | Main Index | Thread Index | Old Index