diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /media-gfx/graphviz | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'media-gfx/graphviz')
17 files changed, 1924 insertions, 0 deletions
diff --git a/media-gfx/graphviz/Manifest b/media-gfx/graphviz/Manifest new file mode 100644 index 000000000000..0d3b41f3d113 --- /dev/null +++ b/media-gfx/graphviz/Manifest @@ -0,0 +1,5 @@ +DIST graphviz-2.26.3.tar.gz 17092429 SHA256 f410996e69b1095237c2128deae5fc7b6ce99055b095271abb14447bc2f37fa1 SHA512 6225141752318af0b50714d70d31dd1ef1bc414d134d22f066f159843991194215bb9bc4e8df38a194e1de67ebbf137d371e875948fa6a6eebfca9df1a414a6d WHIRLPOOL ca35d0ed9cb3751ae968e1c6d425efe42e8b681685eb66f975c0ff1b73e245fc3db6418ec69300331c94275fe3bfcdcd168b931b880c280f3dd63f1f03c4d4db +DIST graphviz-2.28.0.tar.gz 19620087 SHA256 d3aa7973c578cae4cc26d9d6498c57ed06680cab9a4e940d0357a3c6527afc76 SHA512 d6dbcd99487e382f9ca83ef63a3ff3fbe9208f6d3969cf03d15b8944dfb58c7fefe1bf96939e3e69019ae9a562619c6d64ad24e390c408b7271caade443233e0 WHIRLPOOL f0274567661f16993a107f45685f0716e64ea493e064efd2e72a4680120cbee8989fb0eab6429d432d18106d42bfc37d4113816efb14e7888d00014b83dea72a +DIST graphviz-2.34.0.tar.gz 23921350 SHA256 d94abca5745aa4c5808ab56cd3d0ec9ed14fb76a5a88d39e1f234fa84d22d764 SHA512 73dc8c25bc5747fda717d6d2162a8b37bf883544a13b487354a6000d528816a69a021f33cbeec0f6e718a7e9905ab2a04ee63f787ca7f79226055b2da21f4832 WHIRLPOOL 0fe3bf7420eccef9de51789ae9a8d8cab55b6fae7382e557604fb974e04eaa1e0610392dc7f6d5fa85a0b83a3cc955a4ff08d594bf8805c7f06625c7d9ac9007 +DIST graphviz-2.36.0.tar.gz 23846318 SHA256 37fd66d8def158575c75c4f6dbf536839e4ee468aa59314eb472d1aecb076361 SHA512 cca1339cea8d36acbae647a78ff6743a4f77bfa208e74fef615a99dc7d380d2a0a0f0b3fc00de09a9f67c3fad16dc3837ef3aefbfce5a8a3d0f974ed5afbbab5 WHIRLPOOL c9f25f28869afef943121a24b580518d822eb76f30b4c874554f2f1dd4f16ffaf2683644c59746f4295aa574c4b5541f1205787870eed5567cd4bd5c755e5f8b +DIST graphviz-2.38.0.tar.gz 25848858 SHA256 81aa238d9d4a010afa73a9d2a704fc3221c731e1e06577c2ab3496bdef67859e SHA512 0e51a97dae595f4e80bc9e4a12ba3c48485fab19941a28d522f5a0624b6a767e0ba720e9e55bff8efe8308dd1cd3793e2c99cb5fdfceb2d5cafb0cbee907e531 WHIRLPOOL b59bb517c4aa690ffd23e1b4d448d5dbaae5594eb1059d574e0cb3bf2091beb9ed867bd4fa7e8ca0259863f24849c96d4d1da056091922bf33ace7da43c8b5d4 diff --git a/media-gfx/graphviz/files/graphviz-2.26.3-automake-1.11.2.patch b/media-gfx/graphviz/files/graphviz-2.26.3-automake-1.11.2.patch new file mode 100644 index 000000000000..86280f2b05dd --- /dev/null +++ b/media-gfx/graphviz/files/graphviz-2.26.3-automake-1.11.2.patch @@ -0,0 +1,35 @@ +Install dir ( buiding with media-libs/ming ): + /usr/$(get_libdir)/graphviz/Bitstream_Vera_Serif.fdb + /usr/$(get_libdir)/graphviz/Bitstream_Vera_Sans.fdb + /usr/include/graphviz/gv.cpp + /usr/include/graphviz/gv.i + +Due to the following change, {pkglib,pkginclude}_DATA is invalid: + http://git.savannah.gnu.org/cgit/automake.git/commit/?id=9ca632642b006ac6b0fc4ce0ae5b34023faa8cbf + +--- +diff --git a/plugin/ming/Makefile.am b/plugin/ming/Makefile.am +--- a/plugin/ming/Makefile.am ++++ b/plugin/ming/Makefile.am +@@ -17,7 +17,8 @@ lib_LTLIBRARIES = libgvplugin_ming.la + else + pkglib_LTLIBRARIES = libgvplugin_ming.la + endif +-pkglib_DATA = Bitstream_Vera_Sans.fdb Bitstream_Vera_Serif.fdb ++fdblibdir = $(libdir)/@PACKAGE@ ++fdblib_DATA = Bitstream_Vera_Sans.fdb Bitstream_Vera_Serif.fdb + endif + + libgvplugin_ming_C_la_SOURCES = \ +diff --git a/tclpkg/gv/Makefile.am b/tclpkg/gv/Makefile.am +--- a/tclpkg/gv/Makefile.am ++++ b/tclpkg/gv/Makefile.am +@@ -258,7 +258,7 @@ libgv_tcl_la_CPPFLAGS = $(BASECPPFLAGS) + gv_tcl.cpp: gv.i + $(SWIG) -c++ -tcl -namespace -o gv_tcl.cpp $(srcdir)/gv.i + +-pkginclude_DATA = gv.i gv.cpp ++pkginclude_HEADERS = gv.i gv.cpp + pkglib_LTLIBRARIES = + man_MANS = + pdf_DATA = diff --git a/media-gfx/graphviz/files/graphviz-2.26.3-libtool-configure.patch b/media-gfx/graphviz/files/graphviz-2.26.3-libtool-configure.patch new file mode 100644 index 000000000000..142aea2843fd --- /dev/null +++ b/media-gfx/graphviz/files/graphviz-2.26.3-libtool-configure.patch @@ -0,0 +1,52 @@ +backport newer libtool logic + +https://bugs.gentoo.org/539032 + +--- a/configure.ac ++++ b/configure.ac +@@ -464,28 +464,15 @@ + dnl ----------------------------------- + dnl libtool ltdl on-demand plugin loading + +-m4_ifdef([LT_INIT], +- [ #code that is for Libtool 2.x +-AM_PROG_LIBTOOL +- ], +- [ #code that is for 1.5.x +- ]) ++LT_INIT([dlopen]) ++LT_CONFIG_LTDL_DIR([libltdl]) ++LTDL_INIT ++ + AC_ARG_ENABLE(ltdl, + [AS_HELP_STRING([--enable-ltdl],[support on-demand plugin loading])]) + if test "x$enable_ltdl" != "xno"; then + AC_DEFINE(ENABLE_LTDL,1,[Define if you want on-demand plugin loading]) +- AC_LIBTOOL_DLOPEN +-m4_ifdef([LT_INIT], +- [ #code that is for Libtool 2.x +- LT_CONFIG_LTDL_DIR([libltdl]) +- LTDL_INIT +- ], +- [ #code that is for 1.5.x +- AC_CONFIG_SUBDIRS([libltdl]) +- ]) + use_ltdl="Yes" +- +- AC_LIBLTDL_CONVENIENCE + if test "x$DARWIN9" = "xyes"; then + LIBLTDL_LDFLAGS="-Wl,-unexported_symbol,_lt_*" + fi +@@ -494,12 +483,6 @@ + AC_SUBST(INCLTDL) + AC_SUBST(LIBLTDL) + AC_SUBST(LIBLTDL_LDFLAGS) +-m4_ifdef([LT_INIT], +- [ #code that is for Libtool 2.x +- ], +- [ #code that is for 1.5.x +-AM_PROG_LIBTOOL +- ]) + + # Checks for libraries. + #AC_CHECK_LIB([ICE], [main]) 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/files/graphviz-2.28.0-Xaw-configure.patch b/media-gfx/graphviz/files/graphviz-2.28.0-Xaw-configure.patch new file mode 100644 index 000000000000..095354f49536 --- /dev/null +++ b/media-gfx/graphviz/files/graphviz-2.28.0-Xaw-configure.patch @@ -0,0 +1,71 @@ +--- configure.ac.old 2011-05-07 05:25:24.000000000 +0200 ++++ configure.ac 2011-06-24 13:24:49.000000000 +0200 +@@ -1924,6 +1924,10 @@ + # so we set HAVE_LIBXPMFORLEFTY instead of the usual HAVE_LIBXPM + # + ++AC_ARG_WITH(lefty, ++ [AS_HELP_STRING([--with-lefty=yes],[build lefty])], ++ [],[with_xaw=yes]) ++ + AC_ARG_WITH(Xpmincludedir, + [AS_HELP_STRING([--with-Xpmincludedir=DIR],[use Xpm includes from DIR])], + [XPM_INCLUDES="-I$withval"]) +@@ -1931,6 +1935,17 @@ + [AS_HELP_STRING([--with-Xpmlibdir=DIR],[use Xpm libraries from DIR])], + [XPM_LIBS="-L$withval"]) + ++AC_ARG_WITH(Xawincludedir, ++ [AS_HELP_STRING([--with-Xawincludedir=DIR],[use Xaw includes from DIR])], ++ [XAW_INCLUDES="-I$withval"]) ++AC_ARG_WITH(Xawlibdir, ++ [AS_HELP_STRING([--with-Xawlibdir=DIR],[use Xaw libraries from DIR])], ++ [XAW_LIBS="-L$withval"]) ++ ++if test "x$with_xaw" != "xyes"; then ++ use_lefty="No (disabled)" ++else ++ + save_CPPFLAGS=$CPPFLAGS + save_LDFLAGS=$LDFLAGS + CPPFLAGS="$CPPFLAGS $XPM_INCLUDES $X_CFLAGS" +@@ -1941,18 +1956,10 @@ + AC_MSG_WARN(Optional Xpm library not available), [-lXmu -lXt -lX11 -lXext $SOCKET_LIBS]) + LDFLAGS=$save_LDFLAGS + CPPFLAGS=$save_CPPFLAGS +-AC_SUBST(XPM_INCLUDES) +-AC_SUBST(XPM_LIBS) + + dnl ----------------------------------- + dnl INCLUDES and LIBS for XAW + +-AC_ARG_WITH(Xawincludedir, +- [AS_HELP_STRING([--with-Xawincludedir=DIR],[use Xaw includes from DIR])], +- [XAW_INCLUDES="-I$withval"]) +-AC_ARG_WITH(Xawlibdir, +- [AS_HELP_STRING([--with-Xawlibdir=DIR],[use Xaw libraries from DIR])], +- [XAW_LIBS="-L$withval"]) + save_CPPFLAGS=$CPPFLAGS + save_LDFLAGS=$LDFLAGS + CPPFLAGS="$CPPFLAGS $XAW_INCLUDES $X_CFLAGS" +@@ -1978,12 +1985,17 @@ + fi + LDFLAGS=$save_LDFLAGS + CPPFLAGS=$save_CPPFLAGS ++ ++fi ++ ++AC_SUBST(XPM_INCLUDES) ++AC_SUBST(XPM_LIBS) + AC_SUBST(XAW_INCLUDES) + AC_SUBST(XAW_LIBS) +-AM_CONDITIONAL(WITH_XAW, [test "x$with_xaw" != "xno"]) +-if test "x$with_xaw" = "xno"; then ++AM_CONDITIONAL(WITH_XAW, [test "x$with_xaw" = "xyes"]) ++if test "x$with_xaw" != "xyes"; then + if test "x$no_x" != "xyes"; then +- AC_MSG_WARN(Lefty cannot be built) ++ AC_MSG_WARN(Lefty will not be built) + fi + fi + diff --git a/media-gfx/graphviz/files/graphviz-2.28.0-automake-1.11.2.patch b/media-gfx/graphviz/files/graphviz-2.28.0-automake-1.11.2.patch new file mode 100644 index 000000000000..7b279fccc145 --- /dev/null +++ b/media-gfx/graphviz/files/graphviz-2.28.0-automake-1.11.2.patch @@ -0,0 +1,33 @@ +Install dir ( buiding with media-libs/ming ): + /usr/$(get_libdir)/graphviz/Bitstream_Vera_Serif.fdb + /usr/$(get_libdir)/graphviz/Bitstream_Vera_Sans.fdb + /usr/include/graphviz/gv.cpp + /usr/include/graphviz/gv.i + +Due to the following change, {pkglib,pkginclude}_DATA is invalid: + http://git.savannah.gnu.org/cgit/automake.git/commit/?id=9ca632642b006ac6b0fc4ce0ae5b34023faa8cbf + +--- +--- a/plugin/ming/Makefile.am ++++ b/plugin/ming/Makefile.am +@@ -17,7 +17,8 @@ lib_LTLIBRARIES = libgvplugin_ming.la + else + pkglib_LTLIBRARIES = libgvplugin_ming.la + endif +-pkglib_DATA = Bitstream_Vera_Sans.fdb Bitstream_Vera_Serif.fdb ++fdblibdir = $(libdir)/@PACKAGE@ ++fdblib_DATA = Bitstream_Vera_Sans.fdb Bitstream_Vera_Serif.fdb + endif + + libgvplugin_ming_C_la_SOURCES = \ +--- a/tclpkg/gv/Makefile.am ++++ b/tclpkg/gv/Makefile.am +@@ -257,7 +257,7 @@ $(TCL_data): gv_tcl.cpp + gv_tcl.cpp: gv.i + $(SWIG) -c++ -tcl -namespace -o gv_tcl.cpp $(srcdir)/gv.i + +-pkginclude_DATA = gv.i gv.cpp ++pkginclude_HEADERS = gv.i gv.cpp + pkglib_LTLIBRARIES = + man_MANS = + DEVTSTS = diff --git a/media-gfx/graphviz/files/graphviz-2.28.0-dot-pangocairo-link.patch b/media-gfx/graphviz/files/graphviz-2.28.0-dot-pangocairo-link.patch new file mode 100644 index 000000000000..cf1715cf2ad0 --- /dev/null +++ b/media-gfx/graphviz/files/graphviz-2.28.0-dot-pangocairo-link.patch @@ -0,0 +1,13 @@ +--- cmd/dot/Makefile.am 2012-05-29 01:00:08.965321443 +0200 ++++ cmd/dot/Makefile.am 2012-05-29 01:01:57.471964924 +0200 +@@ -115,8 +115,8 @@ + endif + + if WITH_PANGOCAIRO +-dot_static_LDADD += $(top_builddir)/plugin/pango/.libs/libgvplugin_pango_C.a $(PANGOCAIRO_LIBS) +-dot_builtins_LDADD += $(top_builddir)/plugin/pango/libgvplugin_pango.la $(PANGOCAIRO_LIBS) ++dot_static_LDADD += $(top_builddir)/plugin/pango/.libs/libgvplugin_pango_C.a $(PANGOCAIRO_LIBS) $(PANGOFT2_LIBS) ++dot_builtins_LDADD += $(top_builddir)/plugin/pango/libgvplugin_pango.la $(PANGOCAIRO_LIBS) $(PANGOFT2_LIBS) + endif + + EXTRA_DIST = Makefile.old dot.1 dot.1.pdf osage.1 osage.1.pdf patchwork.1 patchwork.1.pdf dot.vcproj diff --git a/media-gfx/graphviz/files/graphviz-2.34.0-Xaw-configure.patch b/media-gfx/graphviz/files/graphviz-2.34.0-Xaw-configure.patch new file mode 100644 index 000000000000..ac91d4bd4d46 --- /dev/null +++ b/media-gfx/graphviz/files/graphviz-2.34.0-Xaw-configure.patch @@ -0,0 +1,81 @@ +--- configure.ac 2011-05-07 05:25:24.000000000 +0200 ++++ configure.ac 2011-06-24 13:24:49.000000000 +0200 +@@ -560,8 +560,8 @@ + use_xlib="Yes" + #no x11.pc on centos4 + # PKG_CHECK_MODULES(X11, [x11]) +- PKG_CHECK_MODULES(XRENDER, [xrender],HAVE_XRENDER="yes" ,HAVE_XRENDER="no") + fi ++PKG_CHECK_MODULES(XRENDER, [xrender],HAVE_XRENDER="yes" ,HAVE_XRENDER="no") + AM_CONDITIONAL(WITH_X, [test "x$use_xlib" = "xYes"]) + AM_CONDITIONAL(WITH_XRENDER, [test "x$,HAVE_XRENDER" = "xyes"]) + +@@ -1924,6 +1924,10 @@ + # so we set HAVE_LIBXPMFORLEFTY instead of the usual HAVE_LIBXPM + # + ++AC_ARG_WITH(lefty, ++ [AS_HELP_STRING([--with-lefty=yes],[build lefty])], ++ [],[with_xaw=yes]) ++ + AC_ARG_WITH(Xpmincludedir, + [AS_HELP_STRING([--with-Xpmincludedir=DIR],[use Xpm includes from DIR])], + [XPM_INCLUDES="-I$withval"]) +@@ -1931,6 +1935,17 @@ + [AS_HELP_STRING([--with-Xpmlibdir=DIR],[use Xpm libraries from DIR])], + [XPM_LIBS="-L$withval"]) + ++AC_ARG_WITH(Xawincludedir, ++ [AS_HELP_STRING([--with-Xawincludedir=DIR],[use Xaw includes from DIR])], ++ [XAW_INCLUDES="-I$withval"]) ++AC_ARG_WITH(Xawlibdir, ++ [AS_HELP_STRING([--with-Xawlibdir=DIR],[use Xaw libraries from DIR])], ++ [XAW_LIBS="-L$withval"]) ++ ++if test "x$with_xaw" != "xyes"; then ++ use_lefty="No (disabled)" ++else ++ + save_CPPFLAGS=$CPPFLAGS + save_LDFLAGS=$LDFLAGS + CPPFLAGS="$CPPFLAGS $XPM_INCLUDES $X_CFLAGS" +@@ -1941,18 +1956,10 @@ + AC_MSG_WARN(Optional Xpm library not available), [-lXmu -lXt -lX11 -lXext $SOCKET_LIBS]) + LDFLAGS=$save_LDFLAGS + CPPFLAGS=$save_CPPFLAGS +-AC_SUBST([XPM_INCLUDES]) +-AC_SUBST([XPM_LIBS]) + + dnl ----------------------------------- + dnl INCLUDES and LIBS for XAW + +-AC_ARG_WITH(Xawincludedir, +- [AS_HELP_STRING([--with-Xawincludedir=DIR],[use Xaw includes from DIR])], +- [XAW_INCLUDES="-I$withval"]) +-AC_ARG_WITH(Xawlibdir, +- [AS_HELP_STRING([--with-Xawlibdir=DIR],[use Xaw libraries from DIR])], +- [XAW_LIBS="-L$withval"]) + save_CPPFLAGS=$CPPFLAGS + save_LDFLAGS=$LDFLAGS + CPPFLAGS="$CPPFLAGS $XAW_INCLUDES $X_CFLAGS" +@@ -1978,12 +1985,17 @@ + fi + LDFLAGS=$save_LDFLAGS + CPPFLAGS=$save_CPPFLAGS ++ ++fi ++ ++AC_SUBST([XPM_INCLUDES]) ++AC_SUBST([XPM_LIBS]) + AC_SUBST([XAW_INCLUDES]) + AC_SUBST([XAW_LIBS]) +-AM_CONDITIONAL(WITH_XAW, [test "x$with_xaw" != "xno"]) +-if test "x$with_xaw" = "xno"; then ++AM_CONDITIONAL(WITH_XAW, [test "x$with_xaw" = "xyes"]) ++if test "x$with_xaw" != "xyes"; then + if test "x$no_x" != "xyes"; then +- AC_MSG_WARN(Lefty cannot be built) ++ AC_MSG_WARN(Lefty will not be built) + fi + fi + diff --git a/media-gfx/graphviz/files/graphviz-2.34.0-dot-pangocairo-link.patch b/media-gfx/graphviz/files/graphviz-2.34.0-dot-pangocairo-link.patch new file mode 100644 index 000000000000..143beabe5058 --- /dev/null +++ b/media-gfx/graphviz/files/graphviz-2.34.0-dot-pangocairo-link.patch @@ -0,0 +1,17 @@ +--- cmd/dot/Makefile.am 2013-01-14 04:11:21.000000000 +0100 ++++ cmd/dot/Makefile.am 2013-02-01 17:19:30.893949329 +0100 +@@ -115,12 +115,8 @@ + dot_static_LDADD += $(top_builddir)/plugin/webp/.libs/libgvplugin_webp_C.a $(WEBP_LIBS) + dot_builtins_LDADD += $(top_builddir)/plugin/webp/libgvplugin_webp.la $(WEBP_LIBS) + endif +-dot_static_LDADD += $(top_builddir)/plugin/pango/.libs/libgvplugin_pango_C.a $(PANGOCAIRO_LIBS) +-dot_builtins_LDADD += $(top_builddir)/plugin/pango/libgvplugin_pango.la $(PANGOCAIRO_LIBS) +-if WITH_WEBP +-dot_static_LDADD += $(top_builddir)/plugin/webp/.libs/libgvplugin_webp_C.a $(WEBP_LIBS) +-dot_builtins_LDADD += $(top_builddir)/plugin/webp/libgvplugin_webp.la $(WEBP_LIBS) +-endif ++dot_static_LDADD += $(top_builddir)/plugin/pango/.libs/libgvplugin_pango_C.a $(PANGOCAIRO_LIBS) $(PANGOFT2_LIBS) ++dot_builtins_LDADD += $(top_builddir)/plugin/pango/libgvplugin_pango.la $(PANGOCAIRO_LIBS) $(PANGOFT2_LIBS) + endif + + if WITH_LASI diff --git a/media-gfx/graphviz/files/graphviz-2.38-fix-backslashes.patch b/media-gfx/graphviz/files/graphviz-2.38-fix-backslashes.patch new file mode 100644 index 000000000000..b4e911de6a94 --- /dev/null +++ b/media-gfx/graphviz/files/graphviz-2.38-fix-backslashes.patch @@ -0,0 +1,34 @@ +User reported a regression between 2.26 and 2.36 +when trying to .dot the following graph: + + digraph g { + 1 -> 2 [label="\\"] + } + +2.26 shows it as '\' while 2.36 fails as: + $ dot -Tpng a.dot -o a.png + Warning: 1.dot: syntax error in line 2 near '' + +Thanks to Ulya Trofimovich who found and bisected +the problem down to this commit, which fixes problem +only in git version. + +commit 386e47c14b3a8e83bdf3ec8772963213095a7294 +Author: Emden R. Gansner <erg@alum.mit.edu> +Date: Thu Jan 30 08:45:06 2014 -0500 + + Remove change made in d19b672a3c06f0ae95b1da38b63b068f71eb266f until we can + remember why this change was made. + +diff --git a/lib/cgraph/scan.l b/lib/cgraph/scan.l +index 0a31f0c..5bb30b7 100644 +--- a/lib/cgraph/scan.l ++++ b/lib/cgraph/scan.l +@@ -199,6 +199,7 @@ ID ({NAME}|{NUMBER}) + ["] BEGIN(qstring); beginstr(); + <qstring>["] BEGIN(INITIAL); endstr(); return (T_qatom); + <qstring>[\\]["] addstr ("\""); ++<qstring>[\\][\\] addstr ("\\\\"); + <qstring>[\\][\n] line_num++; /* ignore escaped newlines */ + <qstring>([^"\\]*|[\\]) addstr(yytext); + [<] BEGIN(hstring); html_nest = 1; beginstr(); diff --git a/media-gfx/graphviz/graphviz-2.26.3-r4.ebuild b/media-gfx/graphviz/graphviz-2.26.3-r4.ebuild new file mode 100644 index 000000000000..e6af5ad6ac1e --- /dev/null +++ b/media-gfx/graphviz/graphviz-2.26.3-r4.ebuild @@ -0,0 +1,224 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 +PYTHON_DEPEND="python? 2" + +inherit eutils autotools multilib python flag-o-matic + +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 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris" +IUSE="cairo doc examples gtk java lasi nls perl python ruby static-libs tcl elibc_FreeBSD" + +# 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,zlib] + >=media-libs/libpng-1.4 + virtual/jpeg:0 + 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 ) + perl? ( dev-lang/perl ) + ruby? ( dev-lang/ruby ) + tcl? ( >=dev-lang/tcl-8.3:0 )" +DEPEND="${RDEPEND} + virtual/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 )" + +# 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 \ + "${FILESDIR}"/${P}-libtool-configure.patch \ + "${FILESDIR}"/${P}-automake-1.11.2.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 + # use the ./configure option to exclude its use, and + # delete the dir since we don't need to eautoreconf it + rm -rf libltdl + + # 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 + + # workaround for http://www.graphviz.org/mantisbt/view.php?id=1895 + use elibc_FreeBSD && append-flags $(test-flags -fno-builtin-sincos) + + eautoreconf +} + +src_configure() { + # libtool file collision, bug 276609 + local myconf="--without-included-ltdl --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 +} diff --git a/media-gfx/graphviz/graphviz-2.28.0.ebuild b/media-gfx/graphviz/graphviz-2.28.0.ebuild new file mode 100644 index 000000000000..b702ab3f359f --- /dev/null +++ b/media-gfx/graphviz/graphviz-2.28.0.ebuild @@ -0,0 +1,255 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) + +inherit autotools eutils flag-o-matic multilib python-single-r1 + +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" +#original KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris" +IUSE="+cairo devil doc examples gtk gts java lasi nls perl postscript python qt4 ruby svg static-libs tcl X elibc_FreeBSD" + +# Requires ksh +RESTRICT="test" + +RDEPEND=" + sys-libs/zlib + >=dev-libs/expat-2 + >=dev-libs/glib-2.11.1 + >=media-libs/fontconfig-2.3.95 + >=media-libs/freetype-2.1.10 + >=media-libs/gd-2.0.34[fontconfig,jpeg,png,truetype,zlib] + >=media-libs/libpng-1.2:0 + !<=sci-chemistry/cluster-1.3.081231 + virtual/jpeg:0 + virtual/libiconv + X? ( + x11-libs/libXaw + x11-libs/libX11 + x11-libs/libXmu + x11-libs/libXpm + x11-libs/libXt + ) + cairo? ( + >=x11-libs/pango-1.12 + >=x11-libs/cairo-1.1.10[svg] + ) + devil? ( media-libs/devil[png,jpeg] ) + postscript? ( app-text/ghostscript-gpl ) + gtk? ( x11-libs/gtk+:2 ) + gts? ( sci-libs/gts ) + lasi? ( media-libs/lasi ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + qt4? ( + dev-qt/qtcore:4 + dev-qt/qtgui:4 + ) + ruby? ( dev-lang/ruby ) + svg? ( gnome-base/librsvg ) + tcl? ( >=dev-lang/tcl-8.3:0= )" +DEPEND="${RDEPEND} + virtual/pkgconfig + sys-devel/flex + java? ( dev-lang/swig ) + nls? ( >=sys-devel/gettext-0.14.5 ) + perl? ( dev-lang/swig ) + python? ( + dev-lang/swig + ${PYTHON_DEPS} + ) + ruby? ( dev-lang/swig ) + tcl? ( dev-lang/swig )" +REQUIRED_USE=" + !cairo? ( !X !gtk !postscript !lasi ) + python? ( ${PYTHON_REQUIRED_USE} )" + +# 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. +# needs 'pangocairo' enabled in graphviz configuration +# gtk-2 depends on pango, cairo and libX11 directly. +# - gdk-pixbuf +# Disabled, GTK-1 junk. +# - glitz +# Disabled, no particular reason +# needs 'pangocairo' enabled in graphviz configuration +# - ming +# flash plugin via -Tswf requires media-libs/ming-0.4. Disabled as it's +# incomplete. +# - cairo/pango: +# Needs pango for text layout, uses cairo methods to draw stuff +# - xlib: +# needs cairo+pango, +# can make use of gnomeui and inotify support (??? unsure), +# needs libXaw for UI +# UI also links directly against libX11, libXmu, and libXt +# and uses libXpm if available so we make sure it always is + +# 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, gvedit, gvpr, lefty, lneato, smyrna, tools/* :) +# sci-libs/gts can be used for some of these +# - lefty: +# needs Xaw and X to build +# - gvedit (via 'qt4'): +# based on ./configure it needs qt-core and qt-gui only +# - smyrna : experimental opengl front-end (via 'smyrna') +# currently disabled -- it segfaults a lot +# needs x11-libs/gtkglext, gnome-base/libglade, media-libs/freeglut +# sci-libs/gts, x11-libs/gtk. Also needs 'gtk','glade','glut','gts' and 'png' +# with flags enabled at configure time + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + epatch \ + "${FILESDIR}"/${P}-Xaw-configure.patch \ + "${FILESDIR}"/${P}-automake-1.11.2.patch \ + "${FILESDIR}"/${P}-dot-pangocairo-link.patch + + # ToDo: Do the same thing for examples and/or + # write a patch for a configuration-option + # and send it to upstream + # note - the longer sed expression removes multi-line assignments that are extended via '\' + if ! use doc ; then + find . -iname Makefile.am \ + | xargs sed -i -e '/^\(html\|pdf\)_DATA.*\\[[:space:]]*$/{:m;N;s/\\\n//;tm;d}' \ + -e '/^\(html\|pdf\)_DATA/d' || die + fi + + # This is an old version of libtool + # use the ./configure option to exclude its use, and + # delete the dir since we don't need to eautoreconf it + rm -rf libltdl + + # 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 + + # workaround for http://www.graphviz.org/mantisbt/view.php?id=1895 + use elibc_FreeBSD && append-flags $(test-flags -fno-builtin-sincos) + + eautoreconf +} + +src_configure() { + # libtool file collision, bug 276609 + local myconf="--without-included-ltdl --disable-ltdl-install" + + myconf="${myconf} + $(use_with cairo pangocairo) + $(use_with devil) + $(use_with gtk) + $(use_with gts) + $(use_with qt4) + $(use_with lasi) + $(use_with svg rsvg) + $(use_with X x) + $(use_with X xaw) + $(use_with X lefty) + --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-glitz + --without-ipsepcola + --without-smyrna + --without-visio" + + # 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 \ + --disable-silent-rules \ + $(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 + + use examples || rm -rf "${ED}"/usr/share/graphviz/demo + + use static-libs || find "${ED}" -name '*.la' -exec rm -f {} + + + dodoc AUTHORS ChangeLog NEWS README + + use python && python_optimize \ + "${D}$(python_get_sitedir)" \ + "${D}/usr/$(get_libdir)/graphviz/python" +} + +pkg_postinst() { + # This actually works if --enable-ltdl is passed + # to configure + dot -c +} diff --git a/media-gfx/graphviz/graphviz-2.34.0.ebuild b/media-gfx/graphviz/graphviz-2.34.0.ebuild new file mode 100644 index 000000000000..58440493bce4 --- /dev/null +++ b/media-gfx/graphviz/graphviz-2.34.0.ebuild @@ -0,0 +1,260 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) + +inherit autotools eutils flag-o-matic java-pkg-opt-2 multilib python-single-r1 + +DESCRIPTION="Open Source Graph Visualization Software" +HOMEPAGE="http://www.graphviz.org/" +SRC_URI="http://www.graphviz.org/pub/graphviz/stable/SOURCES/${P}.tar.gz" + +LICENSE="CPL-1.0" +SLOT="0" +#original KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris" +IUSE="+cairo devil doc examples gdk-pixbuf gtk gts guile java lasi nls pdf perl postscript python qt4 ruby svg static-libs tcl X elibc_FreeBSD" + +# Requires ksh +RESTRICT="test" + +RDEPEND=" + sys-libs/zlib + >=dev-libs/expat-2 + >=dev-libs/glib-2.11.1 + >=media-libs/fontconfig-2.3.95 + >=media-libs/freetype-2.1.10 + >=media-libs/gd-2.0.34[fontconfig,jpeg,png,truetype,zlib] + >=media-libs/libpng-1.2:0 + !<=sci-chemistry/cluster-1.3.081231 + virtual/jpeg:0 + virtual/libiconv + X? ( + x11-libs/libXaw + x11-libs/libX11 + x11-libs/libXmu + x11-libs/libXpm + x11-libs/libXt + ) + cairo? ( + >=x11-libs/pango-1.12 + >=x11-libs/cairo-1.1.10[svg] + ) + devil? ( media-libs/devil[png,jpeg] ) + postscript? ( app-text/ghostscript-gpl ) + gtk? ( x11-libs/gtk+:2 ) + gts? ( sci-libs/gts ) + lasi? ( media-libs/lasi ) + pdf? ( app-text/poppler ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + qt4? ( + dev-qt/qtcore:4 + dev-qt/qtgui:4 + ) + ruby? ( dev-lang/ruby ) + svg? ( gnome-base/librsvg ) + tcl? ( >=dev-lang/tcl-8.3:0= )" +DEPEND="${RDEPEND} + virtual/pkgconfig + sys-devel/flex + guile? ( dev-scheme/guile dev-lang/swig ) + java? ( >=virtual/jdk-1.5 dev-lang/swig ) + nls? ( >=sys-devel/gettext-0.14.5 ) + perl? ( dev-lang/swig ) + python? ( + dev-lang/swig + ${PYTHON_DEPS} + ) + ruby? ( dev-lang/swig ) + tcl? ( dev-lang/swig )" +REQUIRED_USE=" + !cairo? ( !X !gtk !postscript !lasi ) + python? ( ${PYTHON_REQUIRED_USE} )" + +# 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. +# needs 'pangocairo' enabled in graphviz configuration +# gtk-2 depends on pango, cairo and libX11 directly. +# - gdk-pixbuf +# Disabled, GTK-1 junk. +# - glitz +# Disabled, no particular reason +# needs 'pangocairo' enabled in graphviz configuration +# - ming +# flash plugin via -Tswf requires media-libs/ming-0.4. Disabled as it's +# incomplete. +# - cairo/pango: +# Needs pango for text layout, uses cairo methods to draw stuff +# - xlib: +# needs cairo+pango, +# can make use of gnomeui and inotify support (??? unsure), +# needs libXaw for UI +# UI also links directly against libX11, libXmu, and libXt +# and uses libXpm if available so we make sure it always is + +# There can be swig-generated bindings for the following languages (/tclpkg/gv): +# - c-sharp (disabled) +# - scheme (enabled via guile) ... no longer 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, gvedit, gvpr, lefty, lneato, smyrna, tools/* :) +# sci-libs/gts can be used for some of these +# - lefty: +# needs Xaw and X to build +# - gvedit (via 'qt4'): +# based on ./configure it needs qt-core and qt-gui only +# - smyrna : experimental opengl front-end (via 'smyrna') +# currently disabled -- it segfaults a lot +# needs x11-libs/gtkglext, gnome-base/libglade, media-libs/freeglut +# sci-libs/gts, x11-libs/gtk. Also needs 'gtk','glade','glut','gts' and 'png' +# with flags enabled at configure time + +pkg_setup() { + use python && python-single-r1_pkg_setup + + java-pkg-opt-2_pkg_setup +} + +src_prepare() { + epatch \ + "${FILESDIR}"/${P}-Xaw-configure.patch \ + "${FILESDIR}"/${P}-dot-pangocairo-link.patch + + # ToDo: Do the same thing for examples and/or + # write a patch for a configuration-option + # and send it to upstream + # note - the longer sed expression removes multi-line assignments that are extended via '\' + if ! use doc ; then + find . -iname Makefile.am \ + | xargs sed -i -e '/^\(html\|pdf\)_DATA.*\\[[:space:]]*$/{:m;N;s/\\\n//;tm;d}' \ + -e '/^\(html\|pdf\)_DATA/d' || die + fi + + # This is an old version of libtool + # use the ./configure option to exclude its use, and + # delete the dir since we don't need to eautoreconf it + rm -rf libltdl + + # 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 + + # workaround for http://www.graphviz.org/mantisbt/view.php?id=1895 + use elibc_FreeBSD && append-flags $(test-flags -fno-builtin-sincos) + + use java && append-cppflags $(java-pkg_get-jni-cflags) + + eautoreconf +} + +src_configure() { + # libtool file collision, bug 276609 + local myconf="--without-included-ltdl --disable-ltdl-install" + + myconf="${myconf} + $(use_with cairo pangocairo) + $(use_with devil) + $(use_with gtk) + $(use_with gts) + $(use_with qt4) + $(use_with lasi) + $(use_with svg rsvg) + $(use_with X x) + $(use_with X xaw) + $(use_with X lefty) + --with-digcola + --with-fontconfig + --with-freetype2 + --with-ipsepcola + --with-libgd + --with-sfdp + $(use_enable gdk-pixbuf) + --without-ming" + + # new/experimental features, to be tested, disable for now + myconf="${myconf} + --with-cgraph + --without-glitz + --without-ipsepcola + --without-smyrna + --without-visio" + + # Bindings: + myconf="${myconf} + $(use_enable 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 \ + --disable-silent-rules \ + $(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 + + use examples || rm -rf "${ED}"/usr/share/graphviz/demo + + use static-libs || find "${ED}" -name '*.la' -exec rm -f {} + + + dodoc AUTHORS ChangeLog NEWS README + + use python && python_optimize \ + "${D}$(python_get_sitedir)" \ + "${D}/usr/$(get_libdir)/graphviz/python" +} + +pkg_postinst() { + # This actually works if --enable-ltdl is passed + # to configure + dot -c +} diff --git a/media-gfx/graphviz/graphviz-2.36.0-r1.ebuild b/media-gfx/graphviz/graphviz-2.36.0-r1.ebuild new file mode 100644 index 000000000000..b29219c32670 --- /dev/null +++ b/media-gfx/graphviz/graphviz-2.36.0-r1.ebuild @@ -0,0 +1,259 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) + +inherit autotools eutils flag-o-matic java-pkg-opt-2 multilib python-single-r1 + +DESCRIPTION="Open Source Graph Visualization Software" +HOMEPAGE="http://www.graphviz.org/" +SRC_URI="http://www.graphviz.org/pub/graphviz/stable/SOURCES/${P}.tar.gz" + +LICENSE="CPL-1.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris" +IUSE="+cairo devil doc examples gdk-pixbuf gtk gts guile java lasi nls pdf perl postscript python qt4 ruby svg static-libs tcl X elibc_FreeBSD" + +# Requires ksh +RESTRICT="test" + +RDEPEND=" + sys-libs/zlib + >=dev-libs/expat-2 + >=dev-libs/glib-2.11.1 + >=media-libs/fontconfig-2.3.95 + >=media-libs/freetype-2.1.10 + >=media-libs/gd-2.0.34[fontconfig,jpeg,png,truetype,zlib] + >=media-libs/libpng-1.2:0 + !<=sci-chemistry/cluster-1.3.081231 + sys-devel/libtool + virtual/jpeg:0 + virtual/libiconv + X? ( + x11-libs/libXaw + x11-libs/libX11 + x11-libs/libXmu + x11-libs/libXpm + x11-libs/libXt + ) + cairo? ( + >=x11-libs/pango-1.12 + >=x11-libs/cairo-1.1.10[svg] + ) + devil? ( media-libs/devil[png,jpeg] ) + postscript? ( app-text/ghostscript-gpl ) + gtk? ( x11-libs/gtk+:2 ) + gts? ( sci-libs/gts ) + lasi? ( media-libs/lasi ) + pdf? ( app-text/poppler ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + qt4? ( + dev-qt/qtcore:4 + dev-qt/qtgui:4 + ) + ruby? ( dev-lang/ruby ) + svg? ( gnome-base/librsvg ) + tcl? ( >=dev-lang/tcl-8.3:0= )" +DEPEND="${RDEPEND} + virtual/pkgconfig + sys-devel/flex + guile? ( dev-scheme/guile dev-lang/swig ) + java? ( >=virtual/jdk-1.5 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 )" +REQUIRED_USE=" + !cairo? ( !X !gtk !postscript !lasi ) + python? ( ${PYTHON_REQUIRED_USE} )" + +# 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. +# needs 'pangocairo' enabled in graphviz configuration +# gtk-2 depends on pango, cairo and libX11 directly. +# - gdk-pixbuf +# Disabled, GTK-1 junk. +# - glitz +# Disabled, no particular reason +# needs 'pangocairo' enabled in graphviz configuration +# - ming +# flash plugin via -Tswf requires media-libs/ming-0.4. Disabled as it's +# incomplete. +# - cairo/pango: +# Needs pango for text layout, uses cairo methods to draw stuff +# - xlib: +# needs cairo+pango, +# can make use of gnomeui and inotify support (??? unsure), +# needs libXaw for UI +# UI also links directly against libX11, libXmu, and libXt +# and uses libXpm if available so we make sure it always is + +# There can be swig-generated bindings for the following languages (/tclpkg/gv): +# - c-sharp (disabled) +# - scheme (enabled via guile) ... no longer 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, gvedit, gvpr, lefty, lneato, smyrna, tools/* :) +# sci-libs/gts can be used for some of these +# - lefty: +# needs Xaw and X to build +# - gvedit (via 'qt4'): +# based on ./configure it needs qt-core and qt-gui only +# - smyrna : experimental opengl front-end (via 'smyrna') +# currently disabled -- it segfaults a lot +# needs x11-libs/gtkglext, gnome-base/libglade, media-libs/freeglut +# sci-libs/gts, x11-libs/gtk. Also needs 'gtk','glade','glut','gts' and 'png' +# with flags enabled at configure time + +pkg_setup() { + use python && python-single-r1_pkg_setup + + java-pkg-opt-2_pkg_setup +} + +src_prepare() { + epatch \ + "${FILESDIR}"/${PN}-2.34.0-Xaw-configure.patch \ + "${FILESDIR}"/${PN}-2.34.0-dot-pangocairo-link.patch + + epatch \ + "${FILESDIR}"/${PN}-2.38-fix-backslashes.patch + + # ToDo: Do the same thing for examples and/or + # write a patch for a configuration-option + # and send it to upstream + # note - the longer sed expression removes multi-line assignments that are extended via '\' + if ! use doc ; then + find . -iname Makefile.am \ + | xargs sed -i -e '/^\(html\|pdf\)_DATA.*\\[[:space:]]*$/{:m;N;s/\\\n//;tm;d}' \ + -e '/^\(html\|pdf\)_DATA/d' || die + fi + + # This is an old version of libtool + # use the ./configure option to exclude its use, and + # delete the dir since we don't need to eautoreconf it + rm -rf libltdl + + # 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 + + # workaround for http://www.graphviz.org/mantisbt/view.php?id=1895 + use elibc_FreeBSD && append-flags $(test-flags -fno-builtin-sincos) + + use java && append-cppflags $(java-pkg_get-jni-cflags) + + eautoreconf +} + +src_configure() { + # libtool file collision, bug 276609 + local myconf="--without-included-ltdl --disable-ltdl-install" + + myconf="${myconf} + $(use_with cairo pangocairo) + $(use_with devil) + $(use_with gtk) + $(use_with gts) + $(use_with qt4) + $(use_with lasi) + $(use_with svg rsvg) + $(use_with X x) + $(use_with X xaw) + $(use_with X lefty) + --with-digcola + --with-fontconfig + --with-freetype2 + --with-ipsepcola + --with-libgd + --with-sfdp + $(use_enable gdk-pixbuf) + --without-ming" + + # new/experimental features, to be tested, disable for now + myconf="${myconf} + --with-cgraph + --without-glitz + --without-ipsepcola + --without-smyrna + --without-visio" + + # Bindings: + myconf="${myconf} + $(use_enable 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 \ + --disable-silent-rules \ + $(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 + + use examples || rm -rf "${ED}"/usr/share/graphviz/demo + + use static-libs || find "${ED}" -name '*.la' -exec rm -f {} + + + dodoc AUTHORS ChangeLog NEWS README + + use python && python_optimize \ + "${D}$(python_get_sitedir)" \ + "${D}/usr/$(get_libdir)/graphviz/python" +} + +pkg_postinst() { + # This actually works if --enable-ltdl is passed + # to configure + dot -c +} diff --git a/media-gfx/graphviz/graphviz-2.36.0.ebuild b/media-gfx/graphviz/graphviz-2.36.0.ebuild new file mode 100644 index 000000000000..19ce277aa44b --- /dev/null +++ b/media-gfx/graphviz/graphviz-2.36.0.ebuild @@ -0,0 +1,256 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) + +inherit autotools eutils flag-o-matic java-pkg-opt-2 multilib python-single-r1 + +DESCRIPTION="Open Source Graph Visualization Software" +HOMEPAGE="http://www.graphviz.org/" +SRC_URI="http://www.graphviz.org/pub/graphviz/stable/SOURCES/${P}.tar.gz" + +LICENSE="CPL-1.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris" +IUSE="+cairo devil doc examples gdk-pixbuf gtk gts guile java lasi nls pdf perl postscript python qt4 ruby svg static-libs tcl X elibc_FreeBSD" + +# Requires ksh +RESTRICT="test" + +RDEPEND=" + sys-libs/zlib + >=dev-libs/expat-2 + >=dev-libs/glib-2.11.1 + >=media-libs/fontconfig-2.3.95 + >=media-libs/freetype-2.1.10 + >=media-libs/gd-2.0.34[fontconfig,jpeg,png,truetype,zlib] + >=media-libs/libpng-1.2:0 + !<=sci-chemistry/cluster-1.3.081231 + sys-devel/libtool + virtual/jpeg:0 + virtual/libiconv + X? ( + x11-libs/libXaw + x11-libs/libX11 + x11-libs/libXmu + x11-libs/libXpm + x11-libs/libXt + ) + cairo? ( + >=x11-libs/pango-1.12 + >=x11-libs/cairo-1.1.10[svg] + ) + devil? ( media-libs/devil[png,jpeg] ) + postscript? ( app-text/ghostscript-gpl ) + gtk? ( x11-libs/gtk+:2 ) + gts? ( sci-libs/gts ) + lasi? ( media-libs/lasi ) + pdf? ( app-text/poppler ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + qt4? ( + dev-qt/qtcore:4 + dev-qt/qtgui:4 + ) + ruby? ( dev-lang/ruby ) + svg? ( gnome-base/librsvg ) + tcl? ( >=dev-lang/tcl-8.3:0= )" +DEPEND="${RDEPEND} + virtual/pkgconfig + sys-devel/flex + guile? ( dev-scheme/guile dev-lang/swig ) + java? ( >=virtual/jdk-1.5 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 )" +REQUIRED_USE=" + !cairo? ( !X !gtk !postscript !lasi ) + python? ( ${PYTHON_REQUIRED_USE} )" + +# 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. +# needs 'pangocairo' enabled in graphviz configuration +# gtk-2 depends on pango, cairo and libX11 directly. +# - gdk-pixbuf +# Disabled, GTK-1 junk. +# - glitz +# Disabled, no particular reason +# needs 'pangocairo' enabled in graphviz configuration +# - ming +# flash plugin via -Tswf requires media-libs/ming-0.4. Disabled as it's +# incomplete. +# - cairo/pango: +# Needs pango for text layout, uses cairo methods to draw stuff +# - xlib: +# needs cairo+pango, +# can make use of gnomeui and inotify support (??? unsure), +# needs libXaw for UI +# UI also links directly against libX11, libXmu, and libXt +# and uses libXpm if available so we make sure it always is + +# There can be swig-generated bindings for the following languages (/tclpkg/gv): +# - c-sharp (disabled) +# - scheme (enabled via guile) ... no longer 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, gvedit, gvpr, lefty, lneato, smyrna, tools/* :) +# sci-libs/gts can be used for some of these +# - lefty: +# needs Xaw and X to build +# - gvedit (via 'qt4'): +# based on ./configure it needs qt-core and qt-gui only +# - smyrna : experimental opengl front-end (via 'smyrna') +# currently disabled -- it segfaults a lot +# needs x11-libs/gtkglext, gnome-base/libglade, media-libs/freeglut +# sci-libs/gts, x11-libs/gtk. Also needs 'gtk','glade','glut','gts' and 'png' +# with flags enabled at configure time + +pkg_setup() { + use python && python-single-r1_pkg_setup + + java-pkg-opt-2_pkg_setup +} + +src_prepare() { + epatch \ + "${FILESDIR}"/${PN}-2.34.0-Xaw-configure.patch \ + "${FILESDIR}"/${PN}-2.34.0-dot-pangocairo-link.patch + + # ToDo: Do the same thing for examples and/or + # write a patch for a configuration-option + # and send it to upstream + # note - the longer sed expression removes multi-line assignments that are extended via '\' + if ! use doc ; then + find . -iname Makefile.am \ + | xargs sed -i -e '/^\(html\|pdf\)_DATA.*\\[[:space:]]*$/{:m;N;s/\\\n//;tm;d}' \ + -e '/^\(html\|pdf\)_DATA/d' || die + fi + + # This is an old version of libtool + # use the ./configure option to exclude its use, and + # delete the dir since we don't need to eautoreconf it + rm -rf libltdl + + # 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 + + # workaround for http://www.graphviz.org/mantisbt/view.php?id=1895 + use elibc_FreeBSD && append-flags $(test-flags -fno-builtin-sincos) + + use java && append-cppflags $(java-pkg_get-jni-cflags) + + eautoreconf +} + +src_configure() { + # libtool file collision, bug 276609 + local myconf="--without-included-ltdl --disable-ltdl-install" + + myconf="${myconf} + $(use_with cairo pangocairo) + $(use_with devil) + $(use_with gtk) + $(use_with gts) + $(use_with qt4) + $(use_with lasi) + $(use_with svg rsvg) + $(use_with X x) + $(use_with X xaw) + $(use_with X lefty) + --with-digcola + --with-fontconfig + --with-freetype2 + --with-ipsepcola + --with-libgd + --with-sfdp + $(use_enable gdk-pixbuf) + --without-ming" + + # new/experimental features, to be tested, disable for now + myconf="${myconf} + --with-cgraph + --without-glitz + --without-ipsepcola + --without-smyrna + --without-visio" + + # Bindings: + myconf="${myconf} + $(use_enable 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 \ + --disable-silent-rules \ + $(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 + + use examples || rm -rf "${ED}"/usr/share/graphviz/demo + + use static-libs || find "${ED}" -name '*.la' -exec rm -f {} + + + dodoc AUTHORS ChangeLog NEWS README + + use python && python_optimize \ + "${D}$(python_get_sitedir)" \ + "${D}/usr/$(get_libdir)/graphviz/python" +} + +pkg_postinst() { + # This actually works if --enable-ltdl is passed + # to configure + dot -c +} diff --git a/media-gfx/graphviz/graphviz-2.38.0.ebuild b/media-gfx/graphviz/graphviz-2.38.0.ebuild new file mode 100644 index 000000000000..19ce277aa44b --- /dev/null +++ b/media-gfx/graphviz/graphviz-2.38.0.ebuild @@ -0,0 +1,256 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) + +inherit autotools eutils flag-o-matic java-pkg-opt-2 multilib python-single-r1 + +DESCRIPTION="Open Source Graph Visualization Software" +HOMEPAGE="http://www.graphviz.org/" +SRC_URI="http://www.graphviz.org/pub/graphviz/stable/SOURCES/${P}.tar.gz" + +LICENSE="CPL-1.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris" +IUSE="+cairo devil doc examples gdk-pixbuf gtk gts guile java lasi nls pdf perl postscript python qt4 ruby svg static-libs tcl X elibc_FreeBSD" + +# Requires ksh +RESTRICT="test" + +RDEPEND=" + sys-libs/zlib + >=dev-libs/expat-2 + >=dev-libs/glib-2.11.1 + >=media-libs/fontconfig-2.3.95 + >=media-libs/freetype-2.1.10 + >=media-libs/gd-2.0.34[fontconfig,jpeg,png,truetype,zlib] + >=media-libs/libpng-1.2:0 + !<=sci-chemistry/cluster-1.3.081231 + sys-devel/libtool + virtual/jpeg:0 + virtual/libiconv + X? ( + x11-libs/libXaw + x11-libs/libX11 + x11-libs/libXmu + x11-libs/libXpm + x11-libs/libXt + ) + cairo? ( + >=x11-libs/pango-1.12 + >=x11-libs/cairo-1.1.10[svg] + ) + devil? ( media-libs/devil[png,jpeg] ) + postscript? ( app-text/ghostscript-gpl ) + gtk? ( x11-libs/gtk+:2 ) + gts? ( sci-libs/gts ) + lasi? ( media-libs/lasi ) + pdf? ( app-text/poppler ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + qt4? ( + dev-qt/qtcore:4 + dev-qt/qtgui:4 + ) + ruby? ( dev-lang/ruby ) + svg? ( gnome-base/librsvg ) + tcl? ( >=dev-lang/tcl-8.3:0= )" +DEPEND="${RDEPEND} + virtual/pkgconfig + sys-devel/flex + guile? ( dev-scheme/guile dev-lang/swig ) + java? ( >=virtual/jdk-1.5 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 )" +REQUIRED_USE=" + !cairo? ( !X !gtk !postscript !lasi ) + python? ( ${PYTHON_REQUIRED_USE} )" + +# 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. +# needs 'pangocairo' enabled in graphviz configuration +# gtk-2 depends on pango, cairo and libX11 directly. +# - gdk-pixbuf +# Disabled, GTK-1 junk. +# - glitz +# Disabled, no particular reason +# needs 'pangocairo' enabled in graphviz configuration +# - ming +# flash plugin via -Tswf requires media-libs/ming-0.4. Disabled as it's +# incomplete. +# - cairo/pango: +# Needs pango for text layout, uses cairo methods to draw stuff +# - xlib: +# needs cairo+pango, +# can make use of gnomeui and inotify support (??? unsure), +# needs libXaw for UI +# UI also links directly against libX11, libXmu, and libXt +# and uses libXpm if available so we make sure it always is + +# There can be swig-generated bindings for the following languages (/tclpkg/gv): +# - c-sharp (disabled) +# - scheme (enabled via guile) ... no longer 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, gvedit, gvpr, lefty, lneato, smyrna, tools/* :) +# sci-libs/gts can be used for some of these +# - lefty: +# needs Xaw and X to build +# - gvedit (via 'qt4'): +# based on ./configure it needs qt-core and qt-gui only +# - smyrna : experimental opengl front-end (via 'smyrna') +# currently disabled -- it segfaults a lot +# needs x11-libs/gtkglext, gnome-base/libglade, media-libs/freeglut +# sci-libs/gts, x11-libs/gtk. Also needs 'gtk','glade','glut','gts' and 'png' +# with flags enabled at configure time + +pkg_setup() { + use python && python-single-r1_pkg_setup + + java-pkg-opt-2_pkg_setup +} + +src_prepare() { + epatch \ + "${FILESDIR}"/${PN}-2.34.0-Xaw-configure.patch \ + "${FILESDIR}"/${PN}-2.34.0-dot-pangocairo-link.patch + + # ToDo: Do the same thing for examples and/or + # write a patch for a configuration-option + # and send it to upstream + # note - the longer sed expression removes multi-line assignments that are extended via '\' + if ! use doc ; then + find . -iname Makefile.am \ + | xargs sed -i -e '/^\(html\|pdf\)_DATA.*\\[[:space:]]*$/{:m;N;s/\\\n//;tm;d}' \ + -e '/^\(html\|pdf\)_DATA/d' || die + fi + + # This is an old version of libtool + # use the ./configure option to exclude its use, and + # delete the dir since we don't need to eautoreconf it + rm -rf libltdl + + # 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 + + # workaround for http://www.graphviz.org/mantisbt/view.php?id=1895 + use elibc_FreeBSD && append-flags $(test-flags -fno-builtin-sincos) + + use java && append-cppflags $(java-pkg_get-jni-cflags) + + eautoreconf +} + +src_configure() { + # libtool file collision, bug 276609 + local myconf="--without-included-ltdl --disable-ltdl-install" + + myconf="${myconf} + $(use_with cairo pangocairo) + $(use_with devil) + $(use_with gtk) + $(use_with gts) + $(use_with qt4) + $(use_with lasi) + $(use_with svg rsvg) + $(use_with X x) + $(use_with X xaw) + $(use_with X lefty) + --with-digcola + --with-fontconfig + --with-freetype2 + --with-ipsepcola + --with-libgd + --with-sfdp + $(use_enable gdk-pixbuf) + --without-ming" + + # new/experimental features, to be tested, disable for now + myconf="${myconf} + --with-cgraph + --without-glitz + --without-ipsepcola + --without-smyrna + --without-visio" + + # Bindings: + myconf="${myconf} + $(use_enable 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 \ + --disable-silent-rules \ + $(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 + + use examples || rm -rf "${ED}"/usr/share/graphviz/demo + + use static-libs || find "${ED}" -name '*.la' -exec rm -f {} + + + dodoc AUTHORS ChangeLog NEWS README + + use python && python_optimize \ + "${D}$(python_get_sitedir)" \ + "${D}/usr/$(get_libdir)/graphviz/python" +} + +pkg_postinst() { + # This actually works if --enable-ltdl is passed + # to configure + dot -c +} diff --git a/media-gfx/graphviz/metadata.xml b/media-gfx/graphviz/metadata.xml new file mode 100644 index 000000000000..4772c3130252 --- /dev/null +++ b/media-gfx/graphviz/metadata.xml @@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>graphics</herd> + <longdescription> +graphviz is a set of graph drawing tools for Unix or MS-Windows +(win32), including a web service interface (webdot). Source code and +binary executables for common platforms are available. Graph drawing +addresses the problem of visualizing structural information by +constructing geometric representations of abstract graphs and networks. +Automatic generation of graph drawings has important applications in key +technologies such as database design, software engineering, VLSI and +network design and visual interfaces in other domains. Situations where +these tools might be particularly useful include: + + * you would like to restructure a program and first need to +understand the relationships between its types, procedures, and source +files. + * you need to find the bottlenecks in an Internet backbone - not +only individual links, but their relationships + * you're debugging a protocol or microarchitecture represented as a +finite state machine and need to figure out how a certain + error state arises + * you would like to browse a database schema, knowledge base, or +distributed program represented pictorially + * you would like to see an overview of a collection of linked +documents + * you would like to discover patterns and communities of interest in +a database of telephone calls or e-mail messages +</longdescription> + <use> + <flag name="devil">Enables DevIL output plugin -Tdevil</flag> + <flag name="gdk-pixbuf">Enables gdk-pixbuf2 plugin</flag> + <flag name="gtk">Enables gtk+ output plugin -Tgtk (needs cairo)</flag> + <flag name="gts">Enables support for gts</flag> + <flag name="lasi"> + Enables PostScript output via <pkg>media-libs/lasi</pkg>, for + plugin -Tlasi (needs cairo) + </flag> + <flag name="qt4">Builds gvedit front-end</flag> + <flag name="X"> + Builds lefty front-end, builds plugin -Txlib, and enables support + for x11 in various other modules (needs cairo) + </flag> + </use> +</pkgmetadata> |