forked from pool/graphviz
Accepting request 883878 from graphics
OBS-URL: https://build.opensuse.org/request/show/883878 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/graphviz?expand=0&rev=82
This commit is contained in:
commit
cd03620ef0
3
_multibuild
Normal file
3
_multibuild
Normal file
@ -0,0 +1,3 @@
|
||||
<multibuild>
|
||||
<package>addons</package>
|
||||
</multibuild>
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8faf3fc25317b1d15166205bf64c1b4aed55a8a6959dcabaa64dbad197e47add
|
||||
size 26246717
|
8
graphviz-2.46-fix-shebang.patch
Normal file
8
graphviz-2.46-fix-shebang.patch
Normal file
@ -0,0 +1,8 @@
|
||||
--- graphviz-2.46.1/cmd/gvmap/gvmap.sh.orig 2021-02-18 18:41:12.414357238 +0100
|
||||
+++ graphviz-2.46.1/cmd/gvmap/gvmap.sh 2021-02-18 18:41:23.626463135 +0100
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/env ksh
|
||||
+#!/usr/bin/ksh
|
||||
|
||||
# Script for gvmap pipeline
|
||||
# Use -A to add flags for gvmap; e.g., -Ae results in gvmap -e
|
3
graphviz-2.46.1.tar.gz
Normal file
3
graphviz-2.46.1.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:931ed197bc833aec8501d66194b01620dd395130c380e350a6ec1b31e4866eac
|
||||
size 34065777
|
File diff suppressed because it is too large
Load Diff
@ -1,717 +0,0 @@
|
||||
#
|
||||
# spec file for package graphviz-addons
|
||||
#
|
||||
# Copyright (c) 2020 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
#fixes build failure caused by new .debug files, not sure how to fix correctly
|
||||
|
||||
%define mname graphviz
|
||||
%define libname libgraphviz6
|
||||
# name of the plugin config file that dot creates
|
||||
%define config_file config6
|
||||
# Build with extras or not, determines pulling additional dependencies
|
||||
# and breaks build cycle
|
||||
%bcond_without extras
|
||||
# Java and ocaml are not in ring1, thus this gets overriden in staging
|
||||
%bcond_without java
|
||||
%bcond_with ocaml
|
||||
# PHP7 requires swig >= 3.0.11, not available on Leap 42.x
|
||||
%if 0%{?suse_version} >= 1500
|
||||
%define php_version 7
|
||||
%else
|
||||
%define php_version 5
|
||||
%endif
|
||||
|
||||
%define ruby_version $(pkg-config --variable=RUBY_API_VERSION %{_libdir}/pkgconfig/ruby-*.pc)
|
||||
|
||||
# No pkgconfig(gts) in sle12 GA or SPx, but in sle15
|
||||
%if 0%{?suse_version} == 1315 && !0%{?is_opensuse}
|
||||
%define sle12 1
|
||||
%else
|
||||
%define sle12 0
|
||||
%endif
|
||||
%bcond_without python2
|
||||
Name: graphviz-addons
|
||||
Version: 2.42.3
|
||||
Release: 0
|
||||
Summary: Graph Visualization Tools
|
||||
License: EPL-1.0
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
URL: http://www.graphviz.org/
|
||||
Source: https://www2.graphviz.org/Packages/stable/portable_source/graphviz-%{version}.tar.gz
|
||||
Source2: graphviz-rpmlintrc
|
||||
#PATCH-FIX-UPSTREAM add flags to also link against libGLU and libGL
|
||||
Patch1: graphviz-smyrna-link_against_glu.patch
|
||||
Patch2: graphviz-fix-pkgIndex.patch
|
||||
#PATCH-FIX-UPSTREAM Off-by-one bug
|
||||
Patch3: graphviz-array_overflow.patch
|
||||
|
||||
Patch6: graphviz-2.20.2-interpreter_names.patch
|
||||
#PATCH-FIX-UPSTREAM Don't warn about harmless issues with swig generated code
|
||||
Patch7: graphviz-useless_warnings.patch
|
||||
Patch8: graphviz-no_strict_aliasing.patch
|
||||
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: bison
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: flex
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: guile-devel
|
||||
BuildRequires: libstdc++-devel
|
||||
BuildRequires: libtool
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: pkgconfig(expat)
|
||||
%if 0%{sle12} != 1
|
||||
BuildRequires: pkgconfig(gts)
|
||||
%endif
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
Requires: graphviz-plugins-core = %{version}
|
||||
Recommends: graphviz-gd = %{version}
|
||||
%if %{with extras}
|
||||
BuildRequires: argon2-devel
|
||||
BuildRequires: freeglut-devel
|
||||
|
||||
BuildRequires: libjpeg-devel
|
||||
BuildRequires: libpng-devel
|
||||
BuildRequires: perl
|
||||
%if 0%{?suse_version} >= 1500
|
||||
BuildRequires: php7-devel
|
||||
BuildRequires: swig >= 3.0.11
|
||||
%else
|
||||
BuildRequires: php5-devel
|
||||
BuildRequires: swig
|
||||
%endif
|
||||
BuildRequires: ruby-devel
|
||||
BuildRequires: pkgconfig(Qt5Core)
|
||||
BuildRequires: pkgconfig(Qt5PrintSupport)
|
||||
BuildRequires: pkgconfig(Qt5Widgets)
|
||||
BuildRequires: pkgconfig(cairo)
|
||||
BuildRequires: pkgconfig(fontconfig)
|
||||
BuildRequires: pkgconfig(freetype2) >= 2
|
||||
BuildRequires: pkgconfig(gdlib)
|
||||
BuildRequires: pkgconfig(glib-2.0)
|
||||
BuildRequires: pkgconfig(glu)
|
||||
BuildRequires: pkgconfig(gtkglext-1.0)
|
||||
BuildRequires: pkgconfig(ice)
|
||||
BuildRequires: pkgconfig(ijs)
|
||||
BuildRequires: pkgconfig(libglade-2.0)
|
||||
BuildRequires: pkgconfig(librsvg-2.0)
|
||||
BuildRequires: pkgconfig(lua)
|
||||
BuildRequires: pkgconfig(pango)
|
||||
%if %{with python2}
|
||||
BuildRequires: pkgconfig(python)
|
||||
%endif
|
||||
BuildRequires: pkgconfig(python3)
|
||||
BuildRequires: pkgconfig(sm)
|
||||
BuildRequires: pkgconfig(tcl)
|
||||
BuildRequires: pkgconfig(x11)
|
||||
BuildRequires: pkgconfig(xaw7)
|
||||
BuildRequires: pkgconfig(xext)
|
||||
%if %{with java}
|
||||
BuildRequires: java-devel >= 1.6.0
|
||||
%endif
|
||||
%if %{with ocaml}
|
||||
BuildRequires: ocaml
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%description
|
||||
A collection of tools and tcl packages for the manipulation and layout
|
||||
of graphs (as in nodes and edges, not as in bar charts).
|
||||
|
||||
%package -n graphviz-gvedit
|
||||
Summary: Graph editor based on Qt
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz
|
||||
|
||||
%description -n graphviz-gvedit
|
||||
The Qt5 graph editor included with graphviz, packaged
|
||||
separately to avoid cycles in the build of the graphviz
|
||||
package.
|
||||
|
||||
%package -n graphviz-smyrna
|
||||
Summary: Large graph viewer
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz
|
||||
|
||||
%description -n graphviz-smyrna
|
||||
Experimental large graph viewer using graphviz
|
||||
|
||||
%package -n graphviz-gnome
|
||||
Summary: Graphviz plugins that use gtk/GNOME
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Recommends: plugin-core = %{version}
|
||||
Requires(post): graphviz = %{version}
|
||||
Supplements: packageand(graphviz:xorg-x11-fonts-core)
|
||||
|
||||
%description -n graphviz-gnome
|
||||
Graphviz plugins that use gtk/GNOME.
|
||||
|
||||
%package -n graphviz-gd
|
||||
Summary: Graphviz plugin for renderers based on gd
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires(post): graphviz >= %{version}
|
||||
|
||||
%description -n graphviz-gd
|
||||
The graphviz-gd package contains the gd extensions for the graphviz
|
||||
tools.
|
||||
|
||||
%package -n graphviz-guile
|
||||
Summary: Graph Visualization Tools
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Requires: guile
|
||||
|
||||
%description -n graphviz-guile
|
||||
A collection of tools and tcl packages for the manipulation and layout
|
||||
of graphs (as in nodes and edges, not as in bar charts).
|
||||
|
||||
%package -n graphviz-java
|
||||
Summary: Graph Visualization Tools
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Requires: java
|
||||
|
||||
%description -n graphviz-java
|
||||
A collection of tools and tcl packages for the manipulation and layout
|
||||
of graphs (as in nodes and edges, not as in bar charts).
|
||||
|
||||
%package -n graphviz-x11
|
||||
Summary: Graph editors based on X11
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz
|
||||
|
||||
%description -n graphviz-x11
|
||||
The lefty/dotty/lneato X11 graph editors included with graphviz,
|
||||
packaged separately to reduce build dependencies.
|
||||
|
||||
%package -n graphviz-lua
|
||||
Summary: Lua extension for graphviz
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Requires: lua
|
||||
|
||||
%description -n graphviz-lua
|
||||
The graphviz-lua package contains the lua extension for the graphviz
|
||||
tools.
|
||||
|
||||
%package -n graphviz-ocaml
|
||||
Summary: OCAML extension for graphviz
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Requires: ocaml
|
||||
|
||||
%description -n graphviz-ocaml
|
||||
The graphviz-ocaml package contains the Objective Caml extension for
|
||||
the graphviz tools.
|
||||
|
||||
%package -n graphviz-perl
|
||||
Summary: Perl extension for Graphviz
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Requires: perl = %{perl_version}
|
||||
|
||||
%description -n graphviz-perl
|
||||
The graphviz-perl package contains the Perl extension for the graphviz
|
||||
tools.
|
||||
|
||||
%package -n graphviz-php
|
||||
Summary: PHP Extension for Graphviz
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Requires: php%{php_version}
|
||||
|
||||
%description -n graphviz-php
|
||||
The graphviz-php package contains the PHP extension for the graphviz
|
||||
tools.
|
||||
|
||||
%package -n python2-gv
|
||||
Summary: Python Extension for Graphviz
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
|
||||
%description -n python2-gv
|
||||
The package contains the Python extension for the
|
||||
graphviz tools.
|
||||
|
||||
%package -n python3-gv
|
||||
Summary: Python 3 Extension for Graphviz
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Provides: graphviz-python
|
||||
Obsoletes: graphviz-python
|
||||
|
||||
%description -n python3-gv
|
||||
The package contains the Python extension for the
|
||||
graphviz tools.
|
||||
|
||||
%package -n graphviz-ruby
|
||||
Summary: Ruby Extension for Graphviz
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Requires: ruby
|
||||
|
||||
%description -n graphviz-ruby
|
||||
The graphviz-ruby package contains the ruby extension for the graphviz
|
||||
tools.
|
||||
|
||||
%package -n graphviz-tcl
|
||||
Summary: Tcl extension tools for graphviz
|
||||
Group: Development/Libraries/Tcl
|
||||
Requires: graphviz = %{version}
|
||||
Requires: tcl >= 8.3
|
||||
Requires: tk
|
||||
|
||||
%description -n graphviz-tcl
|
||||
The graphviz-tcl package contains the various tcl packages (extensions)
|
||||
for the graphviz tools.
|
||||
|
||||
%package -n graphviz-doc
|
||||
Summary: Documentation for graphviz
|
||||
Group: Documentation/Howto
|
||||
|
||||
%description -n graphviz-doc
|
||||
Provides some additional PDF and HTML documentation for graphviz.
|
||||
|
||||
%package -n %{libname}
|
||||
Summary: Library for the manipulation of layout of graphs
|
||||
Group: System/Libraries
|
||||
Recommends: graphviz-plugins-core
|
||||
|
||||
%description -n %{libname}
|
||||
Library for the manipulation of layout of graphs (as in nodes and edges,
|
||||
not as in bar charts).
|
||||
|
||||
%package plugins-core
|
||||
Summary: Core plugins for graphviz
|
||||
# Needed for dot binary
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires(post): %{mname}
|
||||
|
||||
%description plugins-core
|
||||
Core plugins for graphviz:
|
||||
* libgvplugin_core
|
||||
* libgvplugin_dot_layout
|
||||
* libgvplugin_neato_layout
|
||||
|
||||
%package devel
|
||||
Summary: Graphviz development package
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: %{libname} = %{version}
|
||||
Requires: %{mname} = %{version}
|
||||
|
||||
%description devel
|
||||
The graphviz-devel package contains all that's necessary for developing
|
||||
programs that use the graphviz libraries including man3 pages.
|
||||
|
||||
|
||||
#autosetup breaks graphviz-addons
|
||||
%prep
|
||||
%setup -q -n %{mname}-%{version}
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch3
|
||||
|
||||
%patch6
|
||||
%patch7
|
||||
%patch8
|
||||
|
||||
# pkg-config returns 0 (TRUE) when guile-2.2 is present
|
||||
if pkg-config --atleast-version=2.2 guile-2.2; then
|
||||
sed "s/guile-2.0/guile-2.2/" -i configure.ac
|
||||
fi
|
||||
|
||||
rm -f contrib/gprof2dot.awk
|
||||
|
||||
# Fix path for lua/php install
|
||||
sed -i \
|
||||
-e 's@LUA_INSTALL_DIR="/usr.*@LUA_INSTALL_DIR=%{lua_archdir}@' \
|
||||
-e 's@\(PHP_INSTALL_DIR=.*\)/php/modules@\1/php%{php_version}/extensions@' \
|
||||
-e 's@\(PHP_INSTALL_DATADIR=.*\)/php@\1/php%{php_version}@' \
|
||||
configure.ac
|
||||
|
||||
%build
|
||||
./autogen.sh RUBY_VER=%{ruby_version}
|
||||
CFLAGS="%{optflags} -ffast-math -fno-strict-aliasing -fno-strict-overflow -fPIC"
|
||||
|
||||
%if %{with extras}
|
||||
|
||||
CFLAGS="$CFLAGS -I/usr/include/ruby-%{ruby_version}.0"
|
||||
#seems to be broken? gives -I/usr/lib64/ruby/2.6.0/x86_64-linux-gnu, ruby.h is in /usr/lib64/ruby/2.6.0
|
||||
#CFLAGS="$CFLAGS $(pkg-config --cflags ruby-$(echo {rb_ver} | sed 's|\.[^.]*$||'))"
|
||||
|
||||
%endif
|
||||
|
||||
export CFLAGS="$CFLAGS"
|
||||
export CPPFLAGS="$CFLAGS"
|
||||
export LDFLAGS="-pie"
|
||||
%configure \
|
||||
--disable-static \
|
||||
--without-included-ltdl \
|
||||
--disable-ltdl-install \
|
||||
--with-ipsepcola \
|
||||
--without-ming \
|
||||
--disable-io \
|
||||
--without-visio \
|
||||
%if %{with extras}
|
||||
%if %{with python2}
|
||||
--enable-python2 \
|
||||
%else
|
||||
--disable-python \
|
||||
--disable-python2 \
|
||||
%endif
|
||||
--with-x \
|
||||
--with-qt \
|
||||
--with-smyrna \
|
||||
RUBY_VER=%{ruby_version} \
|
||||
%else
|
||||
--without-mylibgd \
|
||||
--without-libgd \
|
||||
%endif
|
||||
--disable-silent-rules
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
make install \
|
||||
DESTDIR=%{buildroot} \
|
||||
docdir=%{buildroot}%{_docdir}/%{mname} \
|
||||
pkgconfigdir=%{_libdir}/pkgconfig
|
||||
|
||||
find %{buildroot} -type f -name "*.la" -delete -print
|
||||
|
||||
mkdir -p %{buildroot}/%{_docdir}
|
||||
mkdir -p %{buildroot}%{_datadir}/%{nmame}
|
||||
|
||||
rm -f %{buildroot}/%{_libdir}/%{mname}/pkgIndex.tcl
|
||||
chmod -x %{buildroot}%{_datadir}/%{mname}/lefty/*
|
||||
|
||||
mkdir -p %{buildroot}%{_libdir}/graphviz
|
||||
touch %{buildroot}%{_libdir}/graphviz/%{config_file}
|
||||
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d/
|
||||
cat <<EOF >%{buildroot}%{_sysconfdir}/ld.so.conf.d/%{mname}.conf
|
||||
%{_libdir}/%{mname}
|
||||
%{_libdir}/%{mname}/sharp
|
||||
%{_libdir}/%{mname}/java
|
||||
%{_libdir}/%{mname}/perl
|
||||
%{_libdir}/%{mname}/php
|
||||
%{_libdir}/%{mname}/ocaml
|
||||
%{_libdir}/%{mname}/python
|
||||
%{_libdir}/%{mname}/lua
|
||||
%{_libdir}/%{mname}/tcl
|
||||
%{_libdir}/%{mname}/guile
|
||||
%{_libdir}/%{mname}/ruby
|
||||
EOF
|
||||
|
||||
#Correct the path to the shared library
|
||||
for manfile in $(find %{buildroot} -name \*.man); do
|
||||
sed -i \
|
||||
-e 's$%{_prefix}/lib/graphviz$%{_libdir}/%{mname}$g' \
|
||||
$manfile
|
||||
done
|
||||
|
||||
# There are no such binaries distributed by us
|
||||
rm -f %{buildroot}%{_mandir}/man1/mingle.1
|
||||
|
||||
%if %{with extras}
|
||||
# Fix doc location
|
||||
cp -a %{buildroot}%{_datadir}/%{mname}/doc %{buildroot}%{_defaultdocdir}/%{mname}-doc
|
||||
%fdupes -s %{buildroot}%{_defaultdocdir}/%{mname}-doc
|
||||
# Prune all the content of the base graphviz package
|
||||
rm -rf %{buildroot}%{_libdir}/pkgconfig
|
||||
rm -rf %{buildroot}%{_includedir}
|
||||
rm -rf %{buildroot}%{_datadir}/graphviz/examples
|
||||
rm -rf %{buildroot}%{_datadir}/graphviz/graphs
|
||||
rm -rf %{buildroot}%{_datadir}/graphviz/gvpr
|
||||
rm -f %{buildroot}%{_mandir}/man3/*.3
|
||||
rm -f %{buildroot}%{_mandir}/man7/*.7
|
||||
rm -f %{buildroot}%{_libdir}/graphviz/%{config_file}
|
||||
rm -f %{buildroot}%{_libdir}/graphviz/libgvplugin_core*
|
||||
rm -f %{buildroot}%{_libdir}/graphviz/libgvplugin_dot_layout*
|
||||
rm -f %{buildroot}%{_libdir}/graphviz/libgvplugin_neato_layout*
|
||||
# binaries removal
|
||||
for i in acyclic bcomps ccomps circo cluster dijkstra dot dot2gxl dot_builtins edgepaint fdp gc gml2gv graphml2gv gv2gml gv2gxl gvcolor gvgen gvmap gvmap.sh gvpack gvpr gxl2dot gxl2gv mm2gv neato nop osage patchwork prune sccmap sfdp tred twopi unflatten vimdot; do
|
||||
rm -f %{buildroot}%{_bindir}/$i
|
||||
rm -f %{buildroot}%{_mandir}/man1/$i.1
|
||||
done
|
||||
# libraries removal
|
||||
rm -f %{buildroot}%{_sysconfdir}/ld.so.conf.d/graphviz.conf
|
||||
rm -f %{buildroot}%{_libdir}/lib{cdt,cgraph,gvc,gvpr,pathplan,xdot,lab_gamut}.so*
|
||||
# Fix tcl locations
|
||||
for lib in libgdtclft* libgv_tcl.so libtcldot* libtclplan* ; do
|
||||
mv %{buildroot}%{_libdir}/%{mname}/tcl/${lib} %{buildroot}%{_libdir}
|
||||
done
|
||||
# remove duplicated tcl files
|
||||
for i in libgdtclft.so.0.0.0 libgv_tcl.so libtcldot.so.0.0.0 libtcldot_builtin.so.0.0.0 libtclplan.so.0.0.0; do
|
||||
rm -f %{buildroot}%{_libdir}/tcl8.6/graphviz/$i
|
||||
ln -s %{_libdir}/$i %{buildroot}%{_libdir}/tcl8.6/graphviz/$i
|
||||
done
|
||||
mkdir -p %{buildroot}%{_datadir}/tcl/%{mname}/
|
||||
mv %{buildroot}%{_libdir}/%{mname}/tcl/pkgIndex.tcl %{buildroot}%{_datadir}/tcl/%{mname}/pkgIndex.tcl
|
||||
# remove graphviz bindings from graphviz dir, these are installed into the language specific directories
|
||||
rm -rf %{buildroot}%{_libdir}/graphviz/lua
|
||||
rm -rf %{buildroot}%{_libdir}/graphviz/perl
|
||||
rm -rf %{buildroot}%{_libdir}/graphviz/php
|
||||
rm -rf %{buildroot}%{_libdir}/graphviz/python
|
||||
rm -rf %{buildroot}%{_libdir}/graphviz/ruby
|
||||
%else
|
||||
# These are part of gnome subpkg
|
||||
rm -f %{buildroot}%{_libdir}/graphviz/libgvplugin_pango*
|
||||
rm -f %{buildroot}%{_libdir}/graphviz/libgvplugin_xlib*
|
||||
# This is part of the gd subpkg only
|
||||
rm -f %{buildroot}%{_mandir}/man1/{diffimg.1*,dotty.1*,lefty.1*,lneato.1*}
|
||||
# This is part of the x11 subpkg only
|
||||
rm -rf %{buildroot}%{_datadir}/graphviz/lefty
|
||||
%endif
|
||||
# Remove wrongly located docs
|
||||
rm -rf %{buildroot}%{_datadir}/%{mname}/doc
|
||||
|
||||
%post plugins-core
|
||||
# run "dot -c" to generate plugin config %%{_libdir}/graphviz/config
|
||||
dot -c
|
||||
test -s %{_libdir}/graphviz/%{config_file} || echo "%{_libdir}/graphviz/%{config_file} doesn't exist! Check installation."
|
||||
|
||||
%postun plugins-core
|
||||
if ! test -x %{_bindir}/dot; then
|
||||
rm -f %{_libdir}/%{mname}/%{config_file}
|
||||
fi
|
||||
|
||||
%post -n %{libname} -p /sbin/ldconfig
|
||||
|
||||
%postun -n %{libname} -p /sbin/ldconfig
|
||||
|
||||
%if %{with extras}
|
||||
%files -n graphviz-gvedit
|
||||
%license COPYING
|
||||
%{_bindir}/gvedit
|
||||
%dir %{_datadir}/%{mname}/gvedit
|
||||
%{_datadir}/%{mname}/gvedit/attrs.txt
|
||||
%{_mandir}/man1/gvedit.1%{ext_man}
|
||||
|
||||
%files -n graphviz-smyrna
|
||||
%license COPYING
|
||||
%{_bindir}/smyrna
|
||||
%{_datadir}/%{mname}/smyrna
|
||||
%{_mandir}/man1/smyrna.1%{ext_man}
|
||||
|
||||
%files -n graphviz-gd
|
||||
%{_bindir}/diffimg
|
||||
%{_mandir}/man1/diffimg.1%{ext_man}
|
||||
%{_libdir}/graphviz/libgvplugin_gd.so*
|
||||
|
||||
%post -n graphviz-gd
|
||||
%{_bindir}/dot -c
|
||||
|
||||
%postun -n graphviz-gd
|
||||
%{_bindir}/dot -c 2>/dev/null
|
||||
|
||||
%post -n graphviz-gnome
|
||||
%{_bindir}/dot -c
|
||||
|
||||
%postun -n graphviz-gnome
|
||||
%{_bindir}/dot -c 2>/dev/null
|
||||
|
||||
%files -n graphviz-gnome
|
||||
%{_libdir}/graphviz/libgvplugin_gs*
|
||||
%{_libdir}/graphviz/libgvplugin_rsvg*
|
||||
%{_libdir}/graphviz/libgvplugin_pango*
|
||||
%{_libdir}/graphviz/libgvplugin_gtk*
|
||||
%{_libdir}/graphviz/libgvplugin_xlib*
|
||||
%{_libdir}/graphviz/libgvplugin_gdk*
|
||||
|
||||
%post -n graphviz-tcl -p /sbin/ldconfig
|
||||
%postun -n graphviz-tcl -p /sbin/ldconfig
|
||||
|
||||
%files -n graphviz-guile
|
||||
%{_libdir}/graphviz/guile
|
||||
%{_mandir}/man3/gv.3guile%{ext_man}
|
||||
|
||||
%if %{with java}
|
||||
%files -n graphviz-java
|
||||
%{_libdir}/graphviz/java
|
||||
%{_mandir}/man3/gv.3java%{ext_man}
|
||||
%endif
|
||||
|
||||
%files -n graphviz-lua
|
||||
%{lua_archdir}/gv.so
|
||||
%{_mandir}/man3/gv.3lua%{ext_man}
|
||||
|
||||
%files -n graphviz-x11
|
||||
%license COPYING
|
||||
%{_bindir}/dotty
|
||||
%{_bindir}/lefty
|
||||
%{_bindir}/lneato
|
||||
%{_datadir}/%{mname}/lefty
|
||||
%{_mandir}/man1/dotty.1%{ext_man}
|
||||
%{_mandir}/man1/lefty.1%{ext_man}
|
||||
%{_mandir}/man1/lneato.1%{ext_man}
|
||||
|
||||
%if %{with ocaml}
|
||||
%files -n graphviz-ocaml
|
||||
%{_libdir}/graphviz/ocaml
|
||||
%{_mandir}/man3/gv.3ocaml%{ext_man}
|
||||
%endif
|
||||
|
||||
%files -n graphviz-perl
|
||||
%{perl_vendorarch}/gv.pm
|
||||
%{perl_vendorarch}/gv.so
|
||||
%{_mandir}/man3/gv.3perl%{ext_man}
|
||||
|
||||
%files -n graphviz-php
|
||||
%{_libdir}/php%{php_version}/extensions/gv.so
|
||||
%{_datadir}/php%{php_version}/gv.php
|
||||
%{_mandir}/man3/gv.3php%{ext_man}
|
||||
|
||||
%if %{with python2}
|
||||
%files -n python2-gv
|
||||
%dir %{_libdir}/graphviz/python2
|
||||
%{python_sitearch}/_gv.so
|
||||
%{python_sitearch}/gv.py
|
||||
%{_libdir}/graphviz/python2/_gv.so
|
||||
%{_libdir}/graphviz/python2/gv.py
|
||||
%{_libdir}/graphviz/python2/libgv_python2.so
|
||||
%endif
|
||||
|
||||
%files -n python3-gv
|
||||
%dir %{_libdir}/graphviz/python3
|
||||
%{python3_sitearch}/_gv.so
|
||||
%{python3_sitearch}/gv.py
|
||||
%{_libdir}/graphviz/python3/_gv.so
|
||||
%{_libdir}/graphviz/python3/gv.py
|
||||
%{_libdir}/graphviz/python3/libgv_python3.so
|
||||
%{_mandir}/man3/gv.3python%{ext_man}
|
||||
|
||||
%files -n graphviz-ruby
|
||||
%{rb_vendorarchdir}/gv.so
|
||||
%{_mandir}/man3/gv.3ruby%{ext_man}
|
||||
|
||||
%files -n graphviz-tcl
|
||||
%dir %{_datadir}/tcl/%{mname}
|
||||
%{_libdir}/tcl[0-9].[0-9]
|
||||
%{_libdir}/libgdtclft*
|
||||
%{_libdir}/libgv_tcl.so
|
||||
%{_libdir}/libtcldot*
|
||||
%{_libdir}/libtclplan*
|
||||
%{_datadir}/tcl/%{mname}/pkgIndex.tcl
|
||||
%{_mandir}/man3/*.3tcl*
|
||||
|
||||
%files -n graphviz-doc
|
||||
%docdir %{_defaultdocdir}/%{mname}-doc
|
||||
%{_defaultdocdir}/%{mname}-doc
|
||||
%{_datadir}/graphviz/demo
|
||||
|
||||
%else
|
||||
%files
|
||||
%doc doc/FAQ.html AUTHORS README NEWS ChangeLog
|
||||
%license COPYING
|
||||
%{_bindir}/acyclic
|
||||
%{_bindir}/bcomps
|
||||
%{_bindir}/ccomps
|
||||
%{_bindir}/circo
|
||||
%{_bindir}/cluster
|
||||
%{_bindir}/dijkstra
|
||||
%{_bindir}/dot
|
||||
%{_bindir}/dot2gxl
|
||||
%{_bindir}/dot_builtins
|
||||
%{_bindir}/edgepaint
|
||||
%{_bindir}/fdp
|
||||
%{_bindir}/gc
|
||||
%{_bindir}/gml2gv
|
||||
%{_bindir}/graphml2gv
|
||||
%{_bindir}/gv2gml
|
||||
%{_bindir}/gv2gxl
|
||||
%{_bindir}/gvcolor
|
||||
%{_bindir}/gvgen
|
||||
%{_bindir}/gvmap
|
||||
%{_bindir}/gvmap.sh
|
||||
%{_bindir}/gvpack
|
||||
%{_bindir}/gvpr
|
||||
%{_bindir}/gxl2dot
|
||||
%{_bindir}/gxl2gv
|
||||
%{_bindir}/mm2gv
|
||||
%{_bindir}/neato
|
||||
%{_bindir}/nop
|
||||
%{_bindir}/osage
|
||||
%{_bindir}/patchwork
|
||||
%{_bindir}/prune
|
||||
%{_bindir}/sccmap
|
||||
%{_bindir}/sfdp
|
||||
%{_bindir}/tred
|
||||
%{_bindir}/twopi
|
||||
%{_bindir}/unflatten
|
||||
%dir %{_datadir}/%{mname}
|
||||
%{_datadir}/%{mname}/graphs
|
||||
%dir %{_datadir}/%{mname}/gvpr
|
||||
%{_datadir}/%{mname}/gvpr/addranks
|
||||
%{_datadir}/%{mname}/gvpr/addrings
|
||||
%{_datadir}/%{mname}/gvpr/anon
|
||||
%{_datadir}/%{mname}/gvpr/attr
|
||||
%{_datadir}/%{mname}/gvpr/bb
|
||||
%{_datadir}/%{mname}/gvpr/bbox
|
||||
%{_datadir}/%{mname}/gvpr/cliptree
|
||||
%{_datadir}/%{mname}/gvpr/col
|
||||
%{_datadir}/%{mname}/gvpr/collapse
|
||||
%{_datadir}/%{mname}/gvpr/color
|
||||
%{_datadir}/%{mname}/gvpr/dechain
|
||||
%{_datadir}/%{mname}/gvpr/deghist
|
||||
%{_datadir}/%{mname}/gvpr/deledges
|
||||
%{_datadir}/%{mname}/gvpr/delmulti
|
||||
%{_datadir}/%{mname}/gvpr/delnodes
|
||||
%{_datadir}/%{mname}/gvpr/depath
|
||||
%{_datadir}/%{mname}/gvpr/dijkstra
|
||||
%{_datadir}/%{mname}/gvpr/flatten
|
||||
%{_datadir}/%{mname}/gvpr/get-layers-list
|
||||
%{_datadir}/%{mname}/gvpr/group
|
||||
%{_datadir}/%{mname}/gvpr/indent
|
||||
%{_datadir}/%{mname}/gvpr/knbhd
|
||||
%{_datadir}/%{mname}/gvpr/maxdeg
|
||||
%{_datadir}/%{mname}/gvpr/path
|
||||
%{_datadir}/%{mname}/gvpr/rotate
|
||||
%{_datadir}/%{mname}/gvpr/scale
|
||||
%{_datadir}/%{mname}/gvpr/scalexy
|
||||
%{_datadir}/%{mname}/gvpr/span
|
||||
%{_datadir}/%{mname}/gvpr/topon
|
||||
%{_datadir}/%{mname}/gvpr/treetoclust
|
||||
%{_datadir}/%{mname}/gvpr/chkclusters
|
||||
%{_datadir}/%{mname}/gvpr/cycle
|
||||
%{_datadir}/%{mname}/gvpr/addedges
|
||||
%{_datadir}/%{mname}/gvpr/binduce
|
||||
%{_datadir}/%{mname}/gvpr/bipart
|
||||
%{_datadir}/%{mname}/gvpr/chkedges
|
||||
%{_datadir}/%{mname}/gvpr/histogram
|
||||
%{_mandir}/man1/*.1%{ext_man}
|
||||
%{_mandir}/man7/*.7%{ext_man}
|
||||
%exclude %{_mandir}/man1/smyrna.1%{ext_man}
|
||||
|
||||
%files -n %{libname}
|
||||
%{_libdir}/*.so.*
|
||||
%config %{_sysconfdir}/ld.so.conf.d/graphviz.conf
|
||||
|
||||
%files plugins-core
|
||||
%dir %{_libdir}/%{name}
|
||||
%ghost %{_libdir}/%{name}/%{config_file}
|
||||
%{_libdir}/%{name}/*.so*
|
||||
|
||||
%files devel
|
||||
%{_includedir}/graphviz
|
||||
%{_libdir}/*.so
|
||||
%{_libdir}/pkgconfig/*.pc
|
||||
%{_mandir}/man3/*.3%{ext_man}
|
||||
%endif
|
||||
|
||||
%changelog
|
11
graphviz-no_php_extra_libs.patch
Normal file
11
graphviz-no_php_extra_libs.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- configure.ac 2019-07-13 05:14:04.000000000 +0200
|
||||
+++ configure.ac 2020-12-31 13:46:52.374560516 +0100
|
||||
@@ -1116,7 +1116,7 @@ else
|
||||
PHP_INCLUDES="`$PHPCONFIG --includes`"
|
||||
PHP_INSTALL_DIR="`$PHPCONFIG --extension-dir`"
|
||||
PHP_INSTALL_DATADIR="/usr/share/php"
|
||||
- PHP_LIBS="`$PHPCONFIG --ldflags` `$PHPCONFIG --libs`"
|
||||
+ PHP_LIBS="`$PHPCONFIG --ldflags`"
|
||||
save_CPPFLAGS=$CPPFLAGS
|
||||
CPPFLAGS="$CPPFLAGS $PHP_INCLUDES"
|
||||
AC_CHECK_HEADER(php.h,,[
|
@ -1,9 +1,8 @@
|
||||
--- .orig/lib/vmalloc/Makefile.am 2019-04-02 14:39:35.873818775 +0200
|
||||
+++ lib/vmalloc/Makefile.am 2019-04-02 14:50:07.659001790 +0200
|
||||
@@ -9,4 +9,6 @@
|
||||
vmprofile.c vmregion.c vmsegment.c vmset.c vmstat.c vmstrdup.c \
|
||||
vmtrace.c vmwalk.c
|
||||
--- graphviz-2.46.1/lib/vmalloc/Makefile.am.orig 2021-02-18 17:44:23.990163756 +0100
|
||||
+++ graphviz-2.46.1/lib/vmalloc/Makefile.am 2021-02-18 17:46:38.615438829 +0100
|
||||
@@ -9,4 +9,5 @@
|
||||
vmopen.c \
|
||||
vmstrdup.c
|
||||
|
||||
+libvmalloc_C_la_CFLAGS = -fno-strict-aliasing
|
||||
+
|
||||
EXTRA_DIST = README vmalloc.vcxproj*
|
||||
EXTRA_DIST = vmalloc.vcxproj*
|
||||
|
164
graphviz.changes
164
graphviz.changes
@ -1,3 +1,167 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 8 16:01:30 UTC 2021 - Christian Vögl <christian.voegl@suse.com>
|
||||
|
||||
- Buildrequire full ghostscript in the addons package
|
||||
to avoid a conflict betwen ghostcript-mini and ghostscript-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 16 10:56:53 UTC 2021 - Christian Vögl <christian.voegl@suse.com>
|
||||
|
||||
- Replace ghostscript-mini dependency with ghostscript_any
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 1 13:55:28 UTC 2021 - Christian Vögl <christian.voegl@suse.com>
|
||||
|
||||
- Add graphviz-webp package to for webp image support
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 23 16:10:57 UTC 2021 - Christian Vögl <christian.voegl@suse.com>
|
||||
|
||||
- Reenable ghostscript, but require just ghostscript-mini
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 18 18:04:09 UTC 2021 - Christian Vögl <christian.voegl@suse.com>
|
||||
|
||||
- Update to new release 2.46.1 (changes since 2.44.1)
|
||||
* Support for building against Guile 2.2
|
||||
* Portable source is now also offered as a .tar.xz
|
||||
* CentOS/RHEL 6 is no longer supported
|
||||
* Vestiges of Qt4 support have been removed
|
||||
* C++11 support is now required of the C++ compiler used to build Graphviz
|
||||
* C99 support is now required of the C compiler used to build Graphviz
|
||||
* Question about userout() function in agerror.c #1924
|
||||
* The minimum version of Python required to run the test suite is 3.6
|
||||
* memory leak in label construction
|
||||
* gvedit compilation errors out, but works if manually compiled with qt5 #1862
|
||||
* incorrect HTML BR attribute parsing code #1913
|
||||
* broken overflow checks in RectArea #1906
|
||||
* various memory leaks !1699
|
||||
* Fix bad free in lefty !1709
|
||||
* typo in pathcross #1926
|
||||
* Out-of-bounds write caused by incorrect error handling of malloc in genUserdata #1928
|
||||
* Offer .tar.xz files too #454
|
||||
* Header file graphviz_version.h has no include guards #1929
|
||||
* regression: newlines embedded in quoted labels / node names are not preserved in 2.46.0 #1931
|
||||
* Properly fill graphviz_version.h !1706
|
||||
* Cgraph's agxbuf API gained a new function agxbdisown(), for dissociating
|
||||
* backing memory from the managed buffer
|
||||
* Build system support for the Elbrus 2000 CPU, thanks to Michael Shigorin
|
||||
* Cgraph's agheap() API has been removed
|
||||
* Autotools build system support for eFence has been removed
|
||||
* Building Graphviz with ICC defaults to -O2 instead of -O0
|
||||
* Build system work arounds for GCC 3 have been removed
|
||||
* Incomplete support for running the test suite under CMake has been removed
|
||||
* Portable source tarballs now use the “ustar” POSIX format
|
||||
* Minimum version of Flex required to build Graphviz is now 2.5.2
|
||||
* Minimum version of Bison required to build Graphviz is now 3.0
|
||||
* Minimum version of CMake required to build Graphviz using CMake is now 3.1
|
||||
* gvpr: line numbers in gvpr errors/warnings are incorrect #1594
|
||||
* URL typo in patchwork man page
|
||||
* Escaped backslashes are not correctly handled when producing xdot with dot #165
|
||||
* heap-over-flow(off-by-null) in lib/common/shapes.c #1700
|
||||
* Windows MSBuild executables have the wrong version #1745
|
||||
* Cast Overflow at pango_textlayout #1314
|
||||
* x11 back end segfaults if display is unavailable #1776
|
||||
* typo in cmd/gvpr/lib/clustg #1781
|
||||
* Segfault in dot #1783
|
||||
* Incorrect 'Arrow type "s" unknown' error #1444
|
||||
* segfault on reading 0x10 #1724
|
||||
* Null-dereference READ (144736912) #1676
|
||||
* "Warning! PATH too long installer unable to modify PATH!" using CMake Windows installer and PATH length > 1024 #1770
|
||||
* gvedit -? gives "option - unrecognized - ignored" instead of showing usage #1813
|
||||
* lefty is not built for Windows (fixed for MSBuild builds only) #1818
|
||||
* a failure to detect OpenGL glGenTextures() errors has been corrected
|
||||
* sfio does compile time benchmarknig #1422
|
||||
* iffe "lib" check always succeeds when compiler optimises #1521
|
||||
* syntax error near text who is not present #1411
|
||||
* Explicitly links with libstdc++; should allow libc++ if appropriate #163
|
||||
* A macOS file that was erroneously excluded from portable source tarballs has
|
||||
* been restored
|
||||
* Add option -? for usage to diffimg
|
||||
* Add option -? for usage to dotty
|
||||
* Add option -? for usage to lneato
|
||||
* Add option -? for usage to vimdot
|
||||
* Fix smyrna -? to actually print usage instead of error
|
||||
* Fix edgepaint -? to actually print usage instead of error
|
||||
* Remove '"' from usage text in non-Windows version of dotty
|
||||
* Correct misspelled 'smyrna' in usage
|
||||
* Fix edgepaint -o option
|
||||
* Correct shebang of gvmap.sh to use ksh
|
||||
* Fix gvmap.sh -? option to exit with zero exit status
|
||||
* Graphviz doesn't build on MacOS with the latest libc++ #1785
|
||||
* make fails if ps2pdf is not installed (using autotools) #1763
|
||||
* multiple graphs to file output causes a segfault #1845
|
||||
* lefty PTY functionality relies on file descriptor implementation details #1823
|
||||
* buffer overflow in fdpgen
|
||||
* Crashes by VRML output when current directory is not writable #793
|
||||
* Segmentation fault when newrank=true #1221
|
||||
* sfdp craches #236
|
||||
* fdp segmentation fault with GK=0 #1290
|
||||
* fdp crash #1865
|
||||
* Graphviz always crash with this simple dot file #167
|
||||
* Seg fault in dot #1771
|
||||
* gml2gv doesn't handle some attributes correctly #1869
|
||||
* Add missing circo, fdp, neato, osage, patchwork, sfdp & twopi tools to Windows builds (copies of dot)
|
||||
* Add gv2gml tool to CMake (copy of gml2gv on Windows, symlink to gml2gv otherwise)
|
||||
* Regression: fdp generates internal names in the output #1876
|
||||
* Regression: fdp assertion error on cluster in edge #1877
|
||||
* Regression in id / <title> in svg for twopi #1907
|
||||
- graphviz-2.46-fix-shebang.patch added to make rpmlint happy
|
||||
- graphviz-no_strict_aliasing.patch changed to be applicable to current files
|
||||
- configure without ghostscript to break new build cycle
|
||||
- Update source URLs
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 31 16:07:29 UTC 2020 - Arjen de Korte <suse+build@de-korte.org>
|
||||
|
||||
- Use _multibuild to build graphviz and graphviz-addons in a single
|
||||
development project
|
||||
- graphviz-addons.changes
|
||||
- graphviz-addons.spec
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 31 14:30:11 UTC 2020 - Arjen de Korte <suse+build@de-korte.org>
|
||||
|
||||
- Update to new release 2.44.1 (changes since 2.42.3)
|
||||
* applied RH patches (from graphviz-2.42.2-8.fc32.src.rpm)
|
||||
* some allocation failures that could previously allow memory
|
||||
corruption now exit
|
||||
* lab_gamut.3.pdf is no longer included in release archives
|
||||
* Fixed Neato's hier mode is broken since v2.44.0
|
||||
* Fixed segmentation fault (core dumped)
|
||||
* New SGD mode in neato
|
||||
* Add pkg-config files
|
||||
* tred: add feature to output removed edges to stderr upon request
|
||||
* Workaround: avoid creating a virtual edge loop.
|
||||
* Add riscv64 to host_cpu configure.ac
|
||||
* lib/cgraph: include empty malloc.h from subdir include
|
||||
* lib/gvpr: compile mkdefs with $(HOSTCC) rather than $(CC)
|
||||
* lib/vpsc: rename bcopy->b_copy
|
||||
* Fixed the NativeCodeAnalysis task failed unexpectedly.
|
||||
* Include all test files in distro
|
||||
* host_cpu add mips64 platform
|
||||
* Correct description of 'port' syntax in manual
|
||||
* svg output displays TITLE of %3 if graph had no name
|
||||
* XML errors in generated SVG when URL attribute contains
|
||||
ampersand (&)
|
||||
* Test files missing from source distributions
|
||||
* SVG error for "g.transform.scale " in graphviz version 2.43
|
||||
- BuildRequires for ghostscript and groff (generate cdt documentation)
|
||||
- Extension graphviz-php changes:
|
||||
* Require php(api) and php(zend-abi) to guarantee ABI compatibility
|
||||
* Don't pull in extra libraries from PHP
|
||||
+ graphviz-no_php_extra_libs.patch
|
||||
* Remove argon2-devel from list of dependencies
|
||||
* Automatically enable extension when installed by providing
|
||||
/etc/php{5,7}/conf.d/gv.ini
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 31 13:07:32 UTC 2020 - Tomáš Chvátal <tchvatal@suse.com>
|
||||
|
||||
- Rename python*-graphviz to python*-gv, there is also normal
|
||||
pypi graphviz package and we clash otherwise and override
|
||||
each other
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 27 20:28:30 UTC 2020 - Tomáš Chvátal <tchvatal@suse.com>
|
||||
|
||||
|
118
graphviz.spec
118
graphviz.spec
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package graphviz
|
||||
#
|
||||
# Copyright (c) 2020 SUSE LLC
|
||||
# Copyright (c) 2021 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -16,24 +16,33 @@
|
||||
#
|
||||
|
||||
|
||||
%global flavor @BUILD_FLAVOR@%{nil}
|
||||
|
||||
%if "%{flavor}" == "addons"
|
||||
%define psuffix -%{flavor}
|
||||
%else
|
||||
%define psuffix %{nil}
|
||||
%endif
|
||||
|
||||
#fixes build failure caused by new .debug files, not sure how to fix correctly
|
||||
|
||||
%define mname graphviz
|
||||
%define libname libgraphviz6
|
||||
# name of the plugin config file that dot creates
|
||||
%define config_file config6
|
||||
# Build with extras or not, determines pulling additional dependencies
|
||||
# and breaks build cycle
|
||||
%bcond_with extras
|
||||
# Java and ocaml are not in ring1, thus this gets overriden in staging
|
||||
%bcond_without java
|
||||
%bcond_with ocaml
|
||||
%if "%{flavor}" == "addons"
|
||||
# PHP7 requires swig >= 3.0.11, not available on Leap 42.x
|
||||
%if 0%{?suse_version} >= 1500
|
||||
%define php_version 7
|
||||
%else
|
||||
%define php_version 5
|
||||
%endif
|
||||
%define phpconf_dir %{_sysconfdir}/php%{php_version}/conf.d
|
||||
%define phpext_dir %(%{__php_config} --extension-dir)
|
||||
%endif
|
||||
|
||||
%define ruby_version $(pkg-config --variable=RUBY_API_VERSION %{_libdir}/pkgconfig/ruby-*.pc)
|
||||
|
||||
@ -43,15 +52,16 @@
|
||||
%else
|
||||
%define sle12 0
|
||||
%endif
|
||||
Name: graphviz
|
||||
Version: 2.42.3
|
||||
%bcond_without python2
|
||||
Name: graphviz%{psuffix}
|
||||
Version: 2.46.1
|
||||
Release: 0
|
||||
Summary: Graph Visualization Tools
|
||||
License: EPL-1.0
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
URL: http://www.graphviz.org/
|
||||
Source: https://www2.graphviz.org/Packages/stable/portable_source/graphviz-%{version}.tar.gz
|
||||
Source2: graphviz-rpmlintrc
|
||||
URL: https://www.graphviz.org/
|
||||
Source0: https://gitlab.com/graphviz/graphviz/-/archive/2.46.1/graphviz-%{version}.tar.gz
|
||||
Source1: graphviz-rpmlintrc
|
||||
#PATCH-FIX-UPSTREAM add flags to also link against libGLU and libGL
|
||||
Patch1: graphviz-smyrna-link_against_glu.patch
|
||||
Patch2: graphviz-fix-pkgIndex.patch
|
||||
@ -62,6 +72,8 @@ Patch6: graphviz-2.20.2-interpreter_names.patch
|
||||
#PATCH-FIX-UPSTREAM Don't warn about harmless issues with swig generated code
|
||||
Patch7: graphviz-useless_warnings.patch
|
||||
Patch8: graphviz-no_strict_aliasing.patch
|
||||
Patch9: graphviz-no_php_extra_libs.patch
|
||||
Patch10: graphviz-2.46-fix-shebang.patch
|
||||
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
@ -69,6 +81,7 @@ BuildRequires: bison
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: flex
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: groff
|
||||
BuildRequires: guile-devel
|
||||
BuildRequires: libstdc++-devel
|
||||
BuildRequires: libtool
|
||||
@ -80,14 +93,14 @@ BuildRequires: pkgconfig(gts)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
Requires: graphviz-plugins-core = %{version}
|
||||
Recommends: graphviz-gd = %{version}
|
||||
%if %{with extras}
|
||||
BuildRequires: argon2-devel
|
||||
%if "%{flavor}" == "addons"
|
||||
BuildRequires: freeglut-devel
|
||||
|
||||
BuildRequires: ghostscript
|
||||
BuildRequires: libjpeg-devel
|
||||
BuildRequires: libpng-devel
|
||||
BuildRequires: libwebp-devel
|
||||
BuildRequires: perl
|
||||
BuildRequires: python3-devel
|
||||
%if 0%{?suse_version} >= 1500
|
||||
BuildRequires: php7-devel
|
||||
BuildRequires: swig >= 3.0.11
|
||||
@ -112,7 +125,10 @@ BuildRequires: pkgconfig(libglade-2.0)
|
||||
BuildRequires: pkgconfig(librsvg-2.0)
|
||||
BuildRequires: pkgconfig(lua)
|
||||
BuildRequires: pkgconfig(pango)
|
||||
%if %{with python2}
|
||||
BuildRequires: pkgconfig(python)
|
||||
%endif
|
||||
BuildRequires: pkgconfig(python3)
|
||||
BuildRequires: pkgconfig(sm)
|
||||
BuildRequires: pkgconfig(tcl)
|
||||
BuildRequires: pkgconfig(x11)
|
||||
@ -124,6 +140,8 @@ BuildRequires: java-devel >= 1.6.0
|
||||
%if %{with ocaml}
|
||||
BuildRequires: ocaml
|
||||
%endif
|
||||
%else # if "{flavor}" == "addons"
|
||||
BuildRequires: ghostscript_any
|
||||
%endif
|
||||
|
||||
%description
|
||||
@ -231,19 +249,31 @@ Summary: PHP Extension for Graphviz
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Requires: php%{php_version}
|
||||
Requires: php(api) = %{php_core_api}
|
||||
Requires: php(zend-abi) = %{php_zend_api}
|
||||
|
||||
%description -n graphviz-php
|
||||
The graphviz-php package contains the PHP extension for the graphviz
|
||||
tools.
|
||||
|
||||
%package -n graphviz-python
|
||||
%package -n python2-gv
|
||||
Summary: Python Extension for Graphviz
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Requires: python
|
||||
|
||||
%description -n graphviz-python
|
||||
The graphviz-python package contains the Python extension for the
|
||||
%description -n python2-gv
|
||||
The package contains the Python extension for the
|
||||
graphviz tools.
|
||||
|
||||
%package -n python3-gv
|
||||
Summary: Python 3 Extension for Graphviz
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Provides: graphviz-python
|
||||
Obsoletes: graphviz-python
|
||||
|
||||
%description -n python3-gv
|
||||
The package contains the Python extension for the
|
||||
graphviz tools.
|
||||
|
||||
%package -n graphviz-ruby
|
||||
@ -267,6 +297,18 @@ Requires: tk
|
||||
The graphviz-tcl package contains the various tcl packages (extensions)
|
||||
for the graphviz tools.
|
||||
|
||||
%package -n graphviz-webp
|
||||
Summary: WebP support for graphviz
|
||||
Group: Productivity/Graphics/Visualization/Graph
|
||||
Requires: graphviz = %{version}
|
||||
Requires: graphviz-gnome = %{version}
|
||||
Requires: libwebp7
|
||||
|
||||
%description -n graphviz-webp
|
||||
The graphviz-webp package contains files needed for the support of WebP images
|
||||
|
||||
|
||||
|
||||
%package -n graphviz-doc
|
||||
Summary: Documentation for graphviz
|
||||
Group: Documentation/Howto
|
||||
@ -316,7 +358,9 @@ programs that use the graphviz libraries including man3 pages.
|
||||
|
||||
%patch6
|
||||
%patch7
|
||||
%patch8
|
||||
%patch8 -p1
|
||||
%patch9
|
||||
%patch10 -p1
|
||||
|
||||
# pkg-config returns 0 (TRUE) when guile-2.2 is present
|
||||
if pkg-config --atleast-version=2.2 guile-2.2; then
|
||||
@ -336,7 +380,7 @@ sed -i \
|
||||
./autogen.sh RUBY_VER=%{ruby_version}
|
||||
CFLAGS="%{optflags} -ffast-math -fno-strict-aliasing -fno-strict-overflow -fPIC"
|
||||
|
||||
%if %{with extras}
|
||||
%if "%{flavor}" == "addons"
|
||||
|
||||
CFLAGS="$CFLAGS -I/usr/include/ruby-%{ruby_version}.0"
|
||||
#seems to be broken? gives -I/usr/lib64/ruby/2.6.0/x86_64-linux-gnu, ruby.h is in /usr/lib64/ruby/2.6.0
|
||||
@ -355,7 +399,13 @@ export LDFLAGS="-pie"
|
||||
--without-ming \
|
||||
--disable-io \
|
||||
--without-visio \
|
||||
%if %{with extras}
|
||||
%if "%{flavor}" == "addons"
|
||||
%if %{with python2}
|
||||
--enable-python2 \
|
||||
%else
|
||||
--disable-python \
|
||||
--disable-python2 \
|
||||
%endif
|
||||
--with-x \
|
||||
--with-qt \
|
||||
--with-smyrna \
|
||||
@ -409,7 +459,13 @@ done
|
||||
# There are no such binaries distributed by us
|
||||
rm -f %{buildroot}%{_mandir}/man1/mingle.1
|
||||
|
||||
%if %{with extras}
|
||||
%if "%{flavor}" == "addons"
|
||||
mkdir -p %{buildroot}/%{phpconf_dir}
|
||||
cat > %{buildroot}%{phpconf_dir}/gv.ini <<EOF
|
||||
; comment out next line to disable gv extension in php
|
||||
extension = gv.so
|
||||
EOF
|
||||
|
||||
# Fix doc location
|
||||
cp -a %{buildroot}%{_datadir}/%{mname}/doc %{buildroot}%{_defaultdocdir}/%{mname}-doc
|
||||
%fdupes -s %{buildroot}%{_defaultdocdir}/%{mname}-doc
|
||||
@ -476,7 +532,7 @@ fi
|
||||
|
||||
%postun -n %{libname} -p /sbin/ldconfig
|
||||
|
||||
%if %{with extras}
|
||||
%if "%{flavor}" == "addons"
|
||||
%files -n graphviz-gvedit
|
||||
%license COPYING
|
||||
%{_bindir}/gvedit
|
||||
@ -518,6 +574,12 @@ fi
|
||||
%post -n graphviz-tcl -p /sbin/ldconfig
|
||||
%postun -n graphviz-tcl -p /sbin/ldconfig
|
||||
|
||||
%post -n graphviz-webp
|
||||
%{_bindir}/dot -c
|
||||
|
||||
%postun -n graphviz-webp
|
||||
%{_bindir}/dot -c 2>/dev/null
|
||||
|
||||
%files -n graphviz-guile
|
||||
%{_libdir}/graphviz/guile
|
||||
%{_mandir}/man3/gv.3guile%{ext_man}
|
||||
@ -554,18 +616,23 @@ fi
|
||||
%{_mandir}/man3/gv.3perl%{ext_man}
|
||||
|
||||
%files -n graphviz-php
|
||||
%{_libdir}/php%{php_version}/extensions/gv.so
|
||||
%{phpext_dir}/gv.so
|
||||
%{_datadir}/php%{php_version}/gv.php
|
||||
%{_mandir}/man3/gv.3php%{ext_man}
|
||||
%config(noreplace) %{phpconf_dir}/gv.ini
|
||||
|
||||
%files -n graphviz-python
|
||||
%if %{with python2}
|
||||
%files -n python2-gv
|
||||
%dir %{_libdir}/graphviz/python2
|
||||
%dir %{_libdir}/graphviz/python3
|
||||
%{python_sitearch}/_gv.so
|
||||
%{python_sitearch}/gv.py
|
||||
%{_libdir}/graphviz/python2/_gv.so
|
||||
%{_libdir}/graphviz/python2/gv.py
|
||||
%{_libdir}/graphviz/python2/libgv_python2.so
|
||||
%endif
|
||||
|
||||
%files -n python3-gv
|
||||
%dir %{_libdir}/graphviz/python3
|
||||
%{python3_sitearch}/_gv.so
|
||||
%{python3_sitearch}/gv.py
|
||||
%{_libdir}/graphviz/python3/_gv.so
|
||||
@ -587,6 +654,9 @@ fi
|
||||
%{_datadir}/tcl/%{mname}/pkgIndex.tcl
|
||||
%{_mandir}/man3/*.3tcl*
|
||||
|
||||
%files -n graphviz-webp
|
||||
%{_libdir}/graphviz/libgvplugin_webp.so*
|
||||
|
||||
%files -n graphviz-doc
|
||||
%docdir %{_defaultdocdir}/%{mname}-doc
|
||||
%{_defaultdocdir}/%{mname}-doc
|
||||
|
Loading…
Reference in New Issue
Block a user