Code

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/branches/1.4@2172 a5681a0c-68f1-0310-ab6d-d61299d08faa

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

index 6ed90df78de9e8d6430bbd0cf065f828de1fd706..12f6ece0a3c49ef06b204d5f1132abc13682f024 100644 (file)
@@ -102,6 +102,13 @@ AC_DEFINE_UNQUOTED(RRDGRAPH_YLEGEND_ANGLE,${RRDGRAPH_YLEGEND_ANGLE:-90.0},
 AC_ARG_ENABLE(rrdcgi,AS_HELP_STRING([--disable-rrdcgi],[disable building of rrdcgi]),
 [],[enable_rrdcgi=yes])
 
+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.],
@@ -536,9 +543,12 @@ AM_CONDITIONAL(BUILD_LIBWRAP,[test $have_libwrap != no])
 
 AM_CONDITIONAL(BUILD_RRDCGI,[test $enable_rrdcgi != 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)
@@ -549,6 +559,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
@@ -957,6 +970,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 9998e4afdefe9506398c19233badfc82d8fd90d1..5ec27da8b96e07b54012bbcf15f92d0b24b59d78 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 a135dd4571e327d5b83ed9913444a7d4f5f95c9d..156f96b29f8fe0a6765e13b4887642f87827c40b 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