Accepting request 649625 from graphics

- Fixed double file declaration in graphviz and graphviz-addons (x11)
- Mark license files with %license instead of %doc

- Build with gts support (bsc#1108978, bsc#1108976)
  SLE12 flavors do not provide gts, so explicitly exclude
  gts support there.

- Extend reproducible.patch to make build reproducible (boo#1041534)

- Build with PHP5 for Leap 42.x and earlier, PHP7 requires swig 3.0.11
  Drop graphviz-plugins-fix_install_dirs.patch, use sed script to
  fix directories, same as for Lua

- Do not delete dotty/lefty/lneato man pages which are part of
  the x11 subpackage, built from the addons package/spec.
  (No changelog entry).

- Drop harmful modification of tclpkg/gv/gv_doc_langs.tcl, which
  changes the timestamp, although the file does not contain LIB_DIR.
  Graphviz ships prebuilt manpages in man and PDF format. Modifying
  the tcl script rebuilt the documentation, and replaced the PDFs
  with empty documents (due to missing groff). This also made the
  doc subpackage nonreproducible, causing rebuilds in all dependent
  packages.

- Disable guile 2.2 modifications temporarily
- Move lefty/dotty/lneato graph editor tools to x11 subpackage and
  build as part of addons package. Removes any X11 dependency from
  core package, both build and runtime.
- Drop unused libXaw6 build dependency

OBS-URL: https://build.opensuse.org/request/show/649625
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/graphviz?expand=0&rev=75
This commit is contained in:
Dominique Leuenberger 2018-11-20 21:25:28 +00:00 committed by Git OBS Bridge
commit 91f941b0c4
7 changed files with 297 additions and 121 deletions

View File

@ -1,3 +1,63 @@
-------------------------------------------------------------------
Fri Nov 16 15:21:38 UTC 2018 - trenn@suse.de
- Fixed double file declaration in graphviz and graphviz-addons (x11)
- Mark license files with %license instead of %doc
-------------------------------------------------------------------
Thu Oct 25 14:52:00 UTC 2018 - trenn@suse.de
- Build with gts support (bsc#1108978, bsc#1108976)
SLE12 flavors do not provide gts, so explicitly exclude
gts support there.
-------------------------------------------------------------------
Mon Jul 30 11:24:20 UTC 2018 - bwiedemann@suse.com
- Extend reproducible.patch to make build reproducible (boo#1041534)
-------------------------------------------------------------------
Tue Mar 27 20:12:49 UTC 2018 - stefan.bruens@rwth-aachen.de
- Build with PHP5 for Leap 42.x and earlier, PHP7 requires swig 3.0.11
Drop graphviz-plugins-fix_install_dirs.patch, use sed script to
fix directories, same as for Lua
-------------------------------------------------------------------
Tue Mar 27 19:53:42 UTC 2018 - stefan.bruens@rwth-aachen.de
- Do not delete dotty/lefty/lneato man pages which are part of
the x11 subpackage, built from the addons package/spec.
(No changelog entry).
-------------------------------------------------------------------
Sat Feb 10 17:36:20 UTC 2018 - stefan.bruens@rwth-aachen.de
- Drop harmful modification of tclpkg/gv/gv_doc_langs.tcl, which
changes the timestamp, although the file does not contain LIB_DIR.
Graphviz ships prebuilt manpages in man and PDF format. Modifying
the tcl script rebuilt the documentation, and replaced the PDFs
with empty documents (due to missing groff). This also made the
doc subpackage nonreproducible, causing rebuilds in all dependent
packages.
-------------------------------------------------------------------
Thu Feb 8 18:22:25 UTC 2018 - stefan.bruens@rwth-aachen.de
- Disable guile 2.2 modifications temporarily
- Move lefty/dotty/lneato graph editor tools to x11 subpackage and
build as part of addons package. Removes any X11 dependency from
core package, both build and runtime.
- Drop unused libXaw6 build dependency
- move libpng, libjpeg, freetype and fontconfig build dependencies
to addons, unused for core
-------------------------------------------------------------------
Thu Jan 25 16:12:41 UTC 2018 - dimstar@opensuse.org
- Move to pkgconfig(guile-2.2) BuildRequires on suse_version >=
1500.
-------------------------------------------------------------------
Tue Jan 16 13:50:45 UTC 2018 - dimstar@opensuse.org

View File

@ -1,7 +1,7 @@
#
# spec file for package graphviz-addons
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -12,7 +12,7 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@ -26,6 +26,18 @@
# 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
# 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
Name: graphviz-addons
Version: 2.40.1
Release: 0
@ -42,9 +54,8 @@ Patch1: graphviz-smyrna-link_against_glu.patch
Patch2: graphviz-fix-pkgIndex.patch
#PATCH-FIX-UPSTREAM Off-by-one bug
Patch3: graphviz-array_overflow.patch
#PATCH-FIX-UPSTREAM Make build reproducible - merged in next release
#PATCH-FIX-OPENSUSE Make build reproducible (boo#1041534)
Patch4: reproducible.patch
Patch5: graphviz-plugins-fix_install_dirs.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
@ -55,40 +66,50 @@ BuildRequires: bison
BuildRequires: fdupes
BuildRequires: flex
BuildRequires: gcc-c++
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libstdc++-devel
BuildRequires: libtool
BuildRequires: pkgconfig
BuildRequires: pkgconfig(expat)
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(freetype2) >= 2
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(ice)
BuildRequires: pkgconfig(sm)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xaw6)
BuildRequires: pkgconfig(xaw7)
BuildRequires: pkgconfig(xext)
%if 0%{sle12} != 1
BuildRequires: pkgconfig(gts)
%endif
BuildRequires: pkgconfig(zlib)
Requires: graphviz-plugins-core = %{version}
Recommends: graphviz-gd = %{version}
%if %{with extras}
BuildRequires: freeglut-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: perl
%if 0%{?suse_version} >= 1500
BuildRequires: php7-devel
BuildRequires: ruby-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(gts)
BuildRequires: pkgconfig(ice)
BuildRequires: pkgconfig(sm)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xaw7)
BuildRequires: pkgconfig(xext)
# Disabled until guile 2.2 lands
%if 0 && 0%{?suse_version} >= 1500
BuildRequires: pkgconfig(guile-2.2)
%else
BuildRequires: pkgconfig(guile-2.0)
%endif
BuildRequires: pkgconfig(ijs)
BuildRequires: pkgconfig(libglade-2.0)
BuildRequires: pkgconfig(librsvg-2.0)
@ -165,6 +186,15 @@ Requires: 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
@ -199,7 +229,7 @@ tools.
Summary: PHP Extension for Graphviz
Group: Productivity/Graphics/Visualization/Graph
Requires: graphviz = %{version}
Requires: php7
Requires: php%{php_version}
%description -n graphviz-php
The graphviz-php package contains the PHP extension for the graphviz
@ -281,21 +311,20 @@ programs that use the graphviz libraries including man3 pages.
%patch2
%patch3
%patch4 -p1
%patch5
%patch6
%patch7
%patch8
%if 0 && 0%{?suse_version} >= 1500
sed "s/guile-2.0/guile-2.2/" -i configure.ac
%endif
rm -f contrib/gprof2dot.awk
# Fix path in generated man pages
sed -i \
-e 's$@LIB_DIR@$%{_libdir}$g' \
tclpkg/gv/gv_doc_langs.tcl
# Fix path for lua install
# 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
@ -310,7 +339,6 @@ export CFLAGS="$CFLAGS"
export CPPFLAGS="$CFLAGS"
export LDFLAGS="-pie"
%configure \
--with-x \
--disable-static \
--without-included-ltdl \
--disable-ltdl-install \
@ -318,6 +346,7 @@ export LDFLAGS="-pie"
--without-ming \
--disable-io \
%if %{with extras}
--with-x \
--with-qt \
--with-smyrna \
%else
@ -378,7 +407,6 @@ 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/lefty
rm -rf %{buildroot}%{_datadir}/graphviz/gvpr
rm -f %{buildroot}%{_mandir}/man3/*.3
rm -f %{buildroot}%{_mandir}/man7/*.7
@ -387,7 +415,7 @@ 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 dotty edgepaint fdp gc gml2gv graphml2gv gv2gml gv2gxl gvcolor gvgen gvmap gvmap.sh gvpack gvpr gxl2dot gxl2gv lefty lneato mm2gv neato nop osage patchwork prune sccmap sfdp tred twopi unflatten vimdot; do
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
@ -416,7 +444,9 @@ rm -rf %{buildroot}%{_libdir}/graphviz/ruby
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
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
@ -436,14 +466,14 @@ fi
%if %{with extras}
%files -n graphviz-gvedit
%doc COPYING
%license COPYING
%{_bindir}/gvedit
%dir %{_datadir}/%{mname}/gvedit
%{_datadir}/%{mname}/gvedit/attrs.txt
%{_mandir}/man1/gvedit.1%{ext_man}
%files -n graphviz-smyrna
%doc COPYING
%license COPYING
%{_bindir}/smyrna
%{_datadir}/%{mname}/smyrna
%{_mandir}/man1/smyrna.1%{ext_man}
@ -490,6 +520,16 @@ fi
%{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
@ -502,8 +542,8 @@ fi
%{_mandir}/man3/gv.3perl%{ext_man}
%files -n graphviz-php
%{_libdir}/php7/extensions/gv.so
%{_datadir}/php7/gv.php
%{_libdir}/php%{php_version}/extensions/gv.so
%{_datadir}/php%{php_version}/gv.php
%{_mandir}/man3/gv.3php%{ext_man}
%files -n graphviz-python
@ -532,7 +572,8 @@ fi
%else
%files
%doc doc/FAQ.html AUTHORS COPYING README NEWS ChangeLog
%doc doc/FAQ.html AUTHORS README NEWS ChangeLog
%license COPYING
%{_bindir}/acyclic
%{_bindir}/bcomps
%{_bindir}/ccomps
@ -542,7 +583,6 @@ fi
%{_bindir}/dot
%{_bindir}/dot2gxl
%{_bindir}/dot_builtins
%{_bindir}/dotty
%{_bindir}/edgepaint
%{_bindir}/fdp
%{_bindir}/gc
@ -558,8 +598,6 @@ fi
%{_bindir}/gvpr
%{_bindir}/gxl2dot
%{_bindir}/gxl2gv
%{_bindir}/lefty
%{_bindir}/lneato
%{_bindir}/mm2gv
%{_bindir}/neato
%{_bindir}/nop
@ -572,7 +610,6 @@ fi
%{_bindir}/twopi
%{_bindir}/unflatten
%dir %{_datadir}/%{mname}
%{_datadir}/%{mname}/lefty
%{_datadir}/%{mname}/graphs
%dir %{_datadir}/%{mname}/gvpr
%{_datadir}/%{mname}/gvpr/addranks

View File

@ -1,44 +0,0 @@
---
configure | 6 +++---
configure.ac | 4 ++--
2 files changed, 5 insertions(+), 5 deletions(-)
Index: configure
===================================================================
--- configure.orig
+++ configure
@@ -22158,8 +22158,8 @@ test -n "$PHP" || PHP="php"
PHP_INCLUDES="-I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib"
fi
fi
- PHP_INSTALL_DIR="/usr/lib${LIBPOSTFIX}/php/modules"
- PHP_INSTALL_DATADIR="/usr/share/php"
+ PHP_INSTALL_DIR="/usr/lib${LIBPOSTFIX}/php7/extensions"
+ PHP_INSTALL_DATADIR="/usr/share/php7"
PHP_LIBS=
save_CPPFLAGS=$CPPFLAGS
CPPFLAGS="$CPPFLAGS $PHP_INCLUDES"
@@ -23834,7 +23834,7 @@ $as_echo "using $TCLCONFIG" >&6; }
$as_echo "$as_me: WARNING: Unable to find tclConfig.sh. The Tcl packages will not be built" >&2;}
use_tcl="No (missing tclConfig.sh)"
fi
- TCL_INSTALL_DIR="${TCLSH_EXEC_PREFIX}/lib${LIBPOSTFIX}/tcl${TCL_VERSION_FOUND}"
+ TCL_INSTALL_DIR="${TCLSH_EXEC_PREFIX}/lib${LIBPOSTFIX}
fi
if test "x$use_tcl" = "x"; then
Index: configure.ac
===================================================================
--- configure.ac.orig
+++ configure.ac
@@ -1102,8 +1102,8 @@ else
PHP_INCLUDES="-I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib"
fi
fi
- PHP_INSTALL_DIR="/usr/lib${LIBPOSTFIX}/php/modules"
- PHP_INSTALL_DATADIR="/usr/share/php"
+ PHP_INSTALL_DIR="/usr/lib${LIBPOSTFIX}/php7/extensions"
+ PHP_INSTALL_DATADIR="/usr/share/php7"
PHP_LIBS=
save_CPPFLAGS=$CPPFLAGS
CPPFLAGS="$CPPFLAGS $PHP_INCLUDES"

View File

@ -1,3 +1,63 @@
-------------------------------------------------------------------
Fri Nov 16 15:21:38 UTC 2018 - trenn@suse.de
- Fixed double file declaration in graphviz and graphviz-addons (x11)
- Mark license files with %license instead of %doc
-------------------------------------------------------------------
Thu Oct 25 14:52:00 UTC 2018 - trenn@suse.de
- Build with gts support (bsc#1108978, bsc#1108976)
SLE12 flavors do not provide gts, so explicitly exclude
gts support there.
-------------------------------------------------------------------
Mon Jul 30 11:24:20 UTC 2018 - bwiedemann@suse.com
- Extend reproducible.patch to make build reproducible (boo#1041534)
-------------------------------------------------------------------
Tue Mar 27 20:12:49 UTC 2018 - stefan.bruens@rwth-aachen.de
- Build with PHP5 for Leap 42.x and earlier, PHP7 requires swig 3.0.11
Drop graphviz-plugins-fix_install_dirs.patch, use sed script to
fix directories, same as for Lua
-------------------------------------------------------------------
Tue Mar 27 19:53:42 UTC 2018 - stefan.bruens@rwth-aachen.de
- Do not delete dotty/lefty/lneato man pages which are part of
the x11 subpackage, built from the addons package/spec.
(No changelog entry).
-------------------------------------------------------------------
Sat Feb 10 17:36:20 UTC 2018 - stefan.bruens@rwth-aachen.de
- Drop harmful modification of tclpkg/gv/gv_doc_langs.tcl, which
changes the timestamp, although the file does not contain LIB_DIR.
Graphviz ships prebuilt manpages in man and PDF format. Modifying
the tcl script rebuilt the documentation, and replaced the PDFs
with empty documents (due to missing groff). This also made the
doc subpackage nonreproducible, causing rebuilds in all dependent
packages.
-------------------------------------------------------------------
Thu Feb 8 18:22:25 UTC 2018 - stefan.bruens@rwth-aachen.de
- Disable guile 2.2 modifications temporarily
- Move lefty/dotty/lneato graph editor tools to x11 subpackage and
build as part of addons package. Removes any X11 dependency from
core package, both build and runtime.
- Drop unused libXaw6 build dependency
- move libpng, libjpeg, freetype and fontconfig build dependencies
to addons, unused for core
-------------------------------------------------------------------
Thu Jan 25 16:12:41 UTC 2018 - dimstar@opensuse.org
- Move to pkgconfig(guile-2.2) BuildRequires on suse_version >=
1500.
-------------------------------------------------------------------
Tue Jan 16 13:50:45 UTC 2018 - dimstar@opensuse.org

View File

@ -1,7 +1,7 @@
#
# spec file for package graphviz
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -12,7 +12,7 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@ -26,6 +26,18 @@
# 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
# 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
Name: graphviz
Version: 2.40.1
Release: 0
@ -42,9 +54,8 @@ Patch1: graphviz-smyrna-link_against_glu.patch
Patch2: graphviz-fix-pkgIndex.patch
#PATCH-FIX-UPSTREAM Off-by-one bug
Patch3: graphviz-array_overflow.patch
#PATCH-FIX-UPSTREAM Make build reproducible - merged in next release
#PATCH-FIX-OPENSUSE Make build reproducible (boo#1041534)
Patch4: reproducible.patch
Patch5: graphviz-plugins-fix_install_dirs.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
@ -55,40 +66,50 @@ BuildRequires: bison
BuildRequires: fdupes
BuildRequires: flex
BuildRequires: gcc-c++
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libstdc++-devel
BuildRequires: libtool
BuildRequires: pkgconfig
BuildRequires: pkgconfig(expat)
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(freetype2) >= 2
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(ice)
BuildRequires: pkgconfig(sm)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xaw6)
BuildRequires: pkgconfig(xaw7)
BuildRequires: pkgconfig(xext)
%if 0%{sle12} != 1
BuildRequires: pkgconfig(gts)
%endif
BuildRequires: pkgconfig(zlib)
Requires: graphviz-plugins-core = %{version}
Recommends: graphviz-gd = %{version}
%if %{with extras}
BuildRequires: freeglut-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: perl
%if 0%{?suse_version} >= 1500
BuildRequires: php7-devel
BuildRequires: ruby-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(gts)
BuildRequires: pkgconfig(ice)
BuildRequires: pkgconfig(sm)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xaw7)
BuildRequires: pkgconfig(xext)
# Disabled until guile 2.2 lands
%if 0 && 0%{?suse_version} >= 1500
BuildRequires: pkgconfig(guile-2.2)
%else
BuildRequires: pkgconfig(guile-2.0)
%endif
BuildRequires: pkgconfig(ijs)
BuildRequires: pkgconfig(libglade-2.0)
BuildRequires: pkgconfig(librsvg-2.0)
@ -165,6 +186,15 @@ Requires: 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
@ -199,7 +229,7 @@ tools.
Summary: PHP Extension for Graphviz
Group: Productivity/Graphics/Visualization/Graph
Requires: graphviz = %{version}
Requires: php7
Requires: php%{php_version}
%description -n graphviz-php
The graphviz-php package contains the PHP extension for the graphviz
@ -281,21 +311,20 @@ programs that use the graphviz libraries including man3 pages.
%patch2
%patch3
%patch4 -p1
%patch5
%patch6
%patch7
%patch8
%if 0 && 0%{?suse_version} >= 1500
sed "s/guile-2.0/guile-2.2/" -i configure.ac
%endif
rm -f contrib/gprof2dot.awk
# Fix path in generated man pages
sed -i \
-e 's$@LIB_DIR@$%{_libdir}$g' \
tclpkg/gv/gv_doc_langs.tcl
# Fix path for lua install
# 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
@ -310,7 +339,6 @@ export CFLAGS="$CFLAGS"
export CPPFLAGS="$CFLAGS"
export LDFLAGS="-pie"
%configure \
--with-x \
--disable-static \
--without-included-ltdl \
--disable-ltdl-install \
@ -318,6 +346,7 @@ export LDFLAGS="-pie"
--without-ming \
--disable-io \
%if %{with extras}
--with-x \
--with-qt \
--with-smyrna \
%else
@ -378,7 +407,6 @@ 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/lefty
rm -rf %{buildroot}%{_datadir}/graphviz/gvpr
rm -f %{buildroot}%{_mandir}/man3/*.3
rm -f %{buildroot}%{_mandir}/man7/*.7
@ -387,7 +415,7 @@ 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 dotty edgepaint fdp gc gml2gv graphml2gv gv2gml gv2gxl gvcolor gvgen gvmap gvmap.sh gvpack gvpr gxl2dot gxl2gv lefty lneato mm2gv neato nop osage patchwork prune sccmap sfdp tred twopi unflatten vimdot; do
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
@ -416,7 +444,9 @@ rm -rf %{buildroot}%{_libdir}/graphviz/ruby
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
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
@ -436,14 +466,14 @@ fi
%if %{with extras}
%files -n graphviz-gvedit
%doc COPYING
%license COPYING
%{_bindir}/gvedit
%dir %{_datadir}/%{mname}/gvedit
%{_datadir}/%{mname}/gvedit/attrs.txt
%{_mandir}/man1/gvedit.1%{ext_man}
%files -n graphviz-smyrna
%doc COPYING
%license COPYING
%{_bindir}/smyrna
%{_datadir}/%{mname}/smyrna
%{_mandir}/man1/smyrna.1%{ext_man}
@ -490,6 +520,16 @@ fi
%{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
@ -502,8 +542,8 @@ fi
%{_mandir}/man3/gv.3perl%{ext_man}
%files -n graphviz-php
%{_libdir}/php7/extensions/gv.so
%{_datadir}/php7/gv.php
%{_libdir}/php%{php_version}/extensions/gv.so
%{_datadir}/php%{php_version}/gv.php
%{_mandir}/man3/gv.3php%{ext_man}
%files -n graphviz-python
@ -532,7 +572,8 @@ fi
%else
%files
%doc doc/FAQ.html AUTHORS COPYING README NEWS ChangeLog
%doc doc/FAQ.html AUTHORS README NEWS ChangeLog
%license COPYING
%{_bindir}/acyclic
%{_bindir}/bcomps
%{_bindir}/ccomps
@ -542,7 +583,6 @@ fi
%{_bindir}/dot
%{_bindir}/dot2gxl
%{_bindir}/dot_builtins
%{_bindir}/dotty
%{_bindir}/edgepaint
%{_bindir}/fdp
%{_bindir}/gc
@ -558,8 +598,6 @@ fi
%{_bindir}/gvpr
%{_bindir}/gxl2dot
%{_bindir}/gxl2gv
%{_bindir}/lefty
%{_bindir}/lneato
%{_bindir}/mm2gv
%{_bindir}/neato
%{_bindir}/nop
@ -572,7 +610,6 @@ fi
%{_bindir}/twopi
%{_bindir}/unflatten
%dir %{_datadir}/%{mname}
%{_datadir}/%{mname}/lefty
%{_datadir}/%{mname}/graphs
%dir %{_datadir}/%{mname}/gvpr
%{_datadir}/%{mname}/gvpr/addranks

View File

@ -3,4 +3,5 @@ cp graphviz.changes graphviz-addons.changes
sed \
-e 's:%bcond_with extras:%bcond_without extras:' \
-e 's#Name: graphviz#Name: graphviz-addons#' \
-e 's#spec file for package graphviz#spec file for package graphviz-addons#' \
graphviz.spec > graphviz-addons.spec

View File

@ -1,12 +1,37 @@
Author: Bernhard M. Wiedemann <bwiedemann suse de>
Date: 2018-07-30
https://bugzilla.opensuse.org/show_bug.cgi?id=1041534
Do not have binaries depend on build system timings
because we are building in VMs anyway
and users might have different hardware
Will always use the system's memchr and memccpy functions.
Index: graphviz-2.38.0/lib/sfio/features/sfio
===================================================================
--- graphviz-2.38.0.orig/lib/sfio/features/sfio
+++ graphviz-2.38.0/lib/sfio/features/sfio
@@ -260,9 +260,7 @@ tst output{
@@ -79,7 +79,7 @@ lib memchr note{ see if memchr is fast }
t2 = (etm2.tms_utime - stm2.tms_utime) +
(etm2.tms_stime - stm2.tms_stime);
- return t1 < t2 ? 0 : 1;
+ return 0;
}
}end
@@ -120,7 +120,7 @@ lib memccpy note{ see if memccpy is fast
t2 = (etm2.tms_utime - stm2.tms_utime) +
(etm2.tms_stime - stm2.tms_stime);
- return t1 < t2 ? 0 : 1;
+ return 0;
}
}end
@@ -250,9 +250,7 @@ tst output{
unlink(file);