summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Hill <dirtyepic@gentoo.org>2007-12-16 22:30:20 +0000
committerRyan Hill <dirtyepic@gentoo.org>2007-12-16 22:30:20 +0000
commite1718c5dc06b4183e5eb4cd3b9eb210c8f6e792a (patch)
tree3a3d7a11a4d4b907cddc7ea31df7ebaf046f79cc
parentVersion bump; bug #193227. Quotes. (diff)
downloadgentoo-2-e1718c5dc06b4183e5eb4cd3b9eb210c8f6e792a.tar.gz
gentoo-2-e1718c5dc06b4183e5eb4cd3b9eb210c8f6e792a.tar.bz2
gentoo-2-e1718c5dc06b4183e5eb4cd3b9eb210c8f6e792a.zip
Version bump. Fixes:
167896 - media-gfx/graphviz-2.12 error -- fontconfig: Didn't find expected font family 181147 - media-gfx/graphviz missing PNG/JPEG support unless media-libs/gd was built w/ USE="png jpeg" 189597 - media-gfx/graphviz rename USE-flag pango to cairo 195983 - media-gfx/graphviz : Compilation error - gv_python.cpp 202446 - media-gfx/graphviz build error with GCC 4.3 Dropped m68k and ppc-macos keywords due to missing dependencies. (202529) (Portage version: 2.1.4_rc10)
-rw-r--r--media-gfx/graphviz/ChangeLog27
-rw-r--r--media-gfx/graphviz/files/digest-graphviz-2.16.13
-rw-r--r--media-gfx/graphviz/files/graphviz-2.16.1-bindings.patch107
-rw-r--r--media-gfx/graphviz/files/graphviz-2.16.1-gcc43-missing-includes.patch20
-rw-r--r--media-gfx/graphviz/graphviz-2.16.1.ebuild197
5 files changed, 353 insertions, 1 deletions
diff --git a/media-gfx/graphviz/ChangeLog b/media-gfx/graphviz/ChangeLog
index a91eaeb26e4d..3e1eab11c29c 100644
--- a/media-gfx/graphviz/ChangeLog
+++ b/media-gfx/graphviz/ChangeLog
@@ -1,6 +1,31 @@
# ChangeLog for media-gfx/graphviz
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/graphviz/ChangeLog,v 1.125 2007/11/14 23:02:08 betelgeuse Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/graphviz/ChangeLog,v 1.126 2007/12/16 22:30:19 dirtyepic Exp $
+
+*graphviz-2.16.1 (16 Dec 2007)
+
+ 16 Dec 2007; Ryan Hill <dirtyepic@gentoo.org>
+ +files/graphviz-2.16.1-bindings.patch,
+ +files/graphviz-2.16.1-gcc43-missing-includes.patch,
+ +graphviz-2.16.1.ebuild:
+ Version bump. Fixes:
+
+ 167896 - media-gfx/graphviz-2.12 error -- fontconfig: Didn't find expected
+
+ font family
+
+ 181147 - media-gfx/graphviz missing PNG/JPEG support unless media-libs/gd
+ was built
+
+ w/ USE="png jpeg"
+
+ 189597 - media-gfx/graphviz rename USE-flag pango to cairo
+
+ 195983 - media-gfx/graphviz : Compilation error - gv_python.cpp
+
+ 202446 - media-gfx/graphviz build error with GCC 4.3
+
+ Dropped m68k and ppc-macos keywords due to missing dependencies. (202529)
14 Nov 2007; Petteri Räty <betelgeuse@gentoo.org>
-files/graphviz-1.16-build.patch, -files/graphviz-1.16-common_h.patch,
diff --git a/media-gfx/graphviz/files/digest-graphviz-2.16.1 b/media-gfx/graphviz/files/digest-graphviz-2.16.1
new file mode 100644
index 000000000000..5439614ce5d3
--- /dev/null
+++ b/media-gfx/graphviz/files/digest-graphviz-2.16.1
@@ -0,0 +1,3 @@
+MD5 8952fb2a627b38e38ed429a3a9d5cc5c graphviz-2.16.1.tar.gz 8076271
+RMD160 6d0f23fa176a1bef7ee0ca48cf1b700fe6cbfb42 graphviz-2.16.1.tar.gz 8076271
+SHA256 32c1a185ba39961935f104cc47d2bceea327c0de8c5636edc6ab83ac3c0c56d1 graphviz-2.16.1.tar.gz 8076271
diff --git a/media-gfx/graphviz/files/graphviz-2.16.1-bindings.patch b/media-gfx/graphviz/files/graphviz-2.16.1-bindings.patch
new file mode 100644
index 000000000000..cbd81dc1d301
--- /dev/null
+++ b/media-gfx/graphviz/files/graphviz-2.16.1-bindings.patch
@@ -0,0 +1,107 @@
+diff -Naur graphviz-2.16.1.orig/configure.ac graphviz-2.16.1/configure.ac
+--- graphviz-2.16.1.orig/configure.ac 2007-12-16 21:05:21.000000000 +0100
++++ graphviz-2.16.1/configure.ac 2007-12-16 21:08:59.000000000 +0100
+@@ -760,6 +760,7 @@
+ PERL_ARCHLIB=`$PERL -e 'use Config; print $Config{archlib};'`
+ PERL_INCLUDES=-I$PERL_ARCHLIB/CORE
+ PERL_LIBS="-L$PERL_ARCHLIB/CORE -lperl"
++ PERL_INSTALL_DIR="`$PERL -e 'use Config; print $Config{vendorarch};'`"
+ save_CPPFLAGS=$CPPFLAGS
+ CPPFLAGS="$CPPFLAGS $PERL_INCLUDES"
+ AC_CHECK_HEADER(EXTERN.h,,[
+@@ -770,6 +771,7 @@
+ fi
+ AC_SUBST(PERL_INCLUDES)
+ AC_SUBST(PERL_LIBS)
++AC_SUBST(PERL_INSTALL_DIR)
+ fi
+ fi
+ AM_CONDITIONAL(WITH_PERL, [test "x$PERL" != "x"])
+@@ -844,6 +846,7 @@
+ PYTHON_PREFIX=`$PYTHON -c "import sys; print sys.prefix"`
+ PYTHON_INCLUDES=-I$PYTHON_PREFIX/include/python$PYTHON_VERSION_SHORT
+ PYTHON_LIBS="-L$PYTHON_PREFIX/lib$LIBPOSTFIX/python$PYTHON_VERSION_SHORT/config"
++ PYTHON_INSTALL_DIR="`$PYTHON $srcdir/config/config_python.py archsitelib`"
+ save_CPPFLAGS=$CPPFLAGS
+ CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES"
+ AC_CHECK_HEADER(Python.h,,[
+@@ -855,6 +858,7 @@
+ fi
+ AC_SUBST(PYTHON_INCLUDES)
+ AC_SUBST(PYTHON_LIBS)
++AC_SUBST(PYTHON_INSTALL_DIR)
+ fi
+ fi
+ fi
+@@ -1059,6 +1063,7 @@
+ if test "x$RUBY" != "x"; then
+ RUBY_INCLUDES="-I`$RUBY $srcdir/config/config_ruby.rb INCLUDES`"
+ RUBY_LIBS="-L`$RUBY $srcdir/config/config_ruby.rb lib` `$RUBY -rrbconfig -e \"puts Config::CONFIG[['LIBRUBYARG_SHARED']]\"`"
++ RUBY_INSTALL_DIR="`$RUBY $srcdir/config/config_ruby.rb archsitelib`"
+ save_CPPFLAGS=$CPPFLAGS
+ CPPFLAGS="$CPPFLAGS $RUBY_INCLUDES"
+ AC_CHECK_HEADER(ruby.h,,[
+@@ -1069,6 +1074,7 @@
+ fi
+ AC_SUBST(RUBY_INCLUDES)
+ AC_SUBST(RUBY_LIBS)
++AC_SUBST(RUBY_INSTALL_DIR)
+ fi
+ fi
+ fi
+diff -Naur graphviz-2.16.1.orig/tclpkg/gv/Makefile.am graphviz-2.16.1/tclpkg/gv/Makefile.am
+--- graphviz-2.16.1.orig/tclpkg/gv/Makefile.am 2007-12-16 21:05:21.000000000 +0100
++++ graphviz-2.16.1/tclpkg/gv/Makefile.am 2007-12-16 21:08:13.000000000 +0100
+@@ -98,7 +98,7 @@
+ gv.cmxa gv.a: gv.cma
+ ocamlopt -a -o gv.cmxa
+
+-pkgperldir = $(pkglibdir)/perl
++pkgperldir = @PERL_INSTALL_DIR@
+ PERL_data = gv.pm
+ nodist_libgv_perl_la_SOURCES = gv_perl.cpp $(PERL_data)
+ libgv_perl_la_SOURCES = $(BASESOURCES) gv_dummy_init.cpp
+@@ -118,7 +118,7 @@
+ gv_php.cpp: gv.i
+ $(SWIG) -c++ -php5 -o gv_php.cpp $(srcdir)/gv.i
+
+-pkgpythondir = $(pkglibdir)/python
++pkgpythondir = @PYTHON_INSTALL_DIR@
+ PYTHON_data = gv.py
+ nodist_libgv_python_la_SOURCES = gv_python.cpp $(PYTHON_data)
+ libgv_python_la_SOURCES = $(BASESOURCES) gv_dummy_init.cpp
+@@ -155,7 +155,7 @@
+ gv_r.cpp: gv.i
+ $(SWIG) -c++ -r -o gv_r.cpp $(srcdir)/gv.i
+
+-pkgrubydir = $(pkglibdir)/ruby
++pkgrubydir = @RUBY_INSTALL_DIR@
+ RUBY_data =
+ nodist_libgv_ruby_la_SOURCES = gv_ruby.cpp $(RUBY_data)
+ libgv_ruby_la_SOURCES = $(BASESOURCES) gv_dummy_init.cpp
+@@ -306,15 +306,24 @@
+ -groff -Tps -man $< | ps2pdf - - >$@
+
+ install-data-hook:
++if WITH_LUA
+ (cd $(DESTDIR)$(pkgluadir); rm -f gv.so; $(LN_S) libgv_lua.so gv.so;)
++endif
++if WITH_PERL
+ (cd $(DESTDIR)$(pkgperldir); rm -f gv.so; $(LN_S) libgv_perl.so gv.so;)
++endif
++if WITH_PYTHON
+ (cd $(DESTDIR)$(pkgpythondir); rm -f _gv.so; $(LN_S) libgv_python.so _gv.so;)
+ (cd $(DESTDIR)$(pkgpython23dir); rm -f _gv.so; $(LN_S) libgv_python23.so _gv.so;)
+ (cd $(DESTDIR)$(pkgpython24dir); rm -f _gv.so; $(LN_S) libgv_python24.so _gv.so;)
+ (cd $(DESTDIR)$(pkgpython25dir); rm -f _gv.so; $(LN_S) libgv_python25.so _gv.so;)
+- (cd $(DESTDIR)$(pkgrdir); rm -f gv.so; $(LN_S) libgv_r.so gv.so;)
++endif
++if WITH_RUBY
+ (cd $(DESTDIR)$(pkgrubydir); rm -f gv.so; $(LN_S) libgv_ruby.so gv.so;)
++endif
++if WITH_TCL
+ (cd $(DESTDIR)$(pkgtcldir); rm -f gv.so; $(LN_S) libgv_tcl.so gv.so;)
++endif
+
+ uninstall-hook:
+ (cd $(DESTDIR)$(pkgluadir); rm -f gv.so;)
diff --git a/media-gfx/graphviz/files/graphviz-2.16.1-gcc43-missing-includes.patch b/media-gfx/graphviz/files/graphviz-2.16.1-gcc43-missing-includes.patch
new file mode 100644
index 000000000000..fbaacd578ad0
--- /dev/null
+++ b/media-gfx/graphviz/files/graphviz-2.16.1-gcc43-missing-includes.patch
@@ -0,0 +1,20 @@
+--- graphviz-2.16.1-orig/lib/vpsc/csolve_VPSC.cpp 2007-08-14 16:25:04.000000000 -0600
++++ graphviz-2.16.1/lib/vpsc/csolve_VPSC.cpp 2007-12-15 19:56:29.000000000 -0600
+@@ -21,6 +21,7 @@
+ #include <constraint.h>
+ #include <generate-constraints.h>
+ #include <solve_VPSC.h>
++#include <cstdlib>
+ #include <cassert>
+ #include "csolve_VPSC.h"
+ extern "C" {
+--- graphviz-2.16.1-orig/lib/vpsc/generate-constraints.cpp 2006-04-28 13:03:46.000000000 -0600
++++ graphviz-2.16.1/lib/vpsc/generate-constraints.cpp 2007-12-15 19:56:11.000000000 -0600
+@@ -18,6 +18,7 @@
+
+ #include <set>
+ #include <cassert>
++#include <cstdlib>
+ #include "generate-constraints.h"
+ #include "constraint.h"
+
diff --git a/media-gfx/graphviz/graphviz-2.16.1.ebuild b/media-gfx/graphviz/graphviz-2.16.1.ebuild
new file mode 100644
index 000000000000..ad5dd2780c26
--- /dev/null
+++ b/media-gfx/graphviz/graphviz-2.16.1.ebuild
@@ -0,0 +1,197 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/graphviz/graphviz-2.16.1.ebuild,v 1.1 2007/12/16 22:30:19 dirtyepic Exp $
+
+WANT_AUTOCONF=latest
+WANT_AUTOMAKE=latest
+
+inherit eutils autotools multilib python
+
+DESCRIPTION="Open Source Graph Visualization Software"
+HOMEPAGE="http://www.graphviz.org/"
+SRC_URI="http://www.graphviz.org/pub/graphviz/ARCHIVE/${P}.tar.gz"
+
+LICENSE="CPL-1.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
+IUSE="cairo doc examples gnome gtk jpeg nls perl png python ruby X tcl tk"
+
+# Requires ksh
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-libs/expat-2.0.0
+ >=dev-libs/glib-2.11.1
+ >=media-libs/fontconfig-2.3.95
+ >=media-libs/freetype-2.1.10
+ >=media-libs/gd-2.0.28
+ >=media-libs/jpeg-6b
+ >=media-libs/libpng-1.2.10
+ virtual/libiconv
+ ruby? ( dev-lang/ruby )
+ tcl? ( >=dev-lang/tcl-8.3 )
+ tk? ( >=dev-lang/tk-8.3 )
+ X? ( x11-libs/libX11 x11-libs/libXaw x11-libs/libXpm
+ gnome? ( gnome-base/libgnomeui )
+ gtk? ( >=x11-libs/gtk+-2 )
+ cairo? ( >=x11-libs/pango-1.12 >=x11-libs/cairo-1.1.10 ) )"
+
+DEPEND="${RDEPEND}
+ >=dev-util/pkgconfig-0.20
+ nls? ( >=sys-devel/gettext-0.14.5 )
+ perl? ( dev-lang/swig )
+ python? ( dev-lang/swig )
+ ruby? ( dev-lang/swig )
+ tcl? ( dev-lang/swig )"
+
+# Dependency description / Maintainer-Info:
+
+# Rendering is done via the following plugins (/plugins):
+# - core, dot_layout, neato_layout, gd (the ones which are always compiled in, depend on zlib, gd)
+# - gtk (depends on gtk-2, cairo, libX11, gtk-2 depends on cairo and libX11 as well)
+# - ming ( depends on ming-3.0 which is still p.masked)
+# - pango ( depends on pango and cairo, but pango depends on cairo as well)
+# - xlib ( depends on libX11, Xrender AND pango, can make use of gnomeui and inotify support)
+# - ming ( depends on ming-3 which is still masked, ?)
+
+# There can be swig-generated bindings for the following languages (/tclpkg/gv):
+# - c-sharp (disabled)
+# - scheme (enabled via guile) ... broken on ~x86
+# - io (disabled)
+# - java (enabled via java) *2
+# - lua (enabled via lua)
+# - ocaml (enabled via ocaml)
+# - perl (enabled via perl) *1
+# - php (enabled via php) *2
+# - python (enabled via python) *1
+# - ruby (enabled via ruby) *1
+# - tcl (enabled via tcl)
+# *1 = The ${P}-bindings.patch takes care that those bindings are installed to the right location
+# *2 = Those bindings don't build because the paths for the headers/libs aren't
+# detected correctly and/or the options passed to swig are wrong (-php instead of -php4/5)
+
+# There are several other tools in /tclpkg:
+# gdtclft, tcldot, tclhandle, tclpathplan, tclstubs ; enabled with: --with-tcl
+# tkspline, tkstubs ; enabled with: --with-tk
+
+# And the commands (/cmd):
+# - dot, dotty, gvpr, lefty, lneato, tools/* :)
+# Lefty needs Xaw and X to build
+
+pkg_setup() {
+ if use tcl && ! built_with_use dev-lang/swig tcl ; then
+ eerror "SWIG has to be built with tcl support."
+ die "Missing tcl USE-flag for dev-lang/swig"
+ fi
+ # bug 181147
+ if use png && ! built_with_use media-libs/gd png ; then
+ eerror "media-libs/gd has to be built with png support"
+ die "remerge media-libs/gd with USE=\"png\""
+ fi
+ if use jpeg && ! built_with_use media-libs/gd jpeg ; then
+ eerror "media-libs/gd has to be built with jpeg support"
+ die "remerge media-libs/gd with USE=\"jpeg\""
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ epatch "${FILESDIR}"/${P}-bindings.patch
+ epatch "${FILESDIR}"/${P}-gcc43-missing-includes.patch
+
+ # ToDo: Do the same thing for examples and/or
+ # write a patch for a configuration-option
+ # and send it to upstream
+ if ! use doc ; then
+ find . -iname Makefile.am \
+ | xargs sed -i -e '/html_DATA/d' -e '/pdf_DATA/d' || die
+ fi
+
+ # This is an old version of libtool
+ rm -rf libltdl
+ sed -i -e '/libltdl/d' configure.ac || die
+
+ # Update this file from our local libtool which is much newer than the
+ # bundled one. This allows MAKEOPTS=-j2 to work on FreeBSD.
+ cp /usr/share/libtool/install-sh config
+
+ # no nls, no gettext, no iconv macro, so disable it
+ use nls || { sed -i -e '/^AM_ICONV/d' configure.ac || die; }
+
+ # Nuke the dead symlinks for the bindings
+ sed -i -e '/$(pkgluadir)/d' tclpkg/gv/Makefile.am || die
+
+ eautoreconf
+}
+
+src_compile() {
+ # If we want pango, we need --with-x, otherwise
+ # nothing gets built. Dependencies should be ok.
+ local myconf=""
+ if use X || use cairo ; then
+ myconf="--with-x"
+ else
+ myconf="--without-x"
+ fi
+
+ econf \
+ --enable-ltdl \
+ --disable-guile \
+ --disable-java \
+ --disable-io \
+ --disable-lua \
+ --disable-ocaml \
+ $(use_enable perl) \
+ --disable-php \
+ $(use_enable python) \
+ $(use_enable ruby) \
+ --disable-sharp \
+ $(use_enable tcl) \
+ $(use_enable tk) \
+ $(use_with cairo pangocairo) \
+ $(use_with gnome gnomeui) \
+ $(use_with gtk) \
+ --without-ming \
+ --with-digcola \
+ --with-ipsepcola \
+ --with-fontconfig \
+ --with-freetype \
+ --with-libgd \
+ ${myconf} \
+ || die "econf failed"
+
+ emake || die "emake failed"
+}
+
+src_install() {
+ sed -i -e "s:htmldir:htmlinfodir:g" doc/info/Makefile || die
+
+ emake DESTDIR="${D}" \
+ txtdir=/usr/share/doc/${PF} \
+ htmldir=/usr/share/doc/${PF}/html \
+ htmlinfodir=/usr/share/doc/${PF}/html/info \
+ pdfdir=/usr/share/doc/${PF}/pdf \
+ pkgconfigdir=/usr/$(get_libdir)/pkgconfig \
+ install || die "emake install failed"
+
+ use examples || rm -rf "${D}/usr/share/graphviz/demo"
+
+ dodoc AUTHORS ChangeLog NEWS README
+}
+
+pkg_postinst() {
+ # This actually works if --enable-ltdl is passed
+ # to configure
+ dot -c
+ if use python ; then
+ python_mod_optimize
+ fi
+}
+
+pkg_postrm() {
+ if use python ; then
+ python_mod_cleanup
+ fi
+}