X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=configure.in;h=68ac0a00efd0729119f5b04576eab7280c389bc4;hb=8aa84840bb9b880ca1b2060e25ec6a1f3ee90ba1;hp=afde8374028730e9dc76172bbfae12eddc42b43c;hpb=6c476db6dcc7aa70a687d09c10e6ad515c290c23;p=nagiosplug.git diff --git a/configure.in b/configure.in index afde837..68ac0a0 100644 --- a/configure.in +++ b/configure.in @@ -1,7 +1,6 @@ dnl Process this file with autoconf to produce a configure script. -AC_REVISION ($Revision$) AC_PREREQ(2.59) -AC_INIT(nagios-plugins,1.4.12) +AC_INIT(nagios-plugins,1.4.13) AC_CONFIG_SRCDIR(NPTest.pm) AC_CONFIG_FILES(gl/Makefile) AC_CONFIG_AUX_DIR(build-aux) @@ -99,6 +98,9 @@ AC_SUBST(PKG_ARCH) AC_SUBST(REV_DATESTAMP) AC_SUBST(REV_TIMESTAMP) +dnl Check if version file is present +AM_CONDITIONAL([RELEASE_PRESENT], [test -f release]) + dnl Checks for programs. AC_PATH_PROG(PYTHON,python) AC_PATH_PROG(SH,sh) @@ -116,7 +118,7 @@ AC_SUBST(PERL, $with_perl) dnl openssl/gnutls AC_ARG_WITH(openssl, - AC_HELP_STRING([--with-openssl=DIR], + AC_HELP_STRING([--with-openssl=DIR], [path to openssl installation]),) AC_ARG_WITH(gnutls, @@ -154,17 +156,41 @@ AC_CHECK_HEADERS(math.h) AC_CHECK_LIB(m,floor,MATHLIBS="-lm") AC_SUBST(MATHLIBS) +dnl Check if we buils local libtap +AC_ARG_ENABLE(libtap, + AC_HELP_STRING([--enable-libtap], + [Enable built-in libtap for unit-testing (default: autodetect system library).]), + [enable_libtap=$enableval], + [enable_libtap=no]) +AM_CONDITIONAL([USE_LIBTAP_LOCAL],[test "$enable_libtap" = "yes"]) + +# If not local, check if we can use the system one +if test "$enable_libtap" != "yes" ; then + dnl Check for libtap, to run perl-like tests + AC_CHECK_LIB(tap, plan_tests, + enable_libtap="yes" + ) +fi + +# Finally, define tests if we use libtap +if test "$enable_libtap" = "yes" ; then + EXTRA_TEST="test_utils test_disk test_tcp test_cmd test_base64" + AC_SUBST(EXTRA_TEST) +fi + dnl INI Parsing AC_ARG_ENABLE(extra-opts, - AC_HELP_STRING([--enable-extra-opts], + AC_HELP_STRING([--enable-extra-opts], [Enables parsing of plugins ini config files for extra options (default: no)]), [enable_extra_opts=$enableval], [enable_extra_opts=no]) AM_CONDITIONAL([USE_PARSE_INI],[test "$enable_extra_opts" = "yes"]) if test "$enable_extra_opts" = "yes" ; then - EXTRA_TEST="$EXTRA_TEST test_ini test_opts" - AC_SUBST(EXTRA_TEST) AC_DEFINE(NP_EXTRA_OPTS,[1],[Enable INI file parsing.]) + if test "$enable_libtap" = "yes"; then + EXTRA_TEST="$EXTRA_TEST test_ini1 test_ini3 test_opts1 test_opts2 test_opts3" + AC_SUBST(EXTRA_TEST) + fi fi dnl Check for PostgreSQL libraries @@ -264,8 +290,8 @@ fi if test "$FOUNDINCLUDE" = "yes" ; then EXTRAS="$EXTRAS check_ide_smart" else - AC_MSG_WARN([Skipping check_ide_smart plugin.]) - AC_MSG_WARN([check_ide_smart is linux specific. It requires linux/hdreg.h and linux/types.h.]) + AC_MSG_WARN([Skipping check_ide_smart plugin.]) + AC_MSG_WARN([check_ide_smart is linux specific. It requires linux/hdreg.h and linux/types.h.]) fi dnl Check for mysql libraries @@ -450,7 +476,6 @@ AC_STRUCT_TM AC_TYPE_PID_T AC_TYPE_SIZE_T AC_TYPE_SIGNAL -AC_TYPE_MBSTATE_T AC_CACHE_CHECK([for va_copy],ac_cv_HAVE_VA_COPY,[ AC_TRY_LINK([#include @@ -459,7 +484,7 @@ ac_cv_HAVE_VA_COPY=yes, ac_cv_HAVE_VA_COPY=no)]) if test x"$ac_cv_HAVE_VA_COPY" = x"yes"; then AC_DEFINE(HAVE_VA_COPY,1,[Whether va_copy() is available]) -else +else AC_CACHE_CHECK([for __va_copy],ac_cv_HAVE___VA_COPY,[ AC_TRY_LINK([#include va_list ap1,ap2;], [__va_copy(ap1,ap2);], @@ -505,7 +530,7 @@ AC_PATH_PROG(PATH_TO_PS,ps) AC_MSG_CHECKING(for ps syntax) AC_ARG_WITH(ps_command, - ACX_HELP_STRING([--with-ps-command=PATH], + ACX_HELP_STRING([--with-ps-command=PATH], [Verbatim command to execute for ps]), PS_COMMAND=$withval) AC_ARG_WITH(ps_format, @@ -513,7 +538,7 @@ AC_ARG_WITH(ps_format, [Format string for scanning ps output]), PS_FORMAT=$withval) AC_ARG_WITH(ps_cols, - ACX_HELP_STRING([--with-ps-cols=NUM], + ACX_HELP_STRING([--with-ps-cols=NUM], [Number of columns in ps command]), PS_COLS=$withval) AC_ARG_WITH(ps_varlist, @@ -521,7 +546,7 @@ AC_ARG_WITH(ps_varlist, [Variable list for sscanf of 'ps' output]), PS_VARLIST=$withval) -if test -n "$PS_COMMAND" && test -n "$PS_FORMAT" && test -n "$PS_COLS" && test -n "$PS_VARLIST"; then +if test -n "$PS_COMMAND" && test -n "$PS_FORMAT" && test -n "$PS_COLS" && test -n "$PS_VARLIST"; then ac_cv_ps_command="$PS_COMMAND" ac_cv_ps_format="$PS_FORMAT" ac_cv_ps_varlist="$PS_VARLIST" @@ -595,7 +620,7 @@ then ac_cv_ps_cols=9 AC_MSG_RESULT([$ac_cv_ps_command]) -dnl Some *BSDs have different format for ps. This is mainly to catch FreeBSD 4. +dnl Some *BSDs have different format for ps. This is mainly to catch FreeBSD 4. dnl Limitation: Only first 16 chars returned for ucomm field dnl Must come before ps -weo elif ps -axwo 'stat uid pid ppid vsz rss pcpu ucomm command' 2>/dev/null | \ @@ -672,9 +697,9 @@ then ac_cv_ps_cols=9 AC_MSG_RESULT([$ac_cv_ps_command]) -dnl Tru64 - needs %*[ +<>] in PS_FORMAT. +dnl Tru64 - needs %*[ +<>] in PS_FORMAT. dnl Has /usr/bin/ps and /sbin/ps - force sbin version -dnl Can't use vsize and rssize because comes back with text (eg, 1.5M instead +dnl Can't use vsize and rssize because comes back with text (eg, 1.5M instead dnl of 1500). Will need big changes to check_procs to support elif /sbin/ps -eo 'stat uid pid ppid pcpu etime comm args' 2>/dev/null | \ egrep -i ["^ *S +[UID]+ +[PID]+ +[PID]+ +[%CPU]+ +[ELAPSD]+ +[COMMAND]+ +[COMMAND]+"] > /dev/null @@ -800,7 +825,7 @@ then ac_cv_ps_cols=8 AC_MSG_RESULT([$ac_cv_ps_command]) -dnl UnixWare +dnl UnixWare elif ps -Al 2>/dev/null | \ egrep -i ["^ *F +S +UID +PID +PPID +CLS +PRI +NI +C +ADDR +SZ +WCHAN +TTY +TIME +COMD"] >/dev/null then @@ -1165,7 +1190,7 @@ fi AC_PATH_PROG(PATH_TO_SMBCLIENT,smbclient) AC_ARG_WITH(smbclient_command, ACX_HELP_STRING([--with-smbclient-command=PATH], - [sets path to smbclient]), + [sets path to smbclient]), PATH_TO_SMBCLIENT=$withval) if test -n "$PATH_TO_SMBCLIENT" then @@ -1221,7 +1246,7 @@ fi AC_PATH_PROG(PATH_TO_QUAKESTAT,quakestat) AC_PATH_PROG(PATH_TO_QSTAT,qstat) AC_ARG_WITH(qstat_command, - ACX_HELP_STRING([--with-qstat-command=PATH], + ACX_HELP_STRING([--with-qstat-command=PATH], [Path to qstat command]), PATH_TO_QSTAT=$withval) if test -x "$PATH_TO_QUAKESTAT" @@ -1237,7 +1262,7 @@ else AC_MSG_WARN([Get qstat from http://www.activesw.com/people/steve/qstat.html in order to make check_game plugin]) fi -if test $ac_cv_path_to_qstat +if test $ac_cv_path_to_qstat then AC_DEFINE_UNQUOTED(PATH_TO_QSTAT,"$ac_cv_path_to_qstat", [path to qstat/quakestat]) @@ -1396,12 +1421,12 @@ AC_CHECK_MEMBERS([struct swapent.se_nblks],,,[ #include ]) -if test "$ac_cv_have_decl_swapctl" = "yes"; +if test "$ac_cv_have_decl_swapctl" = "yes"; then EXTRAS="$EXTRAS check_swap" AC_MSG_CHECKING([for 2-arg (SVR4) swapctl]) if test "$ac_cv_type_swaptbl_t" = "yes" -a \ - "$ac_cv_type_swapent_t" = "yes"; + "$ac_cv_type_swapent_t" = "yes"; then AC_MSG_RESULT([yes]) ac_cv_check_swap_swapctl_svr4="1"; @@ -1410,7 +1435,7 @@ then else AC_MSG_RESULT([no]) AC_MSG_CHECKING([for 3-arg (*BSD) swapctl]) - if test "$ac_cv_member_struct_swapent_se_nblks" = "yes"; + if test "$ac_cv_member_struct_swapent_se_nblks" = "yes"; then AC_MSG_RESULT([yes]) AC_DEFINE([CHECK_SWAP_SWAPCTL_BSD],1, @@ -1451,12 +1476,12 @@ dnl end tests for the swapctl system calls dnl -if test "x$ac_cv_have_swap" != "x" +if test "x$ac_cv_have_swap" != "x" then AC_DEFINE(HAVE_SWAP,1,[Define if swap/swapinfo command is found]) EXTRAS="$EXTRAS check_swap" fi -if test "x$ac_cv_swap_command" != "x" +if test "x$ac_cv_swap_command" != "x" then AC_DEFINE_UNQUOTED(SWAP_COMMAND,"$ac_cv_swap_command", [Path to swap/swapinfo binary, with any args]) @@ -1501,7 +1526,7 @@ fi AC_PATH_PROG(PATH_TO_APTGET,apt-get) AC_ARG_WITH(apt-get_command, ACX_HELP_STRING([--with-apt-get-command=PATH], - [Path to apt-get command]), + [Path to apt-get command]), with_apt_get_command=$withval, with_apt_get_command=$PATH_TO_APTGET) AC_DEFINE_UNQUOTED(PATH_TO_APTGET,"$PATH_TO_APTGET",[Path to apt-get command, if present]) @@ -1530,7 +1555,7 @@ case $host in *sun* | *solaris*) AC_DEFINE(__sun__,1,[sun specific code in check_dhcp.c]) ;; - *hpux*) + *hpux*) AC_DEFINE(__hpux__,1,[hpux specific code in check_dhcp.c]) ;; esac @@ -1550,8 +1575,8 @@ dnl 2.6.9-11 (okay in 2.6.9-5). Redhat investigating root cause dnl We patch plugins/popen.c dnl Need to add smp because uname different on those dnl Can force patch to be applied with --enable-redhat-pthread-workaround -AC_ARG_ENABLE(redhat-pthread-workaround, - AC_HELP_STRING([--enable-redhat-pthread-workaround], +AC_ARG_ENABLE(redhat-pthread-workaround, + AC_HELP_STRING([--enable-redhat-pthread-workaround], [force Redhat patch to be applied (default: test system)]), [ac_cv_enable_redhat_pthread_workaround=$enableval], [ac_cv_enable_redhat_pthread_workaround=test]) @@ -1573,7 +1598,7 @@ fi dnl Perl modules AC_ARG_ENABLE(perl-modules, - AC_HELP_STRING([--enable-perl-modules], + AC_HELP_STRING([--enable-perl-modules], [Enables installation of Nagios::Plugin and its dependencies (default: no)]), [enable_perl_modules=$enableval], [enable_perl_modules=no]) @@ -1581,6 +1606,18 @@ if test "$enable_perl_modules" = "yes" ; then AC_SUBST(PERLMODS_DIR,perlmods) fi +# From Tap configure +# Checks for libraries +case "$host" in + *-*-*freebsd4*) + LDFLAGS="$LDFLAGS -pthread" + HAVE_LIBPTHREAD=1 + ;; + *) + AC_CHECK_LIB(pthread, main) + ;; +esac + dnl External libraries - see ACKNOWLEDGEMENTS gl_INIT @@ -1589,40 +1626,26 @@ if test "$ac_cv_uname_s" = 'SunOS' -a \( "x$ac_cv_prog_ac_ct_AR" = "x" -o "$ac_c AC_MSG_ERROR(No ar found for Solaris - is /usr/ccs/bin in PATH?) fi -AC_ARG_ENABLE(libtap, - AC_HELP_STRING([--enable-libtap], - [Enables configuring of libtap in external/tap/. Run "make tap" to compile (default: no)]), - [enable_libtap=$enableval], - [enable_libtap=no]) -dnl Have to define TAP_DIR so that Makefile can pull it as an extra dist -TAP_DIR=external/tap-1.01 -AC_SUBST(TAP_DIR) -if test "$enable_libtap" = yes; then - dnl Have to have AC_CONFIG_SUBDIRS as a literal - AC_CONFIG_SUBDIRS([external/tap-1.01]) - EXTRA_TEST="test_utils test_disk test_tcp test_cmd test_base64" - AC_SUBST(EXTRA_TEST) -fi - AC_OUTPUT( - Makefile - lib/Makefile - plugins/Makefile + Makefile + tap/Makefile + lib/Makefile + plugins/Makefile lib/tests/Makefile plugins-root/Makefile - plugins-scripts/Makefile - plugins-scripts/subst - plugins-scripts/utils.pm - plugins-scripts/utils.sh + plugins-scripts/Makefile + plugins-scripts/subst + plugins-scripts/utils.pm + plugins-scripts/utils.sh perlmods/Makefile - command.cfg - test.pl - pkg/solaris/pkginfo - po/Makefile.in + command.cfg + test.pl + pkg/solaris/pkginfo + po/Makefile.in ) -dnl the ones below that are commented out need to be cleaned up +dnl the ones below that are commented out need to be cleaned up dnl in the configure code above to use with_foo instead of ac_cv_foo dnl if we want them to show up here. it'd also make the code cleaner. dnl i'll get to that on another rainy day :) -sf @@ -1656,5 +1679,5 @@ ACX_FEATURE([with],[perl]) ACX_FEATURE([enable],[perl-modules]) ACX_FEATURE([with],[cgiurl]) ACX_FEATURE([with],[trusted-path]) - +ACX_FEATURE([enable],[libtap])