X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=configure.in;h=2bab6b32cab6f2cbbd7390d1fbdd06f9bf226f38;hb=a025295971e7f8d88764c7d54fb29379b9f29b8d;hp=040ccda500c199bec002005d8b7987764ea008af;hpb=8a277e54b4ed7bccb4b3a2e7668792cd5303d3ac;p=collectd.git diff --git a/configure.in b/configure.in index 040ccda5..2bab6b32 100644 --- a/configure.in +++ b/configure.in @@ -65,6 +65,11 @@ then AC_SUBST(KERNEL_CFLAGS) fi +if test "x$ac_system" = "xSolaris" +then + CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS" +fi + # # Checks for header files. # @@ -240,7 +245,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 @@ -250,6 +256,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 @@ -1263,6 +1274,15 @@ then fi AM_CONDITIONAL(BUILD_WITH_LIBKVM_NLIST, test "x$with_kvm_nlist" = "xyes") +AC_CHECK_LIB(kvm, kvm_openfiles, [with_kvm_openfiles="yes"], [with_kvm_openfiles="no"]) +if test "x$with_kvm_openfiles" = "xyes" +then + AC_DEFINE(HAVE_LIBKVM_NLIST, 1, + [Define to 1 if you have the 'kvm' library with the 'kvm_openfiles' symbol (-lkvm)]) + with_libkvm="yes" +fi +AM_CONDITIONAL(BUILD_WITH_LIBKVM_OPENFILES, test "x$with_kvm_openfiles" = "xyes") + with_sensors_cflags="" with_sensors_ldflags="" AC_ARG_WITH(lm-sensors, [AS_HELP_STRING([--with-lm-sensors@<:@=PREFIX@:>@], [Path to lm_sensors.])], @@ -1359,12 +1379,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 @@ -1376,7 +1408,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"], @@ -1616,7 +1648,11 @@ AM_CONDITIONAL(BUILD_WITH_LIBESMTP, test "x$with_libesmtp" = "xyes") perl_interpreter="perl" AC_ARG_WITH(libperl, [AS_HELP_STRING([--with-libperl@<:@=PREFIX@:>@], [Path to libperl.])], [ - if test "x$withval" != "xno" && test "x$withval" != "xyes" + if test -x "$withval" + then + perl_interpreter="$withval" + with_libperl="yes" + else if test "x$withval" != "xno" && test "x$withval" != "xyes" then LDFLAGS="$LDFLAGS -L$withval/lib" CPPFLAGS="$CPPFLAGS -I$withval/include" @@ -1624,7 +1660,7 @@ AC_ARG_WITH(libperl, [AS_HELP_STRING([--with-libperl@<:@=PREFIX@:>@], [Path to l with_libperl="yes" else with_libperl="$withval" - fi + fi; fi ], [ with_libperl="yes" @@ -1634,7 +1670,7 @@ AC_MSG_CHECKING([for perl]) perl_interpreter=`which "$perl_interpreter" 2> /dev/null` if test -x "$perl_interpreter" then - AC_MSG_RESULT([yes]) + AC_MSG_RESULT([yes ($perl_interpreter)]) else perl_interpreter="" AC_MSG_RESULT([no]) @@ -1657,13 +1693,14 @@ then AC_LINK_IFELSE( AC_LANG_PROGRAM( [[ +#define PERL_NO_GET_CONTEXT #include #include #include ]], [[ - PerlInterpreter *perl = NULL; - Perl_load_module (perl, PERL_LOADMOD_NOIMPORT, + dTHX; + load_module (PERL_LOADMOD_NOIMPORT, newSVpv ("Collectd::Plugin::FooBar", 24), Nullsv); ]]), @@ -1857,32 +1894,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" @@ -2474,7 +2572,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" @@ -2488,6 +2592,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" @@ -2563,10 +2668,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 @@ -2655,7 +2764,7 @@ then plugin_swap="yes" fi -if test "x$with_kvm_nlist" = "xyes" +if test "x$with_kvm_openfiles$with_kvm_nlist" = "xyesyes" then plugin_tcpconns="yes" fi @@ -2905,3 +3014,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