X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=configure.in;h=df1b187f03c2c15de2408ed6be9090a2163318c8;hb=068ae14b916aa298995433da83302032c5e57c76;hp=7a4c151708fd59cb5cdd003d71c4e70b2552cdb6;hpb=66b7c4bce4e628d8c11cc6762621f155bd68536d;p=collectd.git diff --git a/configure.in b/configure.in index 7a4c1517..df1b187f 100644 --- a/configure.in +++ b/configure.in @@ -405,7 +405,7 @@ AC_CHECK_FUNCS(gettimeofday select strdup strtol getaddrinfo getnameinfo strchr 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( [[[[ @@ -427,18 +427,18 @@ AC_CACHE_CHECK([for strtok_r], 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( [[[[ @@ -460,7 +460,7 @@ then 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!])] ) ) @@ -504,7 +504,7 @@ AC_ARG_WITH(nan-emulation, [AS_HELP_STRING([--with-nan-emulation], [use emulated [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( [[ @@ -518,18 +518,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( [[ @@ -544,18 +544,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( [[ @@ -576,11 +576,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 @@ -615,7 +615,7 @@ fi; fi; fi 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( [[[[ @@ -644,17 +644,17 @@ if test "x$fp_layout_type" = "xunknown"; then 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( [[[[ @@ -691,17 +691,17 @@ if test "x$fp_layout_type" = "xunknown"; then 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( [[[[ @@ -732,11 +732,11 @@ if test "x$fp_layout_type" = "xunknown"; then 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 @@ -775,7 +775,7 @@ fi 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 @@ -787,12 +787,12 @@ if test "x$have_getmntent" = "xc"; then 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 @@ -805,8 +805,8 @@ if test "x$have_getmntent" = "xc"; then 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 @@ -814,11 +814,11 @@ 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 @@ -855,6 +855,37 @@ AC_CHECK_MEMBERS([struct net_device_stats.rx_bytes, struct net_device_stats.tx_p #include ]) +AC_CHECK_MEMBERS([struct kinfo_proc.ki_pid, struct kinfo_proc.ki_rssize, struct kinfo_proc.ki_rusage], + [ + AC_DEFINE(HAVE_STRUCT_KINFO_PROC_FREEBSD, 1, + [Define if struct kinfo_proc exists in the FreeBSD variant.]) + have_struct_kinfo_proc_freebsd="yes" + ], + [ + have_struct_kinfo_proc_freebsd="no" + ], + [ +#include +#include +#include +#include + ]) + +AC_CHECK_MEMBERS([struct kinfo_proc.kp_proc, struct kinfo_proc.kp_eproc], + [ + AC_DEFINE(HAVE_STRUCT_KINFO_PROC_OPENBSD, 1, + [Define if struct kinfo_proc exists in the OpenBSD variant.]) + have_struct_kinfo_proc_openbsd="yes" + ], + [ + have_struct_kinfo_proc_openbsd="no" + ], + [ +#include +#include +#include + ]) + AC_CHECK_MEMBERS([struct udphdr.uh_dport, struct udphdr.uh_sport], [], [], [#if HAVE_STDINT_H # include @@ -1683,13 +1714,14 @@ if test "x$with_libperl" = "xyes" \ then SAVE_CFLAGS=$CFLAGS SAVE_LDFLAGS=$LDFLAGS - PERL_CFLAGS=`$perl_interpreter -MExtUtils::Embed -e ccopts` - PERL_LDFLAGS=`$perl_interpreter -MExtUtils::Embed -e ldopts` +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` CFLAGS="$CFLAGS $PERL_CFLAGS" LDFLAGS="$LDFLAGS $PERL_LDFLAGS" AC_CACHE_CHECK([for libperl], - [have_libperl], + [c_cv_have_libperl], AC_LINK_IFELSE( AC_LANG_PROGRAM( [[ @@ -1704,12 +1736,12 @@ then 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) @@ -1722,7 +1754,7 @@ then 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") @@ -1734,7 +1766,7 @@ then 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( [[ @@ -1747,12 +1779,12 @@ then #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 @@ -1894,32 +1926,93 @@ PKG_CHECK_MODULES([LIBNOTIFY], [libnotify], [with_libnotify="yes"], [with_libnotify="no ($LIBNOTIFY_PKG_ERRORS)"]) -with_libupsclient="no (pkg-config isn't available)" +with_libupsclient_config="" with_libupsclient_cflags="" with_libupsclient_libs="" -if test "x$PKG_CONFIG" != "x" -then - pkg-config --exists 'libupsclient' 2>/dev/null - if test "$?" = "0" +AC_ARG_WITH(libupsclient, [AS_HELP_STRING([--with-libupsclient@<:@=PREFIX@:>@], [Path to the Net-SNMPD library.])], +[ + if test "x$withval" = "xno" + then + with_libupsclient="no" + else if test "x$withval" = "xyes" then - with_libupsclient="yes" + with_libupsclient="use_pkgconfig" else + if test -x "$withval" + then + with_libupsclient_config="$withval" + with_libupsclient="use_libupsclient_config" + else if test -x "$withval/bin/libupsclient-config" + then + with_libupsclient_config="$withval/bin/net-snmp-config" + with_libupsclient="use_libupsclient_config" + else + AC_MSG_NOTICE([Not checking for libupsclient: Manually configured]) + with_libupsclient_cflags="-I$withval/include" + with_libupsclient_libs="-L$withval/lib -lupsclient" + with_libupsclient="yes" + fi; fi + fi; fi +], +[with_libupsclient="use_pkgconfig"]) + +# configure using libupsclient-config +if test "x$with_libupsclient" = "xuse_libupsclient_config" +then + AC_MSG_NOTICE([Checking for libupsclient using $with_libupsclient_config]) + with_libupsclient_cflags="`$with_libupsclient_config --cflags`" + if test $? -ne 0 + then + with_libupsclient="no ($with_libupsclient_config failed)" + fi + with_libupsclient_libs="`$with_libupsclient_config --libs`" + if test $? -ne 0 + then + with_libupsclient="no ($with_libupsclient_config failed)" + fi +fi +if test "x$with_libupsclient" = "xuse_libupsclient_config" +then + with_libupsclient="yes" +fi + +# configure using pkg-config +if test "x$with_libupsclient" = "xuse_pkgconfig" +then + if test "x$PKG_CONFIG" = "x" + then + with_libupsclient="no (Don't have pkg-config)" + fi +fi +if test "x$with_libupsclient" = "xuse_pkgconfig" +then + AC_MSG_NOTICE([Checking for libupsclient using $PKG_CONFIG]) + $PKG_CONFIG --exists 'libupsclient' 2>/dev/null + if test $? -ne 0 + then with_libupsclient="no (pkg-config doesn't know library)" fi fi -if test "x$with_libupsclient" = "xyes" +if test "x$with_libupsclient" = "xuse_pkgconfig" then - with_libupsclient_cflags="`pkg-config --cflags 'libupsclient'`" + with_libupsclient_cflags="`$PKG_CONFIG --cflags 'libupsclient'`" if test $? -ne 0 then - with_libupsclient="no" + with_libupsclient="no ($PKG_CONFIG failed)" fi - with_libupsclient_libs="`pkg-config --libs 'libupsclient'`" + with_libupsclient_libs="`$PKG_CONFIG --libs 'libupsclient'`" if test $? -ne 0 then - with_libupsclient="no" + with_libupsclient="no ($PKG_CONFIG failed)" fi fi +if test "x$with_libupsclient" = "xuse_pkgconfig" +then + with_libupsclient="yes" +fi + +# with_libupsclient_cflags and with_libupsclient_libs are set up now, let's do +# the actual checks. if test "x$with_libupsclient" = "xyes" then SAVE_CPPFLAGS="$CPPFLAGS" @@ -2672,7 +2765,7 @@ then 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 @@ -2693,7 +2786,7 @@ then plugin_processes="yes" fi -if test "x$with_kvm_getprocs" = "xyes" +if test "x$with_kvm_getprocs" = "xyes" && test "x$have_struct_kinfo_proc_freebsd" = "xyes" then plugin_processes="yes" fi