Added configure option to disable building rrd_graph: --disable-rrd_graph. With suppo...
authoroetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa>
Tue, 18 Jan 2011 08:49:24 +0000 (08:49 +0000)
committeroetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa>
Tue, 18 Jan 2011 08:49:24 +0000 (08:49 +0000)
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@2172 a5681a0c-68f1-0310-ab6d-d61299d08faa

configure.ac
src/Makefile.am
src/rrd_tool.c

index 453d981..a5c9eaa 100644 (file)
@@ -124,6 +124,13 @@ AM_CONDITIONAL(BUILD_LIBWRAP,[test $have_libwrap != no])
 
 AM_CONDITIONAL(BUILD_RRDCGI,[test $enable_rrdcgi != no])
 
+AC_ARG_ENABLE(rrd_graph,AS_HELP_STRING([--disable-rrd_graph],[disable all rrd_graph functions]),
+[enable_rrdcgi=no],[enable_rrd_graph=yes])
+
+if test $enable_rrd_graph != no; then
+ AC_DEFINE([HAVE_RRD_GRAPH], [], [is rrd_graph supported by this install])
+fi
+
 dnl Check if we run on a system that has fonts
 AC_ARG_WITH(rrd-default-font,
 [  --with-rrd-default-font=[OPTIONS]  set the full path to your default font.],
@@ -538,9 +545,12 @@ AC_ARG_ENABLE(libdbi,AS_HELP_STRING([--disable-libdbi],[do not build in support
 AM_CONDITIONAL(BUILD_LIBDBI,[test $have_libdbi != no])
 
 
+AM_CONDITIONAL(BUILD_RRDGRAPH,[test $enable_rrd_graph != no])
+
 
 CORE_LIBS="$LIBS"
 
+if test $enable_rrd_graph != no; then
 dnl EX_CHECK_ALL(z,          zlibVersion,               zlib.h,                 zlib,        1.2.3,  http://www.gzip.org/zlib/, "")
 dnl EX_CHECK_ALL(png,        png_access_version_number, png.h,                  libpng,      1.2.10,  http://prdownloads.sourceforge.net/libpng/, "")
 dnl EX_CHECK_ALL(freetype,   FT_Init_FreeType,          ft2build.h,            freetype2,   2.1.10,  http://prdownloads.sourceforge.net/freetype/, /usr/include/freetype2)
@@ -551,6 +561,9 @@ EX_CHECK_ALL(cairo,      cairo_pdf_surface_create,      cairo-pdf.h,
 EX_CHECK_ALL(cairo,      cairo_ps_surface_create,       cairo-ps.h,             cairo-ps,    1.4.6,  http://cairographics.org/releases/, "")
 EX_CHECK_ALL(glib-2.0,   glib_check_version,            glib.h,                 glib-2.0,    2.12.12, ftp://ftp.gtk.org/pub/glib/2.12/, "")
 EX_CHECK_ALL(pangocairo-1.0,  pango_cairo_context_set_font_options,  pango/pango.h,  pangocairo,  1.17,    http://ftp.gnome.org/pub/GNOME/sources/pango/1.17, "")
+
+fi
+
 EX_CHECK_ALL(xml2,       xmlParseFile,                  libxml/parser.h,        libxml-2.0,        2.6.31,  http://xmlsoft.org/downloads.html, /usr/include/libxml2)
 
 if test "$EX_CHECK_ALL_ERR" = "YES"; then
@@ -959,6 +972,7 @@ echo "Config is DONE!"
 echo
 echo "          With MMAP IO: $enable_mmap"
 echo "      Build rrd_getopt: $build_getopt"
+echo "       Build rrd_graph: $enable_rrd_graph"
 echo "       Static programs: $staticprogs"
 echo "          Perl Modules: $COMP_PERL"
 echo "           Perl Binary: $PERL"
index 9998e4a..5ec27da 100644 (file)
@@ -32,24 +32,27 @@ UPD_C_FILES =               \
        rrd_update.c
 
 RRD_C_FILES =          \
-       hash_32.c       \
-       pngsize.c       \
        rrd_create.c    \
-       rrd_graph.c     \
-       rrd_graph_helper.c      \
+       hash_32.c       \
        rrd_version.c   \
        rrd_last.c      \
        rrd_lastupdate.c        \
        rrd_first.c     \
        rrd_restore.c   \
-       rrd_xport.c     \
-       rrd_gfx.c \
        rrd_dump.c      \
        rrd_flushcached.c \
        rrd_fetch.c     \
        rrd_resize.c \
        rrd_tune.c
 
+if BUILD_RRDGRAPH
+RRD_C_FILES += rrd_graph.c     \
+       rrd_graph_helper.c      \
+       rrd_xport.c     \
+       rrd_gfx.c \
+       pngsize.c
+endif
+
 noinst_HEADERS = \
        unused.h \
         gettext.h \
index cc2aede..bb1bc3e 100644 (file)
@@ -695,6 +695,7 @@ int HandleInputLine(
             free(data);
         }
     } else if (strcmp("xport", argv[1]) == 0) {
+#ifdef HAVE_RRD_GRAPH
         int       xxsize;
         unsigned long int j = 0;
         time_t    start, end, ti;
@@ -771,7 +772,11 @@ int HandleInputLine(
             setlocale(LC_NUMERIC, old_locale);
         }
         free(vtag);
+#else
+        rrd_set_error("the instance of rrdtool has been compiled without graphics");
+#endif
     } else if (strcmp("graph", argv[1]) == 0) {
+#ifdef HAVE_RRD_GRAPH
         char    **calcpr;
 
 #ifdef notused /*XXX*/
@@ -805,7 +810,11 @@ int HandleInputLine(
             }
         }
 
+#else
+       rrd_set_error("the instance of rrdtool has been compiled without graphics");
+#endif
     } else if (strcmp("graphv", argv[1]) == 0) {
+#ifdef HAVE_RRD_GRAPH
         rrd_info_t *grinfo = NULL;  /* 1 to distinguish it from the NULL that rrd_graph sends in */
 
         grinfo = rrd_graph_v(argc - 1, &argv[1]);
@@ -813,7 +822,9 @@ int HandleInputLine(
             rrd_info_print(grinfo);
             rrd_info_free(grinfo);
         }
-
+#else
+       rrd_set_error("the instance of rrdtool has been compiled without graphics");
+#endif
     } else if (strcmp("tune", argv[1]) == 0)
         rrd_tune(argc - 1, &argv[1]);
 #ifndef WIN32