X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=configure.ac;h=b4ef3d5b72e602c061ee81f5f655b494e2209e05;hb=8858811d487e8edc576ff7b0216d663949055a66;hp=320572d0c0e58b026f904b902305460e26452965;hpb=2b4445ea9b4b978468d75864f98e8137ba628dec;p=collectd.git diff --git a/configure.ac b/configure.ac index 320572d0..b4ef3d5b 100644 --- a/configure.ac +++ b/configure.ac @@ -11,6 +11,8 @@ dnl we don't really need the 'u' even in older toolchains. Then there is dnl older libtool, which spelled it AR_FLAGS m4_divert_text([DEFAULTS], [: "${ARFLAGS=cr} ${AR_FLAGS=cr}"]) +m4_include([m4/ax_compare_version.m4]) + LT_INIT([dlopen disable-static]) AM_INIT_AUTOMAKE([subdir-objects tar-pax dist-bzip2 no-dist-gzip foreign]) @@ -1039,6 +1041,92 @@ if test "x$GCC" = "xyes"; then fi # }}} Check for strptime +# Check for timegm {{{ + +# These checks need -Werror because implicit function declarations are only a +# warning ... +SAVE_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -Werror" + +AC_CACHE_CHECK([for timegm], + [c_cv_have_timegm], + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( +[[[ +#if STRPTIME_NEEDS_STANDARDS +# ifndef _ISOC99_SOURCE +# define _ISOC99_SOURCE 1 +# endif +# ifndef _POSIX_C_SOURCE +# define _POSIX_C_SOURCE 200112L +# endif +# ifndef _XOPEN_SOURCE +# define _XOPEN_SOURCE 500 +# endif +#endif +#include +]]], +[[[ + time_t t = timegm(&(struct tm){0}); + if (t == ((time_t) -1)) { + return 1; + } +]]] + )], + [c_cv_have_timegm="yes"], + [c_cv_have_timegm="no"] + ) +) + +if test "x$c_cv_have_timegm" != "xyes" +then + AC_CACHE_CHECK([for timegm with _BSD_SOURCE], + [c_cv_have_timegm_bsd], + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( +[[[ +#if STRPTIME_NEEDS_STANDARDS +# ifndef _ISOC99_SOURCE +# define _ISOC99_SOURCE 1 +# endif +# ifndef _POSIX_C_SOURCE +# define _POSIX_C_SOURCE 200112L +# endif +# ifndef _XOPEN_SOURCE +# define _XOPEN_SOURCE 500 +# endif +#endif +#ifndef _BSD_SOURCE +# define _BSD_SOURCE 1 +#endif +#include +]]], +[[[ + time_t t = timegm(&(struct tm){0}); + if (t == ((time_t) -1)) { + return 1; + } +]]] + )], + [c_cv_have_timegm_bsd="yes" + c_cv_have_timegm="yes"], + [c_cv_have_timegm_bsd="no"] + ) + ) +fi + +if test "x$c_cv_have_timegm" = "xyes" +then + AC_DEFINE(HAVE_TIMEGM, 1, [Define if the timegm(3) function is available.]) + if test "x$c_cv_have_timegm_bsd" = "xyes" + then + AC_DEFINE(TIMEGM_NEEDS_BSD, 1, [Set to true if timegm is only exported in BSD mode.]) + fi +fi + +CFLAGS="$SAVE_CFLAGS" +# }}} Check for timegm + AC_MSG_CHECKING([for sysctl kern.cp_times]) if test -x /sbin/sysctl; then /sbin/sysctl kern.cp_times >/dev/null 2>&1 @@ -1313,8 +1401,8 @@ if test "x$fp_layout_type" = "xunknown"; then && (c[2] == 0xc0) && (c[3] == 0xc7) && (c[4] == 0x43) && (c[5] == 0x2b) && (c[6] == 0x1f) && (c[7] == 0x5b)) - return (0); - return (1); + return 0; + return 1; ]] ) ], @@ -1368,8 +1456,8 @@ if test "x$fp_layout_type" = "xunknown"; then && (c[2] == 0xc0) && (c[3] == 0xc7) && (c[4] == 0x43) && (c[5] == 0x2b) && (c[6] == 0x1f) && (c[7] == 0x5b)) - return (0); - return (1); + return 0; + return 1; ]] ) ], @@ -1417,8 +1505,8 @@ if test "x$fp_layout_type" = "xunknown"; then && (c[2] == 0xc0) && (c[3] == 0xc7) && (c[4] == 0x43) && (c[5] == 0x2b) && (c[6] == 0x1f) && (c[7] == 0x5b)) - return (0); - return (1); + return 0; + return 1; ]] ) ], @@ -2775,6 +2863,9 @@ AC_ARG_WITH([java], [with_java="yes"] ) +AX_COMPARE_VERSION([$am__api_version],[lt],[1.12], + [JAVA_TIMESTAMP_FILE="classdist_noinst.stamp"], + [JAVA_TIMESTAMP_FILE="classnoinst.stamp"]) if test "x$with_java" = "xyes"; then if test -d "$with_java_home"; then AC_MSG_CHECKING([for jni.h]) @@ -2911,6 +3002,7 @@ AC_SUBST([JAVA_CPPFLAGS]) AC_SUBST([JAVA_CFLAGS]) AC_SUBST([JAVA_LDFLAGS]) AC_SUBST([JAVA_LIBS]) +AC_SUBST([JAVA_TIMESTAMP_FILE]) AM_CONDITIONAL([BUILD_WITH_JAVA], [test "x$with_java" = "xyes"]) # }}} @@ -3567,7 +3659,7 @@ if test "x$with_libmnl" = "xyes"; then ]], [[ int retval = TCA_STATS2; - return (retval); + return retval; ]] ) ], @@ -3587,7 +3679,7 @@ if test "x$with_libmnl" = "xyes"; then ]], [[ int retval = TCA_STATS; - return (retval); + return retval; ]] ) ], @@ -3677,6 +3769,7 @@ AC_SUBST([LIBNETAPP_LIBS]) # }}} # --with-libnetsnmp {{{ +with_libnetsnmpagent="no" AC_ARG_WITH(libnetsnmp, [AS_HELP_STRING([--with-libnetsnmp@<:@=PREFIX@:>@], [Path to the Net-SNMPD library.])], [ if test "x$withval" = "xno" @@ -3689,6 +3782,7 @@ AC_ARG_WITH(libnetsnmp, [AS_HELP_STRING([--with-libnetsnmp@<:@=PREFIX@:>@], [Pat with_libnetsnmp_cppflags="-I$withval/include" with_libnetsnmp_ldflags="-I$withval/lib" with_libnetsnmp="yes" + with_libnetsnmpagent="yes" fi; fi ], [with_libnetsnmp="yes"]) @@ -3701,6 +3795,10 @@ then [with_libnetsnmp="yes"], [with_libnetsnmp="no (net-snmp/net-snmp-config.h not found)"] ) + AC_CHECK_HEADERS(net-snmp/agent/agent_module_config.h, + [], + [with_libnetsnmpagent="no (net-snmp/agent/agent_module_config.h not found)"] + ) CPPFLAGS="$SAVE_CPPFLAGS" fi @@ -3714,6 +3812,11 @@ then [with_libnetsnmp="no (libnetsnmp not found)"], [$with_snmp_libs]) + AC_CHECK_LIB(netsnmpagent, init_agent, + [with_libnetsnmpagent="yes"], + [with_libnetsnmpagent="no (libnetsnmpagent not found)"], + [$with_snmp_libs]) + LDFLAGS="$SAVE_LDFLAGS" fi if test "x$with_libnetsnmp" = "xyes" @@ -3722,6 +3825,10 @@ then BUILD_WITH_LIBNETSNMP_LDFLAGS="$with_libnetsnmp_ldflags" BUILD_WITH_LIBNETSNMP_LIBS="-lnetsnmp" fi +if test "x$with_libnetsnmpagent" = "xyes" +then + BUILD_WITH_LIBNETSNMP_LIBS+=" -lnetsnmpagent" +fi AC_SUBST(BUILD_WITH_LIBNETSNMP_CPPFLAGS) AC_SUBST(BUILD_WITH_LIBNETSNMP_LDFLAGS) AC_SUBST(BUILD_WITH_LIBNETSNMP_LIBS) @@ -5221,8 +5328,7 @@ if test "x$with_libupsclient" = "xyes"; then ) AC_CHECK_LIB([upsclient], [upscli_init], - [AC_DEFINE([WITH_UPSCLIENT_27], [1], [At least version 2-7])], - [] + [AC_DEFINE([HAVE_UPSCLI_INIT], [1], [Define when upscli_init() (since version 2-7) is available.])] ) LDFLAGS="$SAVE_LDFLAGS" @@ -5950,6 +6056,7 @@ plugin_processes="no" plugin_protocols="no" plugin_python="no" plugin_serial="no" +plugin_snmp_agent="no" plugin_smart="no" plugin_swap="no" plugin_tape="no" @@ -6243,6 +6350,10 @@ if test "x$with_kvm_getswapinfo" = "xyes"; then plugin_swap="yes" fi +if test "x$with_libnetsnmp" = "xyes" && test "x$with_libnetsnmpagent" = "xyes"; then + plugin_snmp_agent="yes" +fi + if test "x$have_swapctl" = "xyes" && test "x$c_cv_have_swapctl_two_args" = "xyes"; then plugin_swap="yes" fi @@ -6405,6 +6516,7 @@ AC_PLUGIN([serial], [$plugin_serial], [serial port traffic AC_PLUGIN([sigrok], [$with_libsigrok], [sigrok acquisition sources]) AC_PLUGIN([smart], [$plugin_smart], [SMART statistics]) AC_PLUGIN([snmp], [$with_libnetsnmp], [SNMP querying plugin]) +AC_PLUGIN([snmp_agent], [$plugin_snmp_agent], [SNMP agent plugin]) AC_PLUGIN([statsd], [yes], [StatsD plugin]) AC_PLUGIN([swap], [$plugin_swap], [Swap usage statistics]) AC_PLUGIN([syslog], [$have_syslog], [Syslog logging plugin]) @@ -6831,6 +6943,7 @@ AC_MSG_RESULT([ serial . . . . . . . $enable_serial]) AC_MSG_RESULT([ sigrok . . . . . . . $enable_sigrok]) AC_MSG_RESULT([ smart . . . . . . . . $enable_smart]) AC_MSG_RESULT([ snmp . . . . . . . . $enable_snmp]) +AC_MSG_RESULT([ snmp_agent . . . . . $enable_snmp_agent]) AC_MSG_RESULT([ statsd . . . . . . . $enable_statsd]) AC_MSG_RESULT([ swap . . . . . . . . $enable_swap]) AC_MSG_RESULT([ syslog . . . . . . . $enable_syslog])