Accepting request 514602 from home:scarabeus_iv:branches:graphics

OBS-URL: https://build.opensuse.org/request/show/514602
OBS-URL: https://build.opensuse.org/package/show/graphics/graphviz?expand=0&rev=114
This commit is contained in:
OBS User mrdocs 2017-08-05 16:37:37 +00:00 committed by Git OBS Bridge
parent d073b954ed
commit 48044543ea
16 changed files with 2349 additions and 1650 deletions

View File

@ -1,56 +0,0 @@
diff -Ndur graphviz-2.38.0/cmd/gvmap/gvmap.sh graphviz-2.38.0-fix-gvmap/cmd/gvmap/gvmap.sh
--- graphviz-2.38.0/cmd/gvmap/gvmap.sh 2014-04-13 23:40:25.000000000 +0300
+++ graphviz-2.38.0-fix-gvmap/cmd/gvmap/gvmap.sh 2014-11-17 05:10:56.554829928 +0200
@@ -60,41 +60,41 @@
FLAGS3="$FLAGS3 -o$OPTARG"
;;
:)
- print -u 2 $OPTARG requires a value
+ echo "$OPTARG requires a value" >&2
exit 2
;;
\? )
- if [[ "$OPTARG" == '?' ]]
+ if [ "$OPTARG" = '?' ]
then
getopts -a gvmap "$OPTSTR" x '-?'
exit 0
else
- print -u 2 "gvmap: unknown flag $OPTARG - ignored"
+ echo "gvmap: unknown flag $OPTARG - ignored" >&2
fi
;;
esac
done
shift $((OPTIND-1))
-if [[ $# == 0 ]]
+if [ $# = 0 ]
then
- if [[ -n $VERBOSE ]]
+ if [ -n "$VERBOSE" ]
then
- print -u 2 "$LAYOUT -Goverlap=prism $FLAGS1 | gvmap $FLAGS2 | neato -n2 $FLAGS3"
+ echo "$LAYOUT -Goverlap=prism $FLAGS1 | gvmap $FLAGS2 | neato -n2 $FLAGS3" >&2
fi
$LAYOUT -Goverlap=prism $FLAGS1 | gvmap $FLAGS2 | neato -n2 $FLAGS3
else
- while (( $# > 0 ))
+ while [ $# -gt 0 ]
do
- if [[ -f $1 ]]
+ if [ -f "$1" ]
then
- if [[ -n $VERBOSE ]]
+ if [ -n "$VERBOSE" ]
then
- print -u 2 "$LAYOUT -Goverlap=prism $FLAGS1 $1 | gvmap $FLAGS2 | neato -n2 $FLAGS3"
+ echo "$LAYOUT -Goverlap=prism $FLAGS1 $1 | gvmap $FLAGS2 | neato -n2 $FLAGS3" >&2
fi
$LAYOUT -Goverlap=prism $FLAGS1 $1 | gvmap $FLAGS2 | neato -n2 $FLAGS3
else
- print -u 2 "gvmap: unknown input file $1 - ignored"
+ echo "gvmap: unknown input file $1 - ignored" >&2
fi
shift
done

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:81aa238d9d4a010afa73a9d2a704fc3221c731e1e06577c2ab3496bdef67859e
size 25848858

3
graphviz-2.40.1.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ca5218fade0204d59947126c38439f432853543b0818d9d728c589dfe7f3a421
size 25633455

1053
graphviz-addons.changes Normal file

File diff suppressed because it is too large Load Diff

624
graphviz-addons.spec Normal file
View File

@ -0,0 +1,624 @@
#
# spec file for package graphviz-addons
#
# Copyright (c) 2017 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
# 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 http://bugs.opensuse.org/
#
%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
Name: graphviz-addons
Version: 2.40.1
Release: 0
Summary: Graph Visualization Tools
License: EPL-1.0
Group: Productivity/Graphics/Visualization/Graph
Url: http://www.graphviz.org/
Source: http://graphviz.org/pub/graphviz/stable/SOURCES/graphviz-%{version}.tar.gz
Source2: graphviz-rpmlintrc
#PATCH-FIX-UPSTREAM Build qith Qt5 rather than with qt4
Patch0: graphviz-qt5.patch
#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
#PATCH-FIX-UPSTREAM Make build reproducible - merged in next release
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
Patch8: graphviz-no_strict_aliasing.patch
BuildRequires: autoconf
BuildRequires: automake
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)
BuildRequires: pkgconfig(zlib)
Requires: graphviz-plugins-core = %{version}
Recommends: graphviz-gd = %{version}
Recommends: graphviz-gnome = %{version}
%if %{with extras}
BuildRequires: freeglut-devel
BuildRequires: java-devel >= 1.6.0
BuildRequires: ocaml
BuildRequires: perl
BuildRequires: php7-devel
BuildRequires: ruby-devel
BuildRequires: swig
BuildRequires: pkgconfig(Qt5Core)
BuildRequires: pkgconfig(Qt5PrintSupport)
BuildRequires: pkgconfig(Qt5Widgets)
BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(gdlib)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(gtkglext-1.0)
BuildRequires: pkgconfig(gts)
BuildRequires: pkgconfig(guile-2.0)
BuildRequires: pkgconfig(ijs)
BuildRequires: pkgconfig(libglade-2.0)
BuildRequires: pkgconfig(librsvg-2.0)
BuildRequires: pkgconfig(lua)
BuildRequires: pkgconfig(pango)
BuildRequires: pkgconfig(python)
BuildRequires: pkgconfig(tcl)
%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
Requires(post): graphviz = %{version}
Recommends: xorg-x11-fonts
Supplements: graphviz-plugins-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-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: php7
%description -n graphviz-php
The graphviz-php package contains the PHP extension for the graphviz
tools.
%package -n graphviz-python
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
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.
%prep
%setup -q -n %{mname}-%{version}
%patch0 -p1
%patch1
%patch2
%patch3
%patch4 -p1
%patch5
%patch6
%patch7
%patch8
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
sed -i \
-e 's@LUA_INSTALL_DIR="/usr.*@LUA_INSTALL_DIR=%{lua_archdir}@' \
configure.ac
%build
autoreconf -fvi
CFLAGS="%{optflags} -ffast-math -fno-strict-aliasing -fno-strict-overflow -fPIC"
%if %{with extras}
CFLAGS="$CFLAGS $(pkg-config --cflags ruby-$(echo %{rb_ver} | sed 's|\.[^.]*$||'))"
%endif
export CFLAGS="$CFLAGS"
export CPPFLAGS="$CFLAGS"
export LDFLAGS="-pie"
%configure \
--with-x \
--disable-static \
--without-included-ltdl \
--disable-ltdl-install \
--with-ipsepcola \
--without-ming \
--disable-io \
%if %{with extras}
--with-qt \
--with-smyrna \
%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/lefty
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 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
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
%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
%doc COPYING
%{_bindir}/gvedit
%dir %{_datadir}/%{mname}/gvedit
%{_datadir}/%{mname}/gvedit/attrs.txt
%{_mandir}/man1/gvedit.1%{ext_man}
%files -n graphviz-smyrna
%doc 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}
%files -n graphviz-java
%{_libdir}/graphviz/java
%{_mandir}/man3/gv.3java%{ext_man}
%files -n graphviz-lua
%{lua_archdir}/gv.so
%{_mandir}/man3/gv.3lua%{ext_man}
%files -n graphviz-ocaml
%{_libdir}/graphviz/ocaml
%{_mandir}/man3/gv.3ocaml%{ext_man}
%files -n graphviz-perl
%{perl_vendorarch}/gv.pm
%{perl_vendorarch}/gv.so
%{_mandir}/man3/gv.3perl%{ext_man}
%files -n graphviz-php
%{_libdir}/php7/extensions/gv.so
%{_datadir}/php7/gv.php
%{_mandir}/man3/gv.3php%{ext_man}
%files -n graphviz-python
%{python_sitearch}/_gv.so
%{python_sitearch}/gv.py
%{_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 COPYING README NEWS ChangeLog
%{_bindir}/acyclic
%{_bindir}/bcomps
%{_bindir}/ccomps
%{_bindir}/circo
%{_bindir}/cluster
%{_bindir}/dijkstra
%{_bindir}/dot
%{_bindir}/dot2gxl
%{_bindir}/dot_builtins
%{_bindir}/dotty
%{_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}/lefty
%{_bindir}/lneato
%{_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}/lefty
%{_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}
%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

View File

@ -1,64 +0,0 @@
-------------------------------------------------------------------
Thu Jul 17 23:14:32 CEST 2014 - pth@suse.de
- Change License to EPL-1.0.
-------------------------------------------------------------------
Fri May 23 16:46:05 CEST 2014 - pth@suse.de
- Fix URL to point to the new location of the sources.
-------------------------------------------------------------------
Fri May 23 14:23:57 CEST 2014 - pth@suse.de
- Update to 2.38.0. Changes since 1.35.0:
- Resolve bugs: 2409, 2413, 2417, 2420, 2422, 2423, 2425
- Enable packing for dot
- Allow scaling to work for all non-dot layouts
- Add overline text characteristic.
- Fix bugs in gvpr and gv.cpp so edges can be created in subgraphs.
- Add edgepaint program for coloring edges to make them easier to
tell apart.
- Modify neato to avoid unnecessary translations of output. This
allows positions given on input to remain the same on output.
- Fix swig java package to work and support gv.renderresult.
- Fix test for the absence of layout (old test relied on statically
allocated Agraphinfo_t).
- HTML-like tables and cells can now specify which borders should be drawn.
- The fixedsize attribute now takes the value "shape" which allows
labels much larger than the node shape.
- Remove graphviz-fix-includes.patch as the fix has been done
upstream.
- Add graphviz-array_overflow.patch to fix an off-by-one error.
-------------------------------------------------------------------
Fri Feb 28 15:45:07 CET 2014 - pth@suse.de
- Fix graphviz-gvedit.changes by removing all entries that only
apply to graphviz.
-------------------------------------------------------------------
Sat Feb 8 17:58:55 CET 2014 - pth@suse.de
- Remove non-existing patch from spec.
-------------------------------------------------------------------
Tue Feb 4 13:20:24 CET 2014 - pth@suse.de
- Change license to EPL-1.0. Remove contrib/gprof2dot.awk as it
contains a non-working uri.
-------------------------------------------------------------------
Thu Sep 12 17:56:06 CEST 2013 - pth@suse.de
- Add graphviz-python3_version.patch that put the call to print in
Parentheses.
-------------------------------------------------------------------
Wed Sep 11 13:42:43 CEST 2013 - pth@suse.de
- Initial package split off from graphviz.
- Add graphviz-type_punning.patch which compiles the vmalloc sources
with -fno-strict-aliasing.

View File

@ -1,140 +0,0 @@
#
# spec file for package graphviz-gvedit
#
# Copyright (c) 2016 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
# 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 http://bugs.opensuse.org/
#
%define mname graphviz
Name: graphviz-gvedit
Version: 2.38.0
Release: 0
Summary: Graph editor based on Qt
License: EPL-1.0
Group: Productivity/Graphics/Visualization/Graph
Url: http://www.graphviz.org/
Source: http://graphviz.org/pub/graphviz/stable/SOURCES/graphviz-%{version}.tar.gz
Source2: graphviz-rpmlintrc
Patch2: graphviz-fix-pkgIndex.patch
#PATCH-FIX-UPSTREAM There are too many type-punnings in the vmalloc sources
Patch3: graphviz-no_strict_aliasing.patch
#PATCH-FIX-UPSTREAM Off-by-one error in htmltable.c
Patch4: graphviz-array_overflow.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: bison
BuildRequires: fdupes
BuildRequires: flex
BuildRequires: freetype2-devel >= 2
BuildRequires: gcc-c++
BuildRequires: libXaw-devel
BuildRequires: libexpat-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libqt4-devel
BuildRequires: libstdc++-devel
BuildRequires: libtool
BuildRequires: zlib-devel
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(ice)
BuildRequires: pkgconfig(sm)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xext)
Requires(pre): /bin/cat
Requires(pre): /bin/rm
Recommends: graphviz = %{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
This is the graph editor included with graphviz, packaged
separately to avoid cycles in the build of the graphviz
package.
%prep
%setup -q -n %{mname}-%{version}
%patch2
%patch3
%patch4
rm -f contrib/gprof2dot.awk
# Fix path in generated man pages
sed -e 's$@LIB_DIR@$%{_libdir}$g' tclpkg/gv/gv_doc_langs.tcl >tclpkg/gv/gv_doc_langs.tcl.new && mv tclpkg/gv/gv_doc_langs.tcl.new tclpkg/gv/gv_doc_langs.tcl
%build
autoreconf -fi
WARN_FLAGS="-W -Wall -Wno-unused-parameter -Wno-unknown-pragmas -Wstrict-prototypes -Wpointer-arith"
CFLAGS="%{optflags} $WARN_FLAGS"
%ifarch %ix86 x86_64
CFLAGS="$CFLAGS -ffast-math"
%endif
export CFLAGS="$CFLAGS"
export CPPFLAGS="%{optflags}"
%configure \
--with-x \
--with-mylibgd \
--disable-static \
--enable-ltdl-install=no \
--with-ipsepcola \
--without-ming \
--disable-io \
--disable-silent-rules \
--with-mylibgd=no \
--with-libgd=no
make %{?_smp_mflags} DESTDIR=%{buildroot}
%install
make install \
DESTDIR=%{buildroot} \
docdir=%{buildroot}%{_docdir}/%{mname} \
pkgconfigdir=%{_libdir}/pkgconfig
find %{buildroot} -type f -name "*.la" -print0 | xargs -0 rm -f
mkdir -p %{buildroot}/%{_docdir}
mkdir -p %{buildroot}%{_datadir}/%{mname}
rm -f %{buildroot}/%{_libdir}/%{mname}/pkgIndex.tcl
cp -a %{buildroot}%{_datadir}/%{mname}/doc __doc
rm -rf %{buildroot}%{_datadir}/%{mname}/doc
rm -rf %{buildroot}%{_libdir}
mv %{buildroot}/%{_mandir}/man1/gvedit.1 /tmp/gvedit.1
rm -f %{buildroot}/%{_mandir}/man1/*
rm -rf %{buildroot}/%{_mandir}/man[37]
mv /tmp/gvedit.1 %{buildroot}/%{_mandir}/man1/gvedit.1
mv %{buildroot}/%{_bindir}/gvedit /tmp/gvedit
rm -f %{buildroot}/%{_bindir}/*
mv /tmp/gvedit %{buildroot}/%{_bindir}/gvedit
rm -rf %{buildroot}%{_datadir}/%{mname}/graphs
rm -rf %{buildroot}%{_datadir}/%{mname}/gvpr
rm -rf %{buildroot}%{_datadir}/%{mname}/lefty
rm -rf %{buildroot}%{_includedir}/%{mname}
%files
%defattr(-,root,root)
%doc COPYING
%attr(755,root,root) %{_bindir}/gvedit
%dir %{_datadir}/%{mname}
%dir %{_datadir}/%{mname}/gvedit
%{_datadir}/%{mname}/gvedit/attrs.txt
%doc %{_mandir}/man1/*.1*
%changelog

View File

@ -5,20 +5,20 @@
Index: configure
===================================================================
--- configure.orig 2013-09-07 03:11:08.000000000 +0200
+++ configure 2013-09-09 13:52:31.087729979 +0200
@@ -22284,8 +22284,8 @@ done
else
PHP_INCLUDES="-I/usr/include/php -I/usr/include/php/main -I/usr/include/php/Zend -I/usr/include/php/TSRM"
--- 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}/php5/extensions"
+ PHP_INSTALL_DATADIR="/usr/share/php5"
+ PHP_INSTALL_DIR="/usr/lib${LIBPOSTFIX}/php7/extensions"
+ PHP_INSTALL_DATADIR="/usr/share/php7"
PHP_LIBS=
save_CPPFLAGS=$CPPFLAGS
CPPFLAGS="$CPPFLAGS $PHP_INCLUDES"
@@ -23844,7 +23844,7 @@ $as_echo "using $TCLCONFIG" >&6; }
@@ -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
@ -29,16 +29,16 @@ Index: configure
if test "x$use_tcl" = "x"; then
Index: configure.ac
===================================================================
--- configure.ac.orig 2013-09-07 03:07:52.000000000 +0200
+++ configure.ac 2013-09-09 13:51:37.757974780 +0200
@@ -1100,8 +1100,8 @@ else
else
PHP_INCLUDES="-I/usr/include/php -I/usr/include/php/main -I/usr/include/php/Zend -I/usr/include/php/TSRM"
--- 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}/php5/extensions"
+ PHP_INSTALL_DATADIR="/usr/share/php5"
+ 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,577 +0,0 @@
-------------------------------------------------------------------
Thu Aug 18 18:41:05 UTC 2016 - zaitor@opensuse.org
- "Lower" xorg-x11-fonts Requires to Recommends.
-------------------------------------------------------------------
Mon May 23 19:02:17 UTC 2016 - olaf@aepfle.de
- Disable ocaml plugins, not ready for upstream ocaml (fate#320836)
-------------------------------------------------------------------
Mon Jun 15 15:07:29 UTC 2015 - schwab@suse.de
- Enable ocaml and java plugins on aarch64
-------------------------------------------------------------------
Wed Jun 10 06:55:04 UTC 2015 - mpluskal@suse.com
- Update gnome dependencies
-------------------------------------------------------------------
Fri Apr 17 00:20:57 UTC 2015 - stefan.bruens@rwth-aachen.de
- Cleanup spec:
* remove duplicate language binding files
* fix fdupes invocation for doc files
* remove statements without effect
* silence warning messages on plugin deinstallation
* fix %post/%pre Requires
-------------------------------------------------------------------
Thu Mar 19 12:50:46 UTC 2015 - dvlaeev@suse.com
- Disable Mono by default
-------------------------------------------------------------------
Mon Sep 8 11:36:29 UTC 2014 - coolo@suse.com
- remove conflict with lua 5.2, seems outdated
-------------------------------------------------------------------
Thu Jul 17 23:14:32 CEST 2014 - pth@suse.de
- Change License to EPL-1.0.
-------------------------------------------------------------------
Tue Jul 15 11:17:42 UTC 2014 - toddrme2178@gmail.com
- Require gd-devel instead of libgd-devel. That is the current
name for the package.
- Remove upstream-included patch graphviz-ppc64le_lib64_support.patch
-------------------------------------------------------------------
Wed Jun 18 12:32:34 CEST 2014 - pth@suse.de
- Apply patch from darix to ask ruby for directories.
- Fix install path for tcl plugins.
- Fix file list for gnome plugins.
- Remove graphviz-plugins-tcl_install_dir.patch as it's not needed
anymore.
- Remove graphviz-getaddrinfo.patch as the patch is upstream.
-------------------------------------------------------------------
Tue Jun 17 12:31:58 UTC 2014 - mrueckert@suse.de
- instead of guessing the ruby paths. let's just use the existing
variables or at least ask ruby for it.
-------------------------------------------------------------------
Fri May 23 16:46:05 CEST 2014 - pth@suse.de
- Fix URL to point to the new location of the sources.
-------------------------------------------------------------------
Fri May 23 14:23:57 CEST 2014 - pth@suse.de
- Update to 2.38.0. Changes since 1.35.0:
- Resolve bugs: 2409, 2413, 2417, 2420, 2422, 2423, 2425
- Enable packing for dot
- Allow scaling to work for all non-dot layouts
- Add overline text characteristic.
- Fix bugs in gvpr and gv.cpp so edges can be created in subgraphs.
- Add edgepaint program for coloring edges to make them easier to
tell apart.
- Modify neato to avoid unnecessary translations of output. This
allows positions given on input to remain the same on output.
- Fix swig java package to work and support gv.renderresult.
- Fix test for the absence of layout (old test relied on statically
allocated Agraphinfo_t).
- HTML-like tables and cells can now specify which borders should be drawn.
- The fixedsize attribute now takes the value "shape" which allows
labels much larger than the node shape.
- Remove graphviz-fix-includes.patch as the fix has been done
upstream.
- Add graphviz-array_overflow.patch to fix an off-by-one error.
-------------------------------------------------------------------
Sat Feb 8 18:00:04 CET 2014 - pth@suse.de
- Remove non-existing patch from spec.
-------------------------------------------------------------------
Tue Feb 4 13:20:28 CET 2014 - pth@suse.de
- Change license to EPL-1.0. Remove contrib/gprof2dot.awk as it
contains a non-working uri.
-------------------------------------------------------------------
Sat Feb 1 15:42:04 UTC 2014 - coolo@suse.com
- use the right ruby macro
-------------------------------------------------------------------
Sat Jan 18 17:06:59 UTC 2014 - coolo@suse.com
- fix mono bcond. It's without, not !with
-------------------------------------------------------------------
Sat Jan 18 16:47:55 UTC 2014 - coolo@suse.com
- use global java bcond instead of an own now that it buildrequires
jdk and no longer gcc
-------------------------------------------------------------------
Tue Jan 14 11:54:17 UTC 2014 - dvlaeev@suse.com
- Don't build C# binding without mono. Otherwise we get unpackaged
files.
-------------------------------------------------------------------
Sat Jan 11 07:27:19 UTC 2014 - coolo@suse.com
- remove unneeded ksh dependency
-------------------------------------------------------------------
Fri Dec 6 22:26:21 UTC 2013 - matz@suse.de
- Add powerpc64le to list of lib64 platforms
(graphviz-ppc64le_lib64_support.patch).
-------------------------------------------------------------------
Mon Oct 14 15:28:40 CEST 2013 - pth@suse.de
- Use wildcards for specifying tcl directory.
-------------------------------------------------------------------
Thu Oct 10 19:37:47 CEST 2013 - pth@suse.de
- Change BuildRequires for Java so that the spec doesn't need
to be modified for newer jdk versions.
-------------------------------------------------------------------
Tue Oct 8 20:01:18 CEST 2013 - pth@suse.de
- Don't apply graphviz-fix-pkgIndex.patch twice.
- Remove Buildrequires for libqt4-devel.
-------------------------------------------------------------------
Thu Sep 12 17:56:06 CEST 2013 - pth@suse.de
- Add graphviz-python3_version.patch that put the call to print in
Parentheses.
-------------------------------------------------------------------
Mon Sep 9 13:45:47 CEST 2013 - pth@suse.de
- Update to 2.34.0 (see changes for graphviz),
- Remove patches accepted upstream:
graphviz-missing_headers.patch, graphviz-aarch64_lib64_support.patch,
graphviz-type_punning.patch, graphviz-buffer_overflow.patch,
graphviz-proper_prototypes.patch, graphviz-python_version.patch,
graphviz-guile.patch, graphviz-java_in_lib64.patch
- Add graphviz-type_punning.patch which compiles the vmalloc sources
with -fno-strict-aliasing.
-------------------------------------------------------------------
Thu Sep 5 15:46:47 CEST 2013 - pth@suse.de
- Update to 2.32.0. Changes since 2.28.0:
2.32.0:
- New version of xdot format, annotating gradient color schemes
- Support for reading pdf images using poppler
- Lefty/dotty/lneato now accept anonymous graphs
- Add star node shape
- Add two-tone (non-gradient) fill
2.30.1:
- various build fixes
2.30.0:
- Replaced libgraph with libcgraph; use of libgraph is now deprecated
- New ranking algorithm that allows multiple subgraph constraints
- Support edges using curved arcs.
- Added new shapes used by the synthetic biology community.
- For HTML-like labels, provide rounded cells, and dashed or dotted borders.
- Add lcurve and rcurve arrowheads.
- Add prototype pie chart and striped fills.
- Support insets in treemaps to make containment clear
- Add random rooted tree generation to gvgen
- Allow GVPRPATH to specify that the default path be prepended or
appended to it.
- Support arbitrary lists of layers; allow the user to specify arbitrary
layers for output.
- A collection of gvpr scripts, which were part of the source package,
are now installed in <prefix>/share/graphviz/gvpr, and the that path
is used as part of th default built-in path for gvpr.
- Update libexpr to reflect Glenn Fowler's changes including scopes for
variables.
- Add next graph variable to gvpr
- Modify dot and fdp so that a cluster's margin attribute will affect
the space between the bounding box and nodes
- Modify the dijkstra tool to use only directed edges
- Output numbers without quotes if quotes are not needed on input
- Support gradient fill
- Provide support for webp images
- Fix tapered edges to use the dir attribute and arrowhead
- Add imagepath attribute
- Add help functionality to Graphviz.app
- Add <B>,<I>,<U> to html strings via svg
- Add tapered edges
- Add support for external labels
- Add initial implementation of graphml2gv
- Add basic horizontal and vertical rules to html tables
- Remove graphviz-gd_png_check_sig.patch as the file to patch doesn't
exist anymore.
- Add graphviz-buffer_overflow.patch to fix a buffer ovderflow in
lib/common/shapes.c(round_corners) by increasing the number of
elements in the array.
- Add graphviz-proper_prototypes.patch that changes dthdr.h to
include ast_common.h to get __STD_C defined, which in turn
enables proper prototypes.
- Run autoreconf to use -fno-strict-aliasing for libvmalloc sources
- Remove graphviz-2.18-do_not_use_ocamlopt.patch as it's not needed
anymore.
- Adapt graphviz-guile.patch, graphviz-plugins-fix_install_dirs.patch
and graphviz-python_version.patch to the new sources.
- Add graphviz-java_in_lib64.patch to search in /usr/lib64/jvm for
the java headers on platforms using lib64.
- Add graphviz-proper_use_of_qw.patch to put the use of qw in
config/config_perl.pl in brackets.
- Add graphviz-useless_warnings.patch to make gcc not warn about
harmless issues that arise from code generated by swig.
- Add patch tags in the spec files
- Upstreamed all patches that aren't SUSE specific.
-------------------------------------------------------------------
Fri May 31 08:08:44 UTC 2013 - mhrusecky@suse.com
- use %rb_ver to decide correct ruby version
-------------------------------------------------------------------
Thu Mar 28 11:51:09 CET 2013 - pth@suse.de
- Rename aarch64-lib64-support.diff to graphviz-aarch64_lib64_support.patch.
- Compile the code in lib/vmalloc with -fno-strict-aliasing
as it does type punning.
-------------------------------------------------------------------
Sat Mar 16 22:27:10 UTC 2013 - dmueller@suse.com
- add build conditionals for java, ocaml and mono (needed for
aarch64 port for now)
- add aarch64-lib64-support.diff:
add aarch64 to the list of lib64 architectures
-------------------------------------------------------------------
Mon Sep 3 12:11:26 CEST 2012 - pth@suse.de
- Reinstate the dependency on gtkglext-devel but guarded by an
'if suse_version > 1220'.
-------------------------------------------------------------------
Mon Sep 3 09:18:31 UTC 2012 - idonmez@suse.com
- Remove dependency on gtkglext-devel, package no longer exists
in openSUSE > 12.2
-------------------------------------------------------------------
Mon Jun 11 14:55:13 UTC 2012 - coolo@suse.com
- survive new ruby without autoreconf
-------------------------------------------------------------------
Wed Apr 4 10:58:25 UTC 2012 - reddwarf@opensuse.org
- Force lua 5.1 to fix Factory build
-------------------------------------------------------------------
Tue Feb 28 09:43:45 CET 2012 - jsmeix@suse.de
- BuildRequire "ghostscript" instead of outdated "ghostscript-mini"
(related to Ghostscript package clean-up, see bnc#735824).
-------------------------------------------------------------------
Wed Oct 19 18:36:48 UTC 2011 - coolo@suse.com
- /usr/bin/php5 does not exist
-------------------------------------------------------------------
Tue Oct 4 18:41:12 CEST 2011 - pth@suse.de
- Rename and prefix patch for uniformity within the package.
-------------------------------------------------------------------
Wed Sep 28 14:01:13 UTC 2011 - idonmez@suse.com
- Fix compilation with new guile
- Update to version 2.28.0
- incremented library api version:
libcdt, libgraph, libcgraph, libgvpr, libgvc
- Add gvmap, cluster and gvmap.sh
- Deprecate dotty; prefer gvedit
- Add patchwork supporting squarified tree maps
- Add ordering as a node attribute
- Fix problems with font resolution
- Fix problems with text placement
- Fix twopi to set root attribute
- Make available layouts and formats available via the API
- Fix error message system so that an application can capture the messages
- New attributes and features for sfdp
- gvgen now allows the user to specify graph name and node name template
- Make overlap=false denote overlap=prism
- More efficient xdot library
- HTML-like labels provide ID
- Fixed bugs: 1480 1980 2044 2087 2088 2089 2091 2093 2094
2095 2101 2102 2103 2104 2112 2113 2118 2128 2129 2139 2149
2157 2113 2159 2160 2161 2163
- Add scale attribute to twopi
- Add <B>,<I>,<U> to html strings
- migrated to 2005 version of cdt
-------------------------------------------------------------------
Fri Mar 11 12:25:36 UTC 2011 - coolo@novell.com
- fix conflict with libltdl (http://bugs.gentoo.org/339298)
-------------------------------------------------------------------
Fri Jun 18 15:02:39 CEST 2010 - pth@suse.de
- Fix CPPFLAGS for real.
-------------------------------------------------------------------
Tue Jun 15 11:39:04 CEST 2010 - pth@suse.de
- Readd AM_CPPFLAGS for libgv_perl.
-------------------------------------------------------------------
Fri Jun 11 12:12:20 CEST 2010 - pth@suse.de
- Set rpath for libperl (bnc#612766).
-------------------------------------------------------------------
Wed Jun 2 14:05:46 CEST 2010 - pth@suse.de
- Dot requires fonts when using pango for output (bnc#610873).
-------------------------------------------------------------------
Fri May 28 15:15:48 CEST 2010 - meissner@suse.de
- remove a powerpc hack for Darwin that failed our PowerPC build.
-------------------------------------------------------------------
Fri Nov 13 23:37:02 CET 2009 - dmueller@suse.de
- require the exact perl version it was build against, otherwise
libperl.so can not be found
-------------------------------------------------------------------
Wed Aug 26 12:53:54 CEST 2009 - mls@suse.de
- make patch0 usage consistent
-------------------------------------------------------------------
Fri Oct 24 16:05:18 CEST 2008 - mrueckert@suse.de
- fix build with newer libtool
- fix debug package requires
-------------------------------------------------------------------
Mon Oct 13 15:04:23 CEST 2008 - pth@suse.de
- Fix vulnerability that allowed overflowing gstack (bnc#433747)
-------------------------------------------------------------------
Wed Sep 17 10:09:10 CEST 2008 - dmueller@suse.de
- fix python version detection
-------------------------------------------------------------------
Thu Aug 14 16:51:30 CEST 2008 - ro@suse.de
- drop get_release_number script
- remove release requires in plugins package, require just
the same version
-------------------------------------------------------------------
Thu Aug 7 15:53:42 CEST 2008 - ro@suse.de
- drop nodebug, require main graphviz package from debuginfo
instead
-------------------------------------------------------------------
Thu Jul 10 12:11:47 CEST 2008 - pth@suse.de
- Update to 2.20.2. Changes since 2.18:
2.20.2:
- Fix bug in HTML-like labels
2.20.1:
- Fix bug in ccomps related to conversion to cgraph
2.20.0:
- Fixed bugs (see http://www.graphviz.org/bugs/buglist.html for
details:
- 1315: Different/error output for *.os and *.pdf
- 1317: Graphviz fails to open more than 512 files.
- 1324: Graphviz crashes in atexit().
- 1336: Plain format label delimiters change randomly.
- 1343: Layouts other than 'dot' seem broken in tcldot due to
documentation error.
- 1364: Dot fails with failed assertion.
- Add new "folder" shape for nodes.
- Migration of gvpr tools to libcgraph.
- New output format -Teps (encapsulated postscript)
- Various NetBSD and SuSE fixes incorporated
- ./configure now provides a summary
-------------------------------------------------------------------
Tue Apr 29 19:30:23 CEST 2008 - pth@suse.de
- Disable the use of ocamlopt as the archive turns up empty (bnc#384855).
-------------------------------------------------------------------
Sun Apr 27 14:41:08 CEST 2008 - coolo@suse.de
- fix build
-------------------------------------------------------------------
Tue Apr 22 14:37:18 CEST 2008 - pth@suse.de
- Move all GTK/GNOME related stuff to plugins package.
-------------------------------------------------------------------
Thu Apr 17 13:08:40 CEST 2008 - pth@suse.de
- Switch off strict aliasing until swig produces code that plays
by the rules.
-------------------------------------------------------------------
Mon Apr 7 13:32:38 CEST 2008 - pth@suse.de
- Fix paths for lua and php interpreter in examples.
-------------------------------------------------------------------
Thu Apr 3 16:31:10 CEST 2008 - pth@suse.de
- Fix package and filelist correctly.
- Install tcl specific libraries to %_libdir
- Properly package language specific demo code
-------------------------------------------------------------------
Mon Mar 31 00:47:40 CEST 2008 - ro@suse.de
- fix build (added directories to filelist)
-------------------------------------------------------------------
Fri Mar 28 12:53:29 CET 2008 - pth@suse.de
- Update to 2.18. Changes since 2.12:
- Lots of bugs fixed, see ChangeLog for detailed list.
- in -Tps use a new number formatter that suppresses trailing 0.
- support tcl/tk-8.5
- support gcc-4.3
- support for node usershapes/images in svg format
- install: perl, php, python, ruby, tcl, bindings in
language-specified directories
- add arrowhead scaling with edge penwidth
- add "folder" node shape
- add "smyna" large graph view (thanks Arif) (not yet included
in binary distros)
* 2.16.1
- Improvements to PHP binding
- Improvements to OCAML binding
- Make regression tests run from the build tree, rather than require
installation
- Repair freetype detection on RedHat-7 (Yes, people still use it!!)
- Fix zoom-at-mouse-location in -Txlib and -Tgtk
- Fix some dotty regressions
* 2.15
- new regression test suite
- new cgraph library (will eventually replace graph and agraph)
- add "image" and "imagescale" for simpler support for images in nodes
- add "tab" "box3d" and "component" shapes. - Diomidis Spinellis
- replace arith.h in distro
- add functions to access version info to avoid need for gvcint.h
- Fix problem with irregular character spacing at 96dpi in pango/cairo
output formats.
- Add gdk_pixbuf plugin providing: .bmp .ico .jpg .png .tif
- Add DevIL plugin providing: .bmp .jpg .png .tif .tga
- Extend GD plugin to provide a backend to cairo for: .gif .jpg .png .gd
.gd2 .wbmp <- gifs are now antialiased
- Rework plugin framework to separate device from renderer, and to
autoload load dependendent plugins
- show defaults in output from: ./configure --help
- add more info to dot -v and dot -v2 debug outputs
- various issues with CR/LF in windows, but not in binary outputs.
* 2.14.1
- Add xdot parsing library to source distros
- graphviz.spec fixes for rpm distros from Gareth Armstrong
- moved language binding man pages to mann
(gv_php.n, gv_ocaml.n, etc.)
- New access functions for version info in GVC_t - permits
gvcint.h to be private.
* 2.14:
- Using system version of libgd if gd-2.0.34 or later.
internal copy of gd updated to gd-2.0.35.
- Updated GVGUI viewer for Windows
- Added support for selection of edge routing types:
line, polyline, orthogonal, spline
- Added -Tvml support
- Adapt the patch to allow ^LT_(CURRENT|REVISION|AGE)$ in
configure script and reenable the use of these variables.
-------------------------------------------------------------------
Thu Mar 13 17:47:28 CET 2008 - schwab@suse.de
- Allow ^LT_(CURRENT|REVISION|AGE)$ in configure script.
- Remove broken autoconf macros.
-------------------------------------------------------------------
Fri Oct 26 17:34:08 CEST 2007 - pth@suse.de
- Add missing includes.
-------------------------------------------------------------------
Thu Aug 16 12:32:06 CEST 2007 - pth@suse.de
- Add missing BuildRequires for fdupes
- Guard fdupes by check for suse_version
-------------------------------------------------------------------
Mon Aug 13 19:23:50 CEST 2007 - pth@suse.de
- lib/sfio/sfhdr.h(SFSETLOCALE): fix test for null pointer.
- Fix include paths for php5
- Move gv_php man page to where man searches for it.
- Use %%fdupes
- Add rpmlintrc
- use -fno-strict-aliasing for gv_php
-------------------------------------------------------------------
Mon Jun 11 18:13:15 CEST 2007 - ro@suse.de
- no main package, no debuginfo
-------------------------------------------------------------------
Wed Jun 6 19:02:17 CEST 2007 - pth@suse.de
- Move man pages to _mandir (bugzilla #281398)
-------------------------------------------------------------------
Fri May 11 10:32:51 CEST 2007 - ro@suse.de
- added get_release_number.sh to sync rel-number between
graphviz and graphviz-plugins
-------------------------------------------------------------------
Thu May 10 01:42:44 CEST 2007 - ro@suse.de
- create own specfile for all plugins to reduce build dependencies
of main package (and break various build cycles)

View File

@ -1,450 +0,0 @@
#
# spec file for package graphviz-plugins
#
# Copyright (c) 2016 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
# 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 http://bugs.opensuse.org/
#
%define mname graphviz
#name of the plugin config file that dot creates
%define config_file config6
%bcond_without java
%bcond_with graphviz_ocaml
%bcond_with mono
Name: graphviz-plugins
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: bison
BuildRequires: cairo-devel
BuildRequires: flex
BuildRequires: freetype2-devel >= 2
BuildRequires: gcc-c++
BuildRequires: gd-devel
BuildRequires: ghostscript
BuildRequires: gmp-devel
BuildRequires: graphviz
BuildRequires: guile-devel
BuildRequires: libexpat-devel
BuildRequires: libgnomeui-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libstdc++-devel
BuildRequires: m4
BuildRequires: pango-devel
%ifnarch aarch64
%if 0%suse_version > 1220
BuildRequires: gtkglext-devel
%endif
%endif
%if %{with java}
#BuildRequires: gcc-java
#BuildRequires: libgcj-devel
BuildRequires: java-devel >= 1.6.0
%endif
%if %{with mono}
BuildRequires: mono-core
%endif
%if %{with graphviz_ocaml}
BuildRequires: ocaml
%endif
BuildRequires: fdupes
BuildRequires: perl
BuildRequires: php5-devel
BuildRequires: python-devel
BuildRequires: ruby
BuildRequires: ruby-devel
BuildRequires: swig
BuildRequires: tk-devel >= 8.3
BuildRequires: xorg-x11-devel
BuildRequires: xorg-x11-libICE-devel
BuildRequires: xorg-x11-libSM-devel
BuildRequires: xorg-x11-libX11-devel
BuildRequires: xorg-x11-libXext-devel
BuildRequires: xorg-x11-libXmu-devel
BuildRequires: xorg-x11-libXpm-devel
BuildRequires: xorg-x11-libXt-devel
BuildRequires: zlib-devel
BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(libglade-2.0)
BuildRequires: pkgconfig(lua) >= 5.1
BuildRequires: pkgconfig(pango)
Version: 2.38.0
Release: 0
Summary: Graph Visualization Tools
License: EPL-1.0
Group: Productivity/Graphics/Visualization/Graph
Url: http://www.graphviz.org/
Source: http://graphviz.org/pub/graphviz/stable/SOURCES/graphviz-%{version}.tar.gz
#PATCH-FIX-UPSTREAM There are too many type-punnings in the vmalloc sources
Patch3: graphviz-no_strict_aliasing.patch
Patch4: graphviz-array_overflow.patch
#Patches from 100 up are for graphviz-plugin only
Patch100: graphviz-plugins-fix_install_dirs.patch
Patch103: graphviz-2.20.2-interpreter_names.patch
Patch106: graphviz-fix-pkgIndex.patch
#PATCH-FIX-UPSTREAM Don't warn about harmless issues with swig generated code
Patch108: graphviz-useless_warnings.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%{!?rb_vendorarchdir: %global rb_vendorarchdir %(/usr/bin/ruby -rrbconfig -e 'puts RbConfig::CONFIG["vendorarchdir"]' )}
%{!?rb_sitearchdir: %global rb_sitearchdir %(/usr/bin/ruby -rrbconfig -e 'puts RbConfig::CONFIG["sitearchdir"]' )}
%define lua_libdir %{_libdir}/lua/%(pkg-config --variable=V lua)
%define debug_package_requires graphviz_plugin = %{version}-%{release}
%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-gnome
Summary: Graphviz plugins that use gtk/GNOME
Group: Productivity/Graphics/Visualization/Graph
Requires(post): graphviz = %{version}
Recommends: xorg-x11-fonts
Provides: graphviz_plugin = %{version}
%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}
Provides: graphviz_plugin = %{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
Provides: graphviz_plugin = %{version}
%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).
%if %{with java}
%package -n graphviz-java
Summary: Graph Visualization Tools
Group: Productivity/Graphics/Visualization/Graph
Requires: graphviz = %{version}
Requires: java
Provides: graphviz_plugin = %{version}
%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).
%endif
%package -n graphviz-lua
Summary: Lua extension for graphviz
Group: Productivity/Graphics/Visualization/Graph
Requires: graphviz = %{version}
Requires: lua
Provides: graphviz_plugin = %{version}
%description -n graphviz-lua
The graphviz-lua package contains the lua extension for the graphviz
tools.
%if %{with graphviz_ocaml}
%package -n graphviz-ocaml
Summary: OCAML extension for graphviz
Group: Productivity/Graphics/Visualization/Graph
Requires: graphviz = %{version}
Requires: ocaml
Provides: graphviz_plugin = %{version}
%description -n graphviz-ocaml
The graphviz-ocaml package contains the Objective Caml extension for
the graphviz tools.
%endif
%package -n graphviz-perl
Summary: Perl extension for Graphviz
Group: Productivity/Graphics/Visualization/Graph
Requires: graphviz = %{version}
Requires: perl = %{perl_version}
Provides: graphviz_plugin = %{version}
%perl_requires
%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: php5
Provides: graphviz_plugin = %{version}
%description -n graphviz-php
The graphviz-php package contains the PHP extension for the graphviz
tools.
%package -n graphviz-python
Summary: Python Extension for Graphviz
Group: Productivity/Graphics/Visualization/Graph
Requires: graphviz = %{version}
Requires: python
Provides: graphviz_plugin = %{version}
%description -n graphviz-python
The graphviz-python 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
Provides: graphviz_plugin = %{version}
%description -n graphviz-ruby
The graphviz-ruby package contains the ruby extension for the graphviz
tools.
%if %{with mono}
%package -n graphviz-sharp
Summary: C# Extension for Graphviz
Group: Productivity/Graphics/Visualization/Graph
Requires: graphviz = %{version}
Requires: mono-core
Provides: graphviz_plugin = %{version}
%description -n graphviz-sharp
The graphviz-sharp package contains the C# extension for the graphviz
tools.
%endif
%package -n graphviz-tcl
Summary: Tcl extension tools for graphviz
Group: Development/Libraries/Tcl
Requires: graphviz = %{version}
Requires: tcl >= 8.3
Requires: tk
Provides: graphviz_plugin = %{version}
%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: Productivity/Graphics/Visualization/Graph
%description -n graphviz-doc
Provides some additional PDF and HTML documentation for graphviz.
%prep
%setup -q -n %{mname}-%{version}
%patch3
%patch4
%patch100
%patch103
%patch106
%patch108
rm -f contrib/gprof2dot.awk
# Fix path in generated man pages
sed -e 's$@LIB_DIR@$%{_libdir}$g' tclpkg/gv/gv_doc_langs.tcl >tclpkg/gv/gv_doc_langs.tcl.new && mv tclpkg/gv/gv_doc_langs.tcl.new tclpkg/gv/gv_doc_langs.tcl
%build
autoreconf -fi
WARN_FLAGS="-W -Wall -Wno-unused-parameter -Wno-unknown-pragmas -Wstrict-prototypes -Wpointer-arith"
CFLAGS="%{optflags} $WARN_FLAGS"
%ifarch %ix86 x86_64
CFLAGS="$CFLAGS -ffast-math"
%endif
%if %suse_version > 1210
rubyflags=$(pkg-config --cflags ruby-$(echo %rb_ver | sed 's|\.[^.]*$||'))
CFLAGS="$CFLAGS $rubyflags"
CXXFLAGS="$CXXFLAGS $rubyflags"
%endif
export CFLAGS
export CXXFLAGS="$CXXFLAGS -fpermissive"
export CPPFLAGS="%{optflags}"
%configure \
--with-x \
--disable-static \
--disable-dependency-tracking \
--with-ipsepcola \
--without-ming \
--disable-silent-rules \
--enable-ltdl-install=no \
%if %{without mono}
--enable-sharp=no \
%endif
--disable-io
make DESTDIR=%{buildroot} %{?_smp_mflags}
%install
make install DESTDIR=%{buildroot} \
pkgconfigdir=%{_libdir}/pkgconfig
find %{buildroot} -type f -name "*.la" -exec rm -f {} ';'
mkdir -p %{buildroot}/%{_docdir}
mkdir -p %{buildroot}%{_datadir}/%{mname}
mkdir -p %{buildroot}%{_datadir}/tcl/%{mname}
cp -a %{buildroot}%{_datadir}/%{mname}/doc %{buildroot}%{_defaultdocdir}/%{mname}-doc
rm -rf %{buildroot}%{_datadir}/%{mname}/doc
mkdir -p %{buildroot}%{_libdir}/graphviz
rm -f %{buildroot}%{_bindir}/*
rm -rf %{buildroot}%{_includedir}/graphviz
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*
rm -f %{buildroot}%{_libdir}/lib*
rm -rf %{buildroot}%{_libdir}/pkgconfig
rm -rf %{buildroot}%{_datadir}/graphviz/graphs
rm -rf %{buildroot}%{_datadir}/graphviz/lefty
rm -rf %{buildroot}%{_mandir}/man1
rm -f %{buildroot}%{_mandir}/man3/*.3
rm -f %{buildroot}%{_mandir}/man7/*.7
rm -rf %{buildroot}%{_datadir}/%{mname}/gvpr
for lib in libgdtclft* libgv_tcl.so libtcldot* libtclplan* libtkspline*; do
mv %{buildroot}%{_libdir}/%{mname}/tcl/${lib} %{buildroot}%{_libdir}
done
%fdupes -s %{buildroot}%{_defaultdocdir}/%{mname}-doc
rm -rf %{buildroot}/%{_libdir}/%{mname}/%{_lib}
install -Dd %{buildroot}%{rb_vendorarchdir}
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}/%{mname}/php
rm -rf %{buildroot}%{_libdir}/graphviz/python
rm -rf %{buildroot}%{_libdir}/graphviz/ruby
%files -n graphviz-gd
%defattr(-,root,root)
%{_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
%defattr(-,root,root,-)
%{_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
%defattr(-,root,root,-)
%{_libdir}/graphviz/guile
%doc %{_mandir}/man3/gv.3guile.gz
%if %{with java}
%files -n graphviz-java
%defattr(-,root,root,-)
%{_libdir}/graphviz/java
%{_mandir}/man3/gv.3java.gz
%endif
%if %{with mono}
%files -n graphviz-sharp
%defattr(-,root,root)
%{_libdir}/graphviz/sharp
%doc %{_mandir}/man3/gv.3sharp.gz
%endif
%files -n graphviz-lua
%defattr(-,root,root,-)
%{_datadir}/%{mname}/demo/modgraph.lua
%dir %lua_libdir
%{lua_libdir}/gv.so
%doc %{_mandir}/man3/gv.3lua.gz
%if %{with graphviz_ocaml}
%files -n graphviz-ocaml
%defattr(-,root,root,-)
%{_libdir}/graphviz/ocaml
%doc %{_mandir}/man3/gv.3ocaml.gz
%endif
%files -n graphviz-perl
%defattr(-,root,root,-)
%{perl_vendorarch}/gv.pm
%{perl_vendorarch}/gv.so
%{_datadir}/%{mname}/demo/modgraph.pl
%doc %{_mandir}/man3/gv.3perl.gz
%files -n graphviz-php
%defattr(-,root,root,-)
%{_libdir}/php5/extensions/gv.so
%{_datadir}/php5/gv.php
%doc %{_mandir}/man3/gv.3php.gz
%{_datadir}/%{mname}/demo/modgraph.php
%files -n graphviz-python
%defattr(-,root,root,-)
%{py_sitedir}/_gv.so
%{py_sitedir}/gv.py
%doc %{_mandir}/man3/gv.3python.gz
%{_datadir}/%{mname}/demo/modgraph.py
%files -n graphviz-ruby
%defattr(-,root,root,-)
%{rb_vendorarchdir}/gv.so
%doc %{_mandir}/man3/gv.3ruby.gz
%{_datadir}/%{mname}/demo/modgraph.rb
%files -n graphviz-tcl
%defattr(-,root,root)
%dir %{_datadir}/tcl/%{mname}
%{_libdir}/tcl[0-9].[0-9]
%{_libdir}/libgdtclft*
%{_libdir}/libgv_tcl.so
%{_libdir}/libtcldot*
%{_libdir}/libtclplan*
%{_libdir}/libtkspline*
%{_datadir}/tcl/%{mname}/pkgIndex.tcl
%{_datadir}/graphviz/demo
%doc %{_mandir}/man3/*.3tcl*
%doc %{_mandir}/man3/*.3tk*
%exclude %{_datadir}/%{mname}/demo/modgraph.rb
%exclude %{_datadir}/%{mname}/demo/modgraph.php
%exclude %{_datadir}/%{mname}/demo/modgraph.py
%exclude %{_datadir}/%{mname}/demo/modgraph.lua
%exclude %{_datadir}/%{mname}/demo/modgraph.pl
%files -n graphviz-doc
%defattr(-,root,root,-)
%docdir %{_defaultdocdir}/%{mname}-doc
%{_defaultdocdir}/%{mname}-doc
%changelog

113
graphviz-qt5.patch Normal file
View File

@ -0,0 +1,113 @@
Index: graphviz-2.40.1/cmd/gvedit/csettings.cpp
===================================================================
--- graphviz-2.40.1.orig/cmd/gvedit/csettings.cpp
+++ graphviz-2.40.1/cmd/gvedit/csettings.cpp
@@ -16,7 +16,7 @@
#include "csettings.h"
#include "qmessagebox.h"
#include "qfiledialog.h"
-#include <QtGui>
+#include <QtWidgets>
#include <qfile.h>
#include "mdichild.h"
#include "string.h"
Index: graphviz-2.40.1/cmd/gvedit/imageviewer.h
===================================================================
--- graphviz-2.40.1.orig/cmd/gvedit/imageviewer.h
+++ graphviz-2.40.1/cmd/gvedit/imageviewer.h
@@ -15,7 +15,7 @@
#ifndef IMAGEVIEWER_H
#define IMAGEVIEWER_H
-#include <QtGui>
+#include <QtWidgets>
#include <QMainWindow>
#include <QPrinter>
Index: graphviz-2.40.1/cmd/gvedit/mainwindow.cpp
===================================================================
--- graphviz-2.40.1.orig/cmd/gvedit/mainwindow.cpp
+++ graphviz-2.40.1/cmd/gvedit/mainwindow.cpp
@@ -11,7 +11,7 @@
* Contributors: See CVS logs. Details at http://www.graphviz.org/
*************************************************************************/
-#include <QtGui>
+#include <QtWidgets>
#include <qframe.h>
#include "mainwindow.h"
#include "mdichild.h"
Index: graphviz-2.40.1/cmd/gvedit/mdichild.cpp
===================================================================
--- graphviz-2.40.1.orig/cmd/gvedit/mdichild.cpp
+++ graphviz-2.40.1/cmd/gvedit/mdichild.cpp
@@ -12,7 +12,7 @@
*************************************************************************/
-#include <QtGui>
+#include <QtWidgets>
#include "mdichild.h"
#include "mainwindow.h"
Index: graphviz-2.40.1/cmd/gvedit/ui_settings.h
===================================================================
--- graphviz-2.40.1.orig/cmd/gvedit/ui_settings.h
+++ graphviz-2.40.1/cmd/gvedit/ui_settings.h
@@ -10,22 +10,22 @@
#ifndef UI_SETTINGS_H
#define UI_SETTINGS_H
-#include <QtCore/QVariant>
-#include <QtGui/QAction>
-#include <QtGui/QApplication>
-#include <QtGui/QButtonGroup>
-#include <QtGui/QComboBox>
-#include <QtGui/QDialog>
-#include <QtGui/QFrame>
-#include <QtGui/QHBoxLayout>
-#include <QtGui/QHeaderView>
-#include <QtGui/QLabel>
-#include <QtGui/QLineEdit>
-#include <QtGui/QPushButton>
-#include <QtGui/QSpacerItem>
-#include <QtGui/QTextEdit>
-#include <QtGui/QVBoxLayout>
-#include <QtGui/QWidget>
+#include <QVariant>
+#include <QAction>
+#include <QApplication>
+#include <QButtonGroup>
+#include <QComboBox>
+#include <QDialog>
+#include <QFrame>
+#include <QHBoxLayout>
+#include <QHeaderView>
+#include <QLabel>
+#include <QLineEdit>
+#include <QPushButton>
+#include <QSpacerItem>
+#include <QTextEdit>
+#include <QVBoxLayout>
+#include <QWidget>
QT_BEGIN_NAMESPACE
Index: graphviz-2.40.1/configure.ac
===================================================================
--- graphviz-2.40.1.orig/configure.ac
+++ graphviz-2.40.1/configure.ac
@@ -2561,10 +2561,10 @@ if test "x$with_qt" != "xyes"; then
use_qt="No (disabled)"
else
- AC_CHECK_PROGS(QMAKE,qmake-qt4 qmake-qt3 qmake,false)
+ AC_CHECK_PROGS(QMAKE,qmake-qt5 qmake,false)
if test "$QMAKE" != "false"; then
- PKG_CHECK_MODULES(QTCORE, [QtCore],[
- PKG_CHECK_MODULES(QTGUI, [QtGui],[
+ PKG_CHECK_MODULES(QTCORE, [Qt5Core],[
+ PKG_CHECK_MODULES(QTGUI, [Qt5Widgets Qt5PrintSupport],[
use_qt="Yes"
],[
use_qt="No (QtGui not available)"

View File

@ -1,59 +0,0 @@
-------------------------------------------------------------------
Fri Jun 19 14:04:21 UTC 2015 - schwab@suse.de
- Fix build on aarch64
-------------------------------------------------------------------
Thu Jul 17 23:14:32 CEST 2014 - pth@suse.de
- Change License to EPL-1.0.
-------------------------------------------------------------------
Fri May 23 16:46:05 CEST 2014 - pth@suse.de
- Fix URL to point to the new location of the sources.
-------------------------------------------------------------------
Fri May 23 14:23:57 CEST 2014 - pth@suse.de
- Update to 2.38.0. Changes since 1.35.0:
- Resolve bugs: 2409, 2413, 2417, 2420, 2422, 2423, 2425
- Enable packing for dot
- Allow scaling to work for all non-dot layouts
- Add overline text characteristic.
- Fix bugs in gvpr and gv.cpp so edges can be created in subgraphs.
- Add edgepaint program for coloring edges to make them easier to
tell apart.
- Modify neato to avoid unnecessary translations of output. This
allows positions given on input to remain the same on output.
- Fix swig java package to work and support gv.renderresult.
- Fix test for the absence of layout (old test relied on statically
allocated Agraphinfo_t).
- HTML-like tables and cells can now specify which borders should be drawn.
- The fixedsize attribute now takes the value "shape" which allows
labels much larger than the node shape.
- Remove graphviz-fix-includes.patch as the fix has been done
upstream.
- Add graphviz-array_overflow.patch to fix an off-by-one error.
-------------------------------------------------------------------
Tue Feb 4 13:20:33 CET 2014 - pth@suse.de
- Update to 2.36,0.
- Change license to EPL-1.0. Remove contrib/gprof2dot.awk as it
contains a non-working uri.
-------------------------------------------------------------------
Thu Jan 2 02:21:22 UTC 2014 - mrdocs@opensuse.org
- drop BuildRequires:gtkglarea2-devel its not in Factory
-------------------------------------------------------------------
Thu Oct 24 11:16:01 CEST 2013 - pth@suse.de
- Split off smyrna into its own package and spec file to eliminate
the dependency cycle for the graphviz package.
- Add libGLU and libGL as libraries to link to which was missing.

View File

@ -1,152 +0,0 @@
#
# spec file for package graphviz-smyrna
#
# Copyright (c) 2016 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
# 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 http://bugs.opensuse.org/
#
%define mname graphviz
Name: graphviz-smyrna
Version: 2.38.0
Release: 0
Summary: Glut based graph viewer
License: EPL-1.0
Group: Productivity/Graphics/Visualization/Graph
Url: http://www.graphviz.org/
Source: http://graphviz.org/pub/graphviz/stable/SOURCES/graphviz-%{version}.tar.gz
Source2: graphviz-rpmlintrc
Patch2: graphviz-fix-pkgIndex.patch
#PATCH-FIX-UPSTREAM There are too many type-punnings in the vmalloc sources
Patch3: graphviz-no_strict_aliasing.patch
Patch4: graphviz-array_overflow.patch
#PATCH-FIX-UPSTREAM add flags to also link against libGLU and libGL
Patch10: graphviz-smyrna-link_against_glu.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: bison
BuildRequires: fdupes
BuildRequires: flex
BuildRequires: freeglut-devel
BuildRequires: freetype2-devel >= 2
BuildRequires: gcc-c++
BuildRequires: libXaw-devel
BuildRequires: libexpat-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libqt4-devel
BuildRequires: libstdc++-devel
BuildRequires: libtool
BuildRequires: zlib-devel
%if 0%suse_version > 1220
BuildRequires: freeglut-devel
BuildRequires: glu-devel
BuildRequires: gtkglext-devel
BuildRequires: gts-devel
BuildRequires: libglade2-devel
%endif
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(ice)
BuildRequires: pkgconfig(sm)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xext)
Requires(pre): /bin/cat
Requires(pre): /bin/rm
Recommends: graphviz = %{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
This is the graph editor included with graphviz, packaged
separately to avoid cycles in the build of the graphviz
package.
%prep
%setup -q -n %{mname}-%{version}
%patch2
%patch3
%patch10
%patch4
rm -f contrib/gprof2dot.awk
# Fix path in generated man pages
sed -e 's$@LIB_DIR@$%{_libdir}$g' tclpkg/gv/gv_doc_langs.tcl >tclpkg/gv/gv_doc_langs.tcl.new && mv tclpkg/gv/gv_doc_langs.tcl.new tclpkg/gv/gv_doc_langs.tcl
%build
autoreconf -fi
WARN_FLAGS="-W -Wall -Wno-unused-parameter -Wno-unknown-pragmas -Wstrict-prototypes -Wpointer-arith"
CFLAGS="%{optflags} $WARN_FLAGS"
%ifarch %ix86 x86_64
CFLAGS="$CFLAGS -ffast-math"
%endif
export CFLAGS="$CFLAGS"
export CPPFLAGS="%{optflags}"
%configure \
--with-x \
--with-mylibgd \
--disable-static \
--enable-ltdl-install=no \
--with-ipsepcola \
--without-ming \
--disable-io \
--disable-silent-rules \
--with-mylibgd=no \
--with-libgd=no \
--with-smyrna=yes
make %{?_smp_mflags} DESTDIR=%{buildroot}
%install
make install \
DESTDIR=%{buildroot} \
docdir=%{buildroot}%{_docdir}/%{mname} \
pkgconfigdir=%{_libdir}/pkgconfig
find %{buildroot} -type f -name "*.la" -print0 | xargs -0 rm -f
mkdir -p %{buildroot}/%{_docdir}
mkdir -p %{buildroot}%{_datadir}/%{mname}
rm -f %{buildroot}/%{_libdir}/%{mname}/pkgIndex.tcl
cp -a %{buildroot}%{_datadir}/%{mname}/doc __doc
rm -rf %{buildroot}%{_datadir}/%{mname}/doc
rm -rf %{buildroot}%{_libdir}
mv %{buildroot}/%{_mandir}/man1/smyrna.1 /tmp/smyrna.1
rm -f %{buildroot}/%{_mandir}/man1/*
rm -rf %{buildroot}/%{_mandir}/man[37]
mv /tmp/smyrna.1 %{buildroot}/%{_mandir}/man1/smyrna.1
mv %{buildroot}/%{_bindir}/smyrna /tmp/smyrna
rm -f %{buildroot}/%{_bindir}/*
mv /tmp/smyrna %{buildroot}/%{_bindir}/smyrna
rm -rf %{buildroot}%{_datadir}/%{mname}/graphs
rm -rf %{buildroot}%{_datadir}/%{mname}/examples
rm -rf %{buildroot}%{_datadir}/%{mname}/gvedit
rm -rf %{buildroot}%{_datadir}/%{mname}/gvpr
rm -rf %{buildroot}%{_datadir}/%{mname}/lefty
rm -rf %{buildroot}%{_includedir}/%{mname}
%files
%defattr(-,root,root)
%doc COPYING
%attr(755,root,root) %{_bindir}/smyrna
%dir %{_datadir}/%{mname}
%{_datadir}/%{mname}/smyrna
%doc %{_mandir}/man1/*.1*
%changelog

View File

@ -1,3 +1,61 @@
-------------------------------------------------------------------
Thu Aug 3 12:56:24 UTC 2017 - tchvatal@suse.com
- Drop smyrna and gvedit separate spec, now handled by
graphviz-addons
* Switch graphviz-gvedit to Qt5:
+ graphviz-qt5.patch
- Drop graphviz-plugin subkpg in favor of graphviz-addons.spec
that is generated from graphviz directly
- Make sure all patches are applied also in main package so none
get lost by accident
- Refresh patch graphviz-plugins-fix_install_dirs.patch
- Make sure graphviz php plugins are generated using php7
* set the php7 path in graphviz-plugins-fix_install_dirs.patch
- Remove tkspline from tcl package as it is no longer shipped
- Make sure the pic/pie is enforced on all the libs/bins
-------------------------------------------------------------------
Wed Aug 2 12:46:02 UTC 2017 - tchvatal@suse.com
- Update to 2.40.1 release:
* Remove usage of ast_common.h
* network-simplex fixes and optimization (Stephen North)
* built-in tred tool now available in the various swig generated
language bindings (John Ellson)
* number rounding added to SVG renderer (same as PS and TK rounding)
to aid regression testing. (John Ellson)
* additional regressson test framework, used in Travis CI builds. (Erwin Janssen)
* PHP7 support (requires swig-3.0.11 or later). (John Ellson)
* Allow user to specify clustering algorithm in gvmap. (Emden Gansner)
* Add Sierpinski graph generator to gvgen. (Emden Gansner)
* Extensive code cleanup (Erwin Janssen)
* Removal of libgd source - use vanilla libgd from separate install
* Windows builds (Erwin Janssen)
* Appveyor CI for automated Windows build testing (Erwin Janssen)
* Travis CI for Fedora/Centos builds (Erwin Janssen)
* Added JSON output format, -Tjson (Emden Gansner)
* New curved arrowhead, cylinder node shape.
* Resolves bugs: 2599, 1172
* Add cylinder shape for databases.
* Free installed plugins
* Update makefile for dot so that the using libpanco_C in the static build include PANGOFT2
as well as PANGOCAIRO_LIBS (needed for some versions of Ubuntu)
* Add json output format
* output class value in svg files
* Add plain shape for use with HTML-like labels.
* Add icurve arrowhead.
* Revert to old, translate to origin semantics in neato, etc. Add flag notranslate if that is
what the user desires.
- Run over with spec-cleaner and convert deps to pkgconfig
- Fix Group
- Remove unused pre requirements as there is no pre phase
- Inline sed changes and do not rely on pipes
- Do not add needless requires to devel pkg, there are no such stated
dependencies in any of the .pc files provided
- Add pre_checkin.sh scriptlet to allow generating of the extras subpkg
instead of having independent spec files
-------------------------------------------------------------------
Sun May 28 11:46:05 UTC 2017 - bwiedemann@suse.com

View File

@ -1,7 +1,7 @@
#
# spec file for package graphviz
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2017 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
@ -16,182 +16,517 @@
#
#name of the plugin config file that dot creates
%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
Name: graphviz
Version: 2.38.0
Version: 2.40.1
Release: 0
Summary: Graph Visualization Tools
License: EPL-1.0
Group: Applications/Productivity
Group: Productivity/Graphics/Visualization/Graph
Url: http://www.graphviz.org/
Source: http://graphviz.org/pub/graphviz/stable/SOURCES/graphviz-%{version}.tar.gz
Source2: graphviz-rpmlintrc
Patch1: graphviz-2.38.0-fix-gvmap.patch
#PATCH-FIX-UPSTREAM Build qith Qt5 rather than with qt4
Patch0: graphviz-qt5.patch
#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 There are too many type-punnings in the vmalloc sources
Patch3: graphviz-no_strict_aliasing.patch
#PATCH-FIX-UPSTREAM Off-by-one bug
Patch4: graphviz-array_overflow.patch
#PATCH-FIX-OPENSUSE Make build reproducible
Patch5: reproducible.patch
Patch3: graphviz-array_overflow.patch
#PATCH-FIX-UPSTREAM Make build reproducible - merged in next release
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
Patch8: graphviz-no_strict_aliasing.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: bison
BuildRequires: fdupes
BuildRequires: flex
BuildRequires: freetype2-devel >= 2
BuildRequires: gcc-c++
BuildRequires: libXaw-devel
BuildRequires: libexpat-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libstdc++-devel
BuildRequires: libtool
BuildRequires: zlib-devel
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)
Requires(pre): /bin/cat
Requires(pre): /bin/rm
BuildRequires: pkgconfig(zlib)
Requires: graphviz-plugins-core = %{version}
Recommends: graphviz-gd = %{version}
Recommends: graphviz-gnome = %{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %{with extras}
BuildRequires: freeglut-devel
BuildRequires: java-devel >= 1.6.0
BuildRequires: ocaml
BuildRequires: perl
BuildRequires: php7-devel
BuildRequires: ruby-devel
BuildRequires: swig
BuildRequires: pkgconfig(Qt5Core)
BuildRequires: pkgconfig(Qt5PrintSupport)
BuildRequires: pkgconfig(Qt5Widgets)
BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(gdlib)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(gtkglext-1.0)
BuildRequires: pkgconfig(gts)
BuildRequires: pkgconfig(guile-2.0)
BuildRequires: pkgconfig(ijs)
BuildRequires: pkgconfig(libglade-2.0)
BuildRequires: pkgconfig(librsvg-2.0)
BuildRequires: pkgconfig(lua)
BuildRequires: pkgconfig(pango)
BuildRequires: pkgconfig(python)
BuildRequires: pkgconfig(tcl)
%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
Requires(post): graphviz = %{version}
Recommends: xorg-x11-fonts
Supplements: graphviz-plugins-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-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: php7
%description -n graphviz-php
The graphviz-php package contains the PHP extension for the graphviz
tools.
%package -n graphviz-python
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
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: Graphiviz development package
Summary: Graphviz development package
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
Requires: cairo-devel
Requires: expat
Requires: fontconfig-devel
Requires: freetype2-devel
Requires: glibc-devel
Requires: libjpeg-devel
# Skip SLE 12
%if ( 0%{?suse_version} == 1310 || 0%{?suse_version} >= 1320 )
Requires: libLASi-devel
%endif
Requires: libpng-devel
Requires: libstdc++-devel
Requires: libtool
Requires: pango-devel
Requires: perl
Requires: tcl-devel
Requires: tk-devel
Requires: zlib-devel
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.
Note: If you need output in png format you also need to install
graphviz-gnome.
%prep
%setup -q
%patch1 -p1
%setup -q -n %{mname}-%{version}
%patch0 -p1
%patch1
%patch2
%patch3
%patch4
%patch5 -p1
%patch4 -p1
%patch5
%patch6
%patch7
%patch8
rm -f contrib/gprof2dot.awk
# Fix path in generated man pages
sed -e 's$@LIB_DIR@$%{_libdir}$g' tclpkg/gv/gv_doc_langs.tcl >tclpkg/gv/gv_doc_langs.tcl.new && mv tclpkg/gv/gv_doc_langs.tcl.new tclpkg/gv/gv_doc_langs.tcl
sed -i \
-e 's$@LIB_DIR@$%{_libdir}$g' \
tclpkg/gv/gv_doc_langs.tcl
# Fix path for lua install
sed -i \
-e 's@LUA_INSTALL_DIR="/usr.*@LUA_INSTALL_DIR=%{lua_archdir}@' \
configure.ac
%build
autoreconf -fi
WARN_FLAGS="-W -Wall -Wno-unused-parameter -Wno-unknown-pragmas -Wstrict-prototypes -Wpointer-arith"
CFLAGS="%{optflags} $WARN_FLAGS"
%ifarch %ix86 x86_64
CFLAGS="$CFLAGS -ffast-math"
autoreconf -fvi
CFLAGS="%{optflags} -ffast-math -fno-strict-aliasing -fno-strict-overflow -fPIC"
%if %{with extras}
CFLAGS="$CFLAGS $(pkg-config --cflags ruby-$(echo %{rb_ver} | sed 's|\.[^.]*$||'))"
%endif
export CFLAGS="$CFLAGS"
export CPPFLAGS="%{optflags}"
export CPPFLAGS="$CFLAGS"
export LDFLAGS="-pie"
%configure \
--with-x \
--with-mylibgd \
--disable-static \
--enable-ltdl-install=no \
--without-included-ltdl \
--disable-ltdl-install \
--with-ipsepcola \
--without-ming \
--disable-io \
--disable-silent-rules \
--with-mylibgd=no \
--with-libgd=no
make %{?_smp_mflags} DESTDIR=%{buildroot}
%if %{with extras}
--with-qt \
--with-smyrna \
%else
--without-mylibgd \
--without-libgd \
%endif
--disable-silent-rules
make %{?_smp_mflags}
%install
make install \
DESTDIR=%{buildroot} \
docdir=%{buildroot}%{_docdir}/%{name} \
docdir=%{buildroot}%{_docdir}/%{mname} \
pkgconfigdir=%{_libdir}/pkgconfig
find %{buildroot} -type f -name "*.la" -print0 | xargs -0 rm -f
find %{buildroot} -type f -name "*.la" -delete -print
mkdir -p %{buildroot}/%{_docdir}
mkdir -p %{buildroot}%{_datadir}/%{name}
mkdir -p %{buildroot}%{_datadir}/%{nmame}
rm -f %{buildroot}/%{_libdir}/%{name}/pkgIndex.tcl
chmod -x %{buildroot}%{_datadir}/%{name}/lefty/*
cp -a %{buildroot}%{_datadir}/%{name}/doc __doc
rm -rf %{buildroot}%{_datadir}/%{name}/doc
rm -f %{buildroot}/%{_libdir}/%{mname}/pkgIndex.tcl
chmod -x %{buildroot}%{_datadir}/%{mname}/lefty/*
mkdir -p %{buildroot}%{_libdir}/graphviz
touch %{buildroot}%{_libdir}/graphviz/config
touch %{buildroot}%{_libdir}/graphviz/%{config_file}
mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d/
cat <<EOF >%{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}.conf
%{_libdir}/%{name}
%{_libdir}/%{name}/sharp
%{_libdir}/%{name}/java
%{_libdir}/%{name}/perl
%{_libdir}/%{name}/php
%{_libdir}/%{name}/ocaml
%{_libdir}/%{name}/python
%{_libdir}/%{name}/lua
%{_libdir}/%{name}/tcl
%{_libdir}/%{name}/guile
%{_libdir}/%{name}/ruby
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 -e 's$/usr/lib/graphviz$%{_libdir}/%{name}$g' $manfile > ${manfile}.new && mv ${manfile}.new ${manfile}
sed -i \
-e 's$%{_prefix}/lib/graphviz$%{_libdir}/%{mname}$g' \
$manfile
done
# these are in GNOME plugins package
# 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/lefty
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 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
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
%endif
# Remove wrongly located docs
rm -rf %{buildroot}%{_datadir}/%{mname}/doc
%post
/sbin/ldconfig
%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
/sbin/ldconfig
if ! test -x $RPM_INSTALL_PREFIX0/bin/dot; then rm -f $RPM_INSTALL_PREFIX0/%{_lib}/graphviz/%{config_file}; fi
%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
%doc COPYING
%{_bindir}/gvedit
%dir %{_datadir}/%{mname}/gvedit
%{_datadir}/%{mname}/gvedit/attrs.txt
%{_mandir}/man1/gvedit.1%{ext_man}
%files -n graphviz-smyrna
%doc 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}
%files -n graphviz-java
%{_libdir}/graphviz/java
%{_mandir}/man3/gv.3java%{ext_man}
%files -n graphviz-lua
%{lua_archdir}/gv.so
%{_mandir}/man3/gv.3lua%{ext_man}
%files -n graphviz-ocaml
%{_libdir}/graphviz/ocaml
%{_mandir}/man3/gv.3ocaml%{ext_man}
%files -n graphviz-perl
%{perl_vendorarch}/gv.pm
%{perl_vendorarch}/gv.so
%{_mandir}/man3/gv.3perl%{ext_man}
%files -n graphviz-php
%{_libdir}/php7/extensions/gv.so
%{_datadir}/php7/gv.php
%{_mandir}/man3/gv.3php%{ext_man}
%files -n graphviz-python
%{python_sitearch}/_gv.so
%{python_sitearch}/gv.py
%{_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
%defattr(-,root,root)
%doc doc/FAQ.html AUTHORS COPYING README NEWS ChangeLog
%{_bindir}/acyclic
%{_bindir}/bcomps
%{_bindir}/ccomps
%{_bindir}/circo
%{_bindir}/circo
%{_bindir}/cluster
%{_bindir}/dijkstra
%{_bindir}/dot
@ -199,11 +534,11 @@ if ! test -x $RPM_INSTALL_PREFIX0/bin/dot; then rm -f $RPM_INSTALL_PREFIX0/%{_li
%{_bindir}/dot_builtins
%{_bindir}/dotty
%{_bindir}/edgepaint
%{_bindir}/fdp
%{_bindir}/gc
%{_bindir}/fdp
%{_bindir}/gc
%{_bindir}/gml2gv
%{_bindir}/graphml2gv
%{_bindir}/gv2gml
%{_bindir}/gv2gml
%{_bindir}/gv2gxl
%{_bindir}/gvcolor
%{_bindir}/gvgen
@ -226,56 +561,64 @@ if ! test -x $RPM_INSTALL_PREFIX0/bin/dot; then rm -f $RPM_INSTALL_PREFIX0/%{_li
%{_bindir}/tred
%{_bindir}/twopi
%{_bindir}/unflatten
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/lefty
%{_datadir}/%{name}/graphs
%dir %{_datadir}/%{name}/gvpr
%{_datadir}/%{name}/gvpr/addranks
%{_datadir}/%{name}/gvpr/addrings
%{_datadir}/%{name}/gvpr/anon
%{_datadir}/%{name}/gvpr/attr
%{_datadir}/%{name}/gvpr/bb
%{_datadir}/%{name}/gvpr/bbox
%{_datadir}/%{name}/gvpr/cliptree
%{_datadir}/%{name}/gvpr/col
%{_datadir}/%{name}/gvpr/collapse
%{_datadir}/%{name}/gvpr/color
%{_datadir}/%{name}/gvpr/dechain
%{_datadir}/%{name}/gvpr/deghist
%{_datadir}/%{name}/gvpr/deledges
%{_datadir}/%{name}/gvpr/delmulti
%{_datadir}/%{name}/gvpr/delnodes
%{_datadir}/%{name}/gvpr/depath
%{_datadir}/%{name}/gvpr/dijkstra
%{_datadir}/%{name}/gvpr/flatten
%{_datadir}/%{name}/gvpr/get-layers-list
%{_datadir}/%{name}/gvpr/group
%{_datadir}/%{name}/gvpr/indent
%{_datadir}/%{name}/gvpr/knbhd
%{_datadir}/%{name}/gvpr/maxdeg
%{_datadir}/%{name}/gvpr/path
%{_datadir}/%{name}/gvpr/rotate
%{_datadir}/%{name}/gvpr/scale
%{_datadir}/%{name}/gvpr/scalexy
%{_datadir}/%{name}/gvpr/span
%{_datadir}/%{name}/gvpr/topon
%{_datadir}/%{name}/gvpr/treetoclust
%{_datadir}/%{name}/gvpr/chkclusters
%{_datadir}/%{name}/gvpr/cycle
%dir %{_datadir}/%{mname}
%{_datadir}/%{mname}/lefty
%{_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}
%doc %{_mandir}/man1/*.1*
%doc %{_mandir}/man7/*.7*
%dir %{_libdir}/%{name}
%files -n %{libname}
%{_libdir}/*.so.*
%{_libdir}/graphviz/*.so*
%config %{_sysconfdir}/ld.so.conf.d/graphviz.conf
%ghost %{_libdir}/graphviz/config
%files plugins-core
%dir %{_libdir}/%{name}
%ghost %{_libdir}/%{name}/%{config_file}
%{_libdir}/%{name}/*.so*
%files devel
%defattr(-,root,root)
%{_includedir}/graphviz
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%{_mandir}/man3/*.3.gz
%{_mandir}/man3/*.3%{ext_man}
%endif
%changelog

6
pre_checkin.sh Normal file
View File

@ -0,0 +1,6 @@
#!/usr/bin/sh
cp graphviz.changes graphviz-addons.changes
sed \
-e 's:%bcond_with extras:%bcond_without extras:' \
-e 's#Name: graphviz#Name: graphviz-addons#' \
graphviz.spec > graphviz-addons.spec