summaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac130
1 files changed, 55 insertions, 75 deletions
diff --git a/configure.ac b/configure.ac
index 0432336b..fdc9b699 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,6 +1,6 @@
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)
@@ -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"])
@@ -183,17 +181,16 @@ fi
183 181
184# Finally, define tests if we use libtap 182# Finally, define tests if we use libtap
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_tcp test_cmd test_base64"
187 AC_SUBST(EXTRA_TEST) 185 AC_SUBST(EXTRA_TEST)
188 186
189 EXTRA_PLUGIN_TESTS="tests/test_check_swap" 187 EXTRA_PLUGIN_TESTS="tests/test_check_swap tests/test_check_disk"
190 AC_SUBST(EXTRA_PLUGIN_TESTS) 188 AC_SUBST(EXTRA_PLUGIN_TESTS)
191fi 189fi
192 190
193dnl INI Parsing 191dnl INI Parsing
194AC_ARG_ENABLE(extra-opts, 192AC_ARG_ENABLE(extra-opts,
195 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)]),
196 [Enables parsing of plugins ini config files for extra options (default: no)]),
197 [enable_extra_opts=$enableval], 194 [enable_extra_opts=$enableval],
198 [enable_extra_opts=yes]) 195 [enable_extra_opts=yes])
199AM_CONDITIONAL([USE_PARSE_INI],[test "$enable_extra_opts" = "yes"]) 196AM_CONDITIONAL([USE_PARSE_INI],[test "$enable_extra_opts" = "yes"])
@@ -467,20 +464,16 @@ AC_ARG_WITH([ipv6],
467dnl Check for AF_INET6 support - unistd.h required for Darwin 464dnl Check for AF_INET6 support - unistd.h required for Darwin
468if test "$with_ipv6" != "no"; then 465if test "$with_ipv6" != "no"; then
469 AC_CACHE_CHECK([for IPv6 support], np_cv_sys_ipv6, [ 466 AC_CACHE_CHECK([for IPv6 support], np_cv_sys_ipv6, [
470 AC_TRY_COMPILE( 467 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef HAVE_UNISTD_H
471 [#ifdef HAVE_UNISTD_H
472 #include <unistd.h> 468 #include <unistd.h>
473 #endif 469 #endif
474 #include <netinet/in.h> 470 #include <netinet/in.h>
475 #include <sys/socket.h>], 471 #include <sys/socket.h>]], [[struct sockaddr_in6 sin6;
476 [struct sockaddr_in6 sin6;
477 void *p; 472 void *p;
478 473
479 sin6.sin6_family = AF_INET6; 474 sin6.sin6_family = AF_INET6;
480 sin6.sin6_port = 587; 475 sin6.sin6_port = 587;
481 p = &sin6.sin6_addr;], 476 p = &sin6.sin6_addr;]])],[np_cv_sys_ipv6=yes],[np_cv_sys_ipv6=no])
482 [np_cv_sys_ipv6=yes],
483 [np_cv_sys_ipv6=no])
484 ]) 477 ])
485 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
486 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])
@@ -614,10 +607,10 @@ dnl
614dnl Checks for header files. 607dnl Checks for header files.
615dnl 608dnl
616 609
617AC_HEADER_TIME
618AC_HEADER_SYS_WAIT 610AC_HEADER_SYS_WAIT
619AC_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)
620AC_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])
621 614
622dnl Checks for typedefs, structures, and compiler characteristics. 615dnl Checks for typedefs, structures, and compiler characteristics.
623AC_C_CONST 616AC_C_CONST
@@ -626,36 +619,27 @@ AC_TYPE_PID_T
626AC_TYPE_SIZE_T 619AC_TYPE_SIZE_T
627 620
628AC_CACHE_CHECK([for va_copy],ac_cv_HAVE_VA_COPY,[ 621AC_CACHE_CHECK([for va_copy],ac_cv_HAVE_VA_COPY,[
629AC_TRY_LINK([#include <stdarg.h> 622AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h>
630va_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])])
631ac_cv_HAVE_VA_COPY=yes,
632ac_cv_HAVE_VA_COPY=no)])
633if test x"$ac_cv_HAVE_VA_COPY" = x"yes"; then 624if test x"$ac_cv_HAVE_VA_COPY" = x"yes"; then
634 AC_DEFINE(HAVE_VA_COPY,1,[Whether va_copy() is available]) 625 AC_DEFINE(HAVE_VA_COPY,1,[Whether va_copy() is available])
635else 626else
636 AC_CACHE_CHECK([for __va_copy],ac_cv_HAVE___VA_COPY,[ 627 AC_CACHE_CHECK([for __va_copy],ac_cv_HAVE___VA_COPY,[
637 AC_TRY_LINK([#include <stdarg.h> 628 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h>
638 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])])
639 ac_cv_HAVE___VA_COPY=yes,
640 ac_cv_HAVE___VA_COPY=no)])
641 if test x"$ac_cv_HAVE___VA_COPY" = x"yes"; then 630 if test x"$ac_cv_HAVE___VA_COPY" = x"yes"; then
642 AC_DEFINE(HAVE___VA_COPY,1,[Whether __va_copy() is available]) 631 AC_DEFINE(HAVE___VA_COPY,1,[Whether __va_copy() is available])
643 fi 632 fi
644fi 633fi
645 634
646AC_TRY_COMPILE([#include <sys/time.h>], 635AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/time.h>]], [[struct timeval *tv;
647 [struct timeval *tv; 636 struct timezone *tz;]])],[AC_DEFINE(HAVE_STRUCT_TIMEVAL,1,Define if we have a timeval structure)
648 struct timezone *tz;], 637 FOUND_STRUCT_TIMEVAL="yes"],[])
649 AC_DEFINE(HAVE_STRUCT_TIMEVAL,1,[Define if we have a timeval structure])
650 FOUND_STRUCT_TIMEVAL="yes")
651 638
652if test x"$FOUND_STRUCT_TIMEVAL" = x"yes"; then 639if test x"$FOUND_STRUCT_TIMEVAL" = x"yes"; then
653 AC_TRY_COMPILE([#include <sys/time.h>], 640 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/time.h>]], [[struct timeval *tv;
654 [struct timeval *tv;
655 struct timezone *tz; 641 struct timezone *tz;
656 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)])
657 AC_DEFINE(HAVE_GETTIMEOFDAY,1,[Define if gettimeofday is found]),
658 AC_DEFINE(NEED_GETTIMEOFDAY,1,[Define if gettimeofday is needed]))
659fi 643fi
660 644
661dnl Checks for library functions. 645dnl Checks for library functions.
@@ -663,14 +647,11 @@ AC_CHECK_FUNCS(memmove select socket strdup strstr strtol strtoul floor)
663AC_CHECK_FUNCS(poll) 647AC_CHECK_FUNCS(poll)
664 648
665AC_MSG_CHECKING(return type of socket size) 649AC_MSG_CHECKING(return type of socket size)
666AC_TRY_COMPILE([#include <stdlib.h> 650AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdlib.h>
667 #include <sys/types.h> 651 #include <sys/types.h>
668 #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"
669 [int a = send(1, (const void *) buffer, (size_t *) 0, (int *) 0);], 653 AC_MSG_RESULT(size_t)],[ac_cv_socket_size_type="int"
670 ac_cv_socket_size_type=["size_t"] 654 AC_MSG_RESULT(int)])
671 AC_MSG_RESULT(size_t),
672 ac_cv_socket_size_type=["int"]
673 AC_MSG_RESULT(int))
674 655
675AC_DEFINE_UNQUOTED(SOCKET_SIZE_TYPE, $ac_cv_socket_size_type , 656AC_DEFINE_UNQUOTED(SOCKET_SIZE_TYPE, $ac_cv_socket_size_type ,
676 [Define type of socket size]) 657 [Define type of socket size])
@@ -1433,20 +1414,14 @@ if test -n "$ac_cv_nslookup_command"; then
1433fi 1414fi
1434 1415
1435AC_MSG_CHECKING([for number of online cpus]) 1416AC_MSG_CHECKING([for number of online cpus])
1436AC_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)
1437 [sysconf(_SC_NPROCESSORS_ONLN) > 0;], 1418 AC_MSG_RESULT(sysconf(_SC_NPROCESSORS_ONLN))],[AC_MSG_RESULT(cannot calculate)
1438 AC_DEFINE(HAVE_SYSCONF__SC_NPROCESSORS_ONLN,1,[Define if sysconf returns number of online cpus]) 1419 ])
1439 AC_MSG_RESULT([sysconf(_SC_NPROCESSORS_ONLN)]),
1440 AC_MSG_RESULT([cannot calculate])
1441 )
1442 1420
1443AC_MSG_CHECKING([for number of available cpus]) 1421AC_MSG_CHECKING([for number of available cpus])
1444AC_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)
1445 [sysconf(_SC_NPROCESSORS_CONF) > 0;], 1423 AC_MSG_RESULT(sysconf(_SC_NPROCESSORS_CONF))],[AC_MSG_RESULT(cannot calculate)
1446 AC_DEFINE(HAVE_SYSCONF__SC_NPROCESSORS_CONF,1,[Define if sysconf returns number of available cpus]) 1424 ])
1447 AC_MSG_RESULT([sysconf(_SC_NPROCESSORS_CONF)]),
1448 AC_MSG_RESULT([cannot calculate])
1449 )
1450 1425
1451AC_PATH_PROG(PATH_TO_UPTIME,uptime) 1426AC_PATH_PROG(PATH_TO_UPTIME,uptime)
1452AC_ARG_WITH(uptime_command, 1427AC_ARG_WITH(uptime_command,
@@ -1485,23 +1460,30 @@ AC_ARG_WITH(snmpget_command,
1485 ACX_HELP_STRING([--with-snmpget-command=PATH], 1460 ACX_HELP_STRING([--with-snmpget-command=PATH],
1486 [Path to snmpget command]), 1461 [Path to snmpget command]),
1487 PATH_TO_SNMPGET=$withval) 1462 PATH_TO_SNMPGET=$withval)
1488if test -n "$PATH_TO_SNMPGET"
1489then
1490 AC_DEFINE_UNQUOTED(PATH_TO_SNMPGET,"$PATH_TO_SNMPGET",[path to snmpget binary])
1491 EXTRAS="$EXTRAS check_hpjd check_snmp\$(EXEEXT)"
1492else
1493 AC_MSG_WARN([Get snmpget from http://net-snmp.sourceforge.net to make check_hpjd and check_snmp plugins])
1494fi
1495 1463
1496AC_PATH_PROG(PATH_TO_SNMPGETNEXT,snmpgetnext) 1464AC_PATH_PROG(PATH_TO_SNMPGETNEXT,snmpgetnext)
1497AC_ARG_WITH(snmpgetnext_command, 1465AC_ARG_WITH(snmpgetnext_command,
1498 ACX_HELP_STRING([--with-snmpgetnext-command=PATH], 1466 ACX_HELP_STRING([--with-snmpgetnext-command=PATH],
1499 [Path to snmpgetnext command]), 1467 [Path to snmpgetnext command]),
1500 PATH_TO_SNMPGETNEXT=$withval) 1468 PATH_TO_SNMPGETNEXT=$withval)
1501if test -n "$PATH_TO_SNMPGETNEXT" 1469
1502then 1470AS_IF([test -n "$PATH_TO_SNMPGET"], [
1503 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])
1504fi 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])
1505 1487
1506if ( $PERL -M"Net::SNMP 3.6" -e 'exit' 2>/dev/null ) 1488if ( $PERL -M"Net::SNMP 3.6" -e 'exit' 2>/dev/null )
1507then 1489then
@@ -1864,8 +1846,7 @@ dnl We patch plugins/popen.c
1864dnl Need to add smp because uname different on those 1846dnl Need to add smp because uname different on those
1865dnl Can force patch to be applied with --enable-redhat-pthread-workaround 1847dnl Can force patch to be applied with --enable-redhat-pthread-workaround
1866AC_ARG_ENABLE(redhat-pthread-workaround, 1848AC_ARG_ENABLE(redhat-pthread-workaround,
1867 AC_HELP_STRING([--enable-redhat-pthread-workaround], 1849 AS_HELP_STRING([--enable-redhat-pthread-workaround],[force Redhat patch to be applied (default: test system)]),
1868 [force Redhat patch to be applied (default: test system)]),
1869 [ac_cv_enable_redhat_pthread_workaround=$enableval], 1850 [ac_cv_enable_redhat_pthread_workaround=$enableval],
1870 [ac_cv_enable_redhat_pthread_workaround=test]) 1851 [ac_cv_enable_redhat_pthread_workaround=test])
1871if test "$ac_cv_enable_redhat_pthread_workaround" = "test" ; then 1852if test "$ac_cv_enable_redhat_pthread_workaround" = "test" ; then
@@ -1886,8 +1867,7 @@ fi
1886 1867
1887dnl Perl modules 1868dnl Perl modules
1888AC_ARG_ENABLE(perl-modules, 1869AC_ARG_ENABLE(perl-modules,
1889 AC_HELP_STRING([--enable-perl-modules], 1870 AS_HELP_STRING([--enable-perl-modules],[Enables installation of Monitoring::Plugin and its dependencies (default: no)]),
1890 [Enables installation of Monitoring::Plugin and its dependencies (default: no)]),
1891 [enable_perl_modules=$enableval], 1871 [enable_perl_modules=$enableval],
1892 [enable_perl_modules=no]) 1872 [enable_perl_modules=no])
1893if test "$enable_perl_modules" = "yes" ; then 1873if test "$enable_perl_modules" = "yes" ; then
@@ -1914,8 +1894,7 @@ if test "$ac_cv_uname_s" = 'SunOS' -a \( "x$ac_cv_prog_ac_ct_AR" = "x" -o "$ac_c
1914 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?)
1915fi 1895fi
1916 1896
1917AC_OUTPUT( 1897AC_CONFIG_FILES([Makefile
1918 Makefile
1919 tap/Makefile 1898 tap/Makefile
1920 lib/Makefile 1899 lib/Makefile
1921 plugins/Makefile 1900 plugins/Makefile
@@ -1927,7 +1906,8 @@ AC_OUTPUT(
1927 perlmods/Makefile 1906 perlmods/Makefile
1928 test.pl 1907 test.pl
1929 pkg/solaris/pkginfo 1908 pkg/solaris/pkginfo
1930) 1909])
1910AC_OUTPUT
1931 1911
1932 1912
1933dnl 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