From 3b22ad40b17d4be934ba1e7259f9ab4e4b0e47f8 Mon Sep 17 00:00:00 2001 From: Niclas Zeising Date: Wed, 23 Jul 2014 20:11:10 +0000 Subject: 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) --- databases/rrdtool/files/patch-configure | 11 +++++ databases/rrdtool/files/patch-src__rrd_graph.c | 68 ++++++++++++++++++++++++++ 2 files changed, 79 insertions(+) create mode 100644 databases/rrdtool/files/patch-configure create mode 100644 databases/rrdtool/files/patch-src__rrd_graph.c (limited to 'databases/rrdtool/files') 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 = -- cgit v1.2.3