Merge branch 'collectd-4.6' into collectd-4.7
authorFlorian Forster <octo@leeloo.lan.home.verplant.org>
Sat, 9 May 2009 10:39:12 +0000 (12:39 +0200)
committerFlorian Forster <octo@leeloo.lan.home.verplant.org>
Sat, 9 May 2009 10:39:12 +0000 (12:39 +0200)
1  2 
configure.in
src/Makefile.am

diff --combined configure.in
@@@ -67,35 -67,22 +67,36 @@@ f
  
  if test "x$ac_system" = "xSolaris"
  then
 -      CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS"
 +      AC_DEFINE(_POSIX_PTHREAD_SEMANTICS, 1, [Define to enforce POSIX thread semantics under Solaris.])
  fi
  
  # Where to install .pc files.
  pkgconfigdir="${libdir}/pkgconfig"
  AC_SUBST(pkgconfigdir)
  
 +# Check for standards compliance mode
 +AC_ARG_ENABLE(standards,
 +            AS_HELP_STRING([--enable-standards], [Enable standards compliance mode]),
 +            [enable_standards="$enableval"],
 +            [enable_standards="no"])
 +if test "x$enable_standards" = "xyes"
 +then
 +      AC_DEFINE(_ISOC99_SOURCE,        1, [Define to enforce ISO C99 compliance.])
 +      AC_DEFINE(_POSIX_C_SOURCE, 200112L, [Define to enforce POSIX.1-2001 compliance.])
 +      AC_DEFINE(_XOPEN_SOURCE,       600, [Define to enforce X/Open 6 (XSI) compliance.])
 +      AC_DEFINE(_REENTRANT,            1, [Define to enable reentrancy interfaces.])
 +fi
 +AM_CONDITIONAL(BUILD_FEATURE_STANDARDS, test "x$enable_standards" = "xyes")
 +
  #
  # Checks for header files.
  #
  AC_HEADER_STDC
  AC_HEADER_SYS_WAIT
  AC_HEADER_DIRENT
+ AC_HEADER_STDBOOL
  
- AC_CHECK_HEADERS(stdio.h stdint.h stdbool.h errno.h math.h stdarg.h syslog.h fcntl.h signal.h assert.h sys/types.h sys/socket.h sys/select.h poll.h netdb.h arpa/inet.h sys/resource.h sys/param.h kstat.h regex.h sys/ioctl.h endian.h sys/isa_defs.h)
+ AC_CHECK_HEADERS(stdio.h stdint.h errno.h math.h stdarg.h syslog.h fcntl.h signal.h assert.h sys/types.h sys/socket.h sys/select.h poll.h netdb.h arpa/inet.h sys/resource.h sys/param.h kstat.h regex.h sys/ioctl.h endian.h sys/isa_defs.h)
  
  # For ping library
  AC_CHECK_HEADERS(netinet/in_systm.h, [], [],
@@@ -264,7 -251,7 +265,7 @@@ AC_CHECK_HEADERS(IOKit/ps/IOPowerSource
  
  # For the swap module
  have_sys_swap_h="yes"
- AC_CHECK_HEADERS(sys/swap.h, [], [have_sys_swap_h="no"],
+ AC_CHECK_HEADERS(sys/swap.h vm/anon.h, [], [have_sys_swap_h="no"],
  [
  #if HAVE_SYS_TYPES_H
  #  include <sys/types.h>
  
  if test "x$have_sys_swap_h$ac_system" = "xnoSolaris"
  then
-       AC_MSG_NOTICE([Solaris detected and sys/swap.h not found: Try building a 64bit binary.])
+       hint_64=""
+       if test "x$GCC" = "xyes"
+       then
+               hint_64="CFLAGS='-m64'"
+       else
+               hint_64="CFLAGS='-xarch=v9'"
+       fi
+       AC_MSG_NOTICE([Solaris detected and sys/swap.h not usable. Try building a 64-bit binary ($hint_64 ./configure).])
  fi
  
  # For load module
@@@ -361,7 -355,7 +369,7 @@@ AC_CHECK_HEADERS(linux/un.h, [], []
  #endif
  ])
  
 -AC_CHECK_HEADERS(pwd.h grp.h sys/un.h ctype.h limits.h sys/quota.h xfs/xqm.h fs_info.h fshelp.h paths.h mntent.h mnttab.h sys/fstyp.h sys/fs_types.h sys/mntent.h sys/mnttab.h sys/statfs.h sys/statvfs.h sys/vfs.h sys/vfstab.h kvm.h wordexp.h)
 +AC_CHECK_HEADERS(pwd.h grp.h sys/un.h ctype.h limits.h xfs/xqm.h fs_info.h fshelp.h paths.h mntent.h mnttab.h sys/fstyp.h sys/fs_types.h sys/mntent.h sys/mnttab.h sys/statfs.h sys/statvfs.h sys/vfs.h sys/vfstab.h kvm.h wordexp.h)
  
  # For the dns plugin
  AC_CHECK_HEADERS(arpa/nameser.h)
@@@ -813,7 -807,6 +821,6 @@@ if test "x$have_getmntent" = "xc"; the
                [c_cv_have_one_getmntent],
                AC_COMPILE_IFELSE(
                        AC_LANG_PROGRAM([[AC_INCLUDES_DEFAULT
- #include <mntent.h>
  #include "$srcdir/src/utils_mount.h"]],
                                [[
                                 FILE *fh;
                [c_cv_have_two_getmntent],
                AC_COMPILE_IFELSE(
                        AC_LANG_PROGRAM([[AC_INCLUDES_DEFAULT
- #include <sys/mnttab.h>
  #include "$srcdir/src/utils_mount.h"]],
                                [[
                                 FILE *fh;
@@@ -922,8 -914,7 +928,8 @@@ AC_CHECK_MEMBERS([struct kinfo_proc.kp_
        ])
  
  AC_CHECK_MEMBERS([struct udphdr.uh_dport, struct udphdr.uh_sport], [], [],
 -[#if HAVE_STDINT_H
 +[#define _BSD_SOURCE
 +#if HAVE_STDINT_H
  # include <stdint.h>
  #endif
  #if HAVE_SYS_TYPES_H
  #endif
  ])
  AC_CHECK_MEMBERS([struct udphdr.dest, struct udphdr.source], [], [],
 -[#if HAVE_STDINT_H
 +[#define _BSD_SOURCE
 +#if HAVE_STDINT_H
  # include <stdint.h>
  #endif
  #if HAVE_SYS_TYPES_H
@@@ -1234,175 -1224,6 +1240,175 @@@ 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-libgcrypt {{{
 +GCRYPT_CPPFLAGS="$GCRYPT_CPPFLAGS"
 +GCRYPT_LDFLAGS="$GCRYPT_LDFLAGS"
 +GCRYPT_LIBS="$GCRYPT_LIBS"
 +AC_ARG_WITH(libgcrypt, [AS_HELP_STRING([--with-libgcrypt@<:@=PREFIX@:>@], [Path to libgcrypt.])],
 +[
 + if test -f "$withval" && test -x "$withval"
 + then
 +       with_libgcrypt_config="$withval"
 +       with_libgcrypt="yes"
 + else if test -f "$withval/bin/gcrypt-config" && test -x "$withval/bin/gcrypt-config"
 + then
 +       with_libgcrypt_config="$withval/bin/gcrypt-config"
 +       with_libgcrypt="yes"
 + else if test -d "$withval"
 + then
 +       GCRYPT_CPPFLAGS="$GCRYPT_CPPFLAGS -I$withval/include"
 +       GCRYPT_LDFLAGS="$GCRYPT_LDFLAGS -L$withval/lib"
 +       with_libgcrypt="yes"
 + else
 +       with_libgcrypt_config="gcrypt-config"
 +       with_libgcrypt="$withval"
 + fi; fi; fi
 +],
 +[
 + with_libgcrypt_config="libgcrypt-config"
 + with_libgcrypt="yes"
 +])
 +
 +if test "x$with_libgcrypt" = "xyes" && test "x$with_libgcrypt_config" != "x"
 +then
 +      if test "x$GCRYPT_CPPFLAGS" = "x"
 +      then
 +              GCRYPT_CPPFLAGS=`"$with_libgcrypt_config" --cflags 2>/dev/null`
 +      fi
 +
 +      if test "x$GCRYPT_LDFLAGS" = "x"
 +      then
 +              gcrypt_exec_prefix=`"$with_libgcrypt_config" --exec-prefix 2>/dev/null`
 +              GCRYPT_LDFLAGS="-L$gcrypt_exec_prefix/lib"
 +      fi
 +
 +      if test "x$GCRYPT_LIBS" = "x"
 +      then
 +              GCRYPT_LIBS=`"$with_libgcrypt_config" --libs 2>/dev/null`
 +      fi
 +fi
 +
 +SAVE_CPPFLAGS="$CPPFLAGS"
 +SAVE_LDFLAGS="$LDFLAGS"
 +CPPFLAGS="$CPPFLAGS $GCRYPT_CPPFLAGS"
 +LDFLAGS="$LDFLAGS $GCRYPT_LDFLAGS"
 +
 +if test "x$with_libgcrypt" = "xyes"
 +then
 +      if test "x$GCRYPT_CPPFLAGS" != "x"
 +      then
 +              AC_MSG_NOTICE([gcrypt CPPFLAGS: $GCRYPT_CPPFLAGS])
 +      fi
 +      AC_CHECK_HEADERS(gcrypt.h,
 +              [with_libgcrypt="yes"],
 +              [with_libgcrypt="no (gcrypt.h not found)"])
 +fi
 +
 +if test "x$with_libgcrypt" = "xyes"
 +then
 +      if test "x$GCRYPT_LDFLAGS" != "x"
 +      then
 +              AC_MSG_NOTICE([gcrypt LDFLAGS: $GCRYPT_LDFLAGS])
 +      fi
 +      AC_CHECK_LIB(gcrypt, gcry_md_hash_buffer,
 +              [with_libgcrypt="yes"],
 +              [with_libgcrypt="no (symbol gcry_md_hash_buffer not found)"])
 +
 +      if test "$with_libgcrypt" != "no"; then
 +              AM_PATH_LIBGCRYPT(1:1.2.0,,with_libgcrypt="no (version 1.2.0+ required)")
 +      fi
 +fi
 +
 +CPPFLAGS="$SAVE_CPPFLAGS"
 +LDFLAGS="$SAVE_LDFLAGS"
 +
 +if test "x$with_libgcrypt" = "xyes"
 +then
 +      AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define to 1 if you have the gcrypt library (-lgcrypt).])
 +fi
 +
 +AC_SUBST(GCRYPT_CPPFLAGS)
 +AC_SUBST(GCRYPT_LDFLAGS)
 +AC_SUBST(GCRYPT_LIBS)
 +AM_CONDITIONAL(BUILD_WITH_LIBGCRYPT, test "x$with_libgcrypt" = "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
 +              AC_MSG_CHECKING([for jni.h])
 +              TMPDIR=`find -L "$with_java_home" -name jni.h -exec 'dirname' '{}' ';' | head -n 1`
 +              if test "x$TMPDIR" != "x"
 +              then
 +                      AC_MSG_RESULT([found in $TMPDIR])
 +                      JAVA_CPPFLAGS="$JAVA_CPPFLAGS -I$TMPDIR"
 +              else
 +                      AC_MSG_RESULT([not found])
 +              fi
 +
 +              AC_MSG_CHECKING([for jni_md.h])
 +              TMPDIR=`find -L "$with_java_home" -name jni_md.h -exec 'dirname' '{}' ';' | head -n 1`
 +              if test "x$TMPDIR" != "x"
 +              then
 +                      AC_MSG_RESULT([found in $TMPDIR])
 +                      JAVA_CPPFLAGS="$JAVA_CPPFLAGS -I$TMPDIR"
 +              else
 +                      AC_MSG_RESULT([not found])
 +              fi
 +
 +              AC_MSG_CHECKING([for libjvm.so])
 +              TMPDIR=`find -L "$with_java_home" -name libjvm.so -exec 'dirname' '{}' ';' | head -n 1`
 +              if test "x$TMPDIR" != "x"
 +              then
 +                      AC_MSG_RESULT([found in $TMPDIR])
 +                      JAVA_LDFLAGS="$JAVA_LDFLAGS -L$TMPDIR"
 +              else
 +                      AC_MSG_RESULT([not found])
 +              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-libmemcached {{{
 +with_libmemcached_cppflags=""
 +with_libmemcached_ldflags=""
 +AC_ARG_WITH(libmemcached, [AS_HELP_STRING([--with-libmemcached@<:@=PREFIX@:>@], [Path to libmemcached.])],
 +[
 +      if test "x$withval" != "xno" && test "x$withval" != "xyes"
 +      then
 +              with_libmemcached_cppflags="-I$withval/include"
 +              with_libmemcached_ldflags="-L$withval/lib"
 +              with_libmemcached="yes"
 +      else
 +              with_libmemcached="$withval"
 +      fi
 +],
 +[
 +      with_libmemcached="yes"
 +])
 +if test "x$with_libmemcached" = "xyes"
 +then
 +      SAVE_CPPFLAGS="$CPPFLAGS"
 +      CPPFLAGS="$CPPFLAGS $with_libmemcached_cppflags"
 +
 +      AC_CHECK_HEADERS(libmemcached/memcached.h, [with_libmemcached="yes"], [with_libmemcached="no (libmemcached/memcached.h not found)"])
 +
 +      CPPFLAGS="$SAVE_CPPFLAGS"
 +fi
 +if test "x$with_libmemcached" = "xyes"
 +then
 +      SAVE_CPPFLAGS="$CPPFLAGS"
 +      SAVE_LDFLAGS="$LDFLAGS"
 +      CPPFLAGS="$CPPFLAGS $with_libmemcached_cppflags"
 +      LDFLAGS="$LDFLAGS $with_libmemcached_ldflags"
 +
 +      AC_CHECK_LIB(memcached, memcached_create, [with_libmemcached="yes"], [with_libmemcached="no (Symbol 'memcached_create' not found)"])
 +
 +      CPPFLAGS="$SAVE_CPPFLAGS"
 +      LDFLAGS="$SAVE_LDFLAGS"
 +fi
 +if test "x$with_libmemcached" = "xyes"
 +then
 +      BUILD_WITH_LIBMEMCACHED_CPPFLAGS="$with_libmemcached_cppflags"
 +      BUILD_WITH_LIBMEMCACHED_LDFLAGS="$with_libmemcached_ldflags"
 +      BUILD_WITH_LIBMEMCACHED_LIBS="-lmemcached"
 +      AC_SUBST(BUILD_WITH_LIBMEMCACHED_CPPFLAGS)
 +      AC_SUBST(BUILD_WITH_LIBMEMCACHED_LDFLAGS)
 +      AC_SUBST(BUILD_WITH_LIBMEMCACHED_LIBS)
 +      AC_DEFINE(HAVE_LIBMEMCACHED, 1, [Define if libmemcached is present and usable.])
 +fi
 +AM_CONDITIONAL(BUILD_WITH_LIBMEMCACHED, test "x$with_libmemcached" = "xyes")
 +# }}}
 +
  # --with-libmysql {{{
  with_mysql_config="mysql_config"
  with_mysql_cflags=""
                 [with_libmysql="yes"],
                 [with_libmysql="no (symbol 'mysql_init' not found)"],
                 [$with_mysql_libs])
+               AC_CHECK_LIB(mysqlclient, mysql_get_server_version,
+                [with_libmysql="yes"],
+                [with_libmysql="no (symbol 'mysql_get_server_version' not found)"],
+                [$with_mysql_libs])
        fi
  fi
  if test "x$with_libmysql" = "xyes"
  # }}}
  
  # --with-liboping {{{
 -with_own_liboping="no"
 -liboping_LDFLAGS="$LDFLAGS"
 -liboping_CPPFLAGS="$CPPFLAGS"
  AC_ARG_WITH(liboping, [AS_HELP_STRING([--with-liboping@<:@=PREFIX@:>@], [Path to liboping.])],
  [
 -      if test "x$withval" != "xno" && test "x$withval" != "xyes"
 + if test "x$withval" = "xyes"
 + then
 +       with_liboping="yes"
 + else if test "x$withval" = "xno"
 + then
 +       with_liboping="no"
 + else
 +       with_liboping="yes"
 +       LIBOPING_CPPFLAGS="$LIBOPING_CPPFLAGS -I$withval/include"
 +       LIBOPING_LDFLAGS="$LIBOPING_LDFLAGS -L$withval/lib"
 + fi; fi
 +],
 +[with_liboping="yes"])
 +
 +SAVE_CPPFLAGS="$CPPFLAGS"
 +SAVE_LDFLAGS="$LDFLAGS"
 +
 +CPPFLAGS="$CPPFLAGS $LIBOPING_CPPFLAGS"
 +LDFLAGS="$LDFLAGS $LIBOPING_LDFLAGS"
 +
 +if test "x$with_liboping" = "xyes"
 +then
 +      if test "x$LIBOPING_CPPFLAGS" != "x"
        then
 -              if test -d "$withval/lib"
 -              then
 -                      liboping_LDFLAGS="$LDFLAGS -L$withval/lib"
 -              fi
 -              if test -d "$withval/include"
 -              then
 -                      liboping_CPPFLAGS="$CPPFLAGS -I$withval/include"
 -              fi
 +              AC_MSG_NOTICE([liboping CPPFLAGS: $LIBOPING_CPPFLAGS])
        fi
 -      if test "x$withval" = "xno"
 -      then
 -              with_liboping="no"
 -              with_own_liboping="no"
 -      else if test "x$withval" = "xyes"
 +      AC_CHECK_HEADERS(oping.h,
 +      [with_liboping="yes"],
 +      [with_liboping="no ('oping.h' not found)"])
 +fi
 +if test "x$with_liboping" = "xyes"
 +then
 +      if test "x$LIBOPING_LDFLAGS" != "x"
        then
 -              with_liboping="yes"
 -      fi; fi
 -],
 -[
 -      with_liboping="yes"
 -])
 +              AC_MSG_NOTICE([liboping LDFLAGS: $LIBOPING_LDFLAGS])
 +      fi
 +      AC_CHECK_LIB(oping, ping_construct,
 +      [with_liboping="yes"],
 +      [with_liboping="no (symbol 'ping_construct' not found)"])
 +fi
 +
 +CPPFLAGS="$SAVE_CPPFLAGS"
 +LDFLAGS="$SAVE_LDFLAGS"
  
  if test "x$with_liboping" = "xyes"
  then
 -      save_LDFLAGS="$LDFLAGS"
 -      save_CPPFLAGS="$CPPFLAGS"
 -      LDFLAGS="$liboping_LDFLAGS"
 -      CPPFLAGS="$liboping_CPPFLAGS"
 -      AC_CHECK_LIB(oping, ping_construct,
 -      [
 -              with_liboping="yes"
 -              with_own_liboping="no"
 -      ],
 -      [
 -              with_liboping="yes"
 -              with_own_liboping="yes"
 -              LDFLAGS="$save_LDFLAGS"
 -              CPPFLAGS="$save_CPPFLAGS"
 -      ])
 +      BUILD_WITH_LIBOPING_CPPFLAGS="$LIBOPING_CPPFLAGS"
 +      BUILD_WITH_LIBOPING_LDFLAGS="$LIBOPING_LDFLAGS"
 +      AC_SUBST(BUILD_WITH_LIBOPING_CPPFLAGS)
 +      AC_SUBST(BUILD_WITH_LIBOPING_LDFLAGS)
  fi
  AM_CONDITIONAL(BUILD_WITH_LIBOPING, test "x$with_liboping" = "xyes")
 -AM_CONDITIONAL(BUILD_WITH_OWN_LIBOPING, test "x$with_own_liboping" = "xyes")
  # }}}
  
  # --with-oracle {{{
@@@ -2259,6 -1923,7 +2270,6 @@@ the
        LDFLAGS=$SAVE_LDFLAGS
  fi
  
 -c_cv_have_broken_perl_load_module="no"
  if test "x$with_libperl" = "xyes"
  then
        SAVE_CFLAGS=$CFLAGS
                [with_libpq="yes"],
                [with_libpq="no (symbol 'PQconnectdb' not found)"])
  
 +      AC_CHECK_LIB(pq, PQserverVersion,
 +              [with_libpq="yes"],
 +              [with_libpq="no (symbol 'PQserverVersion' not found)"])
 +
        LDFLAGS="$SAVE_LDFLAGS"
  fi
  if test "x$with_libpq" = "xyes"
@@@ -3223,7 -2884,6 +3234,7 @@@ dependency_error="no
  plugin_ascent="no"
  plugin_battery="no"
  plugin_bind="no"
 +plugin_conntrack="no"
  plugin_cpu="no"
  plugin_cpufreq="no"
  plugin_df="no"
@@@ -3238,18 -2898,14 +3249,18 @@@ plugin_load="no
  plugin_memory="no"
  plugin_multimeter="no"
  plugin_nfs="no"
 +plugin_fscache="no"
  plugin_perl="no"
  plugin_processes="no"
 +plugin_protocols="no"
  plugin_serial="no"
  plugin_swap="no"
  plugin_tape="no"
  plugin_tcpconns="no"
 +plugin_ted="no"
  plugin_thermal="no"
  plugin_users="no"
 +plugin_uptime="no"
  plugin_vmem="no"
  plugin_vserver="no"
  plugin_wireless="no"
  if test "x$ac_system" = "xLinux"
  then
        plugin_battery="yes"
 +      plugin_conntrack="yes"
        plugin_cpu="yes"
        plugin_cpufreq="yes"
        plugin_disk="yes"
        plugin_load="yes"
        plugin_memory="yes"
        plugin_nfs="yes"
 +      plugin_fscache="yes"
        plugin_processes="yes"
 +      plugin_protocols="yes"
        plugin_serial="yes"
        plugin_swap="yes"
        plugin_tcpconns="yes"
        plugin_thermal="yes"
 +      plugin_uptime="yes"
        plugin_vmem="yes"
        plugin_vserver="yes"
        plugin_wireless="yes"
  fi
  
  # Solaris
 +if test "x$with_kstat" = "xyes"
 +then
 +      plugin_uptime="yes"
 +fi
 +
  if test "x$with_devinfo$with_kstat" = "xyesyes"
  then
        plugin_cpu="yes"
  if test "x$have_sysctl" = "xyes"
  then
        plugin_cpu="yes"
 +      plugin_memory="yes"
        plugin_swap="yes"
 +      plugin_uptime="yes"
  fi
  if test "x$have_sysctlbyname" = "xyes"
  then
        plugin_tcpconns="yes"
  fi
  
- if test "x$have_statfs" = "xyes"
+ # Df plugin: Check if we know how to determine mount points first.
+ #if test "x$have_listmntent" = "xyes"; then
+ #     plugin_df="yes"
+ #fi
+ if test "x$have_getvfsstat" = "xyes" || test "x$have_getfsstat" = "xyes"
+ then
+       plugin_df="yes"
+ fi
+ if test "x$c_cv_have_two_getmntent" = "xyes" || test "x$have_getmntent" = "xgen" || test "x$have_getmntent" = "xsun"
  then
        plugin_df="yes"
  fi
- if test "x$have_statvfs" = "xyes"
+ #if test "x$have_getmntent" = "xseq"
+ #then
+ #     plugin_df="yes"
+ #fi
+ if test "x$c_cv_have_one_getmntent" = "xyes"
  then
        plugin_df="yes"
  fi
  
+ # Df plugin: Check if we have either `statfs' or `statvfs' second.
+ if test "x$plugin_df" = "xyes"
+ then
+       plugin_df="no"
+       if test "x$have_statfs" = "xyes"
+       then
+               plugin_df="yes"
+       fi
+       if test "x$have_statvfs" = "xyes"
+       then
+               plugin_df="yes"
+       fi
+ fi
  if test "x$have_getifaddrs" = "xyes"
  then
        plugin_interface="yes"
  if test "x$have_termios_h" = "xyes"
  then
        plugin_multimeter="yes"
 +      plugin_ted="yes"
  fi
  
  if test "x$have_thread_info" = "xyes"
@@@ -3443,7 -3113,6 +3480,7 @@@ AC_PLUGIN([apple_sensors], [$with_libio
  AC_PLUGIN([ascent],      [$plugin_ascent],     [AscentEmu player statistics])
  AC_PLUGIN([battery],     [$plugin_battery],    [Battery statistics])
  AC_PLUGIN([bind],        [$plugin_bind],       [ISC Bind nameserver statistics])
 +AC_PLUGIN([conntrack],   [$plugin_conntrack],  [nf_conntrack statistics])
  AC_PLUGIN([cpufreq],     [$plugin_cpufreq],    [CPU frequency statistics])
  AC_PLUGIN([cpu],         [$plugin_cpu],        [CPU usage statistics])
  AC_PLUGIN([csv],         [yes],                [CSV output plugin])
@@@ -3456,14 -3125,12 +3493,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])
@@@ -3471,7 -3138,6 +3508,7 @@@ AC_PLUGIN([match_regex], [yes]
  AC_PLUGIN([match_timediff], [yes],             [The timediff match])
  AC_PLUGIN([match_value], [yes],                [The value match])
  AC_PLUGIN([mbmon],       [yes],                [Query mbmond])
 +AC_PLUGIN([memcachec],   [$with_libmemcached], [memcachec statistics])
  AC_PLUGIN([memcached],   [yes],                [memcached statistics])
  AC_PLUGIN([memory],      [$plugin_memory],     [Memory usage])
  AC_PLUGIN([multimeter],  [$plugin_multimeter], [Read multimeter values])
@@@ -3479,7 -3145,6 +3516,7 @@@ AC_PLUGIN([mysql],       [$with_libmysq
  AC_PLUGIN([netlink],     [$with_libnetlink],   [Enhanced Linux network statistics])
  AC_PLUGIN([network],     [yes],                [Network communication plugin])
  AC_PLUGIN([nfs],         [$plugin_nfs],        [NFS statistics])
 +AC_PLUGIN([fscache],     [$plugin_fscache],    [fscache statistics])
  AC_PLUGIN([nginx],       [$with_libcurl],      [nginx statistics])
  AC_PLUGIN([notify_desktop], [$with_libnotify], [Desktop notifications])
  AC_PLUGIN([notify_email], [$with_libesmtp],    [Email notifier])
@@@ -3493,7 -3158,6 +3530,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])
@@@ -3501,7 -3165,6 +3538,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])
@@@ -3509,10 -3172,8 +3546,10 @@@ AC_PLUGIN([target_replace], [yes]
  AC_PLUGIN([target_set],  [yes],                [The set target])
  AC_PLUGIN([tcpconns],    [$plugin_tcpconns],   [TCP connection statistics])
  AC_PLUGIN([teamspeak2],  [yes],                [TeamSpeak2 server statistics])
 +AC_PLUGIN([ted],         [$plugin_ted],        [Read The Energy Detective values])
  AC_PLUGIN([thermal],     [$plugin_thermal],    [Linux ACPI thermal zone statistics])
  AC_PLUGIN([unixsock],    [yes],                [Unixsock communication plugin])
 +AC_PLUGIN([uptime],      [$plugin_uptime],     [Uptime statistics])
  AC_PLUGIN([users],       [$plugin_users],      [User statistics])
  AC_PLUGIN([uuid],        [yes],                [UUID as hostname plugin])
  AC_PLUGIN([vmem],        [$plugin_vmem],       [Virtual memory statistics])
@@@ -3520,86 -3181,6 +3557,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"
@@@ -3654,7 -3235,7 +3691,7 @@@ AC_SUBST(LCC_VERSION_STRING
  
  AC_CONFIG_FILES(src/libcollectdclient/lcc_features.h)
  
 -AC_OUTPUT(Makefile src/Makefile src/collectd.conf src/libiptc/Makefile src/libcollectdclient/Makefile src/libcollectdclient/libcollectdclient.pc src/liboconfig/Makefile src/liboping/Makefile bindings/Makefile)
 +AC_OUTPUT(Makefile src/Makefile src/collectd.conf src/libiptc/Makefile src/libcollectdclient/Makefile src/libcollectdclient/libcollectdclient.pc src/liboconfig/Makefile bindings/Makefile)
  
  if test "x$with_librrd" = "xyes" \
        && test "x$librrd_threadsafe" != "xyes"
@@@ -3662,6 -3243,12 +3699,6 @@@ the
        with_librrd="yes (warning: librrd is not thread-safe)"
  fi
  
 -if test "x$with_liboping" = "xyes" \
 -      && test "x$with_own_liboping" = "xyes"
 -then
 -      with_liboping="yes (shipped version)"
 -fi
 -
  if test "x$with_libiptc" = "xyes" -a "x$with_own_libiptc" = "xyes"
  then
        with_libiptc="yes (shipped version)"
@@@ -3687,10 -3274,8 +3724,10 @@@ Configuration
      libcurl . . . . . . . $with_libcurl
      libdbi  . . . . . . . $with_libdbi
      libesmtp  . . . . . . $with_libesmtp
 +    libgcrypt . . . . . . $with_libgcrypt
      libiokit  . . . . . . $with_libiokit
      libiptc . . . . . . . $with_libiptc
 +    libjvm  . . . . . . . $with_java
      libkstat  . . . . . . $with_kstat
      libkvm  . . . . . . . $with_libkvm
      libmysql  . . . . . . $with_libmysql
      ascent  . . . . . . . $enable_ascent
      battery . . . . . . . $enable_battery
      bind  . . . . . . . . $enable_bind
 +    conntrack . . . . . . $enable_conntrack
      cpu . . . . . . . . . $enable_cpu
      cpufreq . . . . . . . $enable_cpufreq
      csv . . . . . . . . . $enable_csv
      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
      match_timediff  . . . $enable_match_timediff
      match_value . . . . . $enable_match_value
      mbmon . . . . . . . . $enable_mbmon
 +    memcachec . . . . . . $enable_memcachec
      memcached . . . . . . $enable_memcached
      memory  . . . . . . . $enable_memory
      multimeter  . . . . . $enable_multimeter
      netlink . . . . . . . $enable_netlink
      network . . . . . . . $enable_network
      nfs . . . . . . . . . $enable_nfs
 +    fscache . . . . . . . $enable_fscache
      nginx . . . . . . . . $enable_nginx
      notify_desktop  . . . $enable_notify_desktop
      notify_email  . . . . $enable_notify_email
      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
      target_set  . . . . . $enable_target_set
      tcpconns  . . . . . . $enable_tcpconns
      teamspeak2  . . . . . $enable_teamspeak2
 +    ted . . . . . . . . . $enable_ted
      thermal . . . . . . . $enable_thermal
      unixsock  . . . . . . $enable_unixsock
 +    uptime  . . . . . . . $enable_uptime
      users . . . . . . . . $enable_users
      uuid  . . . . . . . . $enable_uuid
      vmem  . . . . . . . . $enable_vmem
diff --combined src/Makefile.am
@@@ -5,6 -5,9 +5,6 @@@ endi
  if BUILD_WITH_OWN_LIBOCONFIG
  SUBDIRS += liboconfig
  endif
 -if BUILD_WITH_OWN_LIBOPING
 -SUBDIRS += liboping
 -endif
  
  if COMPILER_IS_GCC
  AM_CFLAGS = -Wall -Werror
@@@ -32,13 -35,11 +32,12 @@@ collectd_SOURCES = collectd.c collectd.
                   utils_avltree.c utils_avltree.h \
                   utils_cache.c utils_cache.h \
                   utils_complain.c utils_complain.h \
 +                 utils_heap.c utils_heap.h \
                   utils_ignorelist.c utils_ignorelist.h \
                   utils_llist.c utils_llist.h \
                   utils_parse_option.c utils_parse_option.h \
                   utils_tail_match.c utils_tail_match.h \
                   utils_match.c utils_match.h \
-                  utils_mount.c utils_mount.h \
                   utils_subst.c utils_subst.h \
                   utils_tail.c utils_tail.h \
                   utils_threshold.c utils_threshold.h \
@@@ -88,11 -89,11 +87,11 @@@ collectdmon_SOURCES = collectdmon.
  collectdmon_CPPFLAGS = $(AM_CPPFLAGS)
  
  collectd_nagios_SOURCES = collectd-nagios.c
 -collectd_nagios_LDFLAGS =
 +collectd_nagios_LDADD =
  if BUILD_WITH_LIBSOCKET
 -collectd_nagios_LDFLAGS += -lsocket
 +collectd_nagios_LDADD += -lsocket
  endif
 -collectd_nagios_LDADD = libcollectdclient/libcollectdclient.la
 +collectd_nagios_LDADD += libcollectdclient/libcollectdclient.la
  collectd_nagios_DEPENDENCIES = libcollectdclient/libcollectdclient.la
  
  pkglib_LTLIBRARIES = 
@@@ -115,9 -116,8 +114,9 @@@ if BUILD_PLUGIN_APCUP
  pkglib_LTLIBRARIES += apcups.la
  apcups_la_SOURCES = apcups.c
  apcups_la_LDFLAGS = -module -avoid-version
 +apcups_la_LIBADD =
  if BUILD_WITH_LIBSOCKET
 -apcups_la_LDFLAGS += -lsocket
 +apcups_la_LIBADD += -lsocket
  endif
  collectd_LDADD += "-dlopen" apcups.la
  collectd_DEPENDENCIES += apcups.la
@@@ -126,8 -126,7 +125,8 @@@ endi
  if BUILD_PLUGIN_APPLE_SENSORS
  pkglib_LTLIBRARIES += apple_sensors.la
  apple_sensors_la_SOURCES = apple_sensors.c
 -apple_sensors_la_LDFLAGS = -module -avoid-version -lIOKit
 +apple_sensors_la_LDFLAGS = -module -avoid-version
 +apple_sensors_la_LIBADD = -lIOKit
  collectd_LDADD += "-dlopen" apple_sensors.la
  collectd_DEPENDENCIES += apple_sensors.la
  endif
@@@ -147,9 -146,8 +146,9 @@@ if BUILD_PLUGIN_BATTER
  pkglib_LTLIBRARIES += battery.la
  battery_la_SOURCES = battery.c
  battery_la_LDFLAGS = -module -avoid-version
 +battery_la_LIBADD =
  if BUILD_WITH_LIBIOKIT
 -battery_la_LDFLAGS += -lIOKit
 +battery_la_LIBADD += -lIOKit
  endif
  collectd_LDADD += "-dlopen" battery.la
  collectd_DEPENDENCIES += battery.la
@@@ -166,14 -164,6 +165,14 @@@ collectd_LDADD += "-dlopen" bind.l
  collectd_DEPENDENCIES += bind.la
  endif
  
 +if BUILD_PLUGIN_CONNTRACK
 +pkglib_LTLIBRARIES += conntrack.la
 +conntrack_la_SOURCES = conntrack.c
 +conntrack_la_LDFLAGS = -module -avoid-version
 +collectd_LDADD += "-dlopen" conntrack.la
 +collectd_DEPENDENCIES += conntrack.la
 +endif
 +
  if BUILD_PLUGIN_CPU
  pkglib_LTLIBRARIES += cpu.la
  cpu_la_SOURCES = cpu.c
@@@ -181,10 -171,10 +180,10 @@@ cpu_la_CFLAGS = $(AM_CFLAGS
  cpu_la_LDFLAGS = -module -avoid-version
  cpu_la_LIBADD = 
  if BUILD_WITH_LIBKSTAT
 -cpu_la_LDFLAGS += -lkstat
 +cpu_la_LIBADD += -lkstat
  endif
  if BUILD_WITH_LIBDEVINFO
 -cpu_la_LDFLAGS += -ldevinfo
 +cpu_la_LIBADD += -ldevinfo
  endif
  if BUILD_WITH_LIBSTATGRAB
  cpu_la_CFLAGS += $(BUILD_WITH_LIBSTATGRAB_CFLAGS)
@@@ -237,7 -227,7 +236,7 @@@ endi
  
  if BUILD_PLUGIN_DF
  pkglib_LTLIBRARIES += df.la
- df_la_SOURCES = df.c
+ df_la_SOURCES = df.c utils_mount.c utils_mount.h
  df_la_LDFLAGS = -module -avoid-version
  collectd_LDADD += "-dlopen" df.la
  collectd_DEPENDENCIES += df.la
@@@ -250,13 -240,13 +249,13 @@@ disk_la_CFLAGS = $(AM_CFLAGS
  disk_la_LDFLAGS = -module -avoid-version
  disk_la_LIBADD = 
  if BUILD_WITH_LIBKSTAT
 -disk_la_LDFLAGS += -lkstat
 +disk_la_LIBADD += -lkstat
  endif
  if BUILD_WITH_LIBDEVINFO
 -disk_la_LDFLAGS += -ldevinfo
 +disk_la_LIBADD += -ldevinfo
  endif
  if BUILD_WITH_LIBIOKIT
 -disk_la_LDFLAGS += -lIOKit
 +disk_la_LIBADD += -lIOKit
  endif
  if BUILD_WITH_LIBSTATGRAB
  disk_la_CFLAGS += $(BUILD_WITH_LIBSTATGRAB_CFLAGS)  
@@@ -269,8 -259,7 +268,8 @@@ endi
  if BUILD_PLUGIN_DNS
  pkglib_LTLIBRARIES += dns.la
  dns_la_SOURCES = dns.c utils_dns.c utils_dns.h
 -dns_la_LDFLAGS = -module -avoid-version -lpcap -lpthread
 +dns_la_LDFLAGS = -module -avoid-version
 +dns_la_LIBADD = -lpcap -lpthread
  collectd_LDADD += "-dlopen" dns.la
  collectd_DEPENDENCIES += dns.la
  endif
@@@ -279,7 -268,9 +278,7 @@@ if BUILD_PLUGIN_EMAI
  pkglib_LTLIBRARIES += email.la
  email_la_SOURCES = email.c
  email_la_LDFLAGS = -module -avoid-version
 -if BUILD_WITH_LIBPTHREAD
 -email_la_LDFLAGS += -lpthread
 -endif
 +email_la_LIBADD = -lpthread
  collectd_LDADD += "-dlopen" email.la
  collectd_DEPENDENCIES += email.la
  endif
@@@ -298,7 -289,9 +297,7 @@@ exec_la_SOURCES = exec.c 
                  utils_cmd_putnotif.c utils_cmd_putnotif.h \
                  utils_cmd_putval.c utils_cmd_putval.h
  exec_la_LDFLAGS = -module -avoid-version
 -if BUILD_WITH_LIBPTHREAD
 -exec_la_LDFLAGS += -lpthread
 -endif
 +exec_la_LIBADD = -lpthread
  collectd_LDADD += "-dlopen" exec.la
  collectd_DEPENDENCIES += exec.la
  endif
@@@ -311,23 -304,12 +310,23 @@@ collectd_LDADD += "-dlopen" filecount.l
  collectd_DEPENDENCIES += filecount.la
  endif
  
 +if BUILD_PLUGIN_GMOND
 +pkglib_LTLIBRARIES += gmond.la
 +gmond_la_SOURCES = gmond.c
 +gmond_la_CPPFLAGS = $(AM_CPPFLAGS) $(GANGLIA_CPPFLAGS)
 +gmond_la_LDFLAGS = -module -avoid-version $(GANGLIA_LDFLAGS)
 +gmond_la_LIBADD = $(GANGLIA_LIBS)
 +collectd_LDADD += "-dlopen" gmond.la
 +collectd_DEPENDENCIES += gmond.la
 +endif
 +
  if BUILD_PLUGIN_HDDTEMP
  pkglib_LTLIBRARIES += hddtemp.la
  hddtemp_la_SOURCES = hddtemp.c
  hddtemp_la_LDFLAGS = -module -avoid-version
 +hddtemp_la_LIBADD =
  if BUILD_WITH_LIBSOCKET
 -hddtemp_la_LDFLAGS += -lsocket
 +hddtemp_la_LIBADD += -lsocket
  endif
  collectd_LDADD += "-dlopen" hddtemp.la
  collectd_DEPENDENCIES += hddtemp.la
@@@ -346,10 -328,10 +345,10 @@@ interface_la_CFLAGS += $(BUILD_WITH_LIB
  interface_la_LIBADD += $(BUILD_WITH_LIBSTATGRAB_LDFLAGS)
  else
  if BUILD_WITH_LIBKSTAT
 -interface_la_LDFLAGS += -lkstat
 +interface_la_LIBADD += -lkstat
  endif
  if BUILD_WITH_LIBDEVINFO
 -interface_la_LDFLAGS += -ldevinfo
 +interface_la_LIBADD += -ldevinfo
  endif # BUILD_WITH_LIBDEVINFO
  endif # !BUILD_WITH_LIBSTATGRAB
  endif # BUILD_PLUGIN_INTERFACE
@@@ -362,7 -344,7 +361,7 @@@ if BUILD_WITH_OWN_LIBIPT
  iptables_la_LIBADD  = libiptc/libiptc.la
  iptables_la_DEPENDENCIES = libiptc/libiptc.la
  else
 -iptables_la_LDFLAGS += -liptc
 +iptables_la_LIBADD = -liptc
  endif
  collectd_LDADD += "-dlopen" iptables.la
  collectd_DEPENDENCIES += iptables.la
@@@ -395,17 -377,6 +394,17 @@@ collectd_LDADD += "-dlopen" irq.l
  collectd_DEPENDENCIES += irq.la
  endif
  
 +if BUILD_PLUGIN_JAVA
 +pkglib_LTLIBRARIES += java.la
 +java_la_SOURCES = java.c
 +java_la_CPPFLAGS = $(AM_CPPFLAGS) $(JAVA_CPPFLAGS)
 +java_la_CFLAGS = $(AM_CFLAGS) $(JAVA_CFLAGS)
 +java_la_LDFLAGS = -module -avoid-version $(JAVA_LDFLAGS)
 +java_la_LIBADD = $(JAVA_LIBS)
 +collectd_LDADD += "-dlopen" java.la
 +collectd_DEPENDENCIES += java.la
 +endif
 +
  if BUILD_PLUGIN_LIBVIRT
  pkglib_LTLIBRARIES += libvirt.la
  libvirt_la_SOURCES = libvirt.c
@@@ -467,31 -438,20 +466,31 @@@ if BUILD_PLUGIN_MBMO
  pkglib_LTLIBRARIES += mbmon.la
  mbmon_la_SOURCES = mbmon.c
  mbmon_la_LDFLAGS = -module -avoid-version
 +mbmon_la_LIBADD =
  if BUILD_WITH_LIBSOCKET
 -mbmon_la_LDFLAGS += -lsocket
 +mbmon_la_LIBADD += -lsocket
  endif
  collectd_LDADD += "-dlopen" mbmon.la
  collectd_DEPENDENCIES += mbmon.la
  endif
  
 +if BUILD_PLUGIN_MEMCACHEC
 +pkglib_LTLIBRARIES += memcachec.la
 +memcachec_la_SOURCES = memcachec.c
 +memcachec_la_LDFLAGS = -module -avoid-version $(BUILD_WITH_LIBMEMCACHED_LDFLAGS)
 +memcachec_la_CPPFLAGS = $(BUILD_WITH_LIBMEMCACHED_CPPFLAGS)
 +memcachec_la_LIBADD = $(BUILD_WITH_LIBMEMCACHED_LIBS)
 +collectd_LDADD += "-dlopen" memcachec.la
 +collectd_DEPENDENCIES += memcachec.la
 +endif
 +
  if BUILD_PLUGIN_MEMCACHED
  pkglib_LTLIBRARIES += memcached.la
  memcached_la_SOURCES = memcached.c
  memcached_la_LDFLAGS = -module -avoid-version
  memcached_la_LIBADD =
  if BUILD_WITH_LIBSOCKET
 -memcached_la_LDFLAGS += -lsocket
 +memcached_la_LIBADD += -lsocket
  endif
  collectd_LDADD += "-dlopen" memcached.la
  collectd_DEPENDENCIES += memcached.la
@@@ -551,18 -511,13 +550,18 @@@ endi
  
  if BUILD_PLUGIN_NETWORK
  pkglib_LTLIBRARIES += network.la
 -network_la_SOURCES = network.c network.h
 +network_la_SOURCES = network.c network.h \
 +                   utils_fbhash.c utils_fbhash.h
 +network_la_CPPFLAGS = $(AM_CPPFLAGS)
  network_la_LDFLAGS = -module -avoid-version
 +network_la_LIBADD = -lpthread
  if BUILD_WITH_LIBSOCKET
 -network_la_LDFLAGS += -lsocket
 +network_la_LIBADD += -lsocket
  endif
 -if BUILD_WITH_LIBPTHREAD
 -network_la_LDFLAGS += -lpthread
 +if BUILD_WITH_LIBGCRYPT
 +network_la_CPPFLAGS += $(GCRYPT_CPPFLAGS)
 +network_la_LDFLAGS += $(GCRYPT_LDFLAGS)
 +network_la_LIBADD += $(GCRYPT_LIBS)
  endif
  collectd_LDADD += "-dlopen" network.la
  collectd_DEPENDENCIES += network.la
@@@ -576,14 -531,6 +575,14 @@@ collectd_LDADD += "-dlopen" nfs.l
  collectd_DEPENDENCIES += nfs.la
  endif
  
 +if BUILD_PLUGIN_FSCACHE
 +pkglib_LTLIBRARIES += fscache.la
 +fscache_la_SOURCES = fscache.c
 +fscache_la_LDFLAGS = -module -avoid-version
 +collectd_LDADD += "-dlopen" fscache.la
 +collectd_DEPENDENCIES += fscache.la
 +endif
 +
  if BUILD_PLUGIN_NGINX
  pkglib_LTLIBRARIES += nginx.la
  nginx_la_SOURCES = nginx.c
@@@ -602,8 -549,7 +601,8 @@@ if BUILD_PLUGIN_NOTIFY_DESKTO
  pkglib_LTLIBRARIES += notify_desktop.la
  notify_desktop_la_SOURCES = notify_desktop.c
  notify_desktop_la_CFLAGS = $(AM_CFLAGS) $(LIBNOTIFY_CFLAGS)
 -notify_desktop_la_LDFLAGS = -module -avoid-version $(LIBNOTIFY_LIBS)
 +notify_desktop_la_LDFLAGS = -module -avoid-version
 +notify_desktop_la_LIBADD = $(LIBNOTIFY_LIBS)
  collectd_LDADD += "-dlopen" notify_desktop.la
  collectd_DEPENDENCIES += notify_desktop.la
  endif
  if BUILD_PLUGIN_NOTIFY_EMAIL
  pkglib_LTLIBRARIES += notify_email.la
  notify_email_la_SOURCES = notify_email.c
 -notify_email_la_LDFLAGS = -L/usr/local/lib -lesmtp -lssl -lcrypto -pthread -module -avoid-version
 +notify_email_la_LDFLAGS = -module -avoid-version
 +notify_email_la_LIBADD = -lesmtp -lssl -lcrypto -lpthread -ldl
  collectd_LDADD += "-dlopen" notify_email.la
  collectd_DEPENDENCIES += notify_email.la
  endif
@@@ -621,9 -566,8 +620,9 @@@ if BUILD_PLUGIN_NTP
  pkglib_LTLIBRARIES += ntpd.la
  ntpd_la_SOURCES = ntpd.c
  ntpd_la_LDFLAGS = -module -avoid-version
 +ntpd_la_LIBADD =
  if BUILD_WITH_LIBSOCKET
 -ntpd_la_LDFLAGS += -lsocket
 +ntpd_la_LIBADD += -lsocket
  endif
  collectd_LDADD += "-dlopen" ntpd.la
  collectd_DEPENDENCIES += ntpd.la
@@@ -633,8 -577,7 +632,8 @@@ if BUILD_PLUGIN_NU
  pkglib_LTLIBRARIES += nut.la
  nut_la_SOURCES = nut.c
  nut_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBUPSCLIENT_CFLAGS)
 -nut_la_LDFLAGS = -module -avoid-version -lpthread $(BUILD_WITH_LIBUPSCLIENT_LIBS)
 +nut_la_LDFLAGS = -module -avoid-version
 +nut_la_LIBADD = -lpthread $(BUILD_WITH_LIBUPSCLIENT_LIBS)
  collectd_LDADD += "-dlopen" nut.la
  collectd_DEPENDENCIES += nut.la
  endif
@@@ -694,9 -637,13 +693,9 @@@ endi
  if BUILD_PLUGIN_PING
  pkglib_LTLIBRARIES += ping.la
  ping_la_SOURCES = ping.c
 -ping_la_LDFLAGS = -module -avoid-version
 -if BUILD_WITH_OWN_LIBOPING
 -ping_la_LIBADD  = liboping/liboping.la
 -ping_la_DEPENDENCIES = liboping/liboping.la
 -else
 -ping_la_LDFLAGS += -loping
 -endif
 +ping_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBOPING_CPPFLAGS)
 +ping_la_LDFLAGS = -module -avoid-version $(BUILD_WITH_LIBOPING_LDFLAGS)
 +ping_la_LIBADD = -loping
  collectd_LDADD += "-dlopen" ping.la
  collectd_DEPENDENCIES += ping.la
  endif
@@@ -707,8 -654,7 +706,8 @@@ postgresql_la_SOURCES = postgresql.c 
                 utils_db_query.c utils_db_query.h
  postgresql_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBPQ_CPPFLAGS)
  postgresql_la_LDFLAGS = -module -avoid-version \
 -              $(BUILD_WITH_LIBPQ_LDFLAGS) -lpq
 +              $(BUILD_WITH_LIBPQ_LDFLAGS)
 +postgresql_la_LIBADD = -lpq
  collectd_LDADD += "-dlopen" postgresql.la
  collectd_DEPENDENCIES += postgresql.la
  endif
@@@ -733,14 -679,6 +732,14 @@@ processes_la_LIBADD += -lkv
  endif
  endif
  
 +if BUILD_PLUGIN_PROTOCOLS
 +pkglib_LTLIBRARIES += protocols.la
 +protocols_la_SOURCES = protocols.c
 +protocols_la_LDFLAGS = -module -avoid-version
 +collectd_LDADD += "-dlopen" protocols.la
 +collectd_DEPENDENCIES += protocols.la
 +endif
 +
  if BUILD_PLUGIN_RRDCACHED
  pkglib_LTLIBRARIES += rrdcached.la
  rrdcached_la_SOURCES = rrdcached.c utils_rrdcreate.c utils_rrdcreate.h
@@@ -765,8 -703,8 +764,8 @@@ if BUILD_PLUGIN_SENSOR
  pkglib_LTLIBRARIES += sensors.la
  sensors_la_SOURCES = sensors.c
  sensors_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBSENSORS_CFLAGS)
 -sensors_la_LDFLAGS = -module -avoid-version $(BUILD_WITH_LIBSENSORS_LDFLAGS)
 -sensors_la_LIBADD = -lsensors
 +sensors_la_LDFLAGS = -module -avoid-version
 +sensors_la_LIBADD = $(BUILD_WITH_LIBSENSORS_LDFLAGS)
  collectd_LDADD += "-dlopen" sensors.la
  collectd_DEPENDENCIES += sensors.la
  endif
@@@ -827,14 -765,6 +826,14 @@@ collectd_LDADD += "-dlopen" syslog.l
  collectd_DEPENDENCIES += syslog.la
  endif
  
 +if BUILD_PLUGIN_TABLE
 +pkglib_LTLIBRARIES += table.la
 +table_la_SOURCES = table.c
 +table_la_LDFLAGS = -module -avoid-version
 +collectd_LDADD += "-dlopen" table.la
 +collectd_DEPENDENCIES += table.la
 +endif
 +
  if BUILD_PLUGIN_TAIL
  pkglib_LTLIBRARIES += tail.la
  tail_la_SOURCES = tail.c
@@@ -846,8 -776,7 +845,8 @@@ endi
  if BUILD_PLUGIN_TAPE
  pkglib_LTLIBRARIES += tape.la
  tape_la_SOURCES = tape.c
 -tape_la_LDFLAGS = -module -avoid-version -lkstat -ldevinfo
 +tape_la_LDFLAGS = -module -avoid-version
 +tape_la_LIBADD = -lkstat -ldevinfo
  collectd_LDADD += "-dlopen" tape.la
  collectd_DEPENDENCIES += tape.la
  endif
@@@ -896,14 -825,6 +895,14 @@@ collectd_LDADD += "-dlopen" teamspeak2.
  collectd_DEPENDENCIES += teamspeak2.la
  endif
  
 +if BUILD_PLUGIN_TED
 +pkglib_LTLIBRARIES += ted.la
 +ted_la_SOURCES = ted.c
 +ted_la_LDFLAGS = -module -avoid-version
 +collectd_LDADD += "-dlopen" ted.la
 +collectd_DEPENDENCIES += ted.la
 +endif
 +
  if BUILD_PLUGIN_THERMAL
  pkglib_LTLIBRARIES += thermal.la
  thermal_la_SOURCES = thermal.c
@@@ -920,25 -841,11 +919,25 @@@ unixsock_la_SOURCES = unixsock.c 
                      utils_cmd_listval.h utils_cmd_listval.c \
                      utils_cmd_putval.h utils_cmd_putval.c \
                      utils_cmd_putnotif.h utils_cmd_putnotif.c
 -unixsock_la_LDFLAGS = -module -avoid-version -lpthread
 +unixsock_la_LDFLAGS = -module -avoid-version
 +unixsock_la_LIBADD = -lpthread
  collectd_LDADD += "-dlopen" unixsock.la
  collectd_DEPENDENCIES += unixsock.la
  endif
  
 +if BUILD_PLUGIN_UPTIME
 +pkglib_LTLIBRARIES += uptime.la
 +uptime_la_SOURCES = uptime.c
 +uptime_la_CFLAGS = $(AM_CFLAGS)
 +uptime_la_LDFLAGS = -module -avoid-version
 +uptime_la_LIBADD =
 +if BUILD_WITH_LIBKSTAT
 +uptime_la_LIBADD += -lkstat
 +endif
 +collectd_LDADD += "-dlopen" uptime.la
 +collectd_DEPENDENCIES += uptime.la
 +endif
 +
  if BUILD_PLUGIN_USERS
  pkglib_LTLIBRARIES += users.la
  users_la_SOURCES = users.c
@@@ -991,41 -898,25 +990,41 @@@ if BUILD_PLUGIN_XMM
  pkglib_LTLIBRARIES += xmms.la
  xmms_la_SOURCES = xmms.c
  xmms_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBXMMS_CFLAGS)
 -xmms_la_LDFLAGS = -module -avoid-version $(BUILD_WITH_LIBXMMS_LIBS)
 +xmms_la_LDFLAGS = -module -avoid-version
 +xmms_la_LIBADD = $(BUILD_WITH_LIBXMMS_LIBS)
  collectd_LDADD += "-dlopen" xmms.la
  collectd_DEPENDENCIES += xmms.la
  endif
  
  
 -dist_man_MANS = collectd.1 collectd-nagios.1 collectd.conf.5 \
 -              collectd-email.5 collectd-exec.5 collectd-perl.5 \
 -              collectd-snmp.5 collectd-unixsock.5 collectdmon.1 \
 +dist_man_MANS = collectd.1 \
 +              collectd.conf.5 \
 +              collectd-email.5 \
 +              collectd-exec.5 \
 +              collectd-java.5
 +              collectdmon.1 \
 +              collectd-nagios.1 \
 +              collectd-perl.5 \
 +              collectd-snmp.5 \
 +              collectd-unixsock.5 \
                types.db.5
  
  #collectd_1_SOURCES = collectd.pod
  
  EXTRA_DIST = types.db
  
 -EXTRA_DIST += collectd-email.pod collectd-exec.pod collectd-nagios.pod \
 -      collectd-perl.pod collectd-snmp.pod collectd-unixsock.pod \
 -      collectd.conf.pod collectd.pod collectdmon.pod types.db.pod \
 -      postgresql_default.conf
 +EXTRA_DIST +=   collectd.conf.pod \
 +              collectd-email.pod \
 +              collectd-exec.pod \
 +              collectd-java.pod \
 +              collectdmon.pod \
 +              collectd-nagios.pod \
 +              collectd-perl.pod \
 +              collectd.pod \
 +              collectd-snmp.pod \
 +              collectd-unixsock.pod \
 +              postgresql_default.conf \
 +              types.db.pod
  
  .pod.1:
        pod2man --release=$(VERSION) --center=$(PACKAGE) $< \