Compare commits

...

No commits in common. "c8" and "c9s" have entirely different histories.
c8 ... c9s

15 changed files with 433 additions and 234 deletions

4
.gitignore vendored
View File

@ -1 +1,3 @@
SOURCES/graphviz-2.40.1.tar.gz
graphviz-*.tar.gz
/graphviz-2.42.4.tar.bz2
/graphviz-2.44.0.tar.bz2

View File

@ -1 +0,0 @@
643843f5f48973827906f51bf6a6921701b457d2 SOURCES/graphviz-2.40.1.tar.gz

View File

@ -1,16 +0,0 @@
diff --git a/lib/dotgen/conc.c b/lib/dotgen/conc.c
--- a/lib/dotgen/conc.c
+++ b/lib/dotgen/conc.c
@@ -159,7 +159,11 @@ static void rebuild_vlists(graph_t * g)
for (r = GD_minrank(g); r <= GD_maxrank(g); r++) {
lead = GD_rankleader(g)[r];
- if (GD_rank(dot_root(g))[r].v[ND_order(lead)] != lead) {
+ if (lead == NULL) {
+ agerr(AGERR, "rebuiltd_vlists: lead is null for rank %d\n", r);
+ longjmp(jbuf, 1);
+ }
+ else if (GD_rank(dot_root(g))[r].v[ND_order(lead)] != lead) {
agerr(AGERR, "rebuiltd_vlists: rank lead %s not in order %d of rank %d\n",
agnameof(lead), ND_order(lead), r);
longjmp(jbuf, 1);

View File

@ -1,17 +0,0 @@
diff --git a/lib/common/shapes.c b/lib/common/shapes.c
index 61e4fe1..8d18502 100644
--- a/lib/common/shapes.c
+++ b/lib/common/shapes.c
@@ -3545,9 +3545,10 @@ static void record_init(node_t * n)
reclblp = ND_label(n)->text;
len = strlen(reclblp);
/* For some forgotten reason, an empty label is parsed into a space, so
- * we need at least two bytes in textbuf.
+ * we need at least two bytes in textbuf, as well as accounting for the
+ * error path involving "\\N" below.
*/
- len = MAX(len, 1);
+ len = MAX(MAX(len, 1), (int)strlen("\\N"));
textbuf = N_NEW(len + 1, char);
if (!(info = parse_reclbl(n, flip, TRUE, textbuf))) {
agerr(AGERR, "bad label format %s\n", ND_label(n)->text);

View File

@ -1,16 +0,0 @@
diff --git a/tclpkg/gv/Makefile.am b/tclpkg/gv/Makefile.am
index 0b0b1f1..d42bf57 100644
--- a/tclpkg/gv/Makefile.am
+++ b/tclpkg/gv/Makefile.am
@@ -451,7 +451,10 @@ pdf = gv.3sharp.pdf gv.3go.pdf gv.3guile.pdf gv.3io.pdf gv.3java.pdf gv.3lua.pdf
gv.3ruby.pdf gv.3tcl.pdf
-$(man): gv.i gv_doc_writer.tcl gv_doc_template.tcl gv_doc_langs.tcl
+$(man): gv_doc_writer.intermediate ;
+
+.INTERMEDIATE: gv_doc_writer.intermediate
+gv_doc_writer.intermediate: gv.i gv_doc_writer.tcl gv_doc_template.tcl gv_doc_langs.tcl
$(TCLSH) $(srcdir)/gv_doc_writer.tcl "$(srcdir)"
gv.3sharp.pdf: gv.3sharp

View File

@ -1,58 +0,0 @@
diff --git a/config/config_python.py b/config/config_python.py
index b747045..2b1ac8d 100644
--- a/config/config_python.py
+++ b/config/config_python.py
@@ -1,12 +1,13 @@
+from __future__ import print_function
+
import sys
from distutils import sysconfig
if sys.argv[1] == "archlib":
- print sysconfig.get_python_lib(1,1)
+ print(sysconfig.get_python_lib(1,1))
elif sys.argv[1] == "lib":
- print sysconfig.get_python_lib(0,1)
+ print(sysconfig.get_python_lib(0,1))
elif sys.argv[1] == "archsitelib":
- print sysconfig.get_python_lib(1,0)
+ print(sysconfig.get_python_lib(1,0))
elif sys.argv[1] == "sitelib":
- print sysconfig.get_python_lib(0,0)
-
+ print(sysconfig.get_python_lib(0,0))
diff --git a/configure.ac b/configure.ac
index 51166c3..4d8c9a0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1142,7 +1142,7 @@ else
if test `$SWIG -help 2>&1 | $EGREP -c '\-python *- Generate'` = 0; then
use_python="No (swig does not support -python option)"
else
- AC_CHECK_PROG(PYTHON,python,python)
+ AC_CHECK_PROGS(PYTHON,[python3 python])
if test "x$PYTHON" = "x"; then
use_python="No (python not available)"
else
@@ -1167,8 +1167,11 @@ else
if test "x$PYTHON" = "x"; then
use_python="No (python is too old)"
else
- PYTHON_PREFIX=`$PYTHON -c "import sys; print sys.prefix"`
+ PYTHON_PREFIX=`$PYTHON -c "import sys; print(sys.prefix)"`
PYTHON_INCLUDES=-I$PYTHON_PREFIX/include/python$PYTHON_VERSION_SHORT
+ if test $PYTHON_VERSION_MAJOR -gt 2; then
+ PYTHON_INCLUDES="${PYTHON_INCLUDES}m"
+ fi
# PYTHON_LIBS="-lpython$PYTHON_VERSION_SHORT"
PYTHON_LIBS="-undefined dynamic_lookup"
PYTHON_INSTALL_DIR="`$PYTHON $srcdir/config/config_python.py archsitelib`"
@@ -1548,7 +1551,7 @@ else
if test "x$PYTHON34" = "x"; then
use_python34="No (python34 is too old)"
else
- PYTHON34_PREFIX=`$PYTHON3 -c "import sys; print sys.prefix"`
+ PYTHON34_PREFIX=`$PYTHON3 -c "import sys; print(sys.prefix)"`
# PYTHON34_INCLUDES=-I$PYTHON34_PREFIX/include/python$PYTHON34_VERSION_SHORT
# FIXME - whats the stupid "m" for?
PYTHON34_INCLUDES=-I/usr/include/python3.4m

View File

@ -1,25 +0,0 @@
diff --git a/plugin/visio/VisioGraphic.cpp b/plugin/visio/VisioGraphic.cpp
index 303eac0..14e377c 100644
--- a/plugin/visio/VisioGraphic.cpp
+++ b/plugin/visio/VisioGraphic.cpp
@@ -29,6 +29,8 @@
#define isfinite(x) finite(x)
#endif
+#include <cstdlib>
+
#include "VisioGraphic.h"
#include "gvcjob.h"
diff --git a/plugin/visio/VisioText.cpp b/plugin/visio/VisioText.cpp
index 635806c..3c6441a 100644
--- a/plugin/visio/VisioText.cpp
+++ b/plugin/visio/VisioText.cpp
@@ -17,6 +17,7 @@
#include "gvcjob.h"
#include "gvio.h"
+#include <cstdlib>
#include <string.h>
extern "C" char *xml_string(char* str);

7
gating.yaml Normal file
View File

@ -0,0 +1,7 @@
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tedude.validation}

View File

@ -12,10 +12,10 @@ index cf738c0..65e17e2 100644
while (isalnum (*p) || (*p == '_') || (!isascii (*p)))
*q++ = *p++;
diff --git a/cmd/tools/gvgen.c b/cmd/tools/gvgen.c
index 662343e..2925d19 100644
index c2b166d..c9a51e9 100644
--- a/cmd/tools/gvgen.c
+++ b/cmd/tools/gvgen.c
@@ -458,6 +458,8 @@ closeOpen (void)
@@ -453,6 +453,8 @@ closeOpen (void)
fprintf(opts.outfile, "}\ngraph {\n");
}

View File

@ -1,8 +1,8 @@
diff --git a/cmd/dotty/dotty_ui.lefty b/cmd/dotty/dotty_ui.lefty
index a8c9116..a708c61 100644
index 6fdec8f..270c0c8 100644
--- a/cmd/dotty/dotty_ui.lefty
+++ b/cmd/dotty/dotty_ui.lefty
@@ -342,7 +342,7 @@ dotty.protovt.normal.uifuncs = [
@@ -351,7 +351,7 @@ dotty.protovt.normal.uifuncs = [
else
gt.insertedge (gt, data.pobj, null, data.obj, null, null, 1);
};
@ -11,7 +11,7 @@ index a8c9116..a708c61 100644
local vt, gt, menu, i;
vt = dotty.views[data.widget];
@@ -447,7 +447,7 @@ dotty.protovt.birdseye.uifuncs = [
@@ -456,7 +456,7 @@ dotty.protovt.birdseye.uifuncs = [
'middledown' = dotty.protovt.normal.uifuncs.middledown;
'middlemove' = dotty.protovt.normal.uifuncs.middlemove;
'middleup' = dotty.protovt.normal.uifuncs.middleup;

View File

@ -0,0 +1,40 @@
From 784411ca3655c80da0f6025ab20634b2a6ff696b Mon Sep 17 00:00:00 2001
From: Matthew Fernandez <matthew.fernandez@gmail.com>
Date: Sat, 25 Jul 2020 19:31:01 -0700
Subject: [PATCH] fix: out-of-bounds write on invalid label
When the label for a node cannot be parsed (due to it being malformed), it falls
back on the symbol name of the node itself. I.e. the default label the node
would have had if it had no label attribute at all. However, this is applied by
dynamically altering the node's label to "\N", a shortcut for the symbol name of
the node. All of this is fine, however if the hand written label itself is
shorter than the literal string "\N", not enough memory would have been
allocated to write "\N" into the label text.
Here we account for the possibility of error during label parsing, and assume
that the label text may need to be overwritten with "\N" after the fact. Fixes
issue #1700.
---
lib/common/shapes.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/lib/common/shapes.c b/lib/common/shapes.c
index 0a0635fc3..9dca9ba6e 100644
--- a/lib/common/shapes.c
+++ b/lib/common/shapes.c
@@ -3546,9 +3546,10 @@ static void record_init(node_t * n)
reclblp = ND_label(n)->text;
len = strlen(reclblp);
/* For some forgotten reason, an empty label is parsed into a space, so
- * we need at least two bytes in textbuf.
+ * we need at least two bytes in textbuf, as well as accounting for the
+ * error path involving "\\N" below.
*/
- len = MAX(len, 1);
+ len = MAX(MAX(len, 1), (int)strlen("\\N"));
textbuf = N_NEW(len + 1, char);
if (!(info = parse_reclbl(n, flip, TRUE, textbuf))) {
agerr(AGERR, "bad label format %s\n", ND_label(n)->text);
--
GitLab

View File

@ -1,8 +1,8 @@
diff --git a/cmd/tools/Makefile.am b/cmd/tools/Makefile.am
index 3f81e73..e3a688e 100644
index 9c0e9ff..29687d2 100644
--- a/cmd/tools/Makefile.am
+++ b/cmd/tools/Makefile.am
@@ -157,7 +157,9 @@ gvpack_LDADD = \
@@ -162,7 +162,9 @@ gvpack_LDADD = \
$(top_builddir)/lib/ingraphs/libingraphs_C.la \
$(top_builddir)/lib/cgraph/libcgraph.la \
$(top_builddir)/lib/cdt/libcdt.la \

View File

@ -0,0 +1,127 @@
diff --git a/cmd/dot/dot.1 b/cmd/dot/dot.1
index 986b262..e9c56f2 100644
--- a/cmd/dot/dot.1
+++ b/cmd/dot/dot.1
@@ -352,7 +352,7 @@ in the layout.
layout the graph.
.PP
\fBstart=\fIval\fR. Adjusts the random initial placement of nodes
-with no specified position. If \fIval\fP is is an integer,
+with no specified position. If \fIval\fP is an integer,
it is used as the seed for the random number generator.
If \fIval\fP is not an integer, a random system\(hygenerated integer,
such as the process ID or current time, is used as the seed.
@@ -635,6 +635,22 @@ As usual, edge layout is guided by the \fBsplines\fR attribute.
.PP
\fB\-y\fR invert y coordinate in output.
.PP
+\fB\-o\fIfile\fR write output to \fIfile\fP.
+.PP
+\fB\-x\fP reduce graph.
+.PP
+\fB\-Lg\fP don't use grid.
+.PP
+\fB\-LO\fP use old attractive force.
+.PP
+\fB\-Ln\fIi\fR set number of iterations to \fIi\fP.
+.PP
+\fB\-LU\fIi\fR set unscaled factor to \fIi\fP.
+.PP
+\fB\-LC\fIv\fR set overlap expansion factor to \fIv\fP.
+.PP
+\fB\-LT\fR[*]\fIv\fR set temperature (temperature factor) to \fIv\fP.
+.PP
\fB\-V\fP (version) prints version information and exits.
.PP
\fB\-?\fP prints the usage and exits.
diff --git a/cmd/dot/osage.1 b/cmd/dot/osage.1
index 0efbf90..5eded8b 100644
--- a/cmd/dot/osage.1
+++ b/cmd/dot/osage.1
@@ -404,6 +404,22 @@ If \fB\-l\fP is given by itself, the standard library is omitted.
.PP
\fB\-O\fP automatically generate output filenames based on the input filename and the \-T format.
.PP
+\fB\-o\fIfile\fR write output to \fIfile\fP.
+.PP
+\fB\-x\fP reduce graph.
+.PP
+\fB\-Lg\fP don't use grid.
+.PP
+\fB\-LO\fP use old attractive force.
+.PP
+\fB\-Ln\fIi\fR set number of iterations to \fIi\fP.
+.PP
+\fB\-LU\fIi\fR set unscaled factor to \fIi\fP.
+.PP
+\fB\-LC\fIv\fR set overlap expansion factor to \fIv\fP.
+.PP
+\fB\-LT\fR[*]\fIv\fR set temperature (temperature factor) to \fIv\fP.
+.PP
\fB\-v\fP (verbose) prints various information useful for debugging.
.PP
\fB\-V\fP (version) prints version information and exits.
diff --git a/cmd/dot/patchwork.1 b/cmd/dot/patchwork.1
index 7fe68fb..852f516 100644
--- a/cmd/dot/patchwork.1
+++ b/cmd/dot/patchwork.1
@@ -398,6 +398,22 @@ If \fB\-l\fP is given by itself, the standard library is omitted.
.PP
\fB\-O\fP automatically generate output filenames based on the input filename and the \-T format.
.PP
+\fB\-o\fIfile\fR write output to \fIfile\fP.
+.PP
+\fB\-x\fP reduce graph.
+.PP
+\fB\-Lg\fP don't use grid.
+.PP
+\fB\-LO\fP use old attractive force.
+.PP
+\fB\-Ln\fIi\fR set number of iterations to \fIi\fP.
+.PP
+\fB\-LU\fIi\fR set unscaled factor to \fIi\fP.
+.PP
+\fB\-LC\fIv\fR set overlap expansion factor to \fIv\fP.
+.PP
+\fB\-LT\fR[*]\fIv\fR set temperature (temperature factor) to \fIv\fP.
+.PP
\fB\-v\fP (verbose) prints various information useful for debugging.
.PP
\fB\-V\fP (version) prints version information and exits.
diff --git a/cmd/gvmap/cluster.1 b/cmd/gvmap/cluster.1
index 15b0332..188dcd6 100644
--- a/cmd/gvmap/cluster.1
+++ b/cmd/gvmap/cluster.1
@@ -51,6 +51,9 @@ Specifies that output should go into the file \fIoutfile\fP. By default,
.TP
.BI \-v
Verbose mode.
+.TP
+.BI \-?
+Prints the usage and exits.
.SH EXAMPLES
.PP
Applying
diff --git a/cmd/tools/unflatten.1 b/cmd/tools/unflatten.1
index 7857cf0..089496f 100644
--- a/cmd/tools/unflatten.1
+++ b/cmd/tools/unflatten.1
@@ -3,7 +3,7 @@
unflatten \- adjust directed graphs to improve layout aspect ratio
.SH SYNOPSIS
.B unflatten
-[\fB\-f\fR]
+[\fB\-f?\fR]
[\fB\-l\fIlen\fR]
[\fB\-c\fIlen\fR
] [
@@ -41,6 +41,9 @@ Form disconnected nodes into chains of up to \fIlen\fP nodes.
.BI \-o " outfile"
causes the output to be written to the specified file; by default,
output is written to \fBstdout\fP.
+.TP
+.BI \-?
+Prints the usage and exits.
.SH OPERANDS
The following operand is supported:
.TP 8

View File

@ -1,10 +1,11 @@
%if 0%{?rhel} == 8
%bcond_with python2
%if 0%{?rhel} >= 8
%bcond_with php
%bcond_with guile
%else
%bcond_without python2
%bcond_without php
%bcond_without guile
%endif
%bcond_with python2
# Necessary conditionals
%ifarch %{mono_arches}
@ -42,6 +43,12 @@
%global PHP 0
%endif
%if %{with guile}
%global GUILE 1
%else
%global GUILE 0
%endif
# Plugins version
%global pluginsver 6
@ -60,25 +67,25 @@
Name: graphviz
Summary: Graph Visualization Tools
Version: 2.40.1
Release: 45%{?dist}
Version: 2.44.0
Release: 26%{?dist}
License: EPL-1.0
URL: http://www.graphviz.org/
# A bit hacking needed due to: https://gitlab.com/graphviz/graphviz/issues/1371
Source0: https://gitlab.com/graphviz/graphviz/-/archive/stable_release_%{version}/graphviz-stable_release_%{version}.tar.gz #/graphviz-2.40.1.tar.gz
Patch0: graphviz-2.40.1-visio.patch
Patch1: graphviz-2.40.1-python3.patch
# https://gitlab.com/graphviz/graphviz/issues/1367
Patch2: graphviz-2.40.1-CVE-2018-10196.patch
Source0: https://gitlab.com/%{name}/%{name}/-/archive/%{version}/%{name}-%{version}.tar.bz2
# rhbz#1505230
Patch3: graphviz-2.40.1-dotty-menu-fix.patch
Patch4: graphviz-2.40.1-coverity-scan-fixes.patch
Patch5: graphviz-2.40.1-CVE-2020-18032.patch
Patch6: graphviz-2.40.1-makefile-docs-fix.patch
Patch7: graphviz-2.40.1-gvpack-neato-static.patch
Patch0: graphviz-2.42.2-dotty-menu-fix.patch
Patch1: graphviz-2.42.2-coverity-scan-fixes.patch
# rhbz#1612692, https://gitlab.com/graphviz/graphviz/-/merge_requests/1367
Patch2: graphviz-2.44.0-man-fix.patch
Patch3: graphviz-2.44.0-CVE-2020-18032.patch
Patch4: graphviz-2.44.0-gvpack-neato-static.patch
BuildRequires: gcc-g++
BuildRequires: zlib-devel, libpng-devel, libjpeg-devel, expat-devel, freetype-devel >= 2
BuildRequires: ksh, bison, m4, flex, tk-devel, tcl-devel >= 8.3, swig
BuildRequires: fontconfig-devel, libtool-ltdl-devel, ruby-devel, ruby, guile-devel
BuildRequires: ksh, bison, m4, flex, tk-devel, tcl-devel >= 8.3, swig, sed
BuildRequires: fontconfig-devel, libtool-ltdl-devel, ruby-devel, ruby
%if %{GUILE}
BuildRequires: guile-devel
%endif
%if %{with python2}
BuildRequires: python2-devel
%endif
@ -115,6 +122,7 @@ BuildRequires: urw-base35-fonts, perl-ExtUtils-Embed, perl-generators, librsvg2
# for ps2pdf
BuildRequires: ghostscript
BuildRequires: libgs-devel
BuildRequires: make
# ISO8859-1 fonts are required by lefty
Requires: urw-base35-fonts, xorg-x11-fonts-ISO8859-1-100dpi
Requires(post): /sbin/ldconfig
@ -168,12 +176,14 @@ Summary: Demo graphs for graphviz
%description graphs
Some demo graphs for graphviz.
%if %{GUILE}
%package guile
Summary: Guile extension for graphviz
Requires: %{name} = %{version}-%{release}, guile
%description guile
Guile extension for graphviz.
%endif
%package java
Summary: Java extension for graphviz
@ -286,15 +296,12 @@ Requires: %{name} = %{version}-%{release}, tcl >= 8.3, tk
Various tcl packages (extensions) for the graphviz tools.
%prep
%setup -q -n graphviz-stable_release_%{version}
%patch0 -p1 -b .visio
%patch1 -p1 -b .python3
%patch2 -p1 -b .CVE-2018-10196
%patch3 -p1 -b .dotty-menu-fix
%patch4 -p1 -b .coverity-scan-fixes
%patch5 -p1 -b .CVE-2020-18032
%patch6 -p1 -b .makefile-docs-fix
%patch7 -p1 -b .gvpack-neato-static
%setup -q
%patch0 -p1 -b .dotty-menu-fix
%patch1 -p1 -b .coverity-scan-fixes
%patch2 -p1 -b .man-fix
%patch3 -p1 -b .CVE-2020-18032
%patch4 -p1 -b .gvpack-neato-static
# Attempt to fix rpmlint warnings about executable sources
find -type f -regex '.*\.\(c\|h\)$' -exec chmod a-x {} ';'
@ -335,38 +342,25 @@ export CPPFLAGS=-I`ruby -e "puts File.join(RbConfig::CONFIG['includedir'], RbCon
--without-devil \
%endif
%if ! %{QTAPPS}
--without-qt
--without-qt \
%endif
%if %{GUILE}
--enable-guile=yes
%else
--enable-guile=no
%endif
# drop rpath
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
%if %{with python2}
cp -a tclpkg/gv tclpkg/gv.python2
%endif
make %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fno-strict-overflow %{?FFSTORE}" \
CXXFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fno-strict-overflow %{?FFSTORE}" \
PYTHON_INCLUDES=-I/usr/include/python%{python3_version}m PYTHON_LIBS="-lpython%{python3_version}m" \
PYTHON_INSTALL_DIR=%{python3_sitearch} PYTHON=%{__python3}
%if %{with python2}
pushd tclpkg/gv.python2
make %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fno-strict-overflow %{?FFSTORE}" \
CXXFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fno-strict-overflow %{?FFSTORE}" \
PYTHON_INCLUDES=-I/usr/include/python%{python2_version} PYTHON_LIBS="-lpython%{python2_version}" \
PYTHON_INSTALL_DIR=%{python2_sitearch} libgv_python.la
popd
%endif
CXXFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fno-strict-overflow %{?FFSTORE}"
%install
rm -rf %{buildroot}
make DESTDIR=%{buildroot} \
docdir=%{buildroot}%{_docdir}/%{name} \
pkgconfigdir=%{_libdir}/pkgconfig \
PYTHON_LIBS="-lpython%{python3_version}m" \
PYTHON_INSTALL_DIR=%{python3_sitearch} \
install
find %{buildroot} -type f -name "*.la" -exec rm -f {} ';'
chmod -x %{buildroot}%{_datadir}/%{name}/lefty/*
@ -413,26 +407,23 @@ done
popd
%if %{with python2}
pushd tclpkg/gv.python2
install -pD .libs/libgv_python.so %{buildroot}%{python2_sitearch}/_gv.so
install -p gv.py %{buildroot}%{python2_sitearch}/gv.py
popd
install -pD tclpkg/gv/.libs/libgv_python2.so %{buildroot}%{python2_sitearch}/_gv.so
install -p tclpkg/gv/gv.py %{buildroot}%{python2_sitearch}/gv.py
%endif
# python 3
pushd tclpkg/gv
install -pD .libs/libgv_python.so %{buildroot}%{python3_sitearch}/_gv.so
install -p gv.py %{buildroot}%{python3_sitearch}/gv.py
popd
# remove the python module from the %%_libdir/graphviz/python, it's
# already installed in the python sitearch
rm -f %{buildroot}%{_libdir}/graphviz/python/*
rmdir %{buildroot}%{_libdir}/graphviz/python
install -pD tclpkg/gv/.libs/libgv_python3.so %{buildroot}%{python3_sitearch}/_gv.so
install -p tclpkg/gv/gv.py %{buildroot}%{python3_sitearch}/gv.py
# Ghost plugins config
touch %{buildroot}%{_libdir}/graphviz/config%{pluginsver}
# Fix lua file placement for flatpak
if [ "%{_prefix}" != "/usr" ]; then
cp -ru %{buildroot}/usr/* %{buildroot}%{_prefix}/
rm -rf %{buildroot}/usr/*
fi
%check
%if %{PHP}
# Minimal load test of php extension
@ -449,41 +440,40 @@ php --no-php-ini \
# make rtest
%post
/sbin/ldconfig
%{_bindir}/dot -c
%{?ldconfig}
%{_bindir}/dot -c 2>/dev/null || :
%postun
/sbin/ldconfig
%ldconfig_postun
%if %{DEVIL}
# run "dot -c" to generate plugin config in %%{_libdir}/graphviz/config*
%post devil
%{_bindir}/dot -c 2>/dev/null || :
/sbin/ldconfig
%{?ldconfig}
%postun devil
%{_bindir}/dot -c 2>/dev/null || :
/sbin/ldconfig
%{?ldconfig}
%endif
# run "dot -c" to generate plugin config in %%{_libdir}/graphviz/config*
%post gd
%{_bindir}/dot -c 2>/dev/null || :
/sbin/ldconfig
%{?ldconfig}
%postun gd
%{_bindir}/dot -c 2>/dev/null || :
/sbin/ldconfig
%{?ldconfig}
%if %{MING}
# run "dot -c" to generate plugin config in %%{_libdir}/graphviz/config*
%post ming
%{_bindir}/dot -c 2>/dev/null || :
/sbin/ldconfig
%{?ldconfig}
%postun ming
%{_bindir}/dot -c 2>/dev/null || :
/sbin/ldconfig
%{?ldconfig}
%endif
%files
@ -521,7 +511,7 @@ php --no-php-ini \
%{_libdir}/*.so
%{_libdir}/graphviz/*.so
%{_libdir}/pkgconfig/*.pc
%{_mandir}/man3/*.3.gz
%{_mandir}/man3/*.3.*
%if %{DEVIL}
%files devil
@ -540,9 +530,11 @@ php --no-php-ini \
%dir %{_datadir}/graphviz
%{_datadir}/graphviz/graphs
%if %{GUILE}
%files guile
%{_libdir}/graphviz/guile/
%{_mandir}/man3/gv.3guile*
%endif
%files java
%{_libdir}/graphviz/java/
@ -592,7 +584,7 @@ php --no-php-ini \
%if %{ARRRR}
%files R
%{_libdir}/graphviz/R/
%{_mandir}/man3/gv.3r.gz
%{_mandir}/man3/gv.3r.*
%endif
%files ruby
@ -614,41 +606,204 @@ php --no-php-ini \
%{_mandir}/man3/*.3tcl*
%changelog
* Mon Dec 4 2023 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-45
* Mon Dec 4 2023 Jaroslav Škarvada <jskarvad@redhat.com> - 2.44.0-26
- Rebuilt for graphviz-ruby addition
Resolves: RHEL-15140
Resolves: RHEL-17134
* Fri Feb 17 2023 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-44
* Thu Jan 20 2022 Jaroslav Škarvada <jskarvad@redhat.com> - 2.44.0-25
- Fixed gvpack to run
Resolves: rhbz#2061305
Resolves: rhbz#2029565
* Tue Jun 8 2021 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-43
- Fixed races during pdf documentation build which should build docs correctly
Related: CVE-2020-18032
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 2.44.0-24
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Tue Jun 8 2021 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-42
- Rebuilt, because pdf documentation were built incorrectly
Related: CVE-2020-18032
* Tue Jun 8 2021 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-41
* Thu Jun 3 2021 Jaroslav Škarvada <jskarvad@redhat.com> - 2.44.0-23
- Fixed buffer overflow in lib/common/shapes.c
Resolves: CVE-2020-18032
* Fri Nov 1 2019 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-40
- Release bump for releasing graphviz-python3 in CRB
Resolves: rhbz#1704875
* Mon May 24 2021 Jaroslav Škarvada <jskarvad@redhat.com> - 2.44.0-22
- Release bump to workaround OSCI problems
Related: rhbz#1955686
* Fri Dec 7 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-39
* Mon May 24 2021 Jaroslav Škarvada <jskarvad@redhat.com> - 2.44.0-21
- Also dropped tmsize10.clo file from the tarball (repacked tarball)
Related: rhbz#1955686
* Wed May 12 2021 Jaroslav Škarvada <jskarvad@redhat.com> - 2.44.0-20
- Dropped unneeded tmsize10.clo file
Resolves: rhbz#1955686
* Fri May 7 2021 Jaroslav Škarvada <jskarvad@redhat.com> - 2.44.0-19
- Conditionalized guile support
Resolves: rhbz#1953974
- Updated RHEL macros
Resolves: rhbz#1957653
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 2.44.0-18
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.44.0-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Thu Jan 07 2021 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.44.0-16
- F-34: rebuild against ruby 3.0
* Wed Nov 25 2020 Miro Hrončok <mhroncok@redhat.com> - 2.44.0-15
- Disable Python 2 in ELN
* Tue Sep 01 2020 Richard W.M. Jones <rjones@redhat.com> - 2.44.0-14
- OCaml 4.11.1 rebuild
* Fri Aug 21 2020 Richard W.M. Jones <rjones@redhat.com> - 2.44.0-13
- OCaml 4.11.0 rebuild
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.44.0-12
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.44.0-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jul 10 2020 Jiri Vanek <jvanek@redhat.com> - 2.44.0-10
- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
* Thu Jun 25 2020 Jitka Plesnikova <jplesnik@redhat.com> - 2.44.0-9
- Perl 5.32 rebuild
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 2.44.0-8
- Rebuilt for Python 3.9
* Wed May 20 2020 Jaroslav Škarvada <jskarvad@redhat.com> - 2.44.0-7
- Also fixed man page typo
* Wed May 20 2020 Jaroslav Škarvada <jskarvad@redhat.com> - 2.44.0-6
- Fixed man pages according to man page scan
* Mon May 04 2020 Richard W.M. Jones <rjones@redhat.com> - 2.44.0-5
- OCaml 4.11.0+dev2-2020-04-22 rebuild
* Tue Apr 21 2020 Richard W.M. Jones <rjones@redhat.com> - 2.44.0-4
- OCaml 4.11.0 pre-release attempt 2
* Fri Apr 17 2020 Richard W.M. Jones <rjones@redhat.com> - 2.44.0-3
- OCaml 4.11.0 pre-release
* Wed Apr 8 2020 Jaroslav Škarvada <jskarvad@redhat.com> - 2.44.0-2
- Fixed multiple packaging of manual pages
* Wed Apr 8 2020 Jaroslav Škarvada <jskarvad@redhat.com> - 2.44.0-1
- New version
Resolves: rhbz#1822101
* Mon Apr 6 2020 Jaroslav Škarvada <jskarvad@redhat.com> - 2.42.4-1
- New version
Resolves: rhbz#1821045
- Switched to bz2 archives
- Dropped ocaml-allow-const-cast patch (upstreamed)
* Thu Apr 02 2020 Richard W.M. Jones <rjones@redhat.com> - 2.42.2-10
- Update all OCaml dependencies for RPM 4.16.
* Wed Feb 26 2020 Richard W.M. Jones <rjones@redhat.com> - 2.42.2-9
- OCaml 4.10.0 final.
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.42.2-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sun Jan 19 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.42.2-7
- F-32: rebuild against ruby27
* Sat Jan 18 2020 Richard W.M. Jones <rjones@redhat.com> - 2.42.2-6
- Bump release and rebuild.
* Sat Jan 18 2020 Richard W.M. Jones <rjones@redhat.com> - 2.42.2-5
- OCaml 4.10.0+beta1 rebuild.
* Fri Dec 06 2019 Richard W.M. Jones <rjones@redhat.com> - 2.42.2-4
- OCaml 4.09.0 (final) rebuild.
* Thu Oct 31 2019 Miro Hrončok <mhroncok@redhat.com> - 2.42.2-3
- Remove Python 2 package on Fedora 32+
* Fri Oct 04 2019 Remi Collet <remi@remirepo.net> - 2.42.2-2
- rebuild for https://fedoraproject.org/wiki/Changes/php74
* Wed Oct 2 2019 Jaroslav Škarvada <jskarvad@redhat.com> - 2.42.2-1
- New version
Resolves: rhbz#1753061
- Dropped visio, python3, CVE-2018-10196, CVE-2019-11023, and
swig4-updated-language-options patches (all upstreamed)
- Simplified python bindings build process
* Wed Oct 02 2019 Orion Poplawski <orion@nwra.com> - 2.40.1-58
- Rebuild for lasi 1.1.3 soname bump
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 2.40.1-57
- Rebuilt for Python 3.8
* Fri Aug 16 2019 Richard W.M. Jones <rjones@redhat.com> - 2.40.1-56
- OCaml 4.08.1 (final) rebuild.
* Fri Aug 09 2019 Gwyn Ciesla <gwync@protonmail.com> - 2.40.1-55
- Glob remaining man pages.
* Wed Jul 31 2019 Richard W.M. Jones <rjones@redhat.com> - 2.40.1-54
- OCaml 4.08.1 (rc2) rebuild.
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.40.1-53
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jun 27 2019 Richard W.M. Jones <rjones@redhat.com> - 2.40.1-52
- OCaml 4.08.0 (final) rebuild.
* Tue Jun 04 2019 Jitka Plesnikova <jplesnik@redhat.com> - 2.40.1-51
- Perl 5.30 re-rebuild updated packages
* Mon Jun 3 2019 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-50
- Fixed FTBFS with python-3.8
* Sat Jun 01 2019 Jitka Plesnikova <jplesnik@redhat.com> - 2.40.1-49
- Perl 5.30 rebuild
* Tue May 7 2019 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-48
- Fixed FTBFS caused by swig-4.0.0
Resolves: rhbz#1707435
* Mon Apr 29 2019 Richard W.M. Jones <rjones@redhat.com> - 2.40.1-47
- OCaml 4.08.0 (beta 3) rebuild.
* Wed Apr 24 2019 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-46
- Updated CVE-2019-11023 patch
Related: CVE-2019-11023
* Wed Apr 24 2019 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-45
- Fixed null pointer dereference in function agroot()
Resolves: CVE-2019-11023
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.40.1-44
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Jan 21 2019 Vít Ondruch <vondruch@redhat.com> - 2.40.1-43
- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.6
* Mon Jan 14 2019 Björn Esser <besser82@fedoraproject.org> - 2.40.1-42
- Rebuilt for libcrypt.so.2 (#1666033)
* Fri Dec 7 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-41
- Fixed some issues found by coverity scan
Resolves: rhbz#1602528
* Mon Nov 19 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-38
* Thu Oct 18 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-40
- Clarified license tag
Resolves: rhbz#1647065
* Mon Oct 15 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-37
* Mon Oct 15 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-39
- Dropped rpath
Resolves: rhbz#1630569
* Thu Oct 11 2018 Remi Collet <remi@remirepo.net> - 2.40.1-38
- Rebuild for https://fedoraproject.org/wiki/Changes/php73
* Wed Sep 26 2018 Kevin Fenzi <kevin@scrye.com> - 2.40.1-37
- Don't fail on post scriptlet failures.
* Wed Jul 18 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 2.40.1-36
- Fixed ghostscript requirements

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (graphviz-2.44.0.tar.bz2) = ee1ac434b82a00ed0e140b4ead90e098afabf1f2e5917e199a8f26b3594da47d4c472424e6a22256b83d816b6c3073a808407e0416ccaa093c2dc097db27aebd