summaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac135
1 files changed, 59 insertions, 76 deletions
diff --git a/configure.ac b/configure.ac
index 8594238f..204fc6e3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,10 +1,10 @@
1dnl Process this file with autoconf to produce a configure script. 1dnl Process this file with autoconf to produce a configure script.
2AC_PREREQ(2.64) 2AC_PREREQ([2.64])
3AC_INIT(monitoring-plugins,2.4git) 3AC_INIT([monitoring-plugins],[2.4git])
4AC_CONFIG_SRCDIR(NPTest.pm) 4AC_CONFIG_SRCDIR(NPTest.pm)
5AC_CONFIG_FILES([gl/Makefile]) 5AC_CONFIG_FILES([gl/Makefile])
6AC_CONFIG_AUX_DIR(build-aux) 6AC_CONFIG_AUX_DIR(build-aux)
7AM_INIT_AUTOMAKE([1.8.3]) 7AM_INIT_AUTOMAKE([1.8.3 subdir-objects])
8AM_SILENT_RULES([yes]) 8AM_SILENT_RULES([yes])
9AM_MAINTAINER_MODE([enable]) 9AM_MAINTAINER_MODE([enable])
10AC_CONFIG_HEADERS([config.h]) 10AC_CONFIG_HEADERS([config.h])
@@ -43,14 +43,14 @@ AC_SUBST(INSTALL)
43AC_PROG_CC 43AC_PROG_CC
44gl_EARLY 44gl_EARLY
45AC_PROG_GCC_TRADITIONAL 45AC_PROG_GCC_TRADITIONAL
46AC_PROG_LIBTOOL 46LT_INIT
47 47
48AM_PROG_CC_C_O 48AM_PROG_CC_C_O
49 49
50AC_FUNC_ERROR_AT_LINE 50AC_FUNC_ERROR_AT_LINE
51AC_SYS_LARGEFILE 51AC_SYS_LARGEFILE
52 52
53ifdef([AC_FUNC_STRTOD],[AC_FUNC_STRTOD],[AM_FUNC_STRTOD]) 53ifdef([AC_FUNC_STRTOD],[AC_FUNC_STRTOD],[AC_FUNC_STRTOD])
54 54
55PLUGIN_TEST=`echo $srcdir/plugins/t/*.t|sed -e 's,\.*/plugins/,,g'` 55PLUGIN_TEST=`echo $srcdir/plugins/t/*.t|sed -e 's,\.*/plugins/,,g'`
56AC_SUBST(PLUGIN_TEST)dnl 56AC_SUBST(PLUGIN_TEST)dnl
@@ -125,8 +125,7 @@ AC_SUBST(PERL, $with_perl)
125 125
126dnl openssl/gnutls 126dnl openssl/gnutls
127AC_ARG_WITH(openssl, 127AC_ARG_WITH(openssl,
128 AC_HELP_STRING([--with-openssl=DIR], 128 AS_HELP_STRING([--with-openssl=DIR],[path to openssl installation]),)
129 [path to openssl installation]),)
130 129
131AC_ARG_WITH(gnutls, 130AC_ARG_WITH(gnutls,
132 ACX_HELP_STRING([--with-gnutls=PATH], 131 ACX_HELP_STRING([--with-gnutls=PATH],
@@ -167,8 +166,7 @@ AC_SUBST(MATHLIBS)
167 166
168dnl Check if we buils local libtap 167dnl Check if we buils local libtap
169AC_ARG_ENABLE(libtap, 168AC_ARG_ENABLE(libtap,
170 AC_HELP_STRING([--enable-libtap], 169 AS_HELP_STRING([--enable-libtap],[Enable built-in libtap for unit-testing (default: autodetect system library).]),
171 [Enable built-in libtap for unit-testing (default: autodetect system library).]),
172 [enable_libtap=$enableval], 170 [enable_libtap=$enableval],
173 [enable_libtap=no]) 171 [enable_libtap=no])
174AM_CONDITIONAL([USE_LIBTAP_LOCAL],[test "$enable_libtap" = "yes"]) 172AM_CONDITIONAL([USE_LIBTAP_LOCAL],[test "$enable_libtap" = "yes"])
@@ -185,12 +183,14 @@ fi
185if test "$enable_libtap" = "yes" ; then 183if test "$enable_libtap" = "yes" ; then
186 EXTRA_TEST="test_utils test_disk test_tcp test_cmd test_base64" 184 EXTRA_TEST="test_utils test_disk test_tcp test_cmd test_base64"
187 AC_SUBST(EXTRA_TEST) 185 AC_SUBST(EXTRA_TEST)
186
187 EXTRA_PLUGIN_TESTS="tests/test_check_swap"
188 AC_SUBST(EXTRA_PLUGIN_TESTS)
188fi 189fi
189 190
190dnl INI Parsing 191dnl INI Parsing
191AC_ARG_ENABLE(extra-opts, 192AC_ARG_ENABLE(extra-opts,
192 AC_HELP_STRING([--enable-extra-opts], 193 AS_HELP_STRING([--enable-extra-opts],[Enables parsing of plugins ini config files for extra options (default: no)]),
193 [Enables parsing of plugins ini config files for extra options (default: no)]),
194 [enable_extra_opts=$enableval], 194 [enable_extra_opts=$enableval],
195 [enable_extra_opts=yes]) 195 [enable_extra_opts=yes])
196AM_CONDITIONAL([USE_PARSE_INI],[test "$enable_extra_opts" = "yes"]) 196AM_CONDITIONAL([USE_PARSE_INI],[test "$enable_extra_opts" = "yes"])
@@ -464,20 +464,16 @@ AC_ARG_WITH([ipv6],
464dnl Check for AF_INET6 support - unistd.h required for Darwin 464dnl Check for AF_INET6 support - unistd.h required for Darwin
465if test "$with_ipv6" != "no"; then 465if test "$with_ipv6" != "no"; then
466 AC_CACHE_CHECK([for IPv6 support], np_cv_sys_ipv6, [ 466 AC_CACHE_CHECK([for IPv6 support], np_cv_sys_ipv6, [
467 AC_TRY_COMPILE( 467 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef HAVE_UNISTD_H
468 [#ifdef HAVE_UNISTD_H
469 #include <unistd.h> 468 #include <unistd.h>
470 #endif 469 #endif
471 #include <netinet/in.h> 470 #include <netinet/in.h>
472 #include <sys/socket.h>], 471 #include <sys/socket.h>]], [[struct sockaddr_in6 sin6;
473 [struct sockaddr_in6 sin6;
474 void *p; 472 void *p;
475 473
476 sin6.sin6_family = AF_INET6; 474 sin6.sin6_family = AF_INET6;
477 sin6.sin6_port = 587; 475 sin6.sin6_port = 587;
478 p = &sin6.sin6_addr;], 476 p = &sin6.sin6_addr;]])],[np_cv_sys_ipv6=yes],[np_cv_sys_ipv6=no])
479 [np_cv_sys_ipv6=yes],
480 [np_cv_sys_ipv6=no])
481 ]) 477 ])
482 if test "$np_cv_sys_ipv6" = "no" -a "$with_ipv6" != "check"; then 478 if test "$np_cv_sys_ipv6" = "no" -a "$with_ipv6" != "check"; then
483 AC_MSG_FAILURE([--with-ipv6 was given, but test for IPv6 support failed]) 479 AC_MSG_FAILURE([--with-ipv6 was given, but test for IPv6 support failed])
@@ -611,10 +607,10 @@ dnl
611dnl Checks for header files. 607dnl Checks for header files.
612dnl 608dnl
613 609
614AC_HEADER_TIME
615AC_HEADER_SYS_WAIT 610AC_HEADER_SYS_WAIT
616AC_CHECK_HEADERS(signal.h syslog.h uio.h errno.h sys/time.h sys/socket.h sys/un.h sys/poll.h) 611AC_CHECK_HEADERS(signal.h syslog.h uio.h errno.h sys/time.h sys/socket.h sys/un.h sys/poll.h)
617AC_CHECK_HEADERS(features.h stdarg.h sys/unistd.h ctype.h) 612AC_CHECK_HEADERS(features.h stdarg.h sys/unistd.h ctype.h)
613AC_CHECK_HEADERS_ONCE([sys/time.h])
618 614
619dnl Checks for typedefs, structures, and compiler characteristics. 615dnl Checks for typedefs, structures, and compiler characteristics.
620AC_C_CONST 616AC_C_CONST
@@ -623,36 +619,27 @@ AC_TYPE_PID_T
623AC_TYPE_SIZE_T 619AC_TYPE_SIZE_T
624 620
625AC_CACHE_CHECK([for va_copy],ac_cv_HAVE_VA_COPY,[ 621AC_CACHE_CHECK([for va_copy],ac_cv_HAVE_VA_COPY,[
626AC_TRY_LINK([#include <stdarg.h> 622AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h>
627va_list ap1,ap2;], [va_copy(ap1,ap2);], 623va_list ap1,ap2;]], [[va_copy(ap1,ap2);]])],[ac_cv_HAVE_VA_COPY=yes],[ac_cv_HAVE_VA_COPY=no])])
628ac_cv_HAVE_VA_COPY=yes,
629ac_cv_HAVE_VA_COPY=no)])
630if test x"$ac_cv_HAVE_VA_COPY" = x"yes"; then 624if test x"$ac_cv_HAVE_VA_COPY" = x"yes"; then
631 AC_DEFINE(HAVE_VA_COPY,1,[Whether va_copy() is available]) 625 AC_DEFINE(HAVE_VA_COPY,1,[Whether va_copy() is available])
632else 626else
633 AC_CACHE_CHECK([for __va_copy],ac_cv_HAVE___VA_COPY,[ 627 AC_CACHE_CHECK([for __va_copy],ac_cv_HAVE___VA_COPY,[
634 AC_TRY_LINK([#include <stdarg.h> 628 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h>
635 va_list ap1,ap2;], [__va_copy(ap1,ap2);], 629 va_list ap1,ap2;]], [[__va_copy(ap1,ap2);]])],[ac_cv_HAVE___VA_COPY=yes],[ac_cv_HAVE___VA_COPY=no])])
636 ac_cv_HAVE___VA_COPY=yes,
637 ac_cv_HAVE___VA_COPY=no)])
638 if test x"$ac_cv_HAVE___VA_COPY" = x"yes"; then 630 if test x"$ac_cv_HAVE___VA_COPY" = x"yes"; then
639 AC_DEFINE(HAVE___VA_COPY,1,[Whether __va_copy() is available]) 631 AC_DEFINE(HAVE___VA_COPY,1,[Whether __va_copy() is available])
640 fi 632 fi
641fi 633fi
642 634
643AC_TRY_COMPILE([#include <sys/time.h>], 635AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/time.h>]], [[struct timeval *tv;
644 [struct timeval *tv; 636 struct timezone *tz;]])],[AC_DEFINE(HAVE_STRUCT_TIMEVAL,1,Define if we have a timeval structure)
645 struct timezone *tz;], 637 FOUND_STRUCT_TIMEVAL="yes"],[])
646 AC_DEFINE(HAVE_STRUCT_TIMEVAL,1,[Define if we have a timeval structure])
647 FOUND_STRUCT_TIMEVAL="yes")
648 638
649if test x"$FOUND_STRUCT_TIMEVAL" = x"yes"; then 639if test x"$FOUND_STRUCT_TIMEVAL" = x"yes"; then
650 AC_TRY_COMPILE([#include <sys/time.h>], 640 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/time.h>]], [[struct timeval *tv;
651 [struct timeval *tv;
652 struct timezone *tz; 641 struct timezone *tz;
653 gettimeofday(tv, tz);], 642 gettimeofday(tv, tz);]])],[AC_DEFINE(HAVE_GETTIMEOFDAY,1,Define if gettimeofday is found)],[AC_DEFINE(NEED_GETTIMEOFDAY,1,Define if gettimeofday is needed)])
654 AC_DEFINE(HAVE_GETTIMEOFDAY,1,[Define if gettimeofday is found]),
655 AC_DEFINE(NEED_GETTIMEOFDAY,1,[Define if gettimeofday is needed]))
656fi 643fi
657 644
658dnl Checks for library functions. 645dnl Checks for library functions.
@@ -660,14 +647,11 @@ AC_CHECK_FUNCS(memmove select socket strdup strstr strtol strtoul floor)
660AC_CHECK_FUNCS(poll) 647AC_CHECK_FUNCS(poll)
661 648
662AC_MSG_CHECKING(return type of socket size) 649AC_MSG_CHECKING(return type of socket size)
663AC_TRY_COMPILE([#include <stdlib.h> 650AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdlib.h>
664 #include <sys/types.h> 651 #include <sys/types.h>
665 #include <sys/socket.h>], 652 #include <sys/socket.h>]], [[int a = send(1, (const void *) buffer, (size_t *) 0, (int *) 0);]])],[ac_cv_socket_size_type="size_t"
666 [int a = send(1, (const void *) buffer, (size_t *) 0, (int *) 0);], 653 AC_MSG_RESULT(size_t)],[ac_cv_socket_size_type="int"
667 ac_cv_socket_size_type=["size_t"] 654 AC_MSG_RESULT(int)])
668 AC_MSG_RESULT(size_t),
669 ac_cv_socket_size_type=["int"]
670 AC_MSG_RESULT(int))
671 655
672AC_DEFINE_UNQUOTED(SOCKET_SIZE_TYPE, $ac_cv_socket_size_type , 656AC_DEFINE_UNQUOTED(SOCKET_SIZE_TYPE, $ac_cv_socket_size_type ,
673 [Define type of socket size]) 657 [Define type of socket size])
@@ -1430,20 +1414,14 @@ if test -n "$ac_cv_nslookup_command"; then
1430fi 1414fi
1431 1415
1432AC_MSG_CHECKING([for number of online cpus]) 1416AC_MSG_CHECKING([for number of online cpus])
1433AC_TRY_COMPILE([#include <unistd.h>], 1417AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <unistd.h>]], [[sysconf(_SC_NPROCESSORS_ONLN) > 0;]])],[AC_DEFINE(HAVE_SYSCONF__SC_NPROCESSORS_ONLN,1,Define if sysconf returns number of online cpus)
1434 [sysconf(_SC_NPROCESSORS_ONLN) > 0;], 1418 AC_MSG_RESULT(sysconf(_SC_NPROCESSORS_ONLN))],[AC_MSG_RESULT(cannot calculate)
1435 AC_DEFINE(HAVE_SYSCONF__SC_NPROCESSORS_ONLN,1,[Define if sysconf returns number of online cpus]) 1419 ])
1436 AC_MSG_RESULT([sysconf(_SC_NPROCESSORS_ONLN)]),
1437 AC_MSG_RESULT([cannot calculate])
1438 )
1439 1420
1440AC_MSG_CHECKING([for number of available cpus]) 1421AC_MSG_CHECKING([for number of available cpus])
1441AC_TRY_COMPILE([#include <unistd.h>], 1422AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <unistd.h>]], [[sysconf(_SC_NPROCESSORS_CONF) > 0;]])],[AC_DEFINE(HAVE_SYSCONF__SC_NPROCESSORS_CONF,1,Define if sysconf returns number of available cpus)
1442 [sysconf(_SC_NPROCESSORS_CONF) > 0;], 1423 AC_MSG_RESULT(sysconf(_SC_NPROCESSORS_CONF))],[AC_MSG_RESULT(cannot calculate)
1443 AC_DEFINE(HAVE_SYSCONF__SC_NPROCESSORS_CONF,1,[Define if sysconf returns number of available cpus]) 1424 ])
1444 AC_MSG_RESULT([sysconf(_SC_NPROCESSORS_CONF)]),
1445 AC_MSG_RESULT([cannot calculate])
1446 )
1447 1425
1448AC_PATH_PROG(PATH_TO_UPTIME,uptime) 1426AC_PATH_PROG(PATH_TO_UPTIME,uptime)
1449AC_ARG_WITH(uptime_command, 1427AC_ARG_WITH(uptime_command,
@@ -1482,23 +1460,30 @@ AC_ARG_WITH(snmpget_command,
1482 ACX_HELP_STRING([--with-snmpget-command=PATH], 1460 ACX_HELP_STRING([--with-snmpget-command=PATH],
1483 [Path to snmpget command]), 1461 [Path to snmpget command]),
1484 PATH_TO_SNMPGET=$withval) 1462 PATH_TO_SNMPGET=$withval)
1485if test -n "$PATH_TO_SNMPGET"
1486then
1487 AC_DEFINE_UNQUOTED(PATH_TO_SNMPGET,"$PATH_TO_SNMPGET",[path to snmpget binary])
1488 EXTRAS="$EXTRAS check_hpjd check_snmp\$(EXEEXT)"
1489else
1490 AC_MSG_WARN([Get snmpget from http://net-snmp.sourceforge.net to make check_hpjd and check_snmp plugins])
1491fi
1492 1463
1493AC_PATH_PROG(PATH_TO_SNMPGETNEXT,snmpgetnext) 1464AC_PATH_PROG(PATH_TO_SNMPGETNEXT,snmpgetnext)
1494AC_ARG_WITH(snmpgetnext_command, 1465AC_ARG_WITH(snmpgetnext_command,
1495 ACX_HELP_STRING([--with-snmpgetnext-command=PATH], 1466 ACX_HELP_STRING([--with-snmpgetnext-command=PATH],
1496 [Path to snmpgetnext command]), 1467 [Path to snmpgetnext command]),
1497 PATH_TO_SNMPGETNEXT=$withval) 1468 PATH_TO_SNMPGETNEXT=$withval)
1498if test -n "$PATH_TO_SNMPGETNEXT" 1469
1499then 1470AS_IF([test -n "$PATH_TO_SNMPGET"], [
1500 AC_DEFINE_UNQUOTED(PATH_TO_SNMPGETNEXT,"$PATH_TO_SNMPGETNEXT",[path to snmpgetnext binary]) 1471 AC_DEFINE_UNQUOTED(PATH_TO_SNMPGET,"$PATH_TO_SNMPGET",[path to snmpget binary])
1501fi 1472 EXTRAS="$EXTRAS check_hpjd"
1473
1474 dnl PATH_TO_SNMPGETNEXT is used unconditionally in check_snmp:
1475 dnl
1476 dnl https://github.com/nagios-plugins/nagios-plugins/issues/788
1477 dnl
1478 AS_IF([test -n "$PATH_TO_SNMPGETNEXT"], [
1479 AC_DEFINE_UNQUOTED(PATH_TO_SNMPGETNEXT,"$PATH_TO_SNMPGETNEXT",[path to snmpgetnext binary])
1480 EXTRAS="$EXTRAS check_snmp\$(EXEEXT)"
1481 ], [
1482 AC_MSG_WARN([Get snmpgetnext from https://net-snmp.sourceforge.io/ to build the check_snmp plugin])
1483 ])
1484], [
1485 AC_MSG_WARN([Get snmpget from https://net-snmp.sourceforge.io/ to build the check_hpjd and check_snmp plugins])
1486])
1502 1487
1503if ( $PERL -M"Net::SNMP 3.6" -e 'exit' 2>/dev/null ) 1488if ( $PERL -M"Net::SNMP 3.6" -e 'exit' 2>/dev/null )
1504then 1489then
@@ -1850,8 +1835,8 @@ AC_SUBST(EXTRAS_ROOT)
1850AC_SUBST(EXTRA_NETOBJS) 1835AC_SUBST(EXTRA_NETOBJS)
1851AC_SUBST(DEPLIBS) 1836AC_SUBST(DEPLIBS)
1852 1837
1853AM_GNU_GETTEXT([external], [need-ngettext]) 1838dnl AM_GNU_GETTEXT([external], [need-ngettext])
1854AM_GNU_GETTEXT_VERSION(0.15) 1839dnl AM_GNU_GETTEXT_VERSION(0.15)
1855 1840
1856dnl Check for Redhat spopen problem 1841dnl Check for Redhat spopen problem
1857dnl Weird problem where ECHILD is returned from a wait call in error 1842dnl Weird problem where ECHILD is returned from a wait call in error
@@ -1861,8 +1846,7 @@ dnl We patch plugins/popen.c
1861dnl Need to add smp because uname different on those 1846dnl Need to add smp because uname different on those
1862dnl Can force patch to be applied with --enable-redhat-pthread-workaround 1847dnl Can force patch to be applied with --enable-redhat-pthread-workaround
1863AC_ARG_ENABLE(redhat-pthread-workaround, 1848AC_ARG_ENABLE(redhat-pthread-workaround,
1864 AC_HELP_STRING([--enable-redhat-pthread-workaround], 1849 AS_HELP_STRING([--enable-redhat-pthread-workaround],[force Redhat patch to be applied (default: test system)]),
1865 [force Redhat patch to be applied (default: test system)]),
1866 [ac_cv_enable_redhat_pthread_workaround=$enableval], 1850 [ac_cv_enable_redhat_pthread_workaround=$enableval],
1867 [ac_cv_enable_redhat_pthread_workaround=test]) 1851 [ac_cv_enable_redhat_pthread_workaround=test])
1868if test "$ac_cv_enable_redhat_pthread_workaround" = "test" ; then 1852if test "$ac_cv_enable_redhat_pthread_workaround" = "test" ; then
@@ -1883,8 +1867,7 @@ fi
1883 1867
1884dnl Perl modules 1868dnl Perl modules
1885AC_ARG_ENABLE(perl-modules, 1869AC_ARG_ENABLE(perl-modules,
1886 AC_HELP_STRING([--enable-perl-modules], 1870 AS_HELP_STRING([--enable-perl-modules],[Enables installation of Monitoring::Plugin and its dependencies (default: no)]),
1887 [Enables installation of Monitoring::Plugin and its dependencies (default: no)]),
1888 [enable_perl_modules=$enableval], 1871 [enable_perl_modules=$enableval],
1889 [enable_perl_modules=no]) 1872 [enable_perl_modules=no])
1890if test "$enable_perl_modules" = "yes" ; then 1873if test "$enable_perl_modules" = "yes" ; then
@@ -1911,8 +1894,7 @@ if test "$ac_cv_uname_s" = 'SunOS' -a \( "x$ac_cv_prog_ac_ct_AR" = "x" -o "$ac_c
1911 AC_MSG_ERROR(No ar found for Solaris - is /usr/ccs/bin in PATH?) 1894 AC_MSG_ERROR(No ar found for Solaris - is /usr/ccs/bin in PATH?)
1912fi 1895fi
1913 1896
1914AC_OUTPUT( 1897AC_CONFIG_FILES([Makefile
1915 Makefile
1916 tap/Makefile 1898 tap/Makefile
1917 lib/Makefile 1899 lib/Makefile
1918 plugins/Makefile 1900 plugins/Makefile
@@ -1924,7 +1906,8 @@ AC_OUTPUT(
1924 perlmods/Makefile 1906 perlmods/Makefile
1925 test.pl 1907 test.pl
1926 pkg/solaris/pkginfo 1908 pkg/solaris/pkginfo
1927) 1909])
1910AC_OUTPUT
1928 1911
1929 1912
1930dnl the ones below that are commented out need to be cleaned up 1913dnl the ones below that are commented out need to be cleaned up