diff options
| author | Niclas Zeising <zeising@FreeBSD.org> | 2014-07-23 20:11:10 +0000 | 
|---|---|---|
| committer | Niclas Zeising <zeising@FreeBSD.org> | 2014-07-23 20:11:10 +0000 | 
| commit | 3b22ad40b17d4be934ba1e7259f9ab4e4b0e47f8 (patch) | |
| tree | acff0235f236dc6bc7ca0a1d89a25befeba12ef2 /databases/rrdtool | |
| parent | Take maintainership again. (diff) | |
Clean up databases/rrdtool
Change library dependensies to use USES= where applicable.
Build ports documentation and examples, depending on respective option.
Add two new options, NLS and GRAPH, the GRAPH option enables the rrdtool graph
command, which pulls in cario and a lot of other dependencies.  [1]
Add missing dependencies.
Becase of shlib version bump, bump portrevision on depending ports.
PR:		192024 [1] (based on)
Submitted by:	asomers
Approved by:	portmgr (blanket, portrevision bumps)
Notes
Notes:
    svn path=/head/; revision=362726
Diffstat (limited to 'databases/rrdtool')
| -rw-r--r-- | databases/rrdtool/Makefile | 57 | ||||
| -rw-r--r-- | databases/rrdtool/files/patch-configure | 11 | ||||
| -rw-r--r-- | databases/rrdtool/files/patch-src__rrd_graph.c | 68 | ||||
| -rw-r--r-- | databases/rrdtool/pkg-plist | 163 | 
4 files changed, 242 insertions, 57 deletions
diff --git a/databases/rrdtool/Makefile b/databases/rrdtool/Makefile index 3d2d38421a8a..e8cf543267e1 100644 --- a/databases/rrdtool/Makefile +++ b/databases/rrdtool/Makefile @@ -3,7 +3,7 @@  PORTNAME=	rrdtool  PORTVERSION=	1.4.8 -PORTREVISION=	1 +PORTREVISION=	2  CATEGORIES=	databases graphics  MASTER_SITES=	http://oss.oetiker.ch/rrdtool/pub/ @@ -12,29 +12,24 @@ COMMENT=	Round Robin Database Tools  LICENSE=	GPLv2 -LIB_DEPENDS=	libfreetype.so:${PORTSDIR}/print/freetype2 \ -		libcairo.so:${PORTSDIR}/graphics/cairo \ -		libpng15.so:${PORTSDIR}/graphics/png \ -		libxml2.so:${PORTSDIR}/textproc/libxml2 \ -		libpangocairo-1.0.so:${PORTSDIR}/x11-toolkits/pango -  CONFLICTS=	rrdtool10-* rrdtool12-*  USE_RC_SUBR=	rrdcached -USE_AUTOTOOLS=	libtool  USE_LDCONFIG=	yes  GNU_CONFIGURE=	yes -USES=		gmake pkgconfig -USE_GNOME=	gnomehack intltool +USES=		gmake libtool pathfix pkgconfig +USE_GNOME=	glib20 libxml2 +INSTALL_TARGET=	install-strip -CONFIGURE_ARGS=	--disable-tcl +CONFIGURE_ARGS=	--disable-tcl --disable-silent-rules -PORTDOCS=	*  PORTEXAMPLES=	4charts.pl bigtops.pl cgi-demo.cgi minmax.pl perftest.pl \  		piped-demo.pl shared-demo.pl stripes.pl -OPTIONS_DEFINE=	DEJAVU JSON MMAP PERL_MODULE PYTHON_MODULE RUBY_MODULE EXAMPLES DOCS -OPTIONS_DEFAULT=	MMAP PERL_MODULE +OPTIONS_DEFINE=	DEJAVU GRAPH JSON MMAP NLS PERL_MODULE PYTHON_MODULE \ +		RUBY_MODULE EXAMPLES DOCS +OPTIONS_DEFAULT=	GRAPH MMAP PERL_MODULE +GRAPH_DESC=		Enable the rrdtool graph command (needs cairo)  DEJAVU_DESC=		Use DejaVu fonts (requires X11)  JSON_DESC=		Support of json export  MMAP_DESC=		Use mmap in rrd_update @@ -68,6 +63,7 @@ PLIST_SUB+=	WITH_RUBY="@comment "  .if ${PORT_OPTIONS:MPERL_MODULE}  USES+=		perl5 +USE_PERL5+=	build run fixpacklist  CONFIGURE_ARGS+=	--enable-perl --enable-perl-site-install  PLIST_SUB+=	WITH_PERL=""  .else @@ -83,26 +79,43 @@ CONFIGURE_ARGS+=	--disable-mmap  EXTRA_PATCHES+=		${FILESDIR}/thirdparty-json.diff  .endif +.if ${PORT_OPTIONS:MGRAPH} +LIB_DEPENDS+=	libfreetype.so:${PORTSDIR}/print/freetype2 \ +		libpng15.so:${PORTSDIR}/graphics/png +USE_GNOME+=	cairo pango +PLIST_SUB+=	WITH_GRAPH="" +.else +CONFIGURE_ARGS+=--disable-rrdcgi --disable-rrd_graph +PLIST_SUB+=	WITH_GRAPH="@comment " +.endif + +.if ${PORT_OPTIONS:MNLS} +USES+=	gettext +USE_GNOME+=	intltool +.else +CONFIGURE_ARGS+=--disable-nls +.endif +  .if exists(${LOCALBASE}/lib/X11/fonts/dejavu) || ${PORT_OPTIONS:MDEJAVU}  RUN_DEPENDS+=	${LOCALBASE}/lib/X11/fonts/dejavu:${PORTSDIR}/x11-fonts/dejavu  .endif  CPPFLAGS+=	-I${LOCALBASE}/include -I${LOCALBASE}/include/freetype2 -##LDFLAGS+=	-L${LOCALBASE}/lib -CFLAGS:=	${CFLAGS:N-ffast-math}  post-extract: -	@${REINPLACE_CMD} -e 's/^POD3/#POD3/' ${WRKSRC}/doc/Makefile.in  .if ! ${PORT_OPTIONS:MDOCS} -	@${REINPLACE_CMD} -e 's/[[:space:]]install-idocDATA//g' \ -		-e 's/[[:space:]]install-ihtmlDATA//g' \ -		-e 's/^[[:space:]].*cd .* rrdtool.html index.html/	#/' \ -		${WRKSRC}/doc/Makefile.in +	@${REINPLACE_CMD} -e '/^SUBDIRS = /s| doc | |' \ +		${WRKSRC}/Makefile.in  .endif  .if ! ${PORT_OPTIONS:MEXAMPLES} -	${REINPLACE_CMD} -e '/^SUBDIRS = /s| examples | |' \ +	@${REINPLACE_CMD} -e '/^SUBDIRS = /s| examples | |' \  		${WRKSRC}/Makefile.in  .endif +	@${REINPLACE_CMD} -E 's|(^rrdcached_LDADD = librrd_th.la)|\1 $$\(ALL_LIBS\)|' \ +		${WRKSRC}/src/Makefile.in + +	@${REINPLACE_CMD} -E 's|(^rrdtool_LDADD = librrd.la)|\1 $$\(ALL_LIBS\)|' \ +		${WRKSRC}/src/Makefile.in  post-install:  .if !defined(BATCH) && ${PORT_OPTIONS:MEXAMPLES} diff --git a/databases/rrdtool/files/patch-configure b/databases/rrdtool/files/patch-configure new file mode 100644 index 000000000000..baf59b07e1af --- /dev/null +++ b/databases/rrdtool/files/patch-configure @@ -0,0 +1,11 @@ +--- configure.orig	2013-05-23 09:55:19.000000000 +0200 ++++ configure	2014-07-15 19:59:43.000000000 +0200 +@@ -12846,7 +12846,7 @@ +  +  + if test "x$GCC" = "xyes"; then +-  for flag in -fno-strict-aliasing -Wall -std=gnu99 -pedantic -Wundef -Wshadow -Wpointer-arith -Wcast-align -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline -Wold-style-definition -W; do ++  for flag in -fno-strict-aliasing -Wall -std=gnu99 -pedantic -Wundef -Wshadow -Wpointer-arith -Wcast-align -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline -Wold-style-definition; do +     oCFLAGS="$CFLAGS" +     CFLAGS="$CFLAGS $flag" +     cachename=rd_cv_gcc_flag_`echo $flag|sed 's/[^A-Za-z]/_/g'` diff --git a/databases/rrdtool/files/patch-src__rrd_graph.c b/databases/rrdtool/files/patch-src__rrd_graph.c new file mode 100644 index 000000000000..5cccdcf53c73 --- /dev/null +++ b/databases/rrdtool/files/patch-src__rrd_graph.c @@ -0,0 +1,68 @@ +--- src/rrd_graph.c.orig	2013-05-23 09:55:07.000000000 +0200 ++++ src/rrd_graph.c	2014-07-20 22:11:58.000000000 +0200 +@@ -305,6 +305,52 @@ +  + #undef conv_if +  ++ ++static int bad_format_imginfo( ++    char *fmt) ++{ ++    char     *ptr; ++    int       n = 0; ++ ++    ptr = fmt; ++    while (*ptr != '\0') ++        if (*ptr++ == '%') { ++ ++            /* line cannot end with percent char */ ++            if (*ptr == '\0') ++                return 1; ++            /* '%%' is allowed */ ++            if (*ptr == '%') ++                ptr++; ++            /* '%s', '%S' are allowed */ ++            else if (*ptr == 's' || *ptr == 'S') { ++                n = 1; ++                ptr++; ++            } ++ ++            /* or else '% 4lu' and such are allowed */ ++            else { ++                /* optional padding character */ ++                if (*ptr == ' ') ++                    ptr++; ++                /* This should take care of 'm' */ ++                while (*ptr >= '0' && *ptr <= '9') ++                    ptr++; ++                /* 'lu' must follow here */ ++                if (*ptr++ != 'l') ++                    return 1; ++                if (*ptr == 'u') ++                    ptr++; ++                else ++                    return 1; ++                n++; ++            } ++        } ++ ++    return (n != 3); ++} ++ ++ + int im_free( +     image_desc_t *im) + { +@@ -4022,6 +4068,12 @@ +         char     *path; +         char     *filename; +  ++        if (bad_format_imginfo(im.imginfo)) { ++            rrd_info_free(im.grinfo); ++            im_free(&im); ++            rrd_set_error("bad format for imginfo"); ++            return NULL; ++        } +         path = strdup(im.graphfile); +         filename = basename(path); +         info.u_str = diff --git a/databases/rrdtool/pkg-plist b/databases/rrdtool/pkg-plist index 483166758af1..81ce140461b1 100644 --- a/databases/rrdtool/pkg-plist +++ b/databases/rrdtool/pkg-plist @@ -1,5 +1,5 @@  bin/rrdcached -bin/rrdcgi +%%WITH_GRAPH%%bin/rrdcgi  bin/rrdcreate  bin/rrdinfo  bin/rrdtool @@ -8,42 +8,43 @@ include/rrd.h  include/rrd_client.h  include/rrd_format.h  lib/librrd.a -lib/librrd.la  lib/librrd.so -lib/librrd.so.6 +lib/librrd.so.4 +lib/librrd.so.4.2.1  lib/librrd_th.a -lib/librrd_th.la  lib/librrd_th.so -lib/librrd_th.so.6 +lib/librrd_th.so.4 +lib/librrd_th.so.4.2.1  libdata/pkgconfig/librrd.pc -man/man1/bin_dec_hex.1.gz -man/man1/cdeftutorial.1.gz -man/man1/rpntutorial.1.gz -man/man1/rrd-beginners.1.gz -man/man1/rrdbuild.1.gz -man/man1/rrdcached.1.gz -man/man1/rrdcgi.1.gz -man/man1/rrdcreate.1.gz -man/man1/rrddump.1.gz -man/man1/rrdfetch.1.gz -man/man1/rrdfirst.1.gz -man/man1/rrdflushcached.1.gz -man/man1/rrdgraph.1.gz -man/man1/rrdgraph_data.1.gz -man/man1/rrdgraph_examples.1.gz -man/man1/rrdgraph_graph.1.gz -man/man1/rrdgraph_rpn.1.gz -man/man1/rrdinfo.1.gz -man/man1/rrdlast.1.gz -man/man1/rrdlastupdate.1.gz -man/man1/rrdresize.1.gz -man/man1/rrdrestore.1.gz -man/man1/rrdthreads.1.gz -man/man1/rrdtool.1.gz -man/man1/rrdtune.1.gz -man/man1/rrdtutorial.1.gz -man/man1/rrdupdate.1.gz -man/man1/rrdxport.1.gz +%%PORTDOCS%%man/man1/bin_dec_hex.1.gz +%%PORTDOCS%%man/man1/cdeftutorial.1.gz +%%PORTDOCS%%man/man1/rpntutorial.1.gz +%%PORTDOCS%%man/man1/rrd-beginners.1.gz +%%PORTDOCS%%man/man1/rrdbuild.1.gz +%%PORTDOCS%%man/man1/rrdcached.1.gz +%%PORTDOCS%%man/man1/rrdcgi.1.gz +%%PORTDOCS%%man/man1/rrdcreate.1.gz +%%PORTDOCS%%man/man1/rrddump.1.gz +%%PORTDOCS%%man/man1/rrdfetch.1.gz +%%PORTDOCS%%man/man1/rrdfirst.1.gz +%%PORTDOCS%%man/man1/rrdflushcached.1.gz +%%PORTDOCS%%man/man1/rrdgraph.1.gz +%%PORTDOCS%%man/man1/rrdgraph_data.1.gz +%%PORTDOCS%%man/man1/rrdgraph_examples.1.gz +%%PORTDOCS%%man/man1/rrdgraph_graph.1.gz +%%PORTDOCS%%man/man1/rrdgraph_rpn.1.gz +%%PORTDOCS%%man/man1/rrdinfo.1.gz +%%PORTDOCS%%man/man1/rrdlast.1.gz +%%PORTDOCS%%man/man1/rrdlastupdate.1.gz +%%PORTDOCS%%man/man1/rrdresize.1.gz +%%PORTDOCS%%man/man1/rrdrestore.1.gz +%%PORTDOCS%%man/man1/rrdthreads.1.gz +%%PORTDOCS%%man/man1/rrdtool.1.gz +%%PORTDOCS%%man/man1/rrdtune.1.gz +%%PORTDOCS%%man/man1/rrdtutorial.1.gz +%%PORTDOCS%%man/man1/rrdupdate.1.gz +%%PORTDOCS%%man/man1/rrdxport.1.gz +%%PORTDOCS%%man/man3/librrd.3.gz  %%WITH_PERL%%%%PERL5_MAN3%%/RRDp.3.gz  %%WITH_PERL%%%%PERL5_MAN3%%/RRDs.3.gz  %%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/RRDp/.packlist @@ -53,10 +54,102 @@ man/man1/rrdxport.1.gz  %%WITH_PERL%%%%SITE_PERL%%/RRDp.pm  %%WITH_PYTHON%%%%PYTHON_SITELIBDIR%%/rrdtoolmodule.so  %%WITH_RUBY%%%%RUBY_SITEARCHLIBDIR%%/RRD.so -%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/RRDp -%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/RRDs  %%PORTEXAMPLES%%share/rrdtool/examples/rrdcached/RRDCached.pm  %%PORTEXAMPLES%%share/rrdtool/examples/rrdcached/rrdcached-size.pl +%%PORTDOCS%%%%DOCSDIR%%/html/RRDp.html +%%PORTDOCS%%%%DOCSDIR%%/html/RRDs.html +%%PORTDOCS%%%%DOCSDIR%%/html/bin_dec_hex.html +%%PORTDOCS%%%%DOCSDIR%%/html/cdeftutorial.html +%%PORTDOCS%%%%DOCSDIR%%/html/index.html +%%PORTDOCS%%%%DOCSDIR%%/html/librrd.html +%%PORTDOCS%%%%DOCSDIR%%/html/rpntutorial.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrd-beginners.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdbuild.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdcached.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdcgi.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdcreate.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrddump.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdfetch.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdfirst.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdflushcached.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdgraph.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdgraph_data.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdgraph_examples.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdgraph_graph.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdgraph_rpn.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdinfo.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdlast.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdlastupdate.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdresize.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdrestore.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdthreads.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdtool.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdtune.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdtutorial.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdupdate.html +%%PORTDOCS%%%%DOCSDIR%%/html/rrdxport.html +%%PORTDOCS%%%%DOCSDIR%%/txt/bin_dec_hex.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/bin_dec_hex.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/cdeftutorial.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/cdeftutorial.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/librrd.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rpntutorial.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rpntutorial.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrd-beginners.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrd-beginners.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdbuild.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdbuild.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdcached.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdcached.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdcgi.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdcgi.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdcreate.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdcreate.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrddump.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrddump.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdfetch.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdfetch.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdfirst.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdfirst.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdflushcached.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdflushcached.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdgraph.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdgraph.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdgraph_data.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdgraph_data.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdgraph_examples.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdgraph_examples.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdgraph_graph.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdgraph_graph.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdgraph_rpn.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdgraph_rpn.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdinfo.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdinfo.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdlast.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdlast.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdlastupdate.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdlastupdate.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdresize.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdresize.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdrestore.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdrestore.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdthreads.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdthreads.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdtool.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdtool.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdtune.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdtune.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdtutorial.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdtutorial.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdupdate.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdupdate.txt +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdxport.pod +%%PORTDOCS%%%%DOCSDIR%%/txt/rrdxport.txt +%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/RRDp +%%WITH_PERL%%@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/RRDs +%%PORTDOCS%%@dirrm %%DOCSDIR%%/html +%%PORTDOCS%%@dirrm %%DOCSDIR%%/txt +%%PORTDOCS%%@dirrm %%DOCSDIR%%  %%PORTEXAMPLES%%@dirrm share/rrdtool/examples/rrdcached  %%PORTEXAMPLES%%@dirrm share/rrdtool/examples  %%PORTEXAMPLES%%@dirrm share/rrdtool  | 
