X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=configure.in;h=4732313a34a9b54cf7412ed97569217ef9fbf327;hb=131eda63f8958e63fb317f9584776b1311e49552;hp=a62914d350c6276c6c19db45aee7ba1664df2e8b;hpb=2fd1f725afd1e9353e7d5df5c45d1748ee4b1219;p=collectd.git diff --git a/configure.in b/configure.in index a62914d3..4732313a 100644 --- a/configure.in +++ b/configure.in @@ -2,6 +2,25 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(collectd, m4_esyscmd(./version-gen.sh)) AC_CONFIG_SRCDIR(src/collectd.c) AC_CONFIG_HEADERS(src/config.h) + +m4_ifdef([LT_PACKAGE_VERSION], + # libtool >= 2.2 + [ + LT_CONFIG_LTDL_DIR([libltdl]) + LT_INIT([dlopen]) + LTDL_INIT([convenience]) + ] +, + # libtool <= 1.5 + [ + AC_LIBLTDL_CONVENIENCE + AC_SUBST(LTDLINCL) + AC_SUBST(LIBLTDL) + AC_LIBTOOL_DLOPEN + AC_CONFIG_SUBDIRS(libltdl) + ] +) + AM_INIT_AUTOMAKE(dist-bzip2) AC_LANG(C) @@ -20,17 +39,11 @@ AC_PROG_MAKE_SET AM_PROG_CC_C_O AM_CONDITIONAL(COMPILER_IS_GCC, test "x$GCC" = "xyes") -dnl configure libtool AC_DISABLE_STATIC -AC_LIBLTDL_CONVENIENCE -AC_SUBST(LTDLINCL) -AC_SUBST(LIBLTDL) -AC_LIBTOOL_DLOPEN AC_PROG_LIBTOOL AC_PROG_LEX AC_PROG_YACC PKG_PROG_PKG_CONFIG -AC_CONFIG_SUBDIRS(libltdl) AC_MSG_CHECKING([for kernel type ($host_os)]) case $host_os in @@ -264,9 +277,25 @@ AC_CHECK_HEADERS(IOKit/ps/IOPowerSources.h, [], [], ]) # For the swap module +have_linux_wireless_h="no" +if test "x$ac_system" = "xLinux" +then + AC_CHECK_HEADERS(linux/wireless.h, + [have_linux_wireless_h="yes"], + [have_linux_wireless_h="no"], +[ +#include +#include +#include +]) +fi + +# For the swap module have_sys_swap_h="yes" AC_CHECK_HEADERS(sys/swap.h vm/anon.h, [], [have_sys_swap_h="no"], [ +#undef _FILE_OFFSET_BITS +#undef _LARGEFILE64_SOURCE #if HAVE_SYS_TYPES_H # include #endif @@ -1501,7 +1530,7 @@ 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` + TMPDIR=`find -L "$with_java_home" -name jni.h -type f -exec 'dirname' '{}' ';' | head -n 1` if test "x$TMPDIR" != "x" then AC_MSG_RESULT([found in $TMPDIR]) @@ -1511,7 +1540,7 @@ then fi AC_MSG_CHECKING([for jni_md.h]) - TMPDIR=`find -L "$with_java_home" -name jni_md.h -exec 'dirname' '{}' ';' | head -n 1` + TMPDIR=`find -L "$with_java_home" -name jni_md.h -type f -exec 'dirname' '{}' ';' | head -n 1` if test "x$TMPDIR" != "x" then AC_MSG_RESULT([found in $TMPDIR]) @@ -1521,11 +1550,11 @@ then fi AC_MSG_CHECKING([for libjvm.so]) - TMPDIR=`find -L "$with_java_home" -name libjvm.so -exec 'dirname' '{}' ';' | head -n 1` + TMPDIR=`find -L "$with_java_home" -name libjvm.so -type f -exec 'dirname' '{}' ';' | head -n 1` if test "x$TMPDIR" != "x" then AC_MSG_RESULT([found in $TMPDIR]) - JAVA_LDFLAGS="$JAVA_LDFLAGS -L$TMPDIR" + JAVA_LDFLAGS="$JAVA_LDFLAGS -L$TMPDIR -Wl,-rpath -Wl,$TMPDIR" else AC_MSG_RESULT([not found]) fi @@ -1533,7 +1562,7 @@ then if test "x$JAVAC" = "x" then AC_MSG_CHECKING([for javac]) - TMPDIR=`find -L "$with_java_home" -name javac | head -n 1` + TMPDIR=`find -L "$with_java_home" -name javac -type f | head -n 1` if test "x$TMPDIR" != "x" then JAVAC="$TMPDIR" @@ -2748,6 +2777,79 @@ then fi # }}} +# --with-libtokyotyrant {{{ +with_libtokyotyrant_cppflags="" +with_libtokyotyrant_ldflags="" +with_libtokyotyrant_libs="" +AC_ARG_WITH(libtokyotyrant, [AS_HELP_STRING([--with-libtokyotyrant@<:@=PREFIX@:>@], [Path to libtokyotyrant.])], +[ + if test "x$withval" = "xno" + then + with_libtokyotyrant="no" + else if test "x$withval" = "xyes" + then + with_libtokyotyrant="yes" + else + with_libtokyotyrant_cppflags="-I$withval/include" + with_libtokyotyrant_ldflags="-L$withval/include" + with_libtokyotyrant_libs="-ltokyotyrant" + with_libtokyotyrant="yes" + fi; fi +], +[ + with_libtokyotyrant="yes" +]) + +if test "x$with_libtokyotyrant" = "xyes" +then + if $PKG_CONFIG --exists tokyotyrant + then + with_libtokyotyrant_cppflags="$with_libtokyotyrant_cppflags `$PKG_CONFIG --cflags tokyotyrant`" + with_libtokyotyrant_ldflags="$with_libtokyotyrant_ldflags `pkg-config --libs-only-L tokyotyrant`" + with_libtokyotyrant_libs="$with_libtokyotyrant_libs `pkg-config --libs-only-l tokyotyrant`" + fi +fi + +SAVE_CPPFLAGS="$CPPFLAGS" +SAVE_LDFLAGS="$LDFLAGS" +CPPFLAGS="$CPPFLAGS $with_libtokyotyrant_cppflags" +LDFLAGS="$LDFLAGS $with_libtokyotyrant_ldflags" + +if test "x$with_libtokyotyrant" = "xyes" +then + AC_CHECK_HEADERS(tcrdb.h, + [ + AC_DEFINE(HAVE_TCRDB_H, 1, + [Define to 1 if you have the header file.]) + ], [with_libtokyotyrant="no (tcrdb.h not found)"]) +fi + +if test "x$with_libtokyotyrant" = "xyes" +then + AC_CHECK_LIB(tokyotyrant, tcrdbrnum, + [ + AC_DEFINE(HAVE_LIBTOKYOTYRANT, 1, + [Define to 1 if you have the tokyotyrant library (-ltokyotyrant).]) + ], + [with_libtokyotyrant="no (symbol tcrdbrnum not found)"], + [$with_libtokyotyrant_libs]) +fi + +CPPFLAGS="$SAVE_CPPFLAGS" +LDFLAGS="$SAVE_LDFLAGS" + +if test "x$with_libtokyotyrant" = "xyes" +then + BUILD_WITH_LIBTOKYOTYRANT_CPPFLAGS="$with_libtokyotyrant_cppflags" + BUILD_WITH_LIBTOKYOTYRANT_LDFLAGS="$with_libtokyotyrant_ldflags" + BUILD_WITH_LIBTOKYOTYRANT_LIBS="$with_libtokyotyrant_libs" + AC_SUBST(BUILD_WITH_LIBTOKYOTYRANT_CPPFLAGS) + AC_SUBST(BUILD_WITH_LIBTOKYOTYRANT_LDFLAGS) + AC_SUBST(BUILD_WITH_LIBTOKYOTYRANT_LIBS) +fi +AM_CONDITIONAL(BUILD_WITH_LIBTOKYOTYRANT, test "x$with_libtokyotyrant" = "xyes") +# }}} + # --with-libupsclient {{{ with_libupsclient_config="" with_libupsclient_cflags="" @@ -2951,6 +3053,57 @@ AC_DEFINE_UNQUOTED(HAVE_LIBXMMS, [$with_libxmms_numeric], [Define to 1 if you ha AM_CONDITIONAL(BUILD_WITH_LIBXMMS, test "x$with_libxmms" = "xyes") # }}} +# --with-libyajl {{{ +with_libyajl_cppflags="" +with_libyajl_ldflags="" +AC_ARG_WITH(libyajl, [AS_HELP_STRING([--with-libyajl@<:@=PREFIX@:>@], [Path to libyajl.])], +[ + if test "x$withval" != "xno" && test "x$withval" != "xyes" + then + with_libyajl_cppflags="-I$withval/include" + with_libyajl_ldflags="-L$withval/lib" + with_libyajl="yes" + else + with_libyajl="$withval" + fi +], +[ + with_libyajl="yes" +]) +if test "x$with_libyajl" = "xyes" +then + SAVE_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $with_libyajl_cppflags" + + AC_CHECK_HEADERS(yajl/yajl_parse.h, [with_libyajl="yes"], [with_libyajl="no (yajl/yajl_parse.h not found)"]) + + CPPFLAGS="$SAVE_CPPFLAGS" +fi +if test "x$with_libyajl" = "xyes" +then + SAVE_CPPFLAGS="$CPPFLAGS" + SAVE_LDFLAGS="$LDFLAGS" + CPPFLAGS="$CPPFLAGS $with_libyajl_cppflags" + LDFLAGS="$LDFLAGS $with_libyajl_ldflags" + + AC_CHECK_LIB(yajl, yajl_alloc, [with_libyajl="yes"], [with_libyajl="no (Symbol 'yajl_alloc' not found)"]) + + CPPFLAGS="$SAVE_CPPFLAGS" + LDFLAGS="$SAVE_LDFLAGS" +fi +if test "x$with_libyajl" = "xyes" +then + BUILD_WITH_LIBYAJL_CPPFLAGS="$with_libyajl_cppflags" + BUILD_WITH_LIBYAJL_LDFLAGS="$with_libyajl_ldflags" + BUILD_WITH_LIBYAJL_LIBS="-lyajl" + AC_SUBST(BUILD_WITH_LIBYAJL_CPPFLAGS) + AC_SUBST(BUILD_WITH_LIBYAJL_LDFLAGS) + AC_SUBST(BUILD_WITH_LIBYAJL_LIBS) + AC_DEFINE(HAVE_LIBYAJL, 1, [Define if libyajl is present and usable.]) +fi +AM_CONDITIONAL(BUILD_WITH_LIBYAJL, test "x$with_libyajl" = "xyes") +# }}} + # pkg-config --exists 'libxml-2.0'; pkg-config --exists libvirt {{{ with_libxml2="no (pkg-config isn't available)" with_libxml2_cflags="" @@ -3223,14 +3376,19 @@ AC_DEFUN( [AC_PLUGIN], [ enable_plugin="no" + force="no" AC_ARG_ENABLE([$1], AC_HELP_STRING([--enable-$1], [$3]), [ if test "x$enableval" = "xyes" then enable_plugin="yes" + else if test "x$enableval" = "xforce" + then + enable_plugin="yes" + force="yes" else enable_plugin="no" - fi + fi; fi ], [ if test "x$enable_all_plugins" = "xauto" @@ -3247,9 +3405,13 @@ AC_DEFUN( ]) if test "x$enable_plugin" = "xyes" then - if test "x$2" = "xyes" + if test "x$2" = "xyes" || test "x$force" = "xyes" then AC_DEFINE([HAVE_PLUGIN_]my_toupper([$1]), 1, [Define to 1 if the $1 plugin is enabled.]) + if test "x$2" != "xyes" + then + dependency_warning="yes" + fi else # User passed "yes" but dependency checking yielded "no" => Dependency problem. dependency_error="yes" enable_plugin="no (dependency error)" @@ -3267,13 +3429,16 @@ AC_COLLECTD([debug], [enable], [feature], [debugging]) AC_COLLECTD([daemon], [disable], [feature], [daemon mode]) AC_COLLECTD([getifaddrs],[enable], [feature], [getifaddrs under Linux]) +dependency_warning="no" dependency_error="no" + plugin_ascent="no" plugin_battery="no" plugin_bind="no" plugin_conntrack="no" plugin_cpu="no" plugin_cpufreq="no" +plugin_curl_json="no" plugin_df="no" plugin_disk="no" plugin_entropy="no" @@ -3389,6 +3554,11 @@ then plugin_ipmi="yes" fi +if test "x$with_libcurl" = "xyes" && test "x$with_libyajl" = "xyes" +then + plugin_curl_json="yes" +fi + if test "x$have_processor_info" = "xyes" then plugin_cpu="yes" @@ -3540,6 +3710,7 @@ AC_PLUGIN([cpufreq], [$plugin_cpufreq], [CPU frequency statistics]) AC_PLUGIN([cpu], [$plugin_cpu], [CPU usage statistics]) AC_PLUGIN([csv], [yes], [CSV output plugin]) AC_PLUGIN([curl], [$with_libcurl], [CURL generic web statistics]) +AC_PLUGIN([curl_json], [$plugin_curl_json], [CouchDB statistics]) AC_PLUGIN([dbi], [$with_libdbi], [General database statistics]) AC_PLUGIN([df], [$plugin_df], [Filesystem usage statistics]) AC_PLUGIN([disk], [$plugin_disk], [Disk usage statistics]) @@ -3560,6 +3731,8 @@ 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]) +AC_PLUGIN([madwifi], [$have_linux_wireless_h], [Madwifi wireless statistics]) +AC_PLUGIN([match_empty_counter], [yes], [The empty counter match]) AC_PLUGIN([match_regex], [yes], [The regex match]) AC_PLUGIN([match_timediff], [yes], [The timediff match]) AC_PLUGIN([match_value], [yes], [The value match]) @@ -3577,6 +3750,7 @@ AC_PLUGIN([notify_desktop], [$with_libnotify], [Desktop notifications]) AC_PLUGIN([notify_email], [$with_libesmtp], [Email notifier]) AC_PLUGIN([ntpd], [yes], [NTPd statistics]) AC_PLUGIN([nut], [$with_libupsclient], [Network UPS tools statistics]) +AC_PLUGIN([olsrd], [yes], [olsrd statistics]) AC_PLUGIN([onewire], [$with_libowcapi], [OneWire sensor statistics]) AC_PLUGIN([openvpn], [yes], [OpenVPN client statistics]) AC_PLUGIN([oracle], [$with_oracle], [Oracle plugin]) @@ -3603,6 +3777,7 @@ 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([tokyotyrant], [$with_libtokyotyrant], [TokyoTyrant database statistics]) AC_PLUGIN([unixsock], [yes], [Unixsock communication plugin]) AC_PLUGIN([uptime], [$plugin_uptime], [Uptime statistics]) AC_PLUGIN([users], [$plugin_users], [User statistics]) @@ -3610,6 +3785,7 @@ AC_PLUGIN([uuid], [yes], [UUID as hostname plugin]) AC_PLUGIN([vmem], [$plugin_vmem], [Virtual memory statistics]) AC_PLUGIN([vserver], [$plugin_vserver], [Linux VServer statistics]) AC_PLUGIN([wireless], [$plugin_wireless], [Wireless statistics]) +AC_PLUGIN([write_http], [$with_libcurl], [HTTP output plugin]) AC_PLUGIN([xmms], [$with_libxmms], [XMMS statistics]) dnl Default configuration file @@ -3766,6 +3942,11 @@ else enable_perl="no (needs libperl)" fi +if test "x$enable_perl" = "xno" && test "x$c_cv_have_perl_ithreads" = "xno" +then + enable_perl="no (libperl doesn't support ithreads)" +fi + if test "x$with_perl_bindings" = "xyes" \ && test "x$PERL_BINDINGS_OPTIONS" != "x" then @@ -3779,12 +3960,14 @@ Configuration: libcurl . . . . . . . $with_libcurl libdbi . . . . . . . $with_libdbi libesmtp . . . . . . $with_libesmtp + libganglia . . . . . $with_libganglia libgcrypt . . . . . . $with_libgcrypt libiokit . . . . . . $with_libiokit libiptc . . . . . . . $with_libiptc libjvm . . . . . . . $with_java libkstat . . . . . . $with_kstat libkvm . . . . . . . $with_libkvm + libmemcached . . . . $with_libmemcached libmysql . . . . . . $with_libmysql libnetlink . . . . . $with_libnetlink libnetsnmp . . . . . $with_libnetsnmp @@ -3799,10 +3982,12 @@ Configuration: librrd . . . . . . . $with_librrd libsensors . . . . . $with_libsensors libstatgrab . . . . . $with_libstatgrab + libtokyotyrant . . . $with_libtokyotyrant libupsclient . . . . $with_libupsclient libvirt . . . . . . . $with_libvirt libxml2 . . . . . . . $with_libxml2 libxmms . . . . . . . $with_libxmms + libyajl . . . . . . . $with_libyajl oracle . . . . . . . $with_oracle Features: @@ -3824,6 +4009,7 @@ Configuration: cpufreq . . . . . . . $enable_cpufreq csv . . . . . . . . . $enable_csv curl . . . . . . . . $enable_curl + curl_json . . . . . . $enable_curl_json dbi . . . . . . . . . $enable_dbi df . . . . . . . . . $enable_df disk . . . . . . . . $enable_disk @@ -3844,6 +4030,8 @@ Configuration: libvirt . . . . . . . $enable_libvirt load . . . . . . . . $enable_load logfile . . . . . . . $enable_logfile + madwifi . . . . . . . $enable_madwifi + match_empty_counter . $enable_match_empty_counter match_regex . . . . . $enable_match_regex match_timediff . . . $enable_match_timediff match_value . . . . . $enable_match_value @@ -3861,6 +4049,7 @@ Configuration: notify_email . . . . $enable_notify_email ntpd . . . . . . . . $enable_ntpd nut . . . . . . . . . $enable_nut + olsrd . . . . . . . . $enable_olsrd onewire . . . . . . . $enable_onewire openvpn . . . . . . . $enable_openvpn oracle . . . . . . . $enable_oracle @@ -3887,6 +4076,7 @@ Configuration: teamspeak2 . . . . . $enable_teamspeak2 ted . . . . . . . . . $enable_ted thermal . . . . . . . $enable_thermal + tokyotyrant . . . . . $enable_tokyotyrant unixsock . . . . . . $enable_unixsock uptime . . . . . . . $enable_uptime users . . . . . . . . $enable_users @@ -3894,12 +4084,17 @@ Configuration: vmem . . . . . . . . $enable_vmem vserver . . . . . . . $enable_vserver wireless . . . . . . $enable_wireless + write_http . . . . . $enable_write_http xmms . . . . . . . . $enable_xmms EOF if test "x$dependency_error" = "xyes"; then - AC_MSG_ERROR("Some plugins are missing dependencies - see above summary for details") + AC_MSG_ERROR("Some plugins are missing dependencies - see the summary above for details") +fi + +if test "x$dependency_warning" = "xyes"; then + AC_MSG_WARN("Some plugins seem to have missing dependencies but have been enabled forcibly - see the summary above for details") fi # vim: set fdm=marker :