# # spec file for package graphviz-plugins (Version 2.26.3) # # Copyright (c) 2010 SUSE LINUX Products 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-plugins BuildRequires: gd-devel libexpat-devel libjpeg-devel libpng-devel swig zlib-devel BuildRequires: freetype2-devel >= 2 gcc-c++ ksh libstdc++-devel BuildRequires: bison flex glib2-devel m4 perl python-devel tk-devel >= 8.3 xorg-x11-devel BuildRequires: php5-devel ruby-devel xorg-x11-libICE-devel xorg-x11-libSM-devel xorg-x11-libXpm-devel BuildRequires: xorg-x11-libX11-devel xorg-x11-libXext-devel xorg-x11-libXmu-devel xorg-x11-libXt-devel BuildRequires: cairo-devel gcc-java gmp-devel guile-devel libgcj-devel lua-devel mono-core ocaml pango-devel BuildRequires: ghostscript-mini graphviz gtkglext-devel libglade2-devel libgnomeui-devel %if 0%{?suse_version} > 1020 BuildRequires: fdupes %endif Version: 2.26.3 Release: 6 AutoReqProv: on Summary: Graph Visualization Tools Group: Productivity/Graphics/Visualization/Graph Source: http://www.graphviz.org/pub/graphviz/ARCHIVE/%{mname}-%{version}.tar.bz2 #Source1: %{name}-rpmlintrc Patch0: graphviz-fix-pkgIndex.patch Patch3: graphviz-neato_splines.patch Patch11: graphviz-2.20.2-interpreter_names.patch Patch13: graphviz-stddefs.patch Patch14: graphviz-gd_png_check_sig.patch Patch15: graphviz-wrong_index.patch Patch16: graphviz-sequence_point.patch # PATCH-UPSTREAM see http://bugs.gentoo.org/339298 Patch17: graphviz-2.26.3-libtool24.patch #Patches above 100 are graphviz-plugins specific. Patch100: graphviz-plugins-fix_install_dirs.patch Patch101: graphviz-plugins-tcl_install_dir.patch Patch103: graphviz-2.18-do_not_use_ocamlopt.patch Patch104: python-version.diff Patch105: graphviz-ruby-ppc.patch Patch106: graphviz-perl-set_rpath.patch Url: http://www.graphviz.org/ License: IBM Public License .. Prefix: /usr BuildRoot: %{_tmppath}/%{name}-%{version}-build PreReq: coreutils %define rb_libdir %{_libdir}/ruby %define rb_sitedir %{rb_libdir}/site_ruby/%{rb_ver} %define rb_vendordir %{rb_libdir}/vendor_ruby/%{rb_ver} %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 License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: Graphviz plugins that use gtk/GNOME PreReq: graphviz = %{version} PreReq: coreutils Provides: graphviz_plugin = %{version}-%{release} Requires: xorg-x11-fonts %description -n graphviz-gnome Graphviz plugins that use gtk/GNOME. %package -n graphviz-gd License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: Graphviz plugin for renderers based on gd PreReq: graphviz = %{version} gd PreReq: coreutils Provides: graphviz_plugin = %{version}-%{release} %description -n graphviz-gd The graphviz-gd package contains the gd extensions for the graphviz tools. %package -n graphviz-guile License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: Graph Visualization Tools Requires: graphviz = %{version} guile Provides: graphviz_plugin = %{version}-%{release} %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 License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: Graph Visualization Tools Requires: graphviz = %{version} java Provides: graphviz_plugin = %{version}-%{release} %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 License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: Lua extension for graphviz Requires: graphviz = %{version} lua Provides: graphviz_plugin = %{version}-%{release} %description -n graphviz-lua The graphviz-lua package contains the lua extension for the graphviz tools. %package -n graphviz-ocaml License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: OCAML extension for graphviz Requires: graphviz = %{version} ocaml Provides: graphviz_plugin = %{version}-%{release} %description -n graphviz-ocaml The graphviz-ocaml package contains the Objective Caml extension for the graphviz tools. %package -n graphviz-perl License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: Perl extension for Graphviz Requires: graphviz = %{version} Requires: perl = %{perl_version} Provides: graphviz_plugin = %{version}-%{release} %description -n graphviz-perl The graphviz-perl package contains the Perl extension for the graphviz tools. %package -n graphviz-php License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: PHP Extension for Graphviz Requires: graphviz = %{version} php5 Provides: graphviz_plugin = %{version}-%{release} %description -n graphviz-php The graphviz-php package contains the PHP extension for the graphviz tools. %package -n graphviz-python License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: Python Extension for Graphviz Requires: graphviz = %{version} python Provides: graphviz_plugin = %{version}-%{release} %description -n graphviz-python The graphviz-python package contains the Python extension for the graphviz tools. %package -n graphviz-ruby License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: Ruby Extension for Graphviz Requires: graphviz = %{version} ruby Provides: graphviz_plugin = %{version}-%{release} %description -n graphviz-ruby The graphviz-ruby package contains the ruby extension for the graphviz tools. %package -n graphviz-sharp License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: C# Extension for Graphviz Requires: graphviz = %{version} mono-core Provides: graphviz_plugin = %{version}-%{release} %description -n graphviz-sharp The graphviz-sharp package contains the C# extension for the graphviz tools. %package -n graphviz-tcl License: IBM Public License .. Group: Development/Libraries/Tcl Summary: Tcl extension tools for graphviz Requires: graphviz = %{version} tcl >= 8.3 tk Provides: graphviz_plugin = %{version}-%{release} %description -n graphviz-tcl The graphviz-tcl package contains the various tcl packages (extensions) for the graphviz tools. %package -n graphviz-doc License: IBM Public License .. Group: Productivity/Graphics/Visualization/Graph Summary: Documentation for graphviz %description -n graphviz-doc Provides some additional PDF and HTML documentation for graphviz. %prep %setup -q -n %{mname}-%{version} %patch0 %patch3 %patch11 %patch13 %patch14 %patch15 %patch16 %patch17 -p1 %patch100 %patch101 %patch103 %patch104 %patch105 -p1 %patch106 # 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 # remove broken macros rm m4/iconv.m4 m4/lib-*.m4 cp /usr/share/gettext/config.rpath config %build ./autogen.sh touch tclpkg/gv/gv.i WARN_FLAGS="-W -Wall -Wno-unused-parameter -Wno-unknown-pragmas -Wstrict-prototypes -Wpointer-arith" CFLAGS="$RPM_OPT_FLAGS $WARN_FLAGS" %ifarch %ix86 x86_64 CFLAGS="$CFLAGS -ffast-math" %endif CC=gcc RANLIB=: export CC RANLIB export CFLAGS="$CFLAGS" export CPPFLAGS="%optflags" %configure \ --with-x \ --disable-static \ --disable-dependency-tracking \ --with-ipsepcola \ --without-ming \ --enable-ltdl-install=no \ --disable-io %{__make} DESTDIR=%buildroot %{?jobs:-j%jobs} %install %makeinstall \ docdir=%{buildroot}%{_docdir}/%{mname} \ pkgconfigdir=%{_libdir}/pkgconfig find ${RPM_BUILD_ROOT} -type f -name "*.la" -exec rm -f {} ';' mkdir -p %{buildroot}/%{_docdir} mkdir -p %{buildroot}%{_datadir}/%{mname} mkdir -p %{buildroot}%{_datadir}/tcl/%{mname} chmod -x %{buildroot}%{_datadir}/%{mname}/lefty/* cp -a %{buildroot}%{_datadir}/%{mname}/doc __doc rm -rf %{buildroot}%{_datadir}/%{mname}/doc mkdir -p %{buildroot}%{_libdir}/graphviz touch %{buildroot}%{_libdir}/graphviz/config #Correct the path to the shared library for manfile in $(find %{buildroot} -name \*.man); do sed -e 's$/usr/lib/graphviz$%{_libdir}/%{mname}$g' $manfile > ${manfile}.new && mv ${manfile}.new ${manfile} done rm -f %{buildroot}/usr/bin/* rm -rf %{buildroot}/usr/include/graphviz rm -f %{buildroot}%{_libdir}/graphviz/config 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.gz rm -f %{buildroot}%{_mandir}/man3/*.3 rm -f %{buildroot}%{_mandir}/man7/*.7 rm -f %{buildroot}%{_mandir}/man7/*.7.gz for lib in libgdtclft* libgv_tcl.so libtcldot* libtclplan* libtkspline*; do mv %{buildroot}%{_libdir}/%{mname}/tcl/${lib} %{buildroot}%{_libdir} done %if 0%{?suse_version} > 1020 %fdupes -s %{buildroot}%{_defaultdocdir}/%{mname} %endif #%clean #rm -rf %{buildroot} %{__rm} -rf %{buildroot}/%{_libdir}/%{mname}/%{_lib} %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 %post -n graphviz-gnome %{_bindir}/dot -c %postun -n graphviz-gnome %{_bindir}/dot -c %files -n graphviz-gnome %defattr(-,root,root,-) %{_libdir}/graphviz/libgvplugin_pango* %{_libdir}/graphviz/libgvplugin_gdk_pixbuf* %{_libdir}/graphviz/libgvplugin_gtk* %{_libdir}/graphviz/libgvplugin_xlib* %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 %files -n graphviz-java %defattr(-,root,root,-) %{_libdir}/graphviz/java %files -n graphviz-sharp %defattr(-,root,root) %{_libdir}/graphviz/sharp %doc %{_mandir}/man3/gv.3sharp.gz %files -n graphviz-lua %defattr(-,root,root,-) %{_datadir}/%{mname}/demo/modgraph.lua %dir %{_libdir}/lua %dir %lua_libdir %{_libdir}/graphviz/lua %{lua_libdir}/gv.so %doc %{_mandir}/man3/gv.3lua.gz %files -n graphviz-ocaml %defattr(-,root,root,-) %{_libdir}/graphviz/ocaml %doc %{_mandir}/man3/gv.3ocaml.gz %files -n graphviz-perl %defattr(-,root,root,-) %{_libdir}/graphviz/perl %{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 %dir %{_libdir}/%{mname}/php %{_libdir}/%{mname}/php/gv.php %{_libdir}/%{mname}/php/gv.so %{_libdir}/%{mname}/php/libgv_php.so %{_datadir}/%{mname}/demo/modgraph.php %files -n graphviz-python %defattr(-,root,root,-) %{_libdir}/graphviz/python %{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,-) %{_libdir}/graphviz/ruby %{rb_sitedir}/*-%{_os}/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}/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 __doc/* %changelog