X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=configure.in;h=8332429ebd0105ae58afe53e5f3fbfea097f1973;hb=9b031e21c5d0200c2c07c70a592158d29c522391;hp=3876b4f13d2603baf279bdf4decd2afa9e22e736;hpb=250dc17bfb3c5488b789347f1f570913701d31ca;p=collectd.git diff --git a/configure.in b/configure.in index 3876b4f1..8332429e 100644 --- a/configure.in +++ b/configure.in @@ -50,6 +50,23 @@ case $host_os in esac AC_MSG_RESULT([$ac_system]) +if test "x$ac_system" = "xLinux" +then + AC_ARG_VAR([KERNEL_DIR], [path to Linux kernel sources]) + if test -z "$KERNEL_DIR" + then + KERNEL_DIR="/lib/modules/`uname -r`/source" + fi + + KERNEL_CFLAGS="-I$KERNEL_DIR/include" + AC_SUBST(KERNEL_CFLAGS) +fi + +if test "x$ac_system" = "xSolaris" +then + CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS" +fi + # # Checks for header files. # @@ -57,7 +74,7 @@ AC_HEADER_STDC AC_HEADER_SYS_WAIT AC_HEADER_DIRENT -AC_CHECK_HEADERS(stdint.h stdio.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) +AC_CHECK_HEADERS(stdint.h stdio.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, [], [], @@ -225,7 +242,8 @@ AC_CHECK_HEADERS(IOKit/ps/IOPowerSources.h, [], [], ]) # For the swap module -AC_CHECK_HEADERS(sys/swap.h, [], [], +have_sys_swap_h="yes" +AC_CHECK_HEADERS(sys/swap.h, [], [have_sys_swap_h="no"], [ #if HAVE_SYS_TYPES_H # include @@ -235,6 +253,11 @@ AC_CHECK_HEADERS(sys/swap.h, [], [], #endif ]) +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.]) +fi + # For load module # For the processes plugin # For users module @@ -278,8 +301,13 @@ have_net_ip_vs_h="no" have_ip_vs_h="no" if test "x$ac_system" = "xLinux" then + 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 fi # For quota module @@ -891,7 +919,6 @@ AC_CHECK_LIB(hal,libhal_device_property_exists, [AC_DEFINE(HAVE_LIBHAL, 1, [Define to 1 if you have 'hal' library])], [with_libhal="no"]) if test "x$with_libhal" = "xyes"; then - PKG_PROG_PKG_CONFIG if test "x$PKG_CONFIG" != "x"; then BUILD_WITH_LIBHAL_CFLAGS="`pkg-config --cflags hal`" BUILD_WITH_LIBHAL_LIBS="`pkg-config --libs hal`" @@ -1216,12 +1243,15 @@ then AC_SUBST(BUILD_WITH_LIBSTATGRAB_LDFLAGS) fi -AC_CHECK_LIB(kvm, kvm_getswapinfo, [with_libkvm="yes"], [with_libkvm="no"]) -if test "x$with_libkvm" = "xyes" +with_libkvm="no" +AC_CHECK_LIB(kvm, kvm_getswapinfo, [with_kvm_getswapinfo="yes"], [with_kvm_getswapinfo="no"]) +if test "x$with_kvm_getswapinfo" = "xyes" then - AC_DEFINE(HAVE_LIBKVM, 1, [Define to 1 if you have the 'kvm' library (-lkvm)]) + AC_DEFINE(HAVE_LIBKVM_GETSWAPINFO, 1, + [Define to 1 if you have the 'kvm' library with the 'kvm_getswapinfo' symbol (-lkvm)]) + with_libkvm="yes" fi -AM_CONDITIONAL(BUILD_WITH_LIBKVM, test "x$with_libkvm" = "xyes") +AM_CONDITIONAL(BUILD_WITH_LIBKVM_GETSWAPINFO, test "x$with_kvm_getswapinfo" = "xyes") with_sensors_cflags="" with_sensors_ldflags="" @@ -1319,12 +1349,24 @@ then if test $mysql_config_status -ne 0 then - with_libmysql="no" + with_libmysql="no ($with_mysql_config failed)" else SAVE_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $with_mysql_cflags" - AC_CHECK_HEADERS(mysql/mysql.h, [], [with_libmysql="no (mysql/mysql.h not found)"], []) + have_mysql_h="no" + have_mysql_mysql_h="no" + AC_CHECK_HEADERS(mysql.h, [have_mysql_h="yes"]) + + if test "x$have_mysql_h" = "xno" + then + AC_CHECK_HEADERS(mysql/mysql.h, [have_mysql_mysql_h="yes"]) + fi + + if test "x$have_mysql_h$have_mysql_mysql_h" = "xnono" + then + with_libmysql="no (mysql.h not found)" + fi CPPFLAGS="$SAVE_CPPFLAGS" fi @@ -1336,7 +1378,7 @@ then if test $mysql_config_status -ne 0 then - with_libmysql="no" + with_libmysql="no ($with_mysql_config failed)" else AC_CHECK_LIB(mysqlclient, mysql_init, [with_libmysql="yes"], @@ -1600,15 +1642,6 @@ then LDFLAGS=$SAVE_LDFLAGS fi -if test "x$ac_system" = "xLinux" -then - AC_ARG_VAR([KERNEL_DIR], [path to Linux kernel sources]) - if test -z "$KERNEL_DIR" - then - KERNEL_DIR="/lib/modules/`uname -r`/source" - fi -fi - with_own_libiptc="no" AC_ARG_WITH(libiptc, [AS_HELP_STRING([--with-libiptc@<:@=PREFIX@:>@], [Path to libiptc.])], [ @@ -1654,7 +1687,7 @@ fi if test "x$with_libiptc" = "xyes" then SAVE_CFLAGS=$CFLAGS - CFLAGS="$CFLAGS -I$KERNEL_DIR/include" + CFLAGS="$CFLAGS $KERNEL_CFLAGS" AC_CHECK_HEADERS(linux/netfilter_ipv4/ip_tables.h linux/netfilter_ipv6/ip6_tables.h, [], [ @@ -1738,44 +1771,36 @@ then fi AM_CONDITIONAL(BUILD_WITH_LIBNETSNMP, test "x$with_libnetsnmp" = "xyes") -with_upsclient_config="libupsclient-config" -with_upsclient_cflags="" -with_upsclient_libs="" -AC_ARG_WITH(libupsclient, [AS_HELP_STRING([--with-libupsclient@<:@=PREFIX@:>@], [Path to libupsclient.])], -[ - if test "x$withval" = "xno" +with_libupsclient="no (pkg-config isn't available)" +with_libupsclient_cflags="" +with_libupsclient_libs="" +if test "x$PKG_CONFIG" != "x" +then + pkg-config --exists 'libupsclient' 2>/dev/null + if test "$?" = "0" then - with_libupsclient="no" - else - if test "x$withval" != "xyes" - then - if test -f "$withval" && test -x "$withval"; - then - with_upsclient_config="$withval" - else - with_upsclient_config="$withval/bin/libupsclient-config" - fi - fi with_libupsclient="yes" + else + with_libupsclient="no (pkg-config doesn't know library)" fi -], -[ - with_libupsclient="yes" -]) +fi if test "x$with_libupsclient" = "xyes" then - with_upsclient_cflags=`$with_upsclient_config --cflags 2>/dev/null` - upsclient_config_status=$? - - if test $upsclient_config_status -ne 0 + with_libupsclient_cflags="`pkg-config --cflags 'libupsclient'`" + if test $? -ne 0 + then + with_libupsclient="no" + fi + with_libupsclient_libs="`pkg-config --libs 'libupsclient'`" + if test $? -ne 0 then - with_libupsclient="no ($with_upsclient_config failed)" + with_libupsclient="no" fi fi if test "x$with_libupsclient" = "xyes" then SAVE_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $with_upsclient_cflags" + CPPFLAGS="$CPPFLAGS $with_libupsclient_cflags" AC_CHECK_HEADERS(upsclient.h, [], [with_libupsclient="no (upsclient.h not found)"]) @@ -1783,31 +1808,23 @@ then fi if test "x$with_libupsclient" = "xyes" then - with_upsclient_libs=`$with_upsclient_config --libs 2>/dev/null` - upsclient_config_status=$? + SAVE_CPPFLAGS="$CPPFLAGS" + SAVE_LDFLAGS="$LDFLAGS" + + CPPFLAGS="$CPPFLAGS $with_libupsclient_cflags" + LDFLAGS="$LDFLAGS $with_libupsclient_libs" - if test $upsclient_config_status -ne 0 - then - with_libupsclient="no ($with_upsclient_config failed)" - fi -fi -if test "x$with_libupsclient" = "xyes" -then AC_CHECK_LIB(upsclient, upscli_connect, - [ - BUILD_WITH_LIBUPSCLIENT_CFLAGS="$with_upsclient_cflags" - BUILD_WITH_LIBUPSCLIENT_LIBS="$with_upsclient_libs" - AC_SUBST(BUILD_WITH_LIBUPSCLIENT_CFLAGS) - AC_SUBST(BUILD_WITH_LIBUPSCLIENT_LIBS) - ], - [ - with_libupsclient="no (symbol 'upscli_connect' not found)" - ], [$with_upsclient_libs]) + [with_libupsclient="yes"], + [with_libupsclient="no (symbol upscli_connect not found)"]) + + CPPFLAGS="$SAVE_CPPFLAGS" + LDFLAGS="$SAVE_LDFLAGS" fi if test "x$with_libupsclient" = "xyes" then SAVE_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $with_upsclient_cflags" + CPPFLAGS="$CPPFLAGS $with_libupsclient_cflags" AC_CHECK_TYPES([UPSCONN_t, UPSCONN], [], [], [#include @@ -1816,7 +1833,13 @@ then CPPFLAGS="$SAVE_CPPFLAGS" fi -AM_CONDITIONAL(BUILD_WITH_LIBUPSCLIENT, test "x$with_libupsclient" = "xyes") +if test "x$with_libupsclient" = "xyes" +then + BUILD_WITH_LIBUPSCLIENT_CFLAGS="$with_libupsclient_cflags" + BUILD_WITH_LIBUPSCLIENT_LIBS="$with_libupsclient_libs" + AC_SUBST(BUILD_WITH_LIBUPSCLIENT_CFLAGS) + AC_SUBST(BUILD_WITH_LIBUPSCLIENT_LIBS) +fi ### BEGIN of check for libxmms ### with_xmms_config="xmms-config" @@ -2278,7 +2301,13 @@ AC_DEFUN( ]) if test "x$enable_plugin" = "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 + AC_DEFINE([HAVE_PLUGIN_]my_toupper([$1]), 1, [Define to 1 if the $1 plugin is enabled.]) + else # User passed "yes" but dependency checking yielded "no" => Dependency problem. + dependency_error="yes" + enable_plugin="no (dependency error)" + fi fi AM_CONDITIONAL([BUILD_PLUGIN_]my_toupper([$1]), test "x$enable_plugin" = "xyes") enable_$1="$enable_plugin" @@ -2292,6 +2321,7 @@ AC_COLLECTD([debug], [enable], [feature], [debugging]) AC_COLLECTD([daemon], [disable], [feature], [daemon mode]) AC_COLLECTD([getifaddrs],[enable], [feature], [getifaddrs under Linux]) +dependency_error="no" plugin_ascent="no" plugin_battery="no" plugin_cpu="no" @@ -2360,10 +2390,14 @@ then plugin_disk="yes" plugin_interface="yes" plugin_memory="yes" - plugin_swap="yes" plugin_tape="yes" fi +if test "x$have_sys_swap_h$with_kstat$ac_system" = "xyesyesSolaris" +then + plugin_swap="yes" +fi + # libstatgrab if test "x$with_libstatgrab" = "xyes" then @@ -2442,7 +2476,7 @@ then plugin_processes="yes" fi -if test "x$with_libkvm" = "xyes" +if test "x$with_kvm_getswapinfo" = "xyes" then plugin_swap="yes" fi @@ -2677,3 +2711,7 @@ Configuration: xmms . . . . . . . $enable_xmms EOF + +if test "x$dependency_error" = "xyes"; then + AC_MSG_ERROR("Some plugins are missing dependencies - see above summary for details") +fi