diff options
author | Jeroen Roovers <jer@gentoo.org> | 2014-07-15 14:04:32 +0000 |
---|---|---|
committer | Jeroen Roovers <jer@gentoo.org> | 2014-07-15 14:04:32 +0000 |
commit | 8acb89e4c5ea353d17005342cabb89c0a941f3f7 (patch) | |
tree | 981c73f199dbe3bb42595751bcb16a753c4b38c5 /net-analyzer/rrdtool | |
parent | Set USE=graph dependency on net-analyzer/rrdtool (bug #509682). (diff) | |
download | gentoo-2-8acb89e4c5ea353d17005342cabb89c0a941f3f7.tar.gz gentoo-2-8acb89e4c5ea353d17005342cabb89c0a941f3f7.tar.bz2 gentoo-2-8acb89e4c5ea353d17005342cabb89c0a941f3f7.zip |
When USE=-graph, do not compile rrd_graph* support into dependent libraries.
(Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key A792A613)
Diffstat (limited to 'net-analyzer/rrdtool')
-rw-r--r-- | net-analyzer/rrdtool/ChangeLog | 8 | ||||
-rw-r--r-- | net-analyzer/rrdtool/files/rrdtool-1.4.8-disable-rrd_graph.patch | 189 | ||||
-rw-r--r-- | net-analyzer/rrdtool/rrdtool-1.4.8-r2.ebuild | 161 |
3 files changed, 357 insertions, 1 deletions
diff --git a/net-analyzer/rrdtool/ChangeLog b/net-analyzer/rrdtool/ChangeLog index 77cc9c8e2097..8c96a1b93440 100644 --- a/net-analyzer/rrdtool/ChangeLog +++ b/net-analyzer/rrdtool/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for net-analyzer/rrdtool # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-analyzer/rrdtool/ChangeLog,v 1.263 2014/05/20 06:01:00 graaff Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-analyzer/rrdtool/ChangeLog,v 1.264 2014/07/15 14:04:32 jer Exp $ + +*rrdtool-1.4.8-r2 (15 Jul 2014) + + 15 Jul 2014; Jeroen Roovers <jer@gentoo.org> +rrdtool-1.4.8-r2.ebuild, + +files/rrdtool-1.4.8-disable-rrd_graph.patch: + When USE=-graph, do not compile rrd_graph* support into dependent libraries. *rrdtool-1.4.8-r1 (20 May 2014) diff --git a/net-analyzer/rrdtool/files/rrdtool-1.4.8-disable-rrd_graph.patch b/net-analyzer/rrdtool/files/rrdtool-1.4.8-disable-rrd_graph.patch new file mode 100644 index 000000000000..1af3d848147a --- /dev/null +++ b/net-analyzer/rrdtool/files/rrdtool-1.4.8-disable-rrd_graph.patch @@ -0,0 +1,189 @@ +--- a/bindings/perl-shared/RRDs.xs ++++ b/bindings/perl-shared/RRDs.xs +@@ -189,6 +189,7 @@ + OUTPUT: + RETVAL + ++#ifdef HAVE_RRD_GRAPH + SV * + rrd_graph(...) + PROTOTYPE: @ +@@ -235,6 +236,8 @@ + PUSHs(sv_2mortal(newSViv(xsize))); + PUSHs(sv_2mortal(newSViv(ysize))); + ++#endif /* HAVE_RRD_GRAPH */ ++ + SV * + rrd_fetch(...) + PROTOTYPE: @ +@@ -397,6 +400,7 @@ + OUTPUT: + RETVAL + ++#ifdef HAVE_RRD_GRAPH + SV* + rrd_graphv(...) + PROTOTYPE: @ +@@ -410,6 +414,8 @@ + OUTPUT: + RETVAL + ++#endif /* HAVE_RRD_GRAPH */ ++ + int + rrd_dump(...) + PROTOTYPE: @ +--- a/bindings/lua/rrdlua.c ++++ b/bindings/lua/rrdlua.c +@@ -267,6 +267,7 @@ + return 1; + } + ++#ifdef HAVE_RRD_GRAPH + static int + lua_rrd_graph (lua_State * L) + { +@@ -291,6 +292,7 @@ + rrd_freemem(calcpr); + return 3; + } ++#endif /* HAVE_RRD_GRAPH */ + + static int + lua_rrd_flushcached(lua_State *L) +@@ -305,11 +307,13 @@ + return lua_rrd_infocall(L, "info", rrd_info); + } + ++#ifdef HAVE_RRD_GRAPH + static int + lua_rrd_graphv (lua_State * L) + { + return lua_rrd_infocall(L, "graphv", rrd_graph_v); + } ++#endif /* HAVE_RRD_GRAPH */ + + static int + lua_rrd_updatev (lua_State * L) +@@ -347,7 +351,9 @@ + {"dump", lua_rrd_dump}, + {"fetch", lua_rrd_fetch}, + {"first", lua_rrd_first}, ++#ifdef HAVE_RRD_GRAPH + {"graph", lua_rrd_graph}, ++#endif /* HAVE_RRD_GRAPH */ + {"last", lua_rrd_last}, + {"resize", lua_rrd_resize}, + {"restore", lua_rrd_restore}, +@@ -357,7 +363,9 @@ + #if defined(DINF) + {"info", lua_rrd_info}, + {"updatev", lua_rrd_updatev}, ++#ifdef HAVE_RRD_GRAPH + {"graphv", lua_rrd_graphv}, ++#endif /* HAVE_RRD_GRAPH */ + #endif + {NULL, NULL} + }; +--- a/bindings/python/rrdtoolmodule.c ++++ b/bindings/python/rrdtoolmodule.c +@@ -261,6 +261,7 @@ + return r; + } + ++#ifdef HAVE_RRD_GRAPH + static char PyRRD_graph__doc__[] = + "graph(args..): Create a graph based on data from one or several RRD\n" + " graph filename [-s|--start seconds] " +@@ -327,6 +328,7 @@ + destroy_args(&argv); + return r; + } ++#endif /* HAVE_RRD_GRAPH */ + + static char PyRRD_tune__doc__[] = + "tune(args...): Modify some basic properties of a Round Robin Database\n" +@@ -503,6 +505,7 @@ + return r; + } + ++#ifdef HAVE_RRD_GRAPH + static char PyRRD_graphv__doc__[] = + "graphv is called in the same manner as graph"; + +@@ -530,6 +533,7 @@ + destroy_args(&argv); + return r; + } ++#endif /* HAVE_RRD_GRAPH */ + + static char PyRRD_updatev__doc__[] = + "updatev is called in the same manner as update"; +@@ -672,13 +676,17 @@ + meth("create", PyRRD_create, PyRRD_create__doc__), + meth("update", PyRRD_update, PyRRD_update__doc__), + meth("fetch", PyRRD_fetch, PyRRD_fetch__doc__), ++#ifdef HAVE_RRD_GRAPH + meth("graph", PyRRD_graph, PyRRD_graph__doc__), ++#endif /* HAVE_RRD_GRAPH */ + meth("tune", PyRRD_tune, PyRRD_tune__doc__), + meth("first", PyRRD_first, PyRRD_first__doc__), + meth("last", PyRRD_last, PyRRD_last__doc__), + meth("resize", PyRRD_resize, PyRRD_resize__doc__), + meth("info", PyRRD_info, PyRRD_info__doc__), ++#ifdef HAVE_RRD_GRAPH + meth("graphv", PyRRD_graphv, PyRRD_graphv__doc__), ++#endif /* HAVE_RRD_GRAPH */ + meth("updatev", PyRRD_updatev, PyRRD_updatev__doc__), + meth("flushcached", PyRRD_flushcached, PyRRD_flushcached__doc__), + meth("xport", PyRRD_xport, PyRRD_xport__doc__), +--- a/src/rrd_cgi.c ++++ b/src/rrd_cgi.c +@@ -56,6 +56,7 @@ + const char **); + + /* call rrd_graph and insert appropriate image tag */ ++#ifdef HAVE_RRD_GRAPH + char *drawgraph( + long, + const char **); +@@ -64,6 +65,7 @@ + char *drawprint( + long, + const char **); ++#endif /* HAVE_RRD_GRAPH */ + + /* pretty-print the <last></last> value for some.rrd via strftime() */ + char *printtimelast( +@@ -542,9 +544,13 @@ + } + parse(&buffer, i, "<RRD::GETVAR", rrdgetvar); + parse(&buffer, i, "<RRD::GOODFOR", rrdgoodfor); ++#ifdef HAVE_RRD_GRAPH + parse(&buffer, i, "<RRD::GRAPH", drawgraph); ++#endif /* HAVE_RRD_GRAPH */ + parse(&buffer, i, "<RRD::INCLUDE", includefile); ++#ifdef HAVE_RRD_GRAPH + parse(&buffer, i, "<RRD::PRINT", drawprint); ++#endif /* HAVE_RRD_GRAPH */ + parse(&buffer, i, "<RRD::SETCONSTVAR", rrdsetvarconst); + parse(&buffer, i, "<RRD::SETENV", rrdsetenv); + parse(&buffer, i, "<RRD::SETVAR", rrdsetvar); +@@ -929,7 +935,7 @@ + } + + +- ++#ifdef HAVE_RRD_GRAPH + char *drawgraph( + long argc, + const char **args) +@@ -961,6 +967,7 @@ + } + return NULL; + } ++#endif /* HAVE_RRD_GRAPH */ + + char *drawprint( + long argc, diff --git a/net-analyzer/rrdtool/rrdtool-1.4.8-r2.ebuild b/net-analyzer/rrdtool/rrdtool-1.4.8-r2.ebuild new file mode 100644 index 000000000000..cc358201d590 --- /dev/null +++ b/net-analyzer/rrdtool/rrdtool-1.4.8-r2.ebuild @@ -0,0 +1,161 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-analyzer/rrdtool/rrdtool-1.4.8-r2.ebuild,v 1.1 2014/07/15 14:04:32 jer Exp $ + +EAPI="5" + +DISTUTILS_OPTIONAL="true" +GENTOO_DEPEND_ON_PERL="no" +PYTHON_COMPAT=( python2_7 ) +inherit eutils distutils-r1 flag-o-matic multilib perl-module autotools + +DESCRIPTION="A system to store and display time-series data" +HOMEPAGE="http://oss.oetiker.ch/rrdtool/" +SRC_URI="http://oss.oetiker.ch/rrdtool/pub/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos ~x86-solaris" +IUSE="dbi doc +graph lua perl python ruby rrdcgi static-libs tcl tcpd" + +PDEPEND=" + ruby? ( ~dev-ruby/rrdtool-bindings-${PV} ) +" + +RDEPEND=" + >=dev-libs/glib-2.28.7[static-libs(+)?] + >=dev-libs/libxml2-2.7.8[static-libs(+)?] + dbi? ( dev-db/libdbi[static-libs(+)?] ) + graph? ( + >=media-libs/libpng-1.5.10[static-libs(+)?] + >=x11-libs/cairo-1.10.2[svg,static-libs(+)?] + >=x11-libs/pango-1.28 + ) + lua? ( dev-lang/lua[deprecated] ) + perl? ( dev-lang/perl ) + python? ( ${PYTHON_DEPS} ) + tcl? ( dev-lang/tcl ) + tcpd? ( sys-apps/tcp-wrappers ) +" + +DEPEND=" + ${RDEPEND} + sys-apps/groff + virtual/pkgconfig + virtual/awk +" + +python_compile() { + cd bindings/python || die 'can not enter to python bindings directory' + distutils-r1_python_compile +} + +python_install() { + cd bindings/python || die 'can not enter to python bindings directory' + distutils-r1_python_install +} + +src_prepare() { + epatch \ + "${FILESDIR}"/${PN}-1.4.7-configure.ac.patch \ + "${FILESDIR}"/${P}-disable-rrd_graph.patch + + # bug 456810 + # no time to sleep + sed -i \ + -e 's|$LUA_CFLAGS|IGNORE_THIS_BAD_TEST|g' \ + -e 's|^sleep 1$||g' \ + configure.ac || die + + # Python bindings are built/installed manually + sed -i \ + -e '/^all-local:/s| @COMP_PYTHON@||' \ + bindings/Makefile.am || die + + eautoreconf +} + +src_configure() { + filter-flags -ffast-math + + export RRDDOCDIR=${EPREFIX}/usr/share/doc/${PF} + + # to solve bug #260380 + [[ ${CHOST} == *-solaris* ]] && append-flags -D__EXTENSIONS__ + + # Stub configure.ac + local myconf=() + if ! use tcpd; then + myconf+=( "--disable-libwrap" ) + fi + if ! use dbi; then + myconf+=( "--disable-libdbi" ) + fi + + econf \ + $(use_enable graph rrd_graph) \ + $(use_enable lua lua-site-install) \ + $(use_enable lua) \ + $(use_enable perl perl-site-install) \ + $(use_enable perl) \ + $(use_enable python) \ + $(use_enable rrdcgi) \ + $(use_enable static-libs static) \ + $(use_enable tcl) \ + $(use_with tcl tcllib "${EPREFIX}"/usr/$(get_libdir)) \ + --with-perl-options=INSTALLDIRS=vendor \ + --disable-ruby-site-install \ + --disable-ruby \ + ${myconf[@]} +} + +src_compile() { + default + + use python && distutils-r1_src_compile +} + +src_install() { + default + + if ! use doc ; then + rm -rf "${ED}"usr/share/doc/${PF}/{html,txt} + fi + + if use !rrdcgi ; then + # uses rrdcgi, causes invalid shebang error in Prefix, useless + # without rrdcgi installed + rm -f "${ED}"usr/share/${PN}/examples/cgi-demo.cgi + fi + + if use perl ; then + perl_delete_localpod + perl_delete_packlist + fi + + use python && distutils-r1_src_install + + dodoc CHANGES CONTRIBUTORS NEWS README THREADS TODO + + find "${ED}"usr -name '*.la' -exec rm -f {} + + + keepdir /var/lib/rrdcached/journal/ + keepdir /var/lib/rrdcached/db/ + + newconfd "${FILESDIR}"/rrdcached.confd rrdcached + newinitd "${FILESDIR}"/rrdcached.init rrdcached +} + +pkg_postinst() { + ewarn "Since version 1.3, rrdtool dump emits completely legal xml. Basically this" + ewarn "means that it contains an xml header and a DOCTYPE definition. Unfortunately" + ewarn "this causes older versions of rrdtool restore to be unhappy." + ewarn + ewarn "To restore a new dump with an old rrdtool restore version, either remove" + ewarn "the xml header and the doctype by hand (both on the first line of the dump)" + ewarn "or use rrdtool dump --no-header." + ewarn + ewarn ">=net-analyzer/rrdtool-1.3 does not have any default font bundled. Thus if" + ewarn ">you've upgraded from rrdtool-1.2.x and don't have any font installed to make" + ewarn ">lables visible, please, install some font, e.g. media-fonts/dejavu." +} |