Code

finish ckleanup of rpm spec porcessing
[nagiosplug.git] / configure.in
1 dnl Process this file with autoconf to produce a configure script.
2 include(`aclocal.m4')
3 AC_REVISION ($Revision$)
4 AC_INIT(Helper.pm)
5 PACKAGE_VERSION="1.3.0"
6 AC_SUBST(PACKAGE_VERSION)
7 PACKAGE_RELEASE="alpha1"
8 AC_SUBST(PACKAGE_RELEASE)
9 AM_INIT_AUTOMAKE(nagios-plugins,${PACKAGE_VERSION}-${PACKAGE_RELEASE})
10 AM_CONFIG_HEADER(plugins/config.h plugins/common.h plugins/version.h plugins/netutils.h plugins/utils.h plugins/popen.h)
12 AC_PREFIX_DEFAULT(/usr/local/nagios)
14 dnl Figure out how to invoke "install" and what install options to use.
16 AC_PROG_INSTALL
17 AC_SUBST(INSTALL)
19 AC_PROG_RANLIB
21 AC_PATH_PROG(ACLOCAL,aclocal)
22 AC_PATH_PROG(AUTOMAKE,automake)
23 AC_PATH_PROG(AUTOCONF,autoconf)
24 AC_PATH_PROG(AUTOHEADER,autoheader)
26 PLUGIN_TEST=`echo $srcdir/plugins/t/*.t|sed -e 's,\.*/plugins/,,g'`
27 AC_SUBST(PLUGIN_TEST)dnl
29 SCRIPT_TEST=`echo $srcdir/plugins-scripts/t/*.t|sed -e 's,\.*/plugins-scripts/,,g'`
30 AC_SUBST(SCRIPT_TEST)dnl
32 WARRANTY="The nagios plugins come with ABSOLUTELY NO WARRANTY. You may redistribute\ncopies of the plugins under the terms of the GNU General Public License.\nFor more information about these matters, see the file named COPYING.\n"
33 AC_SUBST(WARRANTY)
35 SUPPORT="Send email to nagios-users@lists.sourceforge.net if you have questions\nregarding use of this software. To submit patches or suggest improvements,\nsend email to nagiosplug-devel@lists.sourceforge.net\n"
36 AC_SUBST(SUPPORT)
38 AC_ARG_PROGRAM
40 dnl AC_ARG_WITH(nonposix_state_defs,--with-nonposix-state-defs uses POSIXLY incorrect states for netsaint < 0.0.7b2,,AC_DEFINE(POSIX_STATE_DEFS))
42 dnl CGIURL has changed for Nagios with 1.0 beta
43 AC_ARG_WITH(cgiurl,--with-cgiurl=<dir> sets URL for cgi programs,cgiurl=$withval,cgiurl=/nagios/cgi-bin)
44 CGIURL="$cgiurl"
45 AC_DEFINE_UNQUOTED(CGIURL,"$CGIURL")
47 AC_ARG_WITH(nagios_user,--with-nagios-user=<user> sets user name to run nagios,nagios_usr=$withval,nagios_usr=nagios)
48 AC_ARG_WITH(nagios_group,--with-nagios-group=<group> sets group name to run nagios,nagios_grp=$withval,nagios_grp=nagios)
49 AC_SUBST(nagios_usr)
50 AC_SUBST(nagios_grp)
51 INSTALL_OPTS="-o $nagios_usr -g $nagios_grp"
52 AC_SUBST(INSTALL_OPTS)
54 AC_ARG_WITH(trusted_path,--with-trusted-path=/bin:/sbin:/usr/bin:/usr/sbin sets trusted path for executables called by scripts,trusted_path=$withval,trusted_path=/bin:/sbin:/usr/bin:/usr/sbin)
55 AC_SUBST(trusted_path)
57 EXTRAS=
58 dnl PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/etc:/usr/local/bin:/usr/local/sbin:$PATH
60 LDFLAGS="$LDFLAGS -L."
62 dnl Checks for programs.
63 AC_PROG_CC
64 AC_PROG_MAKE_SET
65 AC_PROG_AWK
67 AC_PATH_PROG(PYTHON,python)
68 AC_PATH_PROG(PERL,perl)
69 AC_PATH_PROG(SH,sh)
71 AC_PATH_PROG(HOSTNAME,hostname)
72 AC_PATH_PROG(BASENAME,basename)
75 dnl
76 dnl Checks for libraries.
77 dnl
79 AC_FUNC_GETLOADAVG
81 AC_CHECK_LIB(dce,main,SOCKETLIBS="$SOCKETLIBS -ldce")
82 AC_CHECK_LIB(nsl,main,SOCKETLIBS="$SOCKETLIBS -lnsl")
83 AC_CHECK_LIB(socket,socket,SOCKETLIBS="$SOCKETLIBS -lsocket")
84 AC_CHECK_LIB(resolv,main,SOCKETLIBS="$SOCKETLIBS -lresolv")
85 AC_SUBST(SOCKETLIBS)
87 dnl Check for PostgreSQL libraries
88 _SAVEDLIBS="$LIBS"
89 _SAVEDCPPFLAGS="$CPPFLAGS"
90 AC_ARG_WITH(pgsql,--with-pgsql=<dir> sets path to pgsql installation,[PGSQL=$withval])
91 AC_CHECK_LIB(crypt,main)
92 if test "$ac_cv_lib_crypt_main" = "yes"; then
93   if test -n "$PGSQL"; then
94     LIBS="$LIBS -L$PGSQL/lib"
95     CPPFLAGS="$CPPFLAGS -I$PGSQL/include"
96   fi
97   AC_CHECK_LIB(pq,PQsetdbLogin,,,-lcrypt)
98   if test "$ac_cv_lib_pq_PQsetdbLogin" = "yes"; then
99     AC_CHECK_HEADERS(pgsql/libpq-fe.h)
100     AC_CHECK_HEADERS(postgresql/libpq-fe.h)
101     AC_CHECK_HEADERS(libpq-fe.h)
102     if test  "$ac_cv_header_pgsql_libpq_fe_h" = "yes"; then
103       PGLIBS="-lpq -lcrypt"
104       PGINCLUDE="-I/usr/include/pgsql"
105     elif test  "$ac_cv_header_postgresql_libpq_fe_h" = "yes"; then
106       PGLIBS="-L$PGSQL/lib -lpq -lcrypt"
107       PGINCLUDE="-I/usr/include/postgresql"
108     elif test  "$ac_cv_header_libpq_fe_h" = "yes"; then
109       PGLIBS="-L$PGSQL/lib -lpq -lcrypt"
110       PGINCLUDE="-I$PGSQL/include"
111     fi
112     if test -z "$PGINCLUDE"; then
113       AC_MSG_WARN([Skipping PostgreSQL plugin (check_pgsql)])
114       AC_MSG_WARN([install PostgreSQL headers to compile this plugin (see Requirements).])
115     else
116       AC_SUBST(PGLIBS)
117       AC_SUBST(PGINCLUDE)
118       EXTRAS="$EXTRAS check_pgsql"
119     fi
120   else
121     AC_MSG_WARN([Skipping PostgreSQL plugin (check_pgsql)])
122     AC_MSG_WARN([LIBS="$LIBS" CPPFLAGS="$CPPFLAGS"])
123     AC_MSG_WARN([install PostgreSQL libs to compile this plugin (see Requirements).])
124   fi
125 else
126   AC_MSG_WARN([Skipping PostgreSQL plugin (check_pgsql)])
127   AC_MSG_WARN([install lib crypt and PostgreSQL libs to compile this plugin (see Requirements).])
128 fi
129 LIBS="$_SAVEDLIBS"
130 CPPFLAGS="$_SAVEDCPPFLAGS"
132 dnl Check for radius libraries
133 _SAVEDLIBS="$LIBS"
134 AC_CHECK_LIB(radiusclient,rc_read_config)
135 if test "$ac_cv_lib_radiusclient_rc_read_config" = "yes"; then
136   EXTRAS="$EXTRAS check_radius"
137         RADIUSLIBS="-lradiusclient"
138   AC_SUBST(RADIUSLIBS)
139 else
140   AC_MSG_WARN([Skipping radius plugin])
141   AC_MSG_WARN([install radius libs to compile this plugin (see Requirements).])
142 fi
143 LIBS="$_SAVEDLIBS"
145 dnl Check for LDAP libraries
146 _SAVEDLIBS="$LIBS"
147 AC_CHECK_LIB(ldap,main,,,-llber)
148 if test "$ac_cv_lib_ldap_main" = "yes"; then
149   LDAPLIBS="-lldap -llber"\
150   LDAPINCLUDE="-I/usr/include/ldap"
151   AC_SUBST(LDAPLIBS)
152   AC_SUBST(LDAPINCLUDE)
153   EXTRAS="$EXTRAS check_ldap"
154 else
155   AC_MSG_WARN([Skipping LDAP plugin])
156   AC_MSG_WARN([install LDAP libs to compile this plugin (see Requirements).])
157 fi
158 LIBS="$_SAVEDLIBS"
161 dnl Check for mysql libraries
162 _SAVEDLIBS="$LIBS"
163 _SAVEDCPPFLAGS="$CPPFLAGS"
164 dnl CPPFLAGS="-I/usr/include"
166 AC_ARG_WITH(mysql,--with-mysql=<dir> sets path to mysql installation (assumes lib/mysql and include subdirs),[MYSQL=$withval])
167 if test -n "$MYSQL"; then
168   MYSQLLIBDIR=$MYSQL/lib/mysql
169   CPPFLAGS="-I$MYSQL/include"
170   AC_CHECK_LIB(mysqlclient,mysql_init,MYSQLLIBS="-lmysqlclient -lz" check_mysql_LDFLAGS="-L$MYSQLLIBDIR ",,-L$MYSQLLIBDIR -lz)
171   AC_CHECK_LIB(mysqlclient,mysql_close,MYSQLLIBS="-lmysqlclient")
172 elif test -f /usr/lib/libmysqlclient.so; then
173   AC_CHECK_LIB(mysqlclient,mysql_init,MYSQLLIBS="-lmysqlclient -lz",,-lz)
174   AC_CHECK_LIB(mysqlclient,mysql_close,MYSQLLIBS="-lmysqlclient")
175 elif test -f /usr/lib/libmysqlclient.a; then
176   AC_CHECK_LIB(mysqlclient,mysql_init,MYSQLLIBS="-lmysqlclient -lz",,-lz)
177   AC_CHECK_LIB(mysqlclient,mysql_close,MYSQLLIBS="-lmysqlclient")
178 elif test -f /usr/lib/mysql/libmysqlclient.so; then
179   AC_CHECK_LIB(mysqlclient,mysql_init,MYSQLLIBS="-lmysqlclient -lz" check_mysql_LDFLAGS="-L/usr/lib/mysql",,-L/usr/lib/mysql -lz)
180   AC_CHECK_LIB(mysqlclient,mysql_close,MYSQLLIBS="-lmysqlclient" check_mysql_LDFLAGS="-L/usr/lib/mysql",,-L/usr/lib/mysql)
181 elif test -f /usr/lib/mysql/libmysqlclient.a; then
182   AC_CHECK_LIB(mysqlclient,mysql_init,MYSQLLIBS="-lmysqlclient -lz" check_mysql_LDFLAGS="-L/usr/lib/mysql",,-L/usr/lib/mysql -lz)
183   AC_CHECK_LIB(mysqlclient,mysql_close,MYSQLLIBS="-lmysqlclient" check_mysql_LDFLAGS="-L/usr/lib/mysql",,-L/usr/lib/mysql)
184 fi
185 if test "$ac_cv_lib_mysqlclient_mysql_init" = "yes" -o "$ac_cv_lib_mysqlclient_mysql_close" = "yes"; then
186   AC_CHECK_HEADERS(mysql/mysql.h mysql/errmsg.h, MYSQLINCLUDE="-I$MYSQL/include" )
187   if test "$ac_cv_header_mysql_mysql_h" = "yes" -a "$ac_cv_header_mysql_errmsg_h" = "yes"; then
188     EXTRAS="$EXTRAS check_mysql"
189         CPPFLAGS="$_SAVEDCPPFLAGS -I$MYSQL/include"
190     AC_SUBST(MYSQLLIBS)
191     AC_SUBST(check_mysql_LDFLAGS)
192   else
193     AC_MSG_WARN([Skipping mysql plugin])
194     AC_MSG_WARN([install mysql client headers to compile this plugin (see Requirements).])
195     CPPFLAGS="$_SAVEDCPPFLAGS"
196   fi
197 else
198   AC_MSG_WARN([Skipping mysql plugin])
199   AC_MSG_WARN([install mysql client libs to compile this plugin (see Requirements).])
200   CPPFLAGS="$_SAVEDCPPFLAGS"
201 fi
202 LIBS="$_SAVEDLIBS"
204 dnl Check for OpenSSL location
205 AC_PATH_PROG(OPENSSL,openssl)
206 if test "$OPENSSL" = "/usr/bin/openssl"; then
207   OPENSSL=/usr
208 elif test "$OPENSSL" = "/usr/sbin/openssl"; then
209   OPENSSL=/usr
210 elif test "$OPENSSL" = "/opt/bin/openssl"; then
211   OPENSSL=/opt
212 elif test "$OPENSSL" = "/opt/openssl/bin/openssl"; then
213   OPENSSL=/opt/openssl
214 elif test "$OPENSSL" = "/usr/slocal/bin/openssl"; then
215   OPENSSL=/usr/slocal
216 elif test "$OPENSSL" = "/usr/local/bin/openssl"; then
217   OPENSSL=/usr/local
218 elif test "$OPENSSL" = "/usr/local/ssl/bin/openssl"; then
219   OPENSSL=/usr/local/ssl
220 fi
221 AC_ARG_WITH(openssl,--with-openssl=<dir> sets path to openssl installation,[OPENSSL=$withval])
223 dnl Check for OpenSSL header files
224 _SAVEDCPPFLAGS="$CPPFLAGS"
225 FOUNDINCLUDE=yes
226 CPPFLAGS="-I$OPENSSL/include"
227 AC_CHECK_HEADERS(openssl/x509.h openssl/ssl.h openssl/rsa.h openssl/pem.h openssl/crypto.h openssl/err.h,SSLINCLUDE="-I$OPENSSL/include",FOUNDINCLUDE=no)
228 if test "$FOUNDINCLUDE" = "no"; then
229   FOUNDINCLUDE=yes
230   AC_CHECK_HEADERS(x509.h ssl.h rsa.h pem.h crypto.h err.h,SSLINCLUDE="-I$OPENSSL/include",FOUNDINCLUDE=no)
231 fi
232 AC_SUBST(SSLINCLUDE)
233 CPPFLAGS="$_SAVEDCPPFLAGS $SSLINCLUDE"
235 dnl Check for crypto lib
236 _SAVEDLIBS="$LIBS"
237 AC_CHECK_LIB(crypto,CRYPTO_lock,,,-L$OPENSSL/lib)
238 if test "$ac_cv_lib_crypto_CRYPTO_lock" = "yes"; then
239   dnl Check for SSL lib
240   AC_CHECK_LIB(ssl,main,LDFLAGS="$LDFLAGS -L$OPENSSL/lib" SSLLIBS="-lssl -lcrypto",AC_CHECK_LIB(ssl,main,LDFLAGS="$LDFLAGS -L$OPENSSL/lib" SSLLIBS="-lssl -lcrypto"),-L$OPENSSL/lib -lcrypto)
241 fi
242 LIBS="$_SAVEDLIBS"
244 dnl test headers and libs to decide whether check_http should use SSL
245 if test "$ac_cv_lib_crypto_CRYPTO_lock" = "yes"; then
246   if test "$ac_cv_lib_ssl_main" = "yes"; then
247     if test "$FOUNDINCLUDE" = "yes"; then
248       AC_SUBST(SSLLIBS)
249       AC_DEFINE(HAVE_SSL)
250     fi
251   fi
252 fi
253 CPPFLAGS="$_SAVEDCPPFLAGS"
255 dnl
256 dnl Checks for header files.
257 dnl
259 AC_HEADER_STDC
260 AC_HEADER_TIME
261 AC_HEADER_SYS_WAIT
262 AC_CHECK_HEADERS(signal.h strings.h string.h syslog.h unistd.h uio.h errno.h regex.h sys/types.h sys/time.h sys/socket.h sys/loadavg.h)
264 dnl Checks for typedefs, structures, and compiler characteristics.
265 AC_C_CONST
266 AC_STRUCT_TM
267 AC_TYPE_PID_T
268 AC_TYPE_SIZE_T
269 AC_TYPE_SIGNAL
271 dnl EXTRA_LIBRARIES="libgetopt.a libsnprintf.a"
272 dnl noinst_LIBRARIES="libgetopt.a libsnprintf.a"
273 dnl libgetopt_a_SOURCES="getopt.c getopt1.c"
274 dnl libgetopt_a_DEPENDENCIES=getopt.h
275 dnl libsnprintf_a_SOURCES=snprintf.c
276 dnl AC_SUBST(noinst_LIBRARIES)
277 dnl AC_SUBST(libgetopt_a_SOURCES)
278 dnl AC_SUBST(libgetopt_a_DEPENDENCIES)
279 dnl AC_SUBST(libsnprintf_a_SOURCES)
281 AC_MSG_CHECKING(for getopt_long)
282 AC_TRY_COMPILE([#include <getopt.h>
283 #include <stdlib.h>],
284 [int option_index=0;
285 static struct option *long_options;
286 getopt_long(0,NULL,"+h",long_options,&option_index);],
287 [AC_DEFINE(HAVE_GETOPT_H) AC_DEFINE(HAVE_GETOPT_LONG) AC_MSG_RESULT(yes)],
288 [AC_DEFINE(HAVE_GETOPT_H) AC_DEFINE(HAVE_GETOPT_LONG) AC_MSG_RESULT(no) import_sources=getopt])
290 AC_CHECK_FUNCS(getopt_long_only,,LIBS="$LIBS -lgetopt" DEPLIBS="$DEPLIBS libgetopt.a")
292 AC_CHECK_FUNC(vsnprintf,,LIBS="$LIBS -lsnprintf" DEPLIBS="$DEPLIBS libsnprintf.a")
294 dnl Checks for library functions.
295 AC_CHECK_FUNCS(select socket strdup strstr strtod strtol strtoul)
297 AC_MSG_CHECKING(for type of socket size)
298 AC_TRY_COMPILE([#include <stdlib.h>
299 #include <sys/types.h>
300 #include <sys/socket.h>
301 ],
302 [int a = send(1, (const void *) buffer, (size_t *) 0, (int *) 0);],
303 [AC_DEFINE(SOCKET_SIZE_TYPE, size_t) AC_MSG_RESULT(size_t)],
304 [AC_DEFINE(SOCKET_SIZE_TYPE, int) AC_MSG_RESULT(int)])
306 if test -f "/proc/loadavg"
307 then
308   AC_DEFINE(HAVE_PROC_LOADAVG)
309   AC_DEFINE_UNQUOTED(PROC_LOADAVG,"/proc/loadavg")
310 fi
312 AC_PATH_PROG(PATH_TO_PS,ps)
313 dnl OpenBSD (needs to come early because -exo appears to work, but does not give all procs)
314 dnl  STAT UCOMM              VSZ   RSS USER       UID  PPID COMMAND
315 if [ps -axo 'stat comm vsz rss user uid ppid args' 2>/dev/null | egrep -i "^ *S[TAUES]* +[UCOMDNA]+ +[VSIZE]+ +R[S]+ +U[SER]+ +U[ID]+ +P[PID]+ +[RGSCOMDNA]+" >/dev/null]
316 then
317         AC_DEFINE(USE_PS_VARS)
318         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos])
319         AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS -axo 'stat user ppid args'")
320         EXTRAS="$EXTRAS check_nagios"
321         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -axo 'stat uid ppid comm args'")
322         AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n")
323         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -axo 'vsz comm'")
324         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s")
325         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -axo 'rss comm'")
326         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s")
327   echo "      ps syntax... $PATH_TO_PS -axo 'stat comm vsz rss user ppid args'"
328 dnl AIX 4.3.3 - needs verification.
329 elif [ps -ao 'stat comm vsz rss user uid ppid args' 2>/dev/null | egrep -i "^ *S[TAUES]* +[UCOMDNA]+ +[VSIZE]+ +R[S]+ +U[SER]+ +U[ID]+ +P[PID]+ +[RGSCOMDNA]+" >/dev/null]
330 then
331         AC_DEFINE(USE_PS_VARS)
332         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos])
333         AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS -ao 'stat user ppid args'")
334         EXTRAS="$EXTRAS check_nagios"
335         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -ao 'stat uid ppid comm args'")
336         AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n")
337         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -ao 'vsz comm'")
338         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s")
339         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -ao 'rss comm'")
340         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s")
341   echo "      ps syntax... $PATH_TO_PS -ao 'stat comm vsz rss user ppid args'"
342 elif [ps -eo 's comm vsz rss user uid ppid args' 2>/dev/null | egrep -i "^S[TAUES]* +C[OMDNA]+ +[VSIZE]+ +U[SER]+ +U[ID]+ +P[PID]+ +[RGSCOMDNA]+" >/dev/null]
343 then
344         AC_DEFINE(USE_PS_VARS)
345         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos])
346         AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS -eo 's user ppid args'")
347         EXTRAS="$EXTRAS check_nagios"
348         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -eo 's uid ppid comm args'")
349         AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n")
350         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -eo 'vsz comm'")
351         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s")
352         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -eo 'rss comm'")
353         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s")
354         echo "      ps syntax... $PATH_TO_PS -eo 's  comm vsz rss user ppid args'"
355 elif [ps -Ao 's comm vsz rss uid user ppid args' 2>/dev/null | egrep -i "^S[TAUES]* +C[OMDNA]+ +V[SIZE]+ +RSS +UID +USER +PPID +[RGSCOMDNA]+" >/dev/null]
356 then
357         AC_DEFINE(USE_PS_VARS)
358         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos])
359         AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS -Ao 's user ppid args'")
360         EXTRAS="$EXTRAS check_nagios"
361         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -Ao 's uid ppid comm args'")
362         AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n")
363         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -Ao 'vsz comm'")
364         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s")
365         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -Ao 'rss comm'")
366         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s")
367         echo "      ps syntax... $PATH_TO_PS -Ao 's comm vsz rss'"
368 elif [ps -Ao 'status comm vsz rss uid user ppid args' 2>/dev/null | egrep -i "^S[TAUES]* +C[OMDNA]+ +V[SIZE]+ +RSS +UID +USER +PPID +[RGSCOMDNA]+" >/dev/null]
369 then
370         AC_DEFINE(USE_PS_VARS)
371         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos])
372         AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS -Ao 'status user ppid args'")
373         EXTRAS="$EXTRAS check_nagios"
374         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -Ao 'status uid ppid comm args'")
375         AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n")
376         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -Ao 'vsz comm'")
377         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s")
378         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -Ao 'rss comm'")
379         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s")
380         echo "      ps syntax... $PATH_TO_PS -Ao 'status comm vsz rss'"
381 elif [ps -Ao 'state comm vsz rss uid user ppid args' 2>/dev/null | egrep -i "^S[TAUES]* +C[OMDNA]+ +V[SIZE]+ +RSS +UID +USER +PPID +[RGSCOMDNA]+" >/dev/null]
382 then
383         AC_DEFINE(USE_PS_VARS)
384         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos])
385         AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS -Ao 'state user ppid args'")
386         EXTRAS="$EXTRAS check_nagios"
387         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -Ao 'state uid ppid comm args'")
388         AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n")
389         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -Ao 'vsz comm'")
390         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s")
391         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -Ao 'rss comm'")
392         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s")
393         echo "      ps syntax... $PATH_TO_PS -Ao 'state comm vsz rss'"
394 dnl wonder who takes state instead of stat
395 elif [ps -ao 'state command vsz rss user ppid args' 2>/dev/null | egrep -i "^S[TAUES]* +C[OMDNA]+ +V[SIZE]+ +RSS +UID +USER +PPID +[RGSCOMDNA]+" >/dev/null]
396 then
397         AC_DEFINE(USE_PS_VARS)
398         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos])
399         AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS -ao 'state user ppid args'")
400         EXTRAS="$EXTRAS check_nagios"
401         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -ao 'state uid ppid command args'")
402         AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n")
403         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -ao 'vsz command'")
404         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s")
405         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -ao 'rss command'")
406         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s")
407         echo "      ps syntax... $PATH_TO_PS -ao 'state command vsz rss'"
408 dnl FreeBSD
409 elif [ps waxco 'state command vsz rss uid user ppid' 2>/dev/null | egrep -i "^STAT +COMMAND +VSZ +RSS +UID +USER +PPID" >/dev/null]
410 then
411         AC_DEFINE(USE_PS_VARS)
412         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos])
413         AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS waxo 'state uid ppid command'")
414         EXTRAS="$EXTRAS check_nagios"
415         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS waxco 'state uid ppid command command'")
416         AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n")
417         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS waxco 'vsz command'")
418         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s")
419         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS waxco 'rss command'")
420         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s")
421         echo "      ps syntax... $PATH_TO_PS -Ao 'state command vsz rss'"
422 dnl BSD-like mode in RH 6.1
423 elif [ps waxno 'state comm vsz rss uid user ppid args' 2>/dev/null | egrep -i "^S +COMMAND +VSZ +RSS +UID +USER +PPID +[RGSCOMDNA]+" >/dev/null]
424 then
425         AC_DEFINE(USE_PS_VARS)
426         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos])
427         AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS waxno 'state user ppid comm'")
428         EXTRAS="$EXTRAS check_nagios"
429         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS waxno 'state uid ppid comm args'")
430         AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n")
431         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS waxno 'vsz comm'")
432         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s")
433         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS waxno 'rss comm'")
434         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s")
435         echo "      ps syntax... $PATH_TO_PS -waxco 'state comm vsz rss'"
436 dnl IRIX 53
437 elif [ps -el 2>/dev/null | egrep -i "^ *F +S +UID +PID +PPID +C +PRI +NI +P +SZ +RSS +WCHAN +TTY +TIME +[RGSCOMDNA]+" >/dev/null]
438 then
439         AC_DEFINE(USE_PS_VARS)
440         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,&pos,procprog])
441         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -el")
442         AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %s %d %*s %d %*s %*s %*s %*s %*s %*s %*s %*s %*s %n%s")
443         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -el")
444         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %d")
445         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -el")
446         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %d")
447         echo "      ps syntax... $PATH_TO_PS -el"
448 dnl IRIX 63
449 elif [ps -el 2>/dev/null | egrep -i "^ *F +S +UID +PID +PPID +C +PRI +NI +P +ADDR +SZ +RSS +WCHAN +TTY +TIME +[RGSCOMDNA]+" >/dev/null]
450 then
451         AC_DEFINE(USE_PS_VARS)
452         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,&pos,procprog])
453         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -el")
454         AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %s %d %*s %d %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %n%s")
455         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -el")
456         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %d")
457         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -el")
458         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %d")
459         echo "      ps syntax... $PATH_TO_PS -el"
460 dnl SunOS 4.1.3:
461 dnl  F  UID  PID  PPID  CP  PRI  NI  SZ  RSS  WCHAN  STAT  TT  TIME  COMMAND
462 dnl
463 elif [ps -laxnwww 2>/dev/null | egrep -i "^ *F(LAGS)? +UID +PID +PPID +CP +PRI +NI +(SZ)|(VSZ)|(SIZE) +RSS +WCHAN +STAT? +TTY? +TIME +COMMAND" >/dev/null]
464 then
465         AC_DEFINE(USE_PS_VARS)
466         AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS laxnwww")
467         EXTRAS="$EXTRAS check_nagios"
468         AC_DEFINE_UNQUOTED(PS_VARLIST,[&procuid,&procppid,procstat,&pos,procprog])
469         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -laxnwww")
470         AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %d %*s %d %*s %*s %*s %*s %*s %*s %s %*s %*s %n%s")
471         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS laxnwww")
472         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %d")
473         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS laxnwww")
474         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %*s %d")
475         echo "      ps syntax... $PATH_TO_PS laxnwww"
476 dnl Debian Linux / procps v1.2.9:
477 dnl  FLAGS   UID   PID  PPID PRI  NI   SIZE   RSS WCHAN       STA TTY TIME COMMAND
478 dnl    100     0     1     0   0   0    776    76  c0131c8c   S  ffff  0:11 init [2]
479 dnl
480 elif [ps laxnwww 2>/dev/null | egrep -i "^ *F(LAGS)? +UID +PID +PPID +PRI +NI +(VSZ)|(SIZE) +RSS +WCHAN +STAT? TTY +TIME +COMMAND" >/dev/null]
481 then
482         AC_DEFINE(USE_PS_VARS)
483         AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS laxnwww")
484         EXTRAS="$EXTRAS check_nagios"
485         AC_DEFINE_UNQUOTED(PS_VARLIST,[&procuid,&procppid,procstat,&pos,procprog])
486         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS laxnwww")
487         AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %d %*s %d %*s %*s %*s %*s %*s %s %*s %*s %n%s")
488         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS laxnwww")
489         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %*s %*s %d")
490         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS laxnwww")
491         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %d")
492         echo "      ps syntax... $PATH_TO_PS laxnwww"
493 dnl    
494 dnl AIX 4.1:
495 dnl     F S      UID   PID  PPID   C PRI NI ADDR  SZ  RSS   WCHAN    TTY  TIME CMD
496 dnl    303 A        0     0     0 120  16 -- 1c07  20   24              -  0:45 swapper
497 elif [ps -el 2>/dev/null | egrep -i "^ *F +S +UID +PID +PPID +C +PRI +NI +ADDR +SZ +WCHAN +TTY +TIME +[RGSCOMDNA]+" >/dev/null]
498 then
499         AC_DEFINE(USE_PS_VARS)
500         AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,&pos,procprog])
501         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -el")
502         AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %s %d %*s %d %*s %*s %*s %*s %*s %*s %*s %*s %n%s")
503         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -el")
504         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %*s %*s %d")
505         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -el")
506         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %*s %*s %d")
507         echo "      ps syntax... $PATH_TO_PS -el"
508 dnl AIX?
509 elif [ps glaxen 2>/dev/null | egrep -i "^ *F +UID +PID +PPID +PRI +NI +VSZ +RSS +WCHAN +STAT +TTY +TIME +COMMAND" >/dev/null]
510 then
511         AC_DEFINE(USE_PS_VARS)
512         AC_DEFINE_UNQUOTED(PS_VARLIST,[&procuid,&procppid,procstat,&pos,procprog])
513         AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS glaxen")
514         AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %d %*s %d %*s %*s %*s %*s %*s %s %*s %*s %n%s")
515         AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS glaxen")
516         AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %*s %*s %d")
517         AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS glaxen")
518         AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %d")
519         echo "      ps syntax... $PATH_TO_PS glaxen"
520 dnl ucb style?
521 dnl elif [ps axun 2>/dev/null | egrep -i "^USER +PID +%CPU +%MEM +SIZE +RSS +TTY +STAT +START +TIME +COMMAND *$" >/dev/null]
522 dnl then
523 dnl     AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS axun")
524 dnl     AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %*s %*s %*s %*s %*s %s %*s %*s %s")
525 dnl     AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS axun")
526 dnl     AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %d")
527 dnl     AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS axun")
528 dnl     AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %d")
529 dnl     echo "      ps syntax... $PATH_TO_PS axun"
530 dnl ucb style?
531 dnl elif [ps axun 2>/dev/null | egrep -i "^USER +PID +%CPU +%MEM +SIZE +RSS +TTY +STAT +START +TIME +COMMAND" >/dev/null]
532 dnl then
533 dnl     AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS axun")
534 dnl     AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %*s %*s %*s %*s %*s %s %*s %*s %s")
535 dnl     AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS axun")
536 dnl     AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %d")
537 dnl     AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS axun")
538 dnl     AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %d")
539 dnl     echo "      ps syntax... $PATH_TO_PS axun"
540 else
541         echo "** Unable to find usable ps syntax"
542 fi
544 AC_ARG_WITH(df_command,--with-df-command=<syntax> sets syntax for df,DF_COMMAND=$withval)
545 if test -n "$DF_COMMAND"
546 then
547         AC_DEFINE_UNQUOTED(DF_COMMAND,"$DF_COMMAND")
548 elif [df -Pk 2>/dev/null | egrep -i "^(/dev/|[a-zA-Z]:)[a-z0-9/\\]+ +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+% +/[a-z0-9/\\]*" >/dev/null]
549 then
550         AC_PATH_PROG(PATH_TO_DF,df)
551         AC_MSG_RESULT("      df syntax... $PATH_TO_DF -Pk")
552         AC_DEFINE_UNQUOTED(DF_COMMAND,"$PATH_TO_DF -Pk")
553 elif [df -k 2>/dev/null | egrep -i "^/dev/[a-z0-9/]+ +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+% +/[a-z0-9/]*" >/dev/null]
554 then
555         AC_PATH_PROG(PATH_TO_DF,df)
556         AC_MSG_RESULT("      df syntax... $PATH_TO_DF -k")
557         AC_DEFINE_UNQUOTED(DF_COMMAND,"$PATH_TO_DF -k")
558 elif [df 2>/dev/null | egrep -i "^/dev/[a-z0-9/]+ +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+% +/[a-z0-9/]*" >/dev/null]
559 then
560         AC_PATH_PROG(PATH_TO_DF,df)
561         AC_MSG_RESULT("      df syntax... $PATH_TO_DF")
562         AC_DEFINE_UNQUOTED(DF_COMMAND,"$PATH_TO_DF")
563 elif [bdf 2>/dev/null | egrep -i "^/dev/[a-z0-9/]+ +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+% +/[a-z0-9/]*" >/dev/null]
564 then
565         AC_PATH_PROG(PATH_TO_DF,bdf)
566         AC_MSG_RESULT("      df syntax... $PATH_TO_DF")
567         AC_DEFINE_UNQUOTED(DF_COMMAND,"$PATH_TO_DF")
568 else
569         AC_MSG_WARN("unable to find usable df syntax")
570 fi
572 AC_PATH_PROG(PATH_TO_PING,ping)
574 AC_ARG_WITH(ping_command,--with-ping-command=<syntax> sets syntax for ping,PING_COMMAND=$withval)
575 if test -n "$PING_COMMAND"
576 then
577         echo "      ping syntax... (command-line) $PING_COMMAND"
578         if test -n "$PING_PACKETS_FIRST"
579         then
580                 AC_DEFINE_UNQUOTED(PING_PACKETS_FIRST,"$PING_COMMAND")
581         fi
582 elif [ping -n -U -c 1 127.0.0.1 2>/dev/null | egrep -i "^round-trip|^rtt" >/dev/null]
583 then
584         PING_COMMAND="$PATH_TO_PING -n -U -c %d %s"
585         AC_DEFINE_UNQUOTED(PING_PACKETS_FIRST,"$PING_COMMAND")
586         echo "      ping syntax... $PATH_TO_PING -n -U -c <count> <host>"
587 elif [ping -n -c 1 127.0.0.1 2>/dev/null | egrep -i "^round-trip|^rtt" >/dev/null]
588 then
589         PING_COMMAND="$PATH_TO_PING -n -c %d %s"
590         AC_DEFINE_UNQUOTED(PING_PACKETS_FIRST,"$PING_COMMAND")
591         echo "      ping syntax... $PATH_TO_PING -n -c <count> <host>"
592 elif [ping -n 127.0.0.1 -c 1 2>/dev/null | egrep -i "^round-trip|^rtt" >/dev/null]
593 then
594         PING_COMMAND="$PATH_TO_PING -n %s -c %d"
595         echo "      ping syntax... $PATH_TO_PING -n <host> -c <count>"
596 elif [ping 127.0.0.1 -n 1 2>/dev/null | egrep -i "^round-trip|^rtt" >/dev/null]
597 then
598         PING_COMMAND="$PATH_TO_PING %s -n %d"
599         echo "      ping syntax... $PATH_TO_PING <host> -n <count>"
600 elif [ping -n -s 127.0.0.1 56 1 2>/dev/null | egrep -i "^round-trip|^rtt" >/dev/null]
601 then
602         PING_COMMAND="$PATH_TO_PING -n -s %s 56 %d"
603         echo "      ping syntax... $PATH_TO_PING -n -s <host> 56 <count>"
604 elif [ping -n -h 127.0.0.1 -s 56 -c 1 2>/dev/null | egrep -i "^round-trip|^rtt" >/dev/null]
605 then
606         PING_COMMAND="$PATH_TO_PING -n -h %s -s 56 -c %d"
607         echo "      ping syntax... $PATH_TO_PING -n -h <host> -s 56 -c <count>"
608 elif [ping -n -s 56 -c 1 127.0.0.1 2>/dev/null | egrep -i "^round-trip|^rtt" >/dev/null]
609 then
610         PING_COMMAND="$PATH_TO_PING -n -s 56 -c %d %s"
611         AC_DEFINE_UNQUOTED(PING_PACKETS_FIRST,"$PING_COMMAND")
612         echo "      ping syntax... $PATH_TO_PING -n -s 56 -c <count> <host>"
613 elif [ping -n -c 1 127.0.0.1 2>/dev/null | egrep -i "^round-trip|^rtt" >/dev/null]
614 then
615         PING_COMMAND="$PATH_TO_PING -n -c %d %s"
616         AC_DEFINE_UNQUOTED(PING_PACKETS_FIRST,"$PING_COMMAND")
617         echo "      ping syntax... $PATH_TO_PING -n -c <count> <host>"
618 else
619         AC_MSG_WARN("unable to find usable ping syntax")
620 fi
621 AC_DEFINE_UNQUOTED(PING_COMMAND,"$PING_COMMAND")
623 AC_PATH_PROG(PATH_TO_NSLOOKUP,nslookup)
624 if test -n "$ac_cv_path_PATH_TO_NSLOOKUP"
625 then
626         AC_MSG_CHECKING("nslookup syntax")
627         if [nslookup -sil 127.0.0.1 2>&1 | grep "*** Invalid option: sil" >/dev/null]
628         then
629                 AC_MSG_RESULT("$PATH_TO_NSLOOKUP")
630                 AC_DEFINE_UNQUOTED(NSLOOKUP_COMMAND,"$PATH_TO_NSLOOKUP")
631         else
632                 AC_MSG_RESULT("$PATH_TO_NSLOOKUP -sil")
633                 AC_DEFINE_UNQUOTED(NSLOOKUP_COMMAND,"$PATH_TO_NSLOOKUP -sil")
634         fi
635         EXTRAS="$EXTRAS check_dns"
636 else
637         AC_MSG_WARN("nslookup command not found")
638 fi
640 AC_PATH_PROG(PATH_TO_HOST,host)
641 if test -n "$ac_cv_path_PATH_TO_HOST"
642 then
643         AC_MSG_CHECKING("host syntax")
644         if [host 127.0.0.1 2>&1 | grep -v "ommand not found" > /dev/null]
645         then
646                 AC_MSG_RESULT("$PATH_TO_HOST")
647                 AC_DEFINE_UNQUOTED(HOST_COMMAND,"$PATH_TO_HOST")
648         fi
649         EXTRAS="$EXTRAS check_dns"
650 else    
651         AC_MSG_WARN("host command not found")
652 fi
654 AC_PATH_PROG(PATH_TO_UPTIME,uptime)
655 AC_DEFINE_UNQUOTED(PATH_TO_UPTIME,"$PATH_TO_UPTIME")
657 AC_PATH_PROG(PATH_TO_RPCINFO,rpcinfo)
658 AC_DEFINE_UNQUOTED(PATH_TO_RPCINFO,"$PATH_TO_RPCINFO")
660 AC_PATH_PROG(PATH_TO_NTPDATE,ntpdate)
661 AC_PATH_PROGS(PATH_TO_NTPDC,ntpdc xntpdc)
662 if (test -x "$PATH_TO_NTPDATE" || test -x "$PATH_TO_NTPDC")
663 then
664         AC_DEFINE_UNQUOTED(PATH_TO_NTPDC,"$PATH_TO_NTPDC")
665         AC_DEFINE_UNQUOTED(PATH_TO_NTPDATE,"$PATH_TO_NTPDATE")
666 else
667         echo "** Install NTP programs (http://www.ntp.org) if you want to monitor time synchronization"
668 fi
670 AC_PATH_PROG(PATH_TO_LMSTAT,lmstat)
671 if test -x "$PATH_TO_LMSTAT"
672 then
673         AC_DEFINE_UNQUOTED(PATH_TO_LMSTAT,"$PATH_TO_LMSTAT")
674 else
675         echo "** Get lmstat from Globetrotter Software to monitor flexlm licenses"
676 fi
678 AC_PATH_PROG(PATH_TO_SMBCLIENT,smbclient)
679 if test -x "$PATH_TO_SMBCLIENT"
680 then
681         AC_DEFINE_UNQUOTED(PATH_TO_SMBCLIENT,"$PATH_TO_SMBCLIENT")
682 else
683         echo "** Get smbclient from Samba.org to monitor SMB shares"
684 fi
687 AC_PATH_PROG(PATH_TO_WHO,who)
688 if [who -q 2>/dev/null | egrep -i "^# users=[0-9]+$" >/dev/null]
689 then
690         AC_DEFINE_UNQUOTED(WHO_COMMAND,"$PATH_TO_WHO -q")
691 else
692         AC_DEFINE_UNQUOTED(WHO_COMMAND,"$PATH_TO_WHO")
693 fi
695 AC_PATH_PROG(PATH_TO_SNMPGET,snmpget)
696 if test -x "$PATH_TO_SNMPGET"
697 then
698         AC_DEFINE_UNQUOTED(PATH_TO_SNMPGET,"$PATH_TO_SNMPGET")
699         EXTRAS="$EXTRAS check_hpjd check_snmp"
700 else
701         echo "** Get snmpget from http://net-snmp.sourceforge.net to make check_hpjd and check_snmp plugins"
702 fi
704 AC_PATH_PROG(PATH_TO_SNMPGETNEXT,snmpgetnext)
705 if test -x "$PATH_TO_SNMPGETNEXT"
706 then
707         AC_DEFINE_UNQUOTED(PATH_TO_SNMPGETNEXT,"$PATH_TO_SNMPGETNEXT")
708 fi
710 if ( $PERL -M"Net::SNMP 3.6" -e 'exit' 2>/dev/null  )
711 then
712         echo "Found Net::SNMP perl module"
713 else
714         echo "** Tried $PERL - install Net::SNMP perl module if you want to"
715         echo "        use the perl snmp plugins"
716 fi
718 AC_PATH_PROG(PATH_TO_QUAKESTAT,quakestat)
719 AC_PATH_PROG(PATH_TO_QSTAT,qstat)
720 if test -x "$PATH_TO_QUAKESTAT"
721 then
722         AC_DEFINE_UNQUOTED(PATH_TO_QSTAT,"$PATH_TO_QUAKESTAT")
723         EXTRAS="$EXTRAS check_game"
724 elif test -x "$PATH_TO_QSTAT"
725 then
726         AC_DEFINE_UNQUOTED(PATH_TO_QSTAT,"$PATH_TO_QSTAT")
727         EXTRAS="$EXTRAS check_game"
728 else
729         echo "** Get qstat from http://www.activesw.com/people/steve/qstat.html in order to make check_game plugin"
730 fi
732 AC_PATH_PROG(PATH_TO_FPING,fping)
733 if test -x "$PATH_TO_FPING"
734 then
735         AC_DEFINE_UNQUOTED(PATH_TO_FPING,"$PATH_TO_FPING")
736         EXTRAS="$EXTRAS check_fping"
737 else
738         echo "** Get fping from http://www.fping.com in order to make check_fping plugin"
739 fi
741 AC_PATH_PROG(PATH_TO_SSH,ssh)
742 if test -x "$PATH_TO_SSH"
743 then
744         AC_DEFINE_UNQUOTED(SSH_COMMAND,"$PATH_TO_SSH")
745         EXTRAS="$EXTRAS check_by_ssh"
746 else
747         echo "** Get ssh in order to make check_by_ssh plugin"
748 fi
750 dnl dunno why this does not work below - use hack (kbd)
751 dnl fine on linux, broken on solaris
752 dnl if /bin/test -e "/proc/meminfo"
754 if [cat /proc/meminfo > /dev/null 2>&1]
755 then
756         echo "found /proc/meminfo"
757         AC_DEFINE(HAVE_PROC_MEMINFO)
758         AC_DEFINE_UNQUOTED(PROC_MEMINFO,"/proc/meminfo")
759         EXTRAS="$EXTRAS check_swap"
760 elif [swap -l 2>&1 | egrep -i "swapfile" >/dev/null]
761 then
762         echo "found swap command"
763         AC_DEFINE(HAVE_SWAP)
764         AC_PATH_PROG(PATH_TO_SWAP,swap)
765         AC_DEFINE_UNQUOTED(SWAP_COMMAND,"$PATH_TO_SWAP -l")
766         if [swap -l 2>/dev/null | egrep -i "^lswap +path +pri +swaplo +blocks +free +maxswap" >/dev/null]
767         then
768                 AC_DEFINE_UNQUOTED(SWAP_FORMAT,[" %*d %*s %*d,%*d %*d %*d %d %d"])
769                 echo "      using IRIX format"
770         elif [swap -l 2>/dev/null | egrep -i "^swapfile +dev +swaplo +blocks +free" >/dev/null]
771         then
772                 AC_DEFINE_UNQUOTED(SWAP_FORMAT,["%*s %*[[0-9,-]] %*d %d %d"])
773                 echo "      using Solaris format"
774         fi
775         EXTRAS="$EXTRAS check_swap"
776 elif [swapinfo -k 2>&1 | egrep -i "Device" >/dev/null]
777 then
778         echo "found swapinfo command"
779         AC_DEFINE(HAVE_SWAP)
780         AC_PATH_PROG(PATH_TO_SWAP,swapinfo)
781         AC_DEFINE_UNQUOTED(SWAP_COMMAND,"$PATH_TO_SWAP -k")
782         if [swapinfo -k 2>/dev/null | egrep -i "^Device +1K-blocks +Used +Avail" >/dev/null]
783         then
784                 AC_DEFINE_UNQUOTED(SWAP_FORMAT,["%*s %d %*d %d"])
785                 echo "      using FreeBSD format"
786         fi
787         EXTRAS="$EXTRAS check_swap"
788 fi
790 AC_PATH_PROG(PATH_TO_DIG,dig)
791 AC_DEFINE_UNQUOTED(PATH_TO_DIG,"$PATH_TO_DIG")
792 if test -n "$PATH_TO_DIG"; then
793         EXTRAS="$EXTRAS check_dig"
794 fi
796 if test -f plugins/check_nt.c ; then
797   EXTRAS="$EXTRAS check_nt"
798 elif test -f ../plugins/check_nt.c ; then
799   EXTRAS="$EXTRAS check_nt"
800 fi
802 dnl AC_EGREP_HEADER (PATTERN, HEADER-FILE, ACTION-IF-FOUND [,          ACTION-IF-NOT-FOUND])
803 AC_TRY_COMPILE([#ifdef __STDC__
804 #include <stdio.h>
805 #include <stdlib.h>
806 #include <stdarg.h>
807 #else
808 #include <sys/types.h>
809 #include <stdio.h>
810 #include <varargs.h>
811 #endif],
812 [va_list args;],
813 [AC_MSG_RESULT(yes)],
814 [NEED_VA_LIST=-DNEED_VA_LIST AC_SUBST(NEED_VA_LIST) AC_MSG_RESULT(no)])
816 AC_SUBST(EXTRAS)
817 AC_SUBST(DEPLIBS)
819 AC_DEFINE_UNQUOTED(PACKAGE_VERSION,"${VERSION}")
821 AC_OUTPUT(Makefile subst plugins/Makefile plugins-scripts/Makefile plugins-scripts/subst plugins-scripts/utils.pm plugins-scripts/utils.sh command.cfg test.pl,echo timestamp > plugins/stamp-h1;echo timestamp > plugins/stamp-h2;echo timestamp > plugins/stamp-h3;echo timestamp > plugins/stamp-h4;echo timestamp > plugins/stamp-h5;echo timestamp > plugins/stamp-h6;PATH=.:..:$PATH subst.sh command.cfg)