Merge branch 'collectd-4.6'
authorFlorian Forster <octo@leeloo.lan.home.verplant.org>
Wed, 18 Mar 2009 17:41:27 +0000 (18:41 +0100)
committerFlorian Forster <octo@leeloo.lan.home.verplant.org>
Wed, 18 Mar 2009 17:41:27 +0000 (18:41 +0100)
1  2 
configure.in
src/collectd.conf.in

diff --combined configure.in
@@@ -409,7 -409,7 +409,7 @@@ AC_CHECK_FUNCS(gettimeofday select strd
  AC_FUNC_STRERROR_R
  
  AC_CACHE_CHECK([for strtok_r],
-   [have_strtok_r_default],
+   [c_cv_have_strtok_r_default],
    AC_LINK_IFELSE(
      AC_LANG_PROGRAM(
      [[[[
          printf ("token = %s;\n", token);
        }
      ]]]]),
-     [have_strtok_r_default="yes"],
-     [have_strtok_r_default="no"]
+     [c_cv_have_strtok_r_default="yes"],
+     [c_cv_have_strtok_r_default="no"]
    )
  )
  
- if test "x$have_strtok_r_default" = "xno"
+ if test "x$c_cv_have_strtok_r_default" = "xno"
  then
    SAVE_CFLAGS="$CFLAGS"
    CFLAGS="$CFLAGS -D_REENTRANT=1"
  
    AC_CACHE_CHECK([if strtok_r needs _REENTRANT],
-     [have_strtok_r_reentrant],
+     [c_cv_have_strtok_r_reentrant],
      AC_LINK_IFELSE(
        AC_LANG_PROGRAM(
        [[[[
            printf ("token = %s;\n", token);
          }
        ]]]]),
-       [have_strtok_r_reentrant="yes"],
+       [c_cv_have_strtok_r_reentrant="yes"],
        [AC_MSG_FAILURE([strtok_r isn't available. Please file a bugreport!])]
      )
    )
@@@ -510,7 -510,7 +510,7 @@@ AC_ARG_WITH(nan-emulation, [AS_HELP_STR
  [nan_type="none"])
  if test "x$nan_type" = "xnone"; then
    AC_CACHE_CHECK([whether NAN is defined by default],
-     [have_nan_default],
+     [c_cv_have_nan_default],
      AC_COMPILE_IFELSE(
        AC_LANG_PROGRAM(
        [[
@@@ -524,18 -524,18 +524,18 @@@ static float foo = NAN
         else
        return 1;
        ]]),
-       [have_nan_default="yes"],
-       [have_nan_default="no"]
+       [c_cv_have_nan_default="yes"],
+       [c_cv_have_nan_default="no"]
      )
    )
-   if test "x$have_nan_default" = "xyes"
+   if test "x$c_cv_have_nan_default" = "xyes"
    then
      nan_type="default"
    fi
  fi
  if test "x$nan_type" = "xnone"; then
    AC_CACHE_CHECK([whether NAN is defined by __USE_ISOC99],
-     [have_nan_isoc],
+     [c_cv_have_nan_isoc],
      AC_COMPILE_IFELSE(
        AC_LANG_PROGRAM(
        [[
@@@ -550,18 -550,18 +550,18 @@@ static float foo = NAN
         else
        return 1;
        ]]),
-       [have_nan_isoc="yes"],
-       [have_nan_isoc="no"]
+       [c_cv_have_nan_isoc="yes"],
+       [c_cv_have_nan_isoc="no"]
      )
    )
-   if test "x$have_nan_isoc" = "xyes"
+   if test "x$c_cv_have_nan_isoc" = "xyes"
    then
      nan_type="isoc99"
    fi
  fi
  if test "x$nan_type" = "xnone"; then
    AC_CACHE_CHECK([whether NAN can be defined by 0/0],
-     [have_nan_zero],
+     [c_cv_have_nan_zero],
      AC_RUN_IFELSE(
        AC_LANG_PROGRAM(
        [[
@@@ -582,11 -582,11 +582,11 @@@ static float foo = NAN
         else
        return 1;
        ]]),
-       [have_nan_zero="yes"],
-       [have_nan_zero="no"]
+       [c_cv_have_nan_zero="yes"],
+       [c_cv_have_nan_zero="no"]
      )
    )
-   if test "x$have_nan_zero" = "xyes"
+   if test "x$c_cv_have_nan_zero" = "xyes"
    then
      nan_type="zero"
    fi
@@@ -621,7 -621,7 +621,7 @@@ fi; fi; f
  
  if test "x$fp_layout_type" = "xunknown"; then
    AC_CACHE_CHECK([if doubles are stored in x86 representation],
-     [fp_layout_need_nothing],
+     [c_cv_fp_layout_need_nothing],
      AC_RUN_IFELSE(
        AC_LANG_PROGRAM(
        [[[[
        else
                return (1);
        ]]]]),
-       [fp_layout_need_nothing="yes"],
-       [fp_layout_need_nothing="no"]
+       [c_cv_fp_layout_need_nothing="yes"],
+       [c_cv_fp_layout_need_nothing="no"]
      )
    )
-   if test "x$fp_layout_need_nothing" = "xyes"; then
+   if test "x$c_cv_fp_layout_need_nothing" = "xyes"; then
      fp_layout_type="nothing"
    fi
  fi
  if test "x$fp_layout_type" = "xunknown"; then
    AC_CACHE_CHECK([if endianflip converts to x86 representation],
-     [fp_layout_need_endianflip],
+     [c_cv_fp_layout_need_endianflip],
      AC_RUN_IFELSE(
        AC_LANG_PROGRAM(
        [[[[
        else
                return (1);
        ]]]]),
-       [fp_layout_need_endianflip="yes"],
-       [fp_layout_need_endianflip="no"]
+       [c_cv_fp_layout_need_endianflip="yes"],
+       [c_cv_fp_layout_need_endianflip="no"]
      )
    )
-   if test "x$fp_layout_need_endianflip" = "xyes"; then
+   if test "x$c_cv_fp_layout_need_endianflip" = "xyes"; then
      fp_layout_type="endianflip"
    fi
  fi
  if test "x$fp_layout_type" = "xunknown"; then
    AC_CACHE_CHECK([if intswap converts to x86 representation],
-     [fp_layout_need_intswap],
+     [c_cv_fp_layout_need_intswap],
      AC_RUN_IFELSE(
        AC_LANG_PROGRAM(
        [[[[
        else
                return (1);
        ]]]]),
-       [fp_layout_need_intswap="yes"],
-       [fp_layout_need_intswap="no"]
+       [c_cv_fp_layout_need_intswap="yes"],
+       [c_cv_fp_layout_need_intswap="no"]
      )
    )
-   if test "x$fp_layout_need_intswap" = "xyes"; then
+   if test "x$c_cv_fp_layout_need_intswap" = "xyes"; then
      fp_layout_type="intswap"
    fi
  fi
@@@ -796,7 -796,7 +796,7 @@@ f
  
  if test "x$have_getmntent" = "xc"; then
        AC_CACHE_CHECK([whether getmntent takes one argument],
-               [have_one_getmntent],
+               [c_cv_have_one_getmntent],
                AC_COMPILE_IFELSE(
                        AC_LANG_PROGRAM([[AC_INCLUDES_DEFAULT
  #include <mntent.h>
                                 me = getmntent (fh);
                                ]]
                        ),
-                       [have_one_getmntent="yes"],
-                       [have_one_getmntent="no"]
+                       [c_cv_have_one_getmntent="yes"],
+                       [c_cv_have_one_getmntent="no"]
                )
        )
        AC_CACHE_CHECK([whether getmntent takes two arguments],
-               [have_two_getmntent],
+               [c_cv_have_two_getmntent],
                AC_COMPILE_IFELSE(
                        AC_LANG_PROGRAM([[AC_INCLUDES_DEFAULT
  #include <sys/mnttab.h>
                                 status = getmntent (fh, &mt);
                                ]]
                        ),
-                       [have_two_getmntent="yes"],
-                       [have_two_getmntent="no"]
+                       [c_cv_have_two_getmntent="yes"],
+                       [c_cv_have_two_getmntent="no"]
                )
        )
  fi
  # Check for different versions of `getmntent' here..
  
  if test "x$have_getmntent" = "xc"; then
-       if test "x$have_one_getmntent" = "xyes"; then
+       if test "x$c_cv_have_one_getmntent" = "xyes"; then
                AC_DEFINE(HAVE_ONE_GETMNTENT, 1,
                          [Define if the function getmntent exists and takes one argument.])
        fi
-       if test "x$have_two_getmntent" = "xyes"; then
+       if test "x$c_cv_have_two_getmntent" = "xyes"; then
                AC_DEFINE(HAVE_TWO_GETMNTENT, 1,
                          [Define if the function getmntent exists and takes two arguments.])
        fi
@@@ -1187,82 -1187,6 +1187,82 @@@ AC_DEFINE_UNQUOTED(COLLECT_LIBESMTP, [$
  AM_CONDITIONAL(BUILD_WITH_LIBESMTP, test "x$with_libesmtp" = "xyes")
  # }}}
  
 +# --with-libganglia {{{
 +AC_ARG_WITH(libganglia, [AS_HELP_STRING([--with-libganglia@<:@=PREFIX@:>@], [Path to libganglia.])],
 +[
 + if test -f "$withval" && test -x "$withval"
 + then
 +       with_libganglia_config="$withval"
 +       with_libganglia="yes"
 + else if test -f "$withval/bin/ganglia-config" && test -x "$withval/bin/ganglia-config"
 + then
 +       with_libganglia_config="$withval/bin/ganglia-config"
 +       with_libganglia="yes"
 + else if test -d "$withval"
 + then
 +       GANGLIA_CPPFLAGS="-I$withval/include"
 +       GANGLIA_LDFLAGS="-L$withval/lib"
 +       with_libganglia="yes"
 + else
 +       with_libganglia_config="ganglia-config"
 +       with_libganglia="$withval"
 + fi; fi; fi
 +],
 +[
 + with_libganglia_config="ganglia-config"
 + with_libganglia="yes"
 +])
 +
 +if test "x$with_libganglia" = "xyes" && test "x$with_libganglia_config" != "x"
 +then
 +      if test "x$GANGLIA_CPPFLAGS" = "x"
 +      then
 +              GANGLIA_CPPFLAGS=`"$with_libganglia_config" --cflags 2>/dev/null`
 +      fi
 +
 +      if test "x$GANGLIA_LDFLAGS" = "x"
 +      then
 +              GANGLIA_LDFLAGS=`"$with_libganglia_config" --ldflags 2>/dev/null`
 +      fi
 +
 +      if test "x$GANGLIA_LIBS" = "x"
 +      then
 +              GANGLIA_LIBS=`"$with_libganglia_config" --libs 2>/dev/null`
 +      fi
 +fi
 +
 +SAVE_CPPFLAGS="$CPPFLAGS"
 +SAVE_LDFLAGS="$LDFLAGS"
 +CPPFLAGS="$CPPFLAGS $GANGLIA_CPPFLAGS"
 +LDFLAGS="$LDFLAGS $GANGLIA_LDFLAGS"
 +
 +if test "x$with_libganglia" = "xyes"
 +then
 +      AC_CHECK_HEADERS(gm_protocol.h,
 +      [
 +              AC_DEFINE(HAVE_GM_PROTOCOL_H, 1,
 +                        [Define to 1 if you have the <gm_protocol.h> header file.])
 +      ], [with_libganglia="no (gm_protocol.h not found)"])
 +fi
 +
 +if test "x$with_libganglia" = "xyes"
 +then
 +      AC_CHECK_LIB(ganglia, xdr_Ganglia_value_msg,
 +      [
 +              AC_DEFINE(HAVE_LIBGANGLIA, 1,
 +                        [Define to 1 if you have the ganglia library (-lganglia).])
 +      ], [with_libganglia="no (symbol xdr_Ganglia_value_msg not found)"])
 +fi
 +
 +CPPFLAGS="$SAVE_CPPFLAGS"
 +LDFLAGS="$SAVE_LDFLAGS"
 +
 +AC_SUBST(GANGLIA_CPPFLAGS)
 +AC_SUBST(GANGLIA_LDFLAGS)
 +AC_SUBST(GANGLIA_LIBS)
 +AM_CONDITIONAL(BUILD_WITH_LIBGANGLIA, test "x$with_libganglia" = "xyes")
 +# }}}
 +
  # --with-libiptc {{{
  with_own_libiptc="no"
  AC_ARG_WITH(libiptc, [AS_HELP_STRING([--with-libiptc@<:@=PREFIX@:>@], [Path to libiptc.])],
  fi
  # }}}
  
 +# --with-java {{{
 +with_java_home="$JAVA_HOME"
 +with_java_vmtype="client"
 +with_java_cflags=""
 +with_java_libs=""
 +AC_ARG_WITH(java, [AS_HELP_STRING([--with-java@<:@=PREFIX@:>@], [Path to Java home.])],
 +[
 +      if test "x$withval" = "xno"
 +      then
 +              with_java="no"
 +      else if test "x$withval" = "xyes"
 +      then
 +              with_java="yes"
 +      else
 +              with_java_home="$withval"
 +              with_java="yes"
 +      fi; fi
 +],
 +[with_java="yes"])
 +if test "x$with_java" = "xyes"
 +then
 +      if test -d "$with_java_home"
 +      then
 +              if test -d "$with_java_home/include"
 +              then
 +                      JAVA_CPPFLAGS="$JAVA_CPPFLAGS -I$with_java_home/include"
 +              else
 +                      JAVA_CPPFLAGS="$JAVA_CPPFLAGS -I$with_java_home"
 +              fi
 +              
 +              if test -d "$with_java_home/lib"
 +              then
 +                      JAVA_LDFLAGS="$JAVA_LDFLAGS -L$with_java_home/lib"
 +              else
 +                      JAVA_LDFLAGS="$JAVA_LDFLAGS -L$with_java_home"
 +              fi
 +      else if test "x$with_java_home" != "x"
 +      then
 +              AC_MSG_WARN([JAVA_HOME: No such directory: $with_java_home])
 +      fi; fi
 +fi
 +
 +if test "x$JAVA_CPPFLAGS" != "x"
 +then
 +      AC_MSG_NOTICE([Building with JAVA_CPPFLAGS set to: $JAVA_CPPFLAGS])
 +fi
 +if test "x$JAVA_CFLAGS" != "x"
 +then
 +      AC_MSG_NOTICE([Building with JAVA_CFLAGS set to: $JAVA_CFLAGS])
 +fi
 +if test "x$JAVA_LDFLAGS" != "x"
 +then
 +      AC_MSG_NOTICE([Building with JAVA_LDFLAGS set to: $JAVA_LDFLAGS])
 +fi
 +
 +SAVE_CPPFLAGS="$CPPFLAGS"
 +SAVE_CFLAGS="$CFLAGS"
 +SAVE_LDFLAGS="$LDFLAGS"
 +CPPFLAGS="$CPPFLAGS $JAVA_CPPFLAGS"
 +CFLAGS="$CFLAGS $JAVA_CFLAGS"
 +LDFLAGS="$LDFLAGS $JAVA_LDFLAGS"
 +
 +if test "x$with_java" = "xyes"
 +then
 +      AC_CHECK_HEADERS(jni.h, [], [with_java="no (jni.h not found)"])
 +fi
 +if test "x$with_java" = "xyes"
 +then
 +      AC_CHECK_LIB(jvm, JNI_CreateJavaVM,
 +      [with_java="yes"],
 +      [with_java="no (libjvm not found)"],
 +      [$JAVA_LIBS])
 +fi
 +if test "x$with_java" = "xyes"
 +then
 +      JAVA_LIBS="$JAVA_LIBS -ljvm"
 +      AC_MSG_NOTICE([Building with JAVA_LIBS set to: $JAVA_LIBS])
 +fi
 +
 +CPPFLAGS="$SAVE_CPPFLAGS"
 +CFLAGS="$SAVE_CFLAGS"
 +LDFLAGS="$SAVE_LDFLAGS"
 +
 +AC_SUBST(JAVA_CPPFLAGS)
 +AC_SUBST(JAVA_CFLAGS)
 +AC_SUBST(JAVA_LDFLAGS)
 +AC_SUBST(JAVA_LIBS)
 +AM_CONDITIONAL(BUILD_WITH_JAVA, test "x$with_java" = "xyes")
 +# }}}
 +
  # --with-libmysql {{{
  with_mysql_config="mysql_config"
  with_mysql_cflags=""
@@@ -1974,7 -1808,7 +1974,7 @@@ the
    LDFLAGS="$LDFLAGS $PERL_LDFLAGS"
  
    AC_CACHE_CHECK([for libperl],
-     [have_libperl],
+     [c_cv_have_libperl],
      AC_LINK_IFELSE(
        AC_LANG_PROGRAM(
        [[
                         newSVpv ("Collectd::Plugin::FooBar", 24),
                         Nullsv);
        ]]),
-       [have_libperl="yes"],
-       [have_libperl="no"]
+       [c_cv_have_libperl="yes"],
+       [c_cv_have_libperl="no"]
      )
    )
  
-   if test "x$have_libperl" = "xyes"
+   if test "x$c_cv_have_libperl" = "xyes"
    then
          AC_DEFINE(HAVE_LIBPERL, 1, [Define if libperl is present and usable.])
          AC_SUBST(PERL_CFLAGS)
    LDFLAGS=$SAVE_LDFLAGS
  else if test -z "$perl_interpreter"; then
    with_libperl="no (no perl interpreter found)"
-   have_libperl="no"
+   c_cv_have_libperl="no"
  fi; fi
  AM_CONDITIONAL(BUILD_WITH_LIBPERL, test "x$with_libperl" = "xyes")
  
@@@ -2019,7 -1853,7 +2019,7 @@@ the
        LDFLAGS="$LDFLAGS $PERL_LDFLAGS"
  
        AC_CACHE_CHECK([if perl supports ithreads],
-               [have_perl_ithreads],
+               [c_cv_have_perl_ithreads],
                AC_LINK_IFELSE(
                        AC_LANG_PROGRAM(
                        [[
  #endif /* !defined(USE_ITHREADS) */
                        ]],
                        [[ ]]),
-                       [have_perl_ithreads="yes"],
-                       [have_perl_ithreads="no"]
+                       [c_cv_have_perl_ithreads="yes"],
+                       [c_cv_have_perl_ithreads="no"]
                )
        )
  
-       if test "x$have_perl_ithreads" = "xyes"
+       if test "x$c_cv_have_perl_ithreads" = "xyes"
        then
                AC_DEFINE(HAVE_PERL_ITHREADS, 1, [Define if Perl supports ithreads.])
        fi
        LDFLAGS=$SAVE_LDFLAGS
  fi
  
- have_broken_perl_load_module="no"
c_cv_have_broken_perl_load_module="no"
  if test "x$with_libperl" = "xyes"
  then
        SAVE_CFLAGS=$CFLAGS
        LDFLAGS="$LDFLAGS $PERL_LDFLAGS"
  
        AC_CACHE_CHECK([for broken Perl_load_module()],
-               [have_broken_perl_load_module],
+               [c_cv_have_broken_perl_load_module],
                AC_LINK_IFELSE(
                        AC_LANG_PROGRAM(
                        [[
                             newSVpv ("Collectd::Plugin::FooBar", 24),
                             Nullsv);
                        ]]),
-                       [have_broken_perl_load_module="no"],
-                       [have_broken_perl_load_module="yes"]
+                       [c_cv_have_broken_perl_load_module="no"],
+                       [c_cv_have_broken_perl_load_module="yes"]
                )
        )
  
        LDFLAGS=$SAVE_LDFLAGS
  fi
  AM_CONDITIONAL(HAVE_BROKEN_PERL_LOAD_MODULE,
-               test "x$have_broken_perl_load_module" = "xyes")
+               test "x$c_cv_have_broken_perl_load_module" = "xyes")
  
  if test "x$with_libperl" = "xyes"
  then
@@@ -3023,7 -2857,6 +3023,7 @@@ plugin_multimeter="no
  plugin_nfs="no"
  plugin_perl="no"
  plugin_processes="no"
 +plugin_protocols="no"
  plugin_serial="no"
  plugin_swap="no"
  plugin_tape="no"
@@@ -3048,7 -2881,6 +3048,7 @@@ the
        plugin_memory="yes"
        plugin_nfs="yes"
        plugin_processes="yes"
 +      plugin_protocols="yes"
        plugin_serial="yes"
        plugin_swap="yes"
        plugin_tcpconns="yes"
@@@ -3153,7 -2985,7 +3153,7 @@@ the
        plugin_load="yes"
  fi
  
- if test "x$have_libperl$have_perl_ithreads" = "xyesyes"
+ if test "x$c_cv_have_libperl$c_cv_have_perl_ithreads" = "xyesyes"
  then
        plugin_perl="yes"
  fi
@@@ -3224,14 -3056,12 +3224,14 @@@ AC_PLUGIN([email],       [yes]
  AC_PLUGIN([entropy],     [$plugin_entropy],    [Entropy statistics])
  AC_PLUGIN([exec],        [yes],                [Execution of external programs])
  AC_PLUGIN([filecount],   [yes],                [Count files in directories])
 +AC_PLUGIN([gmond],       [$with_libganglia],   [Ganglia plugin])
  AC_PLUGIN([hddtemp],     [yes],                [Query hddtempd])
  AC_PLUGIN([interface],   [$plugin_interface],  [Interface traffic statistics])
  AC_PLUGIN([ipmi],        [$plugin_ipmi],       [IPMI sensor statistics])
  AC_PLUGIN([iptables],    [$with_libiptc],      [IPTables rule counters])
  AC_PLUGIN([ipvs],        [$plugin_ipvs],       [IPVS connection statistics])
  AC_PLUGIN([irq],         [$plugin_irq],        [IRQ statistics])
 +AC_PLUGIN([java],        [$with_java],         [Embed the Java Virtual Machine])
  AC_PLUGIN([libvirt],     [$plugin_libvirt],    [Virtual machine statistics])
  AC_PLUGIN([load],        [$plugin_load],       [System load])
  AC_PLUGIN([logfile],     [yes],                [File logging plugin])
@@@ -3259,7 -3089,6 +3259,7 @@@ AC_PLUGIN([ping],        [$with_libopin
  AC_PLUGIN([postgresql],  [$with_libpq],        [PostgreSQL database statistics])
  AC_PLUGIN([powerdns],    [yes],                [PowerDNS statistics])
  AC_PLUGIN([processes],   [$plugin_processes],  [Process statistics])
 +AC_PLUGIN([protocols],   [$plugin_protocols],  [Protocol (IP, TCP, ...) statistics])
  AC_PLUGIN([rrdcached],   [$librrd_rrdc_update], [RRDTool output plugin])
  AC_PLUGIN([rrdtool],     [$with_librrd],       [RRDTool output plugin])
  AC_PLUGIN([sensors],     [$with_libsensors],   [lm_sensors statistics])
@@@ -3267,7 -3096,6 +3267,7 @@@ AC_PLUGIN([serial],      [$plugin_seria
  AC_PLUGIN([snmp],        [$with_libnetsnmp],   [SNMP querying plugin])
  AC_PLUGIN([swap],        [$plugin_swap],       [Swap usage statistics])
  AC_PLUGIN([syslog],      [$have_syslog],       [Syslog logging plugin])
 +AC_PLUGIN([table],       [yes],                [Parsing of tabular data])
  AC_PLUGIN([tail],        [yes],                [Parsing of logfiles])
  AC_PLUGIN([tape],        [$plugin_tape],       [Tape drive statistics])
  AC_PLUGIN([target_notification], [yes],        [The notification target])
@@@ -3284,86 -3112,6 +3284,86 @@@ AC_PLUGIN([vserver],     [$plugin_vserv
  AC_PLUGIN([wireless],    [$plugin_wireless],   [Wireless statistics])
  AC_PLUGIN([xmms],        [$with_libxmms],      [XMMS statistics])
  
 +dnl Default configuration file
 +# Load either syslog or logfile
 +LOAD_PLUGIN_SYSLOG=""
 +LOAD_PLUGIN_LOGFILE=""
 +
 +AC_MSG_CHECKING([which default log plugin to load])
 +default_log_plugin="none"
 +if test "x$enable_syslog" = "xyes"
 +then
 +      default_log_plugin="syslog"
 +else
 +      LOAD_PLUGIN_SYSLOG="##"
 +fi
 +
 +if test "x$enable_logfile" = "xyes"
 +then
 +      if test "x$default_log_plugin" = "xnone"
 +      then
 +              default_log_plugin="logfile"
 +      else
 +              LOAD_PLUGIN_LOGFILE="#"
 +      fi
 +else
 +      LOAD_PLUGIN_LOGFILE="##"
 +fi
 +AC_MSG_RESULT([$default_log_plugin])
 +
 +AC_SUBST(LOAD_PLUGIN_SYSLOG)
 +AC_SUBST(LOAD_PLUGIN_LOGFILE)
 +
 +DEFAULT_LOG_LEVEL="info"
 +if test "x$enable_debug" = "xyes"
 +then
 +      DEFAULT_LOG_LEVEL="debug"
 +fi
 +AC_SUBST(DEFAULT_LOG_LEVEL)
 +
 +# Load only one of rrdtool, network, csv in the default config.
 +LOAD_PLUGIN_RRDTOOL=""
 +LOAD_PLUGIN_NETWORK=""
 +LOAD_PLUGIN_CSV=""
 +
 +AC_MSG_CHECKING([which default write plugin to load])
 +default_write_plugin="none"
 +if test "x$enable_rrdtool" = "xyes"
 +then
 +      default_write_plugin="rrdtool"
 +else
 +      LOAD_PLUGIN_RRDTOOL="##"
 +fi
 +
 +if test "x$enable_network" = "xyes"
 +then
 +      if test "x$default_write_plugin" = "xnone"
 +      then
 +              default_write_plugin="network"
 +      else
 +              LOAD_PLUGIN_NETWORK="#"
 +      fi
 +else
 +      LOAD_PLUGIN_NETWORK="##"
 +fi
 +
 +if test "x$enable_csv" = "xyes"
 +then
 +      if test "x$default_write_plugin" = "xnone"
 +      then
 +              default_write_plugin="csv"
 +      else
 +              LOAD_PLUGIN_CSV="#"
 +      fi
 +else
 +      LOAD_PLUGIN_CSV="##"
 +fi
 +AC_MSG_RESULT([$default_write_plugin])
 +
 +AC_SUBST(LOAD_PLUGIN_RRDTOOL)
 +AC_SUBST(LOAD_PLUGIN_NETWORK)
 +AC_SUBST(LOAD_PLUGIN_CSV)
 +
  dnl ip_vs.h
  if test "x$ac_system" = "xLinux" \
        && test "x$have_net_ip_vs_h$have_ip_vs_h" = "xnono"
@@@ -3459,7 -3207,6 +3459,7 @@@ Configuration
      libesmtp  . . . . . . $with_libesmtp
      libiokit  . . . . . . $with_libiokit
      libiptc . . . . . . . $with_libiptc
 +    libjvm  . . . . . . . $with_java
      libkstat  . . . . . . $with_kstat
      libkvm  . . . . . . . $with_libkvm
      libmysql  . . . . . . $with_libmysql
      entropy . . . . . . . $enable_entropy
      exec  . . . . . . . . $enable_exec
      filecount . . . . . . $enable_filecount
 +    gmond . . . . . . . . $enable_gmond
      hddtemp . . . . . . . $enable_hddtemp
      interface . . . . . . $enable_interface
      ipmi  . . . . . . . . $enable_ipmi
      iptables  . . . . . . $enable_iptables
      ipvs  . . . . . . . . $enable_ipvs
      irq . . . . . . . . . $enable_irq
 +    java  . . . . . . . . $enable_java
      libvirt . . . . . . . $enable_libvirt
      load  . . . . . . . . $enable_load
      logfile . . . . . . . $enable_logfile
      postgresql  . . . . . $enable_postgresql
      powerdns  . . . . . . $enable_powerdns
      processes . . . . . . $enable_processes
 +    protocols . . . . . . $enable_protocols
      rrdcached . . . . . . $enable_rrdcached
      rrdtool . . . . . . . $enable_rrdtool
      sensors . . . . . . . $enable_sensors
      snmp  . . . . . . . . $enable_snmp
      swap  . . . . . . . . $enable_swap
      syslog  . . . . . . . $enable_syslog
 +    table . . . . . . . . $enable_table
      tail  . . . . . . . . $enable_tail
      tape  . . . . . . . . $enable_tape
      target_notification . $enable_target_notification
diff --combined src/collectd.conf.in
@@@ -4,12 -4,6 +4,12 @@@
  # http://collectd.org/
  #
  
 +##############################################################################
 +# Global                                                                     #
 +#----------------------------------------------------------------------------#
 +# Global settings for the daemon.                                            #
 +##############################################################################
 +
  #Hostname    "localhost"
  FQDNLookup   true
  #BaseDir     "@prefix@/var/lib/@PACKAGE_NAME@"
  #Interval     10
  #ReadThreads  5
  
 -@BUILD_PLUGIN_LOGFILE_TRUE@LoadPlugin logfile
 -@BUILD_PLUGIN_SYSLOG_TRUE@LoadPlugin syslog
 +##############################################################################
 +# Logging                                                                    #
 +#----------------------------------------------------------------------------#
 +# Plugins which provide logging functions should be loaded first, so log     #
 +# messages generated when loading or configuring other plugins can be        #
 +# accessed.                                                                  #
 +##############################################################################
 +
 +@LOAD_PLUGIN_SYSLOG@LoadPlugin syslog
 +@LOAD_PLUGIN_LOGFILE@LoadPlugin logfile
  
  #<Plugin logfile>
 -#     LogLevel info
 +#     LogLevel @DEFAULT_LOG_LEVEL@
  #     File STDOUT
  #     Timestamp true
  #</Plugin>
  
  #<Plugin syslog>
 -#     LogLevel info
 -#</Plugin>
 -
 -@BUILD_PLUGIN_APACHE_TRUE@LoadPlugin apache
 -@BUILD_PLUGIN_APCUPS_TRUE@LoadPlugin apcups
 -@BUILD_PLUGIN_APPLE_SENSORS_TRUE@LoadPlugin apple_sensors
 -@BUILD_PLUGIN_ASCENT_TRUE@LoadPlugin ascent
 -@BUILD_PLUGIN_BATTERY_TRUE@LoadPlugin battery
 -@BUILD_PLUGIN_BIND_TRUE@LoadPlugin bind
 -@BUILD_PLUGIN_CPU_TRUE@LoadPlugin cpu
 -@BUILD_PLUGIN_CPUFREQ_TRUE@LoadPlugin cpufreq
 -@BUILD_PLUGIN_CSV_TRUE@LoadPlugin csv
 -@BUILD_PLUGIN_CURL_TRUE@LoadPlugin curl
 -@BUILD_PLUGIN_DBI_TRUE@LoadPlugin dbi
 -@BUILD_PLUGIN_DF_TRUE@LoadPlugin df
 -@BUILD_PLUGIN_DISK_TRUE@LoadPlugin disk
 -@BUILD_PLUGIN_DNS_TRUE@LoadPlugin dns
 -@BUILD_PLUGIN_EMAIL_TRUE@LoadPlugin email
 -@BUILD_PLUGIN_ENTROPY_TRUE@LoadPlugin entropy
 -@BUILD_PLUGIN_EXEC_TRUE@LoadPlugin exec
 -@BUILD_PLUGIN_FILECOUNT_TRUE@LoadPlugin filecount
 -@BUILD_PLUGIN_HDDTEMP_TRUE@LoadPlugin hddtemp
 -@BUILD_PLUGIN_INTERFACE_TRUE@LoadPlugin interface
 -@BUILD_PLUGIN_IPTABLES_TRUE@LoadPlugin iptables
 -@BUILD_PLUGIN_IPMI_TRUE@LoadPlugin ipmi
 -@BUILD_PLUGIN_IPVS_TRUE@LoadPlugin ipvs
 -@BUILD_PLUGIN_IRQ_TRUE@LoadPlugin irq
 -@BUILD_PLUGIN_LIBVIRT_TRUE@LoadPlugin libvirt
 -@BUILD_PLUGIN_LOAD_TRUE@LoadPlugin load
 -@BUILD_PLUGIN_MBMON_TRUE@LoadPlugin mbmon
 -@BUILD_PLUGIN_MEMCACHED_TRUE@LoadPlugin memcached
 -@BUILD_PLUGIN_MEMORY_TRUE@LoadPlugin memory
 -@BUILD_PLUGIN_MULTIMETER_TRUE@LoadPlugin multimeter
 -@BUILD_PLUGIN_MYSQL_TRUE@LoadPlugin mysql
 -@BUILD_PLUGIN_NETLINK_TRUE@LoadPlugin netlink
 -@BUILD_PLUGIN_NETWORK_TRUE@LoadPlugin network
 -@BUILD_PLUGIN_NFS_TRUE@LoadPlugin nfs
 -@BUILD_PLUGIN_NGINX_TRUE@LoadPlugin nginx
 -@BUILD_PLUGIN_NOTIFY_DESKTOP_TRUE@LoadPlugin notify_desktop
 -@BUILD_PLUGIN_NOTIFY_EMAIL_TRUE@LoadPlugin notify_email
 -@BUILD_PLUGIN_NTPD_TRUE@LoadPlugin ntpd
 -@BUILD_PLUGIN_NUT_TRUE@LoadPlugin nut
 -@BUILD_PLUGIN_ONEWIRE_TRUE@LoadPlugin onewire
 -@BUILD_PLUGIN_OPENVPN_TRUE@LoadPlugin openvpn
 -@BUILD_PLUGIN_ORACLE_TRUE@LoadPlugin oracle
 -@BUILD_PLUGIN_PERL_TRUE@LoadPlugin perl
 -@BUILD_PLUGIN_PING_TRUE@LoadPlugin ping
 -@BUILD_PLUGIN_POSTGRESQL_TRUE@LoadPlugin postgresql
 -@BUILD_PLUGIN_POWERDNS_TRUE@LoadPlugin powerdns
 -@BUILD_PLUGIN_PROCESSES_TRUE@LoadPlugin processes
 -@BUILD_PLUGIN_RRDCACHED_TRUE@LoadPlugin rrdcached
 -@BUILD_PLUGIN_RRDTOOL_TRUE@LoadPlugin rrdtool
 -@BUILD_PLUGIN_SENSORS_TRUE@LoadPlugin sensors
 -@BUILD_PLUGIN_SERIAL_TRUE@LoadPlugin serial
 -@BUILD_PLUGIN_SNMP_TRUE@LoadPlugin snmp
 -@BUILD_PLUGIN_SWAP_TRUE@LoadPlugin swap
 -@BUILD_PLUGIN_TAIL_TRUE@LoadPlugin tail
 -@BUILD_PLUGIN_TAPE_TRUE@LoadPlugin tape
 -@BUILD_PLUGIN_TCPCONNS_TRUE@LoadPlugin tcpconns
 -@BUILD_PLUGIN_TEAMSPEAK2_TRUE@LoadPlugin teamspeak2
 -@BUILD_PLUGIN_THERMAL_TRUE@LoadPlugin thermal
 -@BUILD_PLUGIN_UNIXSOCK_TRUE@LoadPlugin unixsock
 -@BUILD_PLUGIN_USERS_TRUE@LoadPlugin users
 -#LoadPlugin uuid
 -@BUILD_PLUGIN_VMEM_TRUE@LoadPlugin vmem
 -@BUILD_PLUGIN_VSERVER_TRUE@LoadPlugin vserver
 -@BUILD_PLUGIN_WIRELESS_TRUE@LoadPlugin wireless
 -@BUILD_PLUGIN_XMMS_TRUE@LoadPlugin xmms
 +#     LogLevel @DEFAULT_LOG_LEVEL@
 +#</Plugin>
 +
 +##############################################################################
 +# LoadPlugin section                                                         #
 +#----------------------------------------------------------------------------#
 +# Lines beginning with a single `#' belong to plugins which have been built  #
 +# but are disabled by default.                                               #
 +#                                                                            #
 +# Lines begnning with `##' belong to plugins which have not been built due   #
 +# to missing dependencies or because they have been deactivated explicitly.  #
 +##############################################################################
 +
 +#@BUILD_PLUGIN_APACHE_TRUE@LoadPlugin apache
 +#@BUILD_PLUGIN_APCUPS_TRUE@LoadPlugin apcups
 +#@BUILD_PLUGIN_APPLE_SENSORS_TRUE@LoadPlugin apple_sensors
 +#@BUILD_PLUGIN_ASCENT_TRUE@LoadPlugin ascent
 +#@BUILD_PLUGIN_BATTERY_TRUE@LoadPlugin battery
 +#@BUILD_PLUGIN_BIND_TRUE@LoadPlugin bind
 +@BUILD_PLUGIN_CPU_TRUE@@BUILD_PLUGIN_CPU_TRUE@LoadPlugin cpu
 +#@BUILD_PLUGIN_CPUFREQ_TRUE@LoadPlugin cpufreq
 +@LOAD_PLUGIN_CSV@LoadPlugin csv
 +#@BUILD_PLUGIN_CURL_TRUE@LoadPlugin curl
 +#@BUILD_PLUGIN_DBI_TRUE@LoadPlugin dbi
 +#@BUILD_PLUGIN_DF_TRUE@LoadPlugin df
 +#@BUILD_PLUGIN_DISK_TRUE@LoadPlugin disk
 +#@BUILD_PLUGIN_DNS_TRUE@LoadPlugin dns
 +#@BUILD_PLUGIN_EMAIL_TRUE@LoadPlugin email
 +#@BUILD_PLUGIN_ENTROPY_TRUE@LoadPlugin entropy
 +#@BUILD_PLUGIN_EXEC_TRUE@LoadPlugin exec
 +#@BUILD_PLUGIN_FILECOUNT_TRUE@LoadPlugin filecount
 +#@BUILD_PLUGIN_GMOND_TRUE@LoadPlugin gmond
 +#@BUILD_PLUGIN_HDDTEMP_TRUE@LoadPlugin hddtemp
 +@BUILD_PLUGIN_INTERFACE_TRUE@@BUILD_PLUGIN_INTERFACE_TRUE@LoadPlugin interface
 +#@BUILD_PLUGIN_IPTABLES_TRUE@LoadPlugin iptables
 +#@BUILD_PLUGIN_IPMI_TRUE@LoadPlugin ipmi
 +#@BUILD_PLUGIN_IPVS_TRUE@LoadPlugin ipvs
 +#@BUILD_PLUGIN_IRQ_TRUE@LoadPlugin irq
 +#@BUILD_PLUGIN_JAVA_TRUE@LoadPlugin java
 +#@BUILD_PLUGIN_LIBVIRT_TRUE@LoadPlugin libvirt
 +@BUILD_PLUGIN_LOAD_TRUE@@BUILD_PLUGIN_LOAD_TRUE@LoadPlugin load
 +#@BUILD_PLUGIN_MBMON_TRUE@LoadPlugin mbmon
 +#@BUILD_PLUGIN_MEMCACHED_TRUE@LoadPlugin memcached
 +@BUILD_PLUGIN_MEMORY_TRUE@@BUILD_PLUGIN_MEMORY_TRUE@LoadPlugin memory
 +#@BUILD_PLUGIN_MULTIMETER_TRUE@LoadPlugin multimeter
 +#@BUILD_PLUGIN_MYSQL_TRUE@LoadPlugin mysql
 +#@BUILD_PLUGIN_NETLINK_TRUE@LoadPlugin netlink
 +@LOAD_PLUGIN_NETWORK@LoadPlugin network
 +#@BUILD_PLUGIN_NFS_TRUE@LoadPlugin nfs
 +#@BUILD_PLUGIN_NGINX_TRUE@LoadPlugin nginx
 +#@BUILD_PLUGIN_NOTIFY_DESKTOP_TRUE@LoadPlugin notify_desktop
 +#@BUILD_PLUGIN_NOTIFY_EMAIL_TRUE@LoadPlugin notify_email
 +#@BUILD_PLUGIN_NTPD_TRUE@LoadPlugin ntpd
 +#@BUILD_PLUGIN_NUT_TRUE@LoadPlugin nut
 +#@BUILD_PLUGIN_ONEWIRE_TRUE@LoadPlugin onewire
 +#@BUILD_PLUGIN_OPENVPN_TRUE@LoadPlugin openvpn
 +#@BUILD_PLUGIN_ORACLE_TRUE@LoadPlugin oracle
 +#@BUILD_PLUGIN_PERL_TRUE@LoadPlugin perl
 +#@BUILD_PLUGIN_PING_TRUE@LoadPlugin ping
 +#@BUILD_PLUGIN_POSTGRESQL_TRUE@LoadPlugin postgresql
 +#@BUILD_PLUGIN_POWERDNS_TRUE@LoadPlugin powerdns
 +#@BUILD_PLUGIN_PROCESSES_TRUE@LoadPlugin processes
 +#@BUILD_PLUGIN_PROTOCOLS_TRUE@LoadPlugin protocols
 +#@BUILD_PLUGIN_RRDCACHED_TRUE@LoadPlugin rrdcached
 +@LOAD_PLUGIN_RRDTOOL@LoadPlugin rrdtool
 +#@BUILD_PLUGIN_SENSORS_TRUE@LoadPlugin sensors
 +#@BUILD_PLUGIN_SERIAL_TRUE@LoadPlugin serial
 +#@BUILD_PLUGIN_SNMP_TRUE@LoadPlugin snmp
 +#@BUILD_PLUGIN_SWAP_TRUE@LoadPlugin swap
 +#@BUILD_PLUGIN_TAIL_TRUE@LoadPlugin tail
 +#@BUILD_PLUGIN_TAPE_TRUE@LoadPlugin tape
 +#@BUILD_PLUGIN_TCPCONNS_TRUE@LoadPlugin tcpconns
 +#@BUILD_PLUGIN_TEAMSPEAK2_TRUE@LoadPlugin teamspeak2
 +#@BUILD_PLUGIN_THERMAL_TRUE@LoadPlugin thermal
 +#@BUILD_PLUGIN_UNIXSOCK_TRUE@LoadPlugin unixsock
 +#@BUILD_PLUGIN_USERS_TRUE@LoadPlugin users
 +#@BUILD_PLUGIN_UUID_TRUE@LoadPlugin uuid
 +#@BUILD_PLUGIN_VMEM_TRUE@LoadPlugin vmem
 +#@BUILD_PLUGIN_VSERVER_TRUE@LoadPlugin vserver
 +#@BUILD_PLUGIN_WIRELESS_TRUE@LoadPlugin wireless
 +#@BUILD_PLUGIN_XMMS_TRUE@LoadPlugin xmms
 +
 +##############################################################################
 +# Plugin configuration                                                       #
 +#----------------------------------------------------------------------------#
 +# In this section configuration stubs for each plugin are provided. A desc-  #
 +# ription of those options is available in the collectd.conf(5) manual page. #
 +##############################################################################
  
  #<Plugin apache>
  #     URL "http://localhost/status?auto"
  #     </Directory>
  #</Plugin>
  
 -@BUILD_PLUGIN_HDDTEMP_TRUE@<Plugin hddtemp>
 -#     Host "127.0.0.1"
 -#     Port "7634"
 -@BUILD_PLUGIN_HDDTEMP_TRUE@   TranslateDevicename false
 -@BUILD_PLUGIN_HDDTEMP_TRUE@</Plugin>
 +#<Plugin "gmond">
 +#  MCReceiveFrom "239.2.11.71" "8649"
 +#  <Metric "swap_total">
 +#    Type "swap"
 +#    TypeInstance "total"
 +#    DataSource "value"
 +#  </Metric>
 +#  <Metric "swap_free">
 +#    Type "swap"
 +#    TypeInstance "free"
 +#    DataSource "value"
 +#  </Metric>
 +#</Plugin>
 +
 +#<Plugin hddtemp>
 +#  Host "127.0.0.1"
 +#  Port "7634"
 +#
 +#  #----------------------------------------------------------------#
 +#  # `TranslateDevicename' enabled backwards compatibility behavior #
 +#  # and is enabled by default. Setting this option to `false' is   #
 +#  # highly recommended.                                            #
 +#  #----------------------------------------------------------------#
 +#  TranslateDevicename false
 +#</Plugin>
  
  #<Plugin interface>
  #     Interface "eth0"
  #     IgnoreSelected true
  #</Plugin>
  
 +#<Plugin "java">
 +#     JVMArg "-verbose:jni"
 +#     JVMArg "-Djava.class.path=/opt/collectd/lib/collectd/bindings/java"
 +#
 +#     LoadPlugin "org.collectd.java.Foobar"
 +#     <Plugin "org.collectd.java.Foobar">
 +#       # To be parsed by the plugin
 +#     </Plugin>
 +#</Plugin>
 +
  #<Plugin libvirt>
  #     Connection "xen:///"
  #     RefreshInterval 60
  #     IgnoreSelected false
  #</Plugin>
  
 -#<Plugin network>
 -#     Server "ff18::efc0:4a42" "25826"
 -#     Server "239.192.74.66" "25826"
 +@LOAD_PLUGIN_NETWORK@<Plugin network>
 +@LOAD_PLUGIN_NETWORK@ Server "ff18::efc0:4a42" "25826"
 +@LOAD_PLUGIN_NETWORK@ Server "239.192.74.66" "25826"
  #     Listen "ff18::efc0:4a42" "25826"
  #     Listen "239.192.74.66" "25826"
  #     TimeToLive "128"
  #     Forward false
  #     CacheFlush 1800
 -#</Plugin>
 +@LOAD_PLUGIN_NETWORK@</Plugin>
  
  #<Plugin nginx>
  #     URL "http://localhost/status?auto"
  #     Process "name"
  #</Plugin>
  
 +#<Plugin protocols>
 +#     Value "/^Tcp:/"
 +#     IgnoreSelected false
 +#</Plugin>
 +
  #<Plugin rrdcached>
  #     DaemonAddress "unix:/tmp/rrdcached.sock"
  #     DataDir "@prefix@/var/lib/@PACKAGE_NAME@/rrd"
  #       Instance "IF-MIB::ifDescr"
  #       Values "IF-MIB::ifInOctets" "IF-MIB::ifOutOctets"
  #   </Data>
 -#   
 +#
  #   <Host "some.switch.mydomain.org">
  #       Address "192.168.0.2"
  #       Version 1
  #     Verbose false
  #</Plugin>
  
 -# * * * * * * * * * * * * *
 -# * FILTER CONFIGURATION  *
 -# * * * * * * * * * * * * *
 -
 -# The following configures collectd's filtering mechanism. Before changing
 -# anything in this section, please read the `FILTER CONFIGURATION' section in
 -# the collectd.conf(5) manual page.
 +##############################################################################
 +# Filter configuration                                                       #
 +#----------------------------------------------------------------------------#
 +# The following configures collectd's filtering mechanism. Before changing   #
 +# anything in this section, please read the `FILTER CONFIGURATION' section   #
 +# in the collectd.conf(5) manual page.                                       #
 +##############################################################################
  
  # Load required matches:
  #@BUILD_PLUGIN_MATCH_REGEX_TRUE@LoadPlugin match_regex
  #@BUILD_PLUGIN_MATCH_VALUE_TRUE@LoadPlugin match_value
+ #@BUILD_PLUGIN_MATCH_TIMEDIFF_TRUE@LoadPlugin match_timediff
  
  # Load required targets:
  #@BUILD_PLUGIN_TARGET_NOTIFICATION_TRUE@LoadPlugin target_notification
  #@BUILD_PLUGIN_TARGET_REPLACE_TRUE@LoadPlugin target_replace
  #@BUILD_PLUGIN_TARGET_SET_TRUE@LoadPlugin target_set
 - 
 -# The following block demonstrates the default behavior if no filtering is
 -# configured at all: All values will be sent to all available write plugins.
 +
 +#----------------------------------------------------------------------------#
 +# The following block demonstrates the default behavior if no filtering is   #
 +# configured at all: All values will be sent to all available write plugins. #
 +#----------------------------------------------------------------------------#
  
  #<Chain "Main">
  #  Target "write"