Code

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