X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=configure.in;h=f8bf90cc69308cb85a2ff3a3594a298472becf26;hb=refs%2Fheads%2Fsh%2Fcollectd-4.8;hp=4ef308e229ae96920e6f6da0311735e66c98d1a5;hpb=6ea00a8e17fccbac0cc5dee711ee2e4cb73bdaaa;p=collectd.git diff --git a/configure.in b/configure.in index 4ef308e2..f8bf90cc 100644 --- a/configure.in +++ b/configure.in @@ -276,6 +276,20 @@ AC_CHECK_HEADERS(IOKit/ps/IOPowerSources.h, [], [], #endif ]) +# 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"], @@ -345,13 +359,13 @@ have_net_ip_vs_h="no" have_ip_vs_h="no" if test "x$ac_system" = "xLinux" then - SAVE_CFLAGS=$CFLAGS + SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $KERNEL_CFLAGS" AC_CHECK_HEADERS(net/ip_vs.h, [have_net_ip_vs_h="yes"]) AC_CHECK_HEADERS(ip_vs.h, [have_ip_vs_h="yes"]) - CFLAGS=$SAVE_CFLAGS + CFLAGS="$SAVE_CFLAGS" fi # For quota module @@ -514,8 +528,16 @@ AC_CHECK_FUNCS(socket, [], AC_CHECK_LIB(socket, socket, [socket_needs_socket="ye AM_CONDITIONAL(BUILD_WITH_LIBSOCKET, test "x$socket_needs_socket" = "xyes") nanosleep_needs_rt="no" -AC_CHECK_FUNCS(nanosleep, [], AC_CHECK_LIB(rt, nanosleep, [nanosleep_needs_rt="yes"], AC_MSG_ERROR(cannot find nanosleep))) +nanosleep_needs_posix4="no" +AC_CHECK_FUNCS(nanosleep, + [], + AC_CHECK_LIB(rt, nanosleep, + [nanosleep_needs_rt="yes"], + AC_CHECK_LIB(posix4, nanosleep, + [nanosleep_needs_posix4="yes"], + AC_MSG_ERROR(cannot find nanosleep)))) AM_CONDITIONAL(BUILD_WITH_LIBRT, test "x$nanosleep_needs_rt" = "xyes") +AM_CONDITIONAL(BUILD_WITH_LIBPOSIX4, test "x$nanosleep_needs_posix4" = "xyes") AC_CHECK_FUNCS(sysctl, [have_sysctl="yes"], [have_sysctl="no"]) AC_CHECK_FUNCS(sysctlbyname, [have_sysctlbyname="yes"], [have_sysctlbyname="no"]) @@ -892,6 +914,27 @@ if test "x$have_getmntent" = "xgen"; then [Define if the function getmntent exists. It's the version from libgen.]) fi +# Check for htonll +AC_MSG_CHECKING([if have htonll defined]) + + have_htonll="no" + AC_RUN_IFELSE([ + AC_LANG_PROGRAM([ +#include +#include +#ifdef HAVE_INTTYPES_H +#include +#endif + ], [ + return htonll(0); + ]) + ], [ + have_htonll="yes" + AC_DEFINE(HAVE_HTONLL, 1, [Define if the function htonll exists.]) + ]) + +AC_MSG_RESULT([$have_htonll]) + # Check for structures AC_CHECK_MEMBERS([struct if_data.ifi_ibytes, struct if_data.ifi_opackets, struct if_data.ifi_ierrors], [AC_DEFINE(HAVE_STRUCT_IF_DATA, 1, [Define if struct if_data exists and is usable.])], @@ -1428,14 +1471,18 @@ AM_CONDITIONAL(BUILD_WITH_LIBGCRYPT, test "x$with_libgcrypt" = "xyes") with_own_libiptc="no" AC_ARG_WITH(libiptc, [AS_HELP_STRING([--with-libiptc@<:@=PREFIX@:>@], [Path to libiptc.])], [ - if test "x$withval" != "xno" && test "x$withval" != "xyes" + if test "x$withval" = "xshipped" then - LDFLAGS="$LDFLAGS -L$withval/lib" - CPPFLAGS="$CPPFLAGS -I$withval/include" + with_own_libiptc="yes" + with_libiptc="yes" + else if test "x$withval" != "xno" && test "x$withval" != "xyes" + then + LIBIPTC_CPPFLAGS="$LIBIPTC_CPPFLAGS -I$withval/include" + LIBIPTC_LDFLAGS="$LIBIPTC_LDFLAGS -L$withval/lib" with_libiptc="yes" else with_libiptc="$withval" - fi + fi; fi ], [ if test "x$ac_system" = "xLinux" @@ -1445,50 +1492,89 @@ AC_ARG_WITH(libiptc, [AS_HELP_STRING([--with-libiptc@<:@=PREFIX@:>@], [Path to l with_libiptc="no (Linux only)" fi ]) -if test "x$with_libiptc" = "xyes" +SAVE_CPPFLAGS="$CPPFLAGS" +SAVE_LDFLAGS="$LDFLAGS" +CPPFLAGS="$CPPFLAGS $LIBIPTC_CPPFLAGS" +LDFLAGS="$LDFLAGS $LIBIPTC_LDFLAGS" +# check whether the header file for libiptc is available. +if test "x$with_libiptc" = "xyes" && test "x$with_own_libiptc" = "xno" then - AC_CHECK_LIB(iptc, iptc_init, + AC_CHECK_HEADERS(libiptc/libiptc.h, [ - AC_DEFINE(HAVE_LIBIPTC, 1, [Define to 1 if you have the iptc library (-liptc).]) + AC_DEFINE(HAVE_LIBIPTC_LIBIPTC_H, 1, [Define to 1 if you have the header file.]) ], [ with_libiptc="yes" with_own_libiptc="yes" ]) fi -if test "x$with_libiptc" = "xyes" -a "x$with_own_libiptc" != "xyes" +if test "x$with_libiptc" = "xyes" && test "x$with_own_libiptc" = "xno" then - AC_CHECK_HEADERS(libiptc/libiptc.h, + AC_CHECK_HEADERS(libiptc/libip6tc.h, [ - AC_DEFINE(HAVE_LIBIPTC_LIBIPTC_H, 1, [Define to 1 if you have the header file.]) + AC_DEFINE(HAVE_LIBIPTC_LIBIP6TC_H, 1, [Define to 1 if you have the header file.]) ], [ with_libiptc="yes" with_own_libiptc="yes" ]) fi -if test "x$with_libiptc" = "xyes" +# If the header file is available, check for the required type declaractions. +# They may be missing in old versions of libiptc. In that case, they will be +# declared in the iptables plugin. +if test "x$with_libiptc" = "xyes" && test "x$with_own_libiptc" = "xno" then - SAVE_CFLAGS=$CFLAGS - CFLAGS="$CFLAGS $KERNEL_CFLAGS" - - AC_CHECK_HEADERS(linux/netfilter_ipv4/ip_tables.h linux/netfilter_ipv6/ip6_tables.h, [], + AC_CHECK_TYPES([iptc_handle_t, ip6tc_handle_t], [], [], + [ +#if OWN_LIBIPTC +# include "$srcdir/src/owniptc/libiptc.h" +# include "$srcdir/src/owniptc/libip6tc.h" +#else +# include +# include +#endif + ]) +fi +# Check for the iptc_init symbol in the library. +if test "x$with_libiptc" = "xyes" && test "x$with_own_libiptc" = "xno" +then + AC_CHECK_LIB(iptc, iptc_init, + [ + AC_DEFINE(HAVE_LIBIPTC, 1, [Define to 1 if you have the iptc library (-liptc).]) + ], + [ + with_libiptc="yes" + with_own_libiptc="yes" + ]) +fi +# The system wide version failed for some reason. Check if we have the required +# headers to build the shipped version. +if test "x$with_libiptc" = "xyes" && test "x$with_own_libiptc" = "xyes" +then + AC_CHECK_HEADERS(linux/netfilter_ipv4/ip_tables.h linux/netfilter_ipv6/ip6_tables.h linux/netfilter/x_tables.h, [], [ - with_libiptc="no (Linux iptables headers not found - check KERNEL_DIR)" + with_libiptc="no (Linux iptables headers not found)" with_own_libiptc="no" ], [ -#include "$srcdir/src/libiptc/ipt_kernel_headers.h" +#include "$srcdir/src/owniptc/ipt_kernel_headers.h" ]) - - CFLAGS=$SAVE_CFLAGS fi AM_CONDITIONAL(BUILD_WITH_LIBIPTC, test "x$with_libiptc" = "xyes") AM_CONDITIONAL(BUILD_WITH_OWN_LIBIPTC, test "x$with_own_libiptc" = "xyes") +if test "x$with_libiptc" = "xyes" +then + BUILD_WITH_LIBIPTC_CPPFLAGS="$LIBIPTC_CPPFLAGS" + BUILD_WITH_LIBIPTC_LDFLAGS="$LIBIPTC_LDFLAGS" + AC_SUBST(BUILD_WITH_LIBIPTC_CPPFLAGS) + AC_SUBST(BUILD_WITH_LIBIPTC_LDFLAGS) +fi if test "x$with_own_libiptc" = "xyes" then AC_DEFINE(OWN_LIBIPTC, 1, [Define to 1 if we use the shipped iptc library.]) fi +CPPFLAGS="$SAVE_CPPFLAGS" +LDFLAGS="$SAVE_LDFLAGS" # }}} # --with-java {{{ @@ -1497,6 +1583,7 @@ with_java_vmtype="client" with_java_cflags="" with_java_libs="" JAVAC="$JAVAC" +JAR="$JAR" AC_ARG_WITH(java, [AS_HELP_STRING([--with-java@<:@=PREFIX@:>@], [Path to Java home.])], [ if test "x$withval" = "xno" @@ -1516,7 +1603,7 @@ then if test -d "$with_java_home" then AC_MSG_CHECKING([for jni.h]) - TMPDIR=`find -L "$with_java_home" -name jni.h -type f -exec 'dirname' '{}' ';' | head -n 1` + TMPDIR=`find "$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]) @@ -1526,7 +1613,7 @@ then fi AC_MSG_CHECKING([for jni_md.h]) - TMPDIR=`find -L "$with_java_home" -name jni_md.h -type f -exec 'dirname' '{}' ';' | head -n 1` + TMPDIR=`find "$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]) @@ -1536,7 +1623,7 @@ then fi AC_MSG_CHECKING([for libjvm.so]) - TMPDIR=`find -L "$with_java_home" -name libjvm.so -type f -exec 'dirname' '{}' ';' | head -n 1` + TMPDIR=`find "$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]) @@ -1548,7 +1635,7 @@ then if test "x$JAVAC" = "x" then AC_MSG_CHECKING([for javac]) - TMPDIR=`find -L "$with_java_home" -name javac -type f | head -n 1` + TMPDIR=`find "$with_java_home" -name javac -type f | head -n 1` if test "x$TMPDIR" != "x" then JAVAC="$TMPDIR" @@ -1557,6 +1644,18 @@ then AC_MSG_RESULT([not found]) fi fi + if test "x$JAR" = "x" + then + AC_MSG_CHECKING([for jar]) + TMPDIR=`find "$with_java_home" -name jar -type f | head -n 1` + if test "x$TMPDIR" != "x" + then + JAR="$TMPDIR" + AC_MSG_RESULT([$JAR]) + else + AC_MSG_RESULT([not found]) + fi + fi else if test "x$with_java_home" != "x" then AC_MSG_WARN([JAVA_HOME: No such directory: $with_java_home]) @@ -1593,6 +1692,24 @@ if test "x$JAVAC" = "x" then with_java="no (javac not found)" fi +if test "x$JAR" = "x" +then + with_jar_path="$PATH" + if test "x$with_java_home" != "x" + then + with_jar_path="$with_java_home:$with_jar_path" + if test -d "$with_java_home/bin" + then + with_jar_path="$with_java_home/bin:$with_jar_path" + fi + fi + + AC_PATH_PROG(JAR, jar, [], "$with_jar_path") +fi +if test "x$JAR" = "x" +then + with_java="no (jar not found)" +fi SAVE_CPPFLAGS="$CPPFLAGS" SAVE_CFLAGS="$CFLAGS" @@ -1798,7 +1915,7 @@ AC_ARG_WITH(libnetlink, [AS_HELP_STRING([--with-libnetlink@<:@=PREFIX@:>@], [Pat ]) if test "x$with_libnetlink" = "xyes" then - SAVE_CFLAGS=$CFLAGS + SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $with_libnetlink_cflags" with_libnetlink="no (libnetlink.h not found)" @@ -2236,8 +2353,8 @@ AC_SUBST(PERL, "$perl_interpreter") if test "x$with_libperl" = "xyes" \ && test -n "$perl_interpreter" then - SAVE_CFLAGS=$CFLAGS - SAVE_LDFLAGS=$LDFLAGS + SAVE_CFLAGS="$CFLAGS" + SAVE_LDFLAGS="$LDFLAGS" dnl ARCHFLAGS="" -> disable multi -arch on OSX (see Config_heavy.pl:fetch_string) PERL_CFLAGS=`ARCHFLAGS="" $perl_interpreter -MExtUtils::Embed -e ccopts` PERL_LDFLAGS=`ARCHFLAGS="" $perl_interpreter -MExtUtils::Embed -e ldopts` @@ -2274,8 +2391,8 @@ dnl ARCHFLAGS="" -> disable multi -arch on OSX (see Config_heavy.pl:fetch_string with_libperl="no" fi - CFLAGS=$SAVE_CFLAGS - LDFLAGS=$SAVE_LDFLAGS + CFLAGS="$SAVE_CFLAGS" + LDFLAGS="$SAVE_LDFLAGS" else if test -z "$perl_interpreter"; then with_libperl="no (no perl interpreter found)" c_cv_have_libperl="no" @@ -2284,8 +2401,8 @@ AM_CONDITIONAL(BUILD_WITH_LIBPERL, test "x$with_libperl" = "xyes") if test "x$with_libperl" = "xyes" then - SAVE_CFLAGS=$CFLAGS - SAVE_LDFLAGS=$LDFLAGS + SAVE_CFLAGS="$CFLAGS" + SAVE_LDFLAGS="$LDFLAGS" CFLAGS="$CFLAGS $PERL_CFLAGS" LDFLAGS="$LDFLAGS $PERL_LDFLAGS" @@ -2313,14 +2430,14 @@ then AC_DEFINE(HAVE_PERL_ITHREADS, 1, [Define if Perl supports ithreads.]) fi - CFLAGS=$SAVE_CFLAGS - LDFLAGS=$SAVE_LDFLAGS + CFLAGS="$SAVE_CFLAGS" + LDFLAGS="$SAVE_LDFLAGS" fi if test "x$with_libperl" = "xyes" then - SAVE_CFLAGS=$CFLAGS - SAVE_LDFLAGS=$LDFLAGS + SAVE_CFLAGS="$CFLAGS" + SAVE_LDFLAGS="$LDFLAGS" # trigger an error if Perl_load_module*() uses __attribute__nonnull__(3) # (see issues #41 and #42) CFLAGS="$CFLAGS $PERL_CFLAGS -Wall -Werror" @@ -2347,16 +2464,16 @@ then ) ) - CFLAGS=$SAVE_CFLAGS - LDFLAGS=$SAVE_LDFLAGS + CFLAGS="$SAVE_CFLAGS" + LDFLAGS="$SAVE_LDFLAGS" fi AM_CONDITIONAL(HAVE_BROKEN_PERL_LOAD_MODULE, test "x$c_cv_have_broken_perl_load_module" = "xyes") if test "x$with_libperl" = "xyes" then - SAVE_CFLAGS=$CFLAGS - SAVE_LDFLAGS=$LDFLAGS + SAVE_CFLAGS="$CFLAGS" + SAVE_LDFLAGS="$LDFLAGS" CFLAGS="$CFLAGS $PERL_CFLAGS" LDFLAGS="$LDFLAGS $PERL_LDFLAGS" @@ -2376,8 +2493,8 @@ then [Define if Perl's struct mgvtbl has member svt_local.]) fi - CFLAGS=$SAVE_CFLAGS - LDFLAGS=$SAVE_LDFLAGS + CFLAGS="$SAVE_CFLAGS" + LDFLAGS="$SAVE_LDFLAGS" fi # }}} @@ -2855,7 +2972,7 @@ AC_ARG_WITH(libupsclient, [AS_HELP_STRING([--with-libupsclient@<:@=PREFIX@:>@], with_libupsclient="use_libupsclient_config" else if test -x "$withval/bin/libupsclient-config" then - with_libupsclient_config="$withval/bin/net-snmp-config" + with_libupsclient_config="$withval/bin/libupsclient-config" with_libupsclient="use_libupsclient_config" else AC_MSG_NOTICE([Not checking for libupsclient: Manually configured]) @@ -3422,9 +3539,9 @@ plugin_ascent="no" plugin_battery="no" plugin_bind="no" plugin_conntrack="no" -plugin_couchdb="no" plugin_cpu="no" plugin_cpufreq="no" +plugin_curl_json="no" plugin_df="no" plugin_disk="no" plugin_entropy="no" @@ -3452,6 +3569,7 @@ plugin_uptime="no" plugin_vmem="no" plugin_vserver="no" plugin_wireless="no" +plugin_zfs_arc="no" # Linux if test "x$ac_system" = "xLinux" @@ -3501,6 +3619,7 @@ fi if test "x$with_kstat" = "xyes" then plugin_uptime="yes" + plugin_zfs_arc="yes" fi if test "x$with_devinfo$with_kstat" = "xyesyes" @@ -3542,7 +3661,7 @@ fi if test "x$with_libcurl" = "xyes" && test "x$with_libyajl" = "xyes" then - plugin_couchdb="yes" + plugin_curl_json="yes" fi if test "x$have_processor_info" = "xyes" @@ -3692,11 +3811,11 @@ 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([couchdb], [$plugin_couchdb], [CouchDB statistics]) 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]) @@ -3717,6 +3836,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]) @@ -3769,7 +3890,9 @@ 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]) +AC_PLUGIN([zfs_arc], [$plugin_zfs_arc], [ZFS ARC statistics]) dnl Default configuration file # Load either syslog or logfile @@ -3905,7 +4028,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 bindings/Makefile bindings/java/Makefile) +AC_OUTPUT(Makefile src/Makefile src/collectd.conf src/owniptc/Makefile src/libcollectdclient/Makefile src/libcollectdclient/libcollectdclient.pc src/liboconfig/Makefile bindings/Makefile bindings/java/Makefile) if test "x$with_librrd" = "xyes" \ && test "x$librrd_threadsafe" != "xyes" @@ -3988,11 +4111,11 @@ Configuration: battery . . . . . . . $enable_battery bind . . . . . . . . $enable_bind conntrack . . . . . . $enable_conntrack - couchdb . . . . . . . $enable_couchdb cpu . . . . . . . . . $enable_cpu cpufreq . . . . . . . $enable_cpufreq csv . . . . . . . . . $enable_csv curl . . . . . . . . $enable_curl + curl_json . . . . . . $enable_curl_json dbi . . . . . . . . . $enable_dbi df . . . . . . . . . $enable_df disk . . . . . . . . $enable_disk @@ -4013,6 +4136,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 @@ -4056,8 +4181,8 @@ Configuration: tcpconns . . . . . . $enable_tcpconns teamspeak2 . . . . . $enable_teamspeak2 ted . . . . . . . . . $enable_ted - tokyotyrant . . . . . $enable_tokyotyrant thermal . . . . . . . $enable_thermal + tokyotyrant . . . . . $enable_tokyotyrant unixsock . . . . . . $enable_unixsock uptime . . . . . . . $enable_uptime users . . . . . . . . $enable_users @@ -4065,7 +4190,9 @@ Configuration: vmem . . . . . . . . $enable_vmem vserver . . . . . . . $enable_vserver wireless . . . . . . $enable_wireless + write_http . . . . . $enable_write_http xmms . . . . . . . . $enable_xmms + zfs_arc . . . . . . . $enable_zfs_arc EOF