summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2010-11-17 16:24:35 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2010-11-17 16:24:35 +0000
commit21b8fa337448477a6f93695f512e748f6a08f192 (patch)
tree840f998e5d6d608b8589c8242aa3e259d8677638 /media-gfx/graphviz
parentVersion bump. (diff)
downloadgentoo-2-21b8fa337448477a6f93695f512e748f6a08f192.tar.gz
gentoo-2-21b8fa337448477a6f93695f512e748f6a08f192.tar.bz2
gentoo-2-21b8fa337448477a6f93695f512e748f6a08f192.zip
Fix building with libtool >= 2.4 wrt #339298 by John Ellson and Jimmy Jazz.
(Portage version: 2.2.0_alpha4/cvs/Linux x86_64)
Diffstat (limited to 'media-gfx/graphviz')
-rw-r--r--media-gfx/graphviz/ChangeLog9
-rw-r--r--media-gfx/graphviz/files/graphviz-2.26.3-libtool.patch27
-rw-r--r--media-gfx/graphviz/graphviz-2.26.3-r3.ebuild226
3 files changed, 261 insertions, 1 deletions
diff --git a/media-gfx/graphviz/ChangeLog b/media-gfx/graphviz/ChangeLog
index 84cfad0449c4..f513a5af6eee 100644
--- a/media-gfx/graphviz/ChangeLog
+++ b/media-gfx/graphviz/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for media-gfx/graphviz
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/graphviz/ChangeLog,v 1.230 2010/11/13 19:38:08 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/graphviz/ChangeLog,v 1.231 2010/11/17 16:24:35 ssuominen Exp $
+
+*graphviz-2.26.3-r3 (17 Nov 2010)
+
+ 17 Nov 2010; Samuli Suominen <ssuominen@gentoo.org>
+ +graphviz-2.26.3-r3.ebuild, +files/graphviz-2.26.3-libtool.patch:
+ Fix building with libtool >= 2.4 wrt #339298 by John Ellson and Jimmy
+ Jazz.
13 Nov 2010; Raúl Porcel <armin76@gentoo.org> graphviz-2.26.3-r2.ebuild:
alpha/ia64/s390/sh/sparc stable wrt #343369
diff --git a/media-gfx/graphviz/files/graphviz-2.26.3-libtool.patch b/media-gfx/graphviz/files/graphviz-2.26.3-libtool.patch
new file mode 100644
index 000000000000..f82312dbbebf
--- /dev/null
+++ b/media-gfx/graphviz/files/graphviz-2.26.3-libtool.patch
@@ -0,0 +1,27 @@
+http://bugs.gentoo.org/339298
+
+--- lib/gvc/gvcext.h
++++ lib/gvc/gvcext.h
+@@ -80,9 +80,11 @@
+ #if defined(GVDLL)
+ __declspec(dllexport) lt_symlist_t lt_preloaded_symbols[];
+ #else
++#if !defined(LTDL_H)
+ extern lt_symlist_t lt_preloaded_symbols[];
+ #endif
+ #endif
++#endif
+
+
+ #ifdef __cplusplus
+--- lib/gvc/Makefile.am
++++ lib/gvc/Makefile.am
+@@ -18,7 +18,7 @@
+ -I$(top_srcdir)/lib/pathplan \
+ -I$(top_srcdir)/lib/$(GRAPH) \
+ -I$(top_srcdir)/lib/cdt \
+- $(INCLTDL) -I$(top_srcdir)/libltdl \
++ $(INCLTDL) \
+ -DGVLIBDIR=\"$(pkglibdir)\"
+
+ if WITH_WIN32
diff --git a/media-gfx/graphviz/graphviz-2.26.3-r3.ebuild b/media-gfx/graphviz/graphviz-2.26.3-r3.ebuild
new file mode 100644
index 000000000000..cd543332ff83
--- /dev/null
+++ b/media-gfx/graphviz/graphviz-2.26.3-r3.ebuild
@@ -0,0 +1,226 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/graphviz/graphviz-2.26.3-r3.ebuild,v 1.1 2010/11/17 16:24:35 ssuominen Exp $
+
+EAPI=3
+PYTHON_DEPEND="python? 2"
+
+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 ~x86 ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="cairo doc examples gtk java lasi nls perl python ruby static-libs tcl"
+
+# 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[fontconfig,jpeg,png,truetype]
+ >=media-libs/libpng-1.4
+ virtual/jpeg
+ virtual/libiconv
+ cairo? (
+ x11-libs/libXaw
+ >=x11-libs/pango-1.12
+ >=x11-libs/cairo-1.1.10[svg]
+ )
+ gtk? (
+ >=x11-libs/gtk+-2
+ x11-libs/libXaw
+ >=x11-libs/pango-1.12
+ >=x11-libs/cairo-1.1.10
+ )
+ lasi? ( media-libs/lasi )
+ ruby? ( dev-lang/ruby )
+ tcl? ( >=dev-lang/tcl-8.3 )"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ sys-devel/flex
+ java? ( dev-lang/swig )
+ nls? ( >=sys-devel/gettext-0.14.5 )
+ perl? ( dev-lang/swig )
+ python? ( dev-lang/swig )
+ ruby? ( dev-lang/swig )
+ tcl? ( || ( <dev-lang/swig-1.3.38[tcl]
+ >=dev-lang/swig-1.3.38 ) )"
+
+# Dependency description / Maintainer-Info:
+
+# Rendering is done via the following plugins (/plugins):
+# - core, dot_layout, neato_layout, gd , dot
+# the ones which are always compiled in, depend on zlib, gd
+# - gtk
+# Directly depends on gtk-2.
+# gtk-2 depends on pango, cairo and libX11 directly.
+# - gdk-pixbuf
+# Disabled, GTK-1 junk.
+# - ming
+# flash plugin via -Tswf requires media-libs/ming-0.4. Disabled as it's
+# incomplete.
+# - cairo:
+# Needs pango for text layout, uses cairo methods to draw stuff
+# - xlib :
+# needs cairo+pango,
+# can make use of gnomeui and inotify support,
+# needs libXaw for UI
+
+# 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 python; then
+ python_set_active_version 2
+ python_pkg_setup
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-libtool.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
+ sed -i -e 's/AC_LIBLTDL_CONVENIENCE/AC_LIBLTDL_INSTALLABLE/' 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.
+ if has_version ">=sys-devel/libtool-2" ; then
+ cp "${EPREFIX}"/usr/share/libtool/config/install-sh config || die
+ else
+ cp "${EPREFIX}"/usr/share/libtool/install-sh config || die
+ fi
+
+ # 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
+
+ # replace the whitespace with tabs
+ sed -i -e 's: :\t:g' doc/info/Makefile.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ # libtool file collision, bug 276609
+ local myconf="--disable-ltdl-install"
+
+ # Core functionality:
+ # All of X, cairo-output, gtk need the pango+cairo functionality
+ if use gtk || use cairo; then
+ myconf="${myconf} --with-x"
+ else
+ myconf="${myconf} --without-x"
+ fi
+ myconf="${myconf}
+ $(use_with cairo pangocairo)
+ $(use_with gtk)
+ $(use_with lasi)
+ --with-digcola
+ --with-fontconfig
+ --with-freetype2
+ --with-ipsepcola
+ --with-libgd
+ --with-sfdp
+ --without-gdk-pixbuf
+ --without-ming"
+
+ # new/experimental features, to be tested, disable for now
+ myconf="${myconf}
+ --without-cgraph
+ --without-devil
+ --without-digcola
+ --without-ipsepcola
+ --without-rsvg
+ --without-smyrna"
+
+ # Bindings:
+ myconf="${myconf}
+ --disable-guile
+ --disable-io
+ $(use_enable java)
+ --disable-lua
+ --disable-ocaml
+ $(use_enable perl)
+ --disable-php
+ $(use_enable python)
+ --disable-r
+ $(use_enable ruby)
+ --disable-sharp
+ $(use_enable tcl)"
+
+ econf \
+ --enable-ltdl \
+ $(use_enable static-libs static) \
+ ${myconf}
+}
+
+src_install() {
+ sed -i -e "s:htmldir:htmlinfodir:g" doc/info/Makefile || die
+
+ emake DESTDIR="${D}" \
+ txtdir="${EPREFIX}"/usr/share/doc/${PF} \
+ htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+ htmlinfodir="${EPREFIX}"/usr/share/doc/${PF}/html/info \
+ pdfdir="${EPREFIX}"/usr/share/doc/${PF}/pdf \
+ pkgconfigdir="${EPREFIX}"/usr/$(get_libdir)/pkgconfig \
+ install || die "emake install failed"
+
+ use examples || rm -rf "${D}/usr/share/graphviz/demo"
+
+ if ! use static-libs; then
+ find "${ED}"/usr/$(get_libdir)/ -name '*.la' -delete || die
+ fi
+
+ dodoc AUTHORS ChangeLog NEWS README
+}
+
+pkg_postinst() {
+ # This actually works if --enable-ltdl is passed
+ # to configure
+ dot -c
+ use python && python_mod_optimize gv.py
+}
+
+pkg_postrm() {
+ use python && python_mod_cleanup gv.py
+}