configure.ac 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551
  1. dnl Process this -*-m4-*- file with autoconf to produce a configure script.
  2. dnl Disable caching
  3. define([AC_CACHE_LOAD],)
  4. define([AC_CACHE_SAVE],)
  5. m4_include([build-aux/custom_help.m4])
  6. AC_INIT([nrpe],[2.16RC2],[nagios-users@lists.sourceforge.net],[nrpe],[https://www.nagios.org/downloads/nagios-core-addons/])
  7. AC_CONFIG_SRCDIR([src/nrpe.c])
  8. AC_CONFIG_AUX_DIR([build-aux])
  9. AC_PREFIX_DEFAULT(/usr/local/nagios)
  10. PKG_NAME=nrpe
  11. PKG_VERSION="2.16RC2"
  12. PKG_HOME_URL="http://www.nagios.org/"
  13. PKG_REL_DATE="11-09-2015"
  14. RPM_RELEASE=1
  15. LANG=C
  16. LC_ALL=C
  17. LC_COLLATE=C
  18. LC_CTYPE=C
  19. LC_MESSAGES=C
  20. LC_MONETARY=C
  21. LC_NUMERIC=C
  22. LC_TIME=C
  23. AC_SUBST(PKG_NAME)
  24. AC_SUBST(PKG_VERSION)
  25. AC_SUBST(PKG_HOME_URL)
  26. AC_SUBST(PKG_REL_DATE)
  27. AC_SUBST(RPM_RELEASE)
  28. AC_SUBST(INSTALL)
  29. AC_SUBST(SNPRINTF_O)
  30. AC_SUBST(LDFLAGS)
  31. AC_SUBST(OTHERLIBS)
  32. AC_SUBST(SOCKETLIBS)
  33. AC_SUBST(LIBWRAPLIBS)
  34. AC_SUBST(HAVE_SSL)
  35. AC_SUBST(NRPE_INSTALL_OPTS)
  36. AC_SUBST(log_facility)
  37. AC_SUBST(nrpe_user)
  38. AC_SUBST(nrpe_group)
  39. AC_SUBST(nrpe_port)
  40. AC_SUBST(nagios_user)
  41. AC_SUBST(nagios_group)
  42. AC_SUBST(NAGIOS_INSTALL_OPTS)
  43. AC_SUBST(TARGET_VER)
  44. AC_SUBST(TARGET_OS)
  45. AC_SUBST(TARGET_ARCH)
  46. AC_SUBST(TARGET_PLATFORM)
  47. AC_SUBST(pkgsysconfdir)
  48. AC_SUBST(objsysconfdir)
  49. AC_SUBST(sbindir)
  50. AC_SUBST(initname)
  51. AC_SUBST(inetdname)
  52. AC_SUBST(pluginsdir)
  53. AC_SUBST(brokersdir)
  54. AC_SUBST(cgibindir)
  55. AC_SUBST(webdir)
  56. AC_SUBST(privatesysconfdir)
  57. AC_SUBST(pkglocalstatedir)
  58. AC_SUBST(logdir)
  59. AC_SUBST(piddir)
  60. AC_SUBST(pipedir)
  61. AC_SUBST(spooldir)
  62. AC_SUBST(initdir)
  63. AC_SUBST(inetddir)
  64. AC_SUBST(tmpfilesd)
  65. AC_SUBST(subsyslockdir)
  66. AC_SUBST(subsyslockfile)
  67. AC_SUBST(src_init)
  68. AC_SUBST(src_inetd)
  69. dnl Figure out how to invoke "install" and what install options to use.
  70. AC_PROG_INSTALL
  71. dnl Get O/S, Distribution, init, inetd, system-specific directories
  72. AC_NAGIOS_GET_OS
  73. AC_NAGIOS_GET_DISTRIB_TYPE
  74. AC_NAGIOS_GET_INIT
  75. AC_NAGIOS_GET_INETD
  76. AC_NAGIOS_GET_PATHS
  77. AC_NAGIOS_GET_FILES
  78. dnl Do they just want to see where things will go?
  79. if test x${showdirs_only} = xyes; then
  80. AC_CONFIG_FILES([paths])
  81. AC_OUTPUT()
  82. chmod 755 paths
  83. ./paths
  84. exit 0
  85. fi
  86. AC_CONFIG_HEADERS([include/config.h])
  87. AC_CONFIG_FILES([Makefile
  88. subst
  89. src/Makefile
  90. package/solaris/Makefile
  91. nrpe.spec
  92. sample-config/nrpe.cfg
  93. startup/bsd-init
  94. startup/debian-init
  95. startup/default-init
  96. startup/default-inetd
  97. startup/default-service
  98. startup/default-xinetd
  99. startup/mac-org.nagios.PKG_NAME.plist
  100. startup/openrc-conf
  101. startup/openrc-init
  102. startup/solaris-PKG_NAME.xml
  103. ])
  104. #sample-config/debian-nrpe-inetd
  105. #sample-config/openrc-nrpe-inetd
  106. dnl Checks for programs.
  107. AC_PROG_CC
  108. AC_PROG_MAKE_SET
  109. dnl Checks for header files.
  110. AC_HEADER_STDC
  111. AC_HEADER_TIME
  112. AC_HEADER_SYS_WAIT
  113. AC_CHECK_HEADERS(ctype.h dirent.h errno.h fcntl.h getopt.h grp.h inttypes.h)
  114. AC_CHECK_HEADERS(netdb.h pwd.h signal.h stdint.h strings.h string.h syslog.h)
  115. AC_CHECK_HEADERS(tcpd.h unistd.h arpa/inet.h netinet/in.h socket.h sys/types.h)
  116. AC_CHECK_HEADERS(sys/time.h sys/resource.h sys/wait.h sys/socket.h sys/stat.h)
  117. AC_CHECK_HEADERS(paths.h)
  118. dnl Checks for typedefs, structures, and compiler characteristics.
  119. AC_C_CONST
  120. AC_STRUCT_TM
  121. AC_TYPE_MODE_T
  122. AC_TYPE_PID_T
  123. AC_TYPE_SIZE_T
  124. AC_TYPE_SIGNAL
  125. AC_TYPE_GETGROUPS
  126. dnl Check lengths for later tests of u_int32_t and int32_t
  127. AC_CHECK_SIZEOF(int)
  128. AC_CHECK_SIZEOF(short)
  129. AC_CHECK_SIZEOF(long)
  130. dnl Define u_int32_t if we don't have it already (Solaris, etc.)
  131. AC_CHECK_TYPE(uint32_t,unsigned int)
  132. AC_CHECK_TYPE(u_int32_t,unsigned int)
  133. if test "$ac_cv_type_u_int32_t" = no ; then
  134. if test "$ac_cv_type_u_int32_t" = yes ; then
  135. AC_DEFINE(U_INT32_T_IS_UINT32_T,[1],[u_int32_t is uint32_t])
  136. else
  137. if test "$ac_cv_sizeof_int" = 4 ; then
  138. AC_DEFINE(U_INT32_T_IS_UINT,[1],[u_int32_t is uint])
  139. else
  140. if test "$ac_cv_sizeof_long" = 4 ; then
  141. AC_DEFINE(U_INT32_T_IS_ULONG,[1],[u_int32_t is ulong])
  142. else
  143. if test "$ac_cv_sizeof_short" = 4 ; then
  144. AC_DEFINE(U_INT32_T_IS_USHORT,[1],[u_int32_t is ushort])
  145. fi
  146. fi
  147. fi
  148. fi
  149. fi
  150. dnl Define int32_t if we don't have it already
  151. AC_CHECK_TYPE(int32_t,int)
  152. if test "$ac_cv_type_int32_t" = no ; then
  153. if test "$ac_cv_sizeof_int" = 4 ; then
  154. AC_DEFINE(INT32_T_IS_UINT,[1],[int32_t is uint])
  155. else
  156. if test "$ac_cv_sizeof_long" = 4 ; then
  157. AC_DEFINE(INT32_T_IS_ULONG,[1],[int32_t is ulong])
  158. else
  159. if test "$ac_cv_sizeof_short" = 4 ; then
  160. AC_DEFINE(INT32_T_IS_USHORT,[1],[int32_t is ushort])
  161. fi
  162. fi
  163. fi
  164. fi
  165. AC_CHECK_TYPES([struct sockaddr_storage],[],[],[#include <sys/socket.h>])
  166. dnl Check for asprintf() and friends...
  167. AC_CACHE_CHECK([for va_copy],ac_cv_HAVE_VA_COPY,[
  168. AC_TRY_LINK([#include <stdarg.h>
  169. va_list ap1,ap2;], [va_copy(ap1,ap2);],
  170. ac_cv_HAVE_VA_COPY=yes,
  171. ac_cv_HAVE_VA_COPY=no)])
  172. if test x"$ac_cv_HAVE_VA_COPY" = x"yes"; then
  173. AC_DEFINE(HAVE_VA_COPY,1,[Whether va_copy() is available])
  174. else
  175. AC_CACHE_CHECK([for __va_copy],ac_cv_HAVE___VA_COPY,[
  176. AC_TRY_LINK([#include <stdarg.h>
  177. va_list ap1,ap2;], [__va_copy(ap1,ap2);],
  178. ac_cv_HAVE___VA_COPY=yes,
  179. ac_cv_HAVE___VA_COPY=no)])
  180. if test x"$ac_cv_HAVE___VA_COPY" = x"yes"; then
  181. AC_DEFINE(HAVE___VA_COPY,1,[Whether __va_copy() is available])
  182. fi
  183. fi
  184. AC_CHECK_FUNC(vsnprintf,,SNPRINTF_O=./snprintf.o)
  185. AC_CHECK_FUNC(snprintf,,SNPRINTF_O=./snprintf.o)
  186. AC_CHECK_FUNC(asprintf,,SNPRINTF_O=./snprintf.o)
  187. AC_CHECK_FUNC(vasprintf,,SNPRINTF_O=./snprintf.o)
  188. AC_CHECK_FUNC(seteuid,
  189. AC_DEFINE(SETEUID(id),[seteuid(id)]),
  190. AC_DEFINE(SETEUID(id),[setresuid((uid_t) -1, id, (uid_t) -1)])
  191. )
  192. AC_CACHE_CHECK([for C99 vsnprintf],ac_cv_HAVE_C99_VSNPRINTF,[
  193. AC_TRY_RUN([
  194. #include <sys/types.h>
  195. #include <stdarg.h>
  196. void foo(const char *format, ...) {
  197. va_list ap;
  198. int len;
  199. char buf[5];
  200. va_start(ap, format);
  201. len = vsnprintf(buf, 0, format, ap);
  202. va_end(ap);
  203. if (len != 5) exit(1);
  204. va_start(ap, format);
  205. len = vsnprintf(0, 0, format, ap);
  206. va_end(ap);
  207. if (len != 5) exit(1);
  208. if (snprintf(buf, 3, "hello") != 5 || strcmp(buf, "he") != 0) exit(1);
  209. exit(0);
  210. }
  211. main() { foo("hello"); }
  212. ],
  213. ac_cv_HAVE_C99_VSNPRINTF=yes,ac_cv_HAVE_C99_VSNPRINTF=no,ac_cv_HAVE_C99_VSNPRINTF=cross)])
  214. if test x"$ac_cv_HAVE_C99_VSNPRINTF" = x"yes"; then
  215. AC_DEFINE(HAVE_C99_VSNPRINTF,1,[Define if system has C99 compatible vsnprintf])
  216. fi
  217. dnl AC_CHECK_FUNC(snprintf,AC_DEFINE(HAVE_SNPRINTF),SNPRINTF_O=./snprintf.o)
  218. dnl Check for getopt_long (Solaris)
  219. AC_CHECK_FUNCS([getopt_long],,AC_CHECK_LIB([iberty],[getopt_long],OTHERLIBS="$OTHERLIBS -liberty"))
  220. dnl Checks for library functions.
  221. AC_CHECK_LIB(nsl,main,SOCKETLIBS="$SOCKETLIBS -lnsl")
  222. AC_CHECK_LIB(socket,socket,SOCKETLIBS="$SOCKETLIBS -lsocket")
  223. AC_CHECK_LIB(wrap,main,[
  224. LIBWRAPLIBS="$LIBWRAPLIBS -lwrap"
  225. AC_DEFINE(HAVE_LIBWRAP,[1],[Have the TCP wrappers library])
  226. ])
  227. AC_CHECK_FUNCS(strdup strstr strtoul strtok_r initgroups closesocket sigaction)
  228. dnl socklen_t check - from curl
  229. AC_CHECK_TYPE([socklen_t], ,[
  230. AC_MSG_CHECKING([for socklen_t equivalent])
  231. AC_CACHE_VAL([curl_cv_socklen_t_equiv],
  232. [
  233. # Systems have either "struct sockaddr *" or
  234. # "void *" as the second argument to getpeername
  235. curl_cv_socklen_t_equiv=
  236. for arg2 in "struct sockaddr" void; do
  237. for t in int size_t unsigned long "unsigned long"; do
  238. AC_TRY_COMPILE([
  239. #ifdef HAVE_SYS_TYPES_H
  240. #include <sys/types.h>
  241. #endif
  242. #ifdef HAVE_SYS_SOCKET_H
  243. #include <sys/socket.h>
  244. #endif
  245. int getpeername (int, $arg2 *, $t *);
  246. ],[
  247. $t len;
  248. getpeername(0,0,&len);
  249. ],[
  250. curl_cv_socklen_t_equiv="$t"
  251. break
  252. ])
  253. done
  254. done
  255. if test "x$curl_cv_socklen_t_equiv" = x; then
  256. AC_MSG_ERROR([Cannot find a type to use in place of socklen_t])
  257. fi
  258. ])
  259. AC_MSG_RESULT($curl_cv_socklen_t_equiv)
  260. AC_DEFINE_UNQUOTED(socklen_t, $curl_cv_socklen_t_equiv,
  261. [type to use in place of socklen_t if not defined])],
  262. [#include <sys/types.h>
  263. #include <sys/socket.h>])
  264. AC_MSG_CHECKING(for type of socket size)
  265. AC_TRY_COMPILE([#include <stdlib.h>
  266. #include <sys/types.h>
  267. #include <sys/socket.h>
  268. ],
  269. [int a = send(1, (const void *)0, (size_t *) 0, (int *) 0);],
  270. [AC_DEFINE(SOCKET_SIZE_TYPE, size_t, [Socket Size Type]) AC_MSG_RESULT(size_t)],
  271. [AC_DEFINE(SOCKET_SIZE_TYPE, int, [Socket Size Type]) AC_MSG_RESULT(int)])
  272. dnl Does user want to check for SSL?
  273. AC_ARG_ENABLE([ssl],
  274. AS_HELP_STRING([--enable-ssl],[enables native SSL support]),[
  275. if test x$enableval = xyes; then
  276. check_for_ssl=yes
  277. else
  278. check_for_ssl=no
  279. fi
  280. ],check_for_ssl=yes)
  281. dnl Optional SSL library and include paths
  282. ssl_dir=
  283. ssl_inc_dir=
  284. ssl_lib_dir=
  285. AC_ARG_WITH([ssl],
  286. AS_HELP_STRING([--with-ssl=DIR],[sets location of the SSL installation]),
  287. [ssl_dir=$withval])
  288. AC_ARG_WITH([ssl-inc],
  289. AS_HELP_STRING([--with-ssl-inc=DIR],
  290. [sets location of the SSL include files]),
  291. [ ssl_inc_dir=$withval])
  292. AC_ARG_WITH([ssl-lib],
  293. AS_HELP_STRING([--with-ssl-lib=DIR],[sets location of the SSL libraries]),
  294. [ssl_lib_dir=$withval])
  295. AC_ARG_WITH([kerberos-inc],
  296. AS_HELP_STRING([--with-kerberos-inc=DIR],
  297. [sets location of the Kerberos include files]),
  298. [kerberos_inc_dir=$withval])
  299. dnl Check for SSL support
  300. dnl Modified version of Mark Ethan Trostler's macro <trostler@juniper.net>
  301. if test x$check_for_ssl = xyes; then
  302. AC_MSG_CHECKING(for SSL headers)
  303. found_ssl=no
  304. for dir in $ssl_inc_dir $ssl_dir /usr/local/openssl /usr/local/opt/openssl /usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/local /usr /usr/freeware/lib/openssl /usr/sfw/include; do
  305. ssldir="$dir"
  306. if test -f "$dir/include/openssl/ssl.h"; then
  307. found_ssl=yes
  308. CFLAGS="$CFLAGS -I$dir/include/openssl -I$ssldir/include"
  309. sslincdir="$dir/include/openssl"
  310. break
  311. fi
  312. if test -f "$dir/include/ssl.h"; then
  313. found_ssl=yes
  314. CFLAGS="$CFLAGS -I$dir/include"
  315. sslincdir="$dir/include"
  316. break
  317. fi
  318. if test -f "$dir/ssl.h"; then
  319. found_ssl=yes
  320. CFLAGS="$CFLAGS -I$dir"
  321. sslincdir="$dir"
  322. ssldir="$dir/.."
  323. break
  324. fi
  325. if test -f "$dir/openssl/ssl.h"; then
  326. found_ssl=yes
  327. CFLAGS="$CFLAGS -I$dir/openssl"
  328. sslincdir="$dir/openssl"
  329. ssldir="$dir/.."
  330. break
  331. fi
  332. done
  333. if test x_$found_ssl != x_yes; then
  334. AC_MSG_ERROR(Cannot find ssl headers)
  335. else
  336. printf "SSL headers found in $ssldir\n";
  337. dnl Now try and find SSL libraries
  338. AC_MSG_CHECKING(for SSL libraries)
  339. found_ssl=no
  340. for dir in $ssl_lib_dir $ssl_dir $ssl_dir/lib $ssl_dir/lib64 /usr/lib64 \
  341. /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/i386-linux-gnu \
  342. /usr/local/lib /usr/lib/ssl /usr/ssl/lib /usr/openssl/lib \
  343. /usr/pkg/lib /usr/freeware/lib/openssl /usr/sfw/lib \
  344. /opt/freeware/lib; do
  345. ssllibdir="$dir"
  346. if test "`uname -s`" = "Darwin" ; then
  347. soext="dylib"
  348. elif test "`uname -s`" = "HP-UX" ; then
  349. soext="sl"
  350. elif test "`uname -s`" = "AIX" ; then
  351. soext="a"
  352. else
  353. soext="so"
  354. fi
  355. if test -f "$dir/libssl.$soext"; then
  356. found_ssl=yes
  357. break
  358. fi
  359. done
  360. if test x_$found_ssl != x_yes; then
  361. AC_MSG_ERROR(Cannot find ssl libraries)
  362. else
  363. printf "SSL libraries found in $ssllibdir\n";
  364. LDFLAGS="$LDFLAGS -L$ssllibdir";
  365. LIBS="$LIBS -lssl -lcrypto";
  366. AC_DEFINE_UNQUOTED(HAVE_SSL,[1],[Have SSL support])
  367. AC_PATH_PROG(sslbin,openssl,value-if-not-found,$ssldir/sbin/openssl$PATH_SEPARATOR$ssldir/bin/openssl$PATH_SEPARATOR$PATH)
  368. dnl Generate DH parameters
  369. if test -f "$sslbin"; then
  370. echo ""
  371. echo "*** Generating DH Parameters for SSL/TLS ***"
  372. # awk to strip off meta data at bottom of dhparam output
  373. $sslbin dhparam -C 2048 | awk '/^-----/ {exit} {print}' > include/dh.h
  374. fi
  375. fi
  376. fi
  377. dnl RedHat 8.0 and 9.0 include openssl compiled with kerberos, so we must include header file
  378. AC_MSG_CHECKING(for Kerberos include files)
  379. found_kerberos=no
  380. for dir in $kerberos_inc_dir /usr/kerberos/include; do
  381. kerbdir="$dir"
  382. if test -f "$dir/krb5.h"; then
  383. found_kerberos=yes
  384. CFLAGS="$CFLAGS -I$kerbdir"
  385. AC_DEFINE_UNQUOTED(HAVE_KRB5_H,[1],[Have the krb5.h header file])
  386. dnl AC_CHECK_HEADERS(krb5.h)
  387. break
  388. fi
  389. done
  390. if test x_$found_kerberos != x_yes; then
  391. printf "could not find include files\n";
  392. else
  393. printf "found Kerberos include files in $kerbdir\n";
  394. fi
  395. fi
  396. AC_ARG_WITH([log_facility],
  397. AS_HELP_STRING([--with-log-facility=<facility>],
  398. [sets NRPE syslog facility]),
  399. [log_facility=$withval],
  400. [log_facility=daemon])
  401. AC_DEFINE_UNQUOTED(NRPE_LOG_FACILITY,["$log_facility"],[NRPE syslog facility])
  402. AC_ARG_WITH([nrpe_user],
  403. AS_HELP_STRING([--with-nrpe-user=<user>],[sets user name to run NRPE]),
  404. [nrpe_user=$withval],
  405. [nrpe_user=nagios])
  406. AC_ARG_WITH([nrpe_group],
  407. AS_HELP_STRING([--with-nrpe-group=<group>],[sets group name to run NRPE]),
  408. [nrpe_group=$withval],
  409. [nrpe_group=nagios])
  410. AC_ARG_WITH([nrpe_port],
  411. AS_HELP_STRING([--with-nrpe-port=<port>],
  412. [sets port number for NRPE to listen on]),
  413. [nrpe_port=$withval],
  414. [nrpe_port=5666])
  415. NRPE_INSTALL_OPTS="-o $nrpe_user -g $nrpe_group"
  416. AC_DEFINE_UNQUOTED(DEFAULT_SERVER_PORT,$nrpe_port,[Default port for NRPE daemon])
  417. AC_ARG_WITH([nagios_user],
  418. AS_HELP_STRING([--with-nagios-user=<user>],
  419. [sets user name for file permissions]),
  420. [nagios_user=$withval],
  421. [nagios_user=nagios])
  422. AC_ARG_WITH([nagios_group],
  423. AS_HELP_STRING([--with-nagios-group=<grp>],
  424. [sets group name file permissions]),
  425. [nagios_group=$withval],
  426. [nagios_group=nagios])
  427. NAGIOS_INSTALL_OPTS="-o $nagios_user -g $nagios_group"
  428. dnl On HP-UX the compile will fail with a 'Duplicate symbol "setenv"' error
  429. dnl in '/usr/local/lib/libwrap.a(setenv.o)' and '/usr/local/lib/libiberty.a(setenv.o)'
  430. dnl so allow duplicate symbols, and use the first one
  431. if test "`uname -s`" = "HP-UX" ; then
  432. LDFLAGS="$LDFLAGS -Wl,+allowdups";
  433. fi
  434. # Determine target OS, version and architecture for package build macros
  435. if test "x$target_ver" = "x" ; then
  436. TARGET_VER=`uname -r`
  437. else
  438. TARGET_VER=$target_ver
  439. fi
  440. if test "x$target_os" = "x" ; then
  441. TARGET_OS=`uname -s`
  442. else
  443. TARGET_OS=$target_os
  444. fi
  445. if test "x$target_cpu" = "x" ; then
  446. TARGET_ARCH=`uname -p`
  447. else
  448. TARGET_ARCH=$target_cpu
  449. fi
  450. TARGET_PLATFORM=""
  451. if test "x$TARGET_OS" = "xSunOS" ; then
  452. if test "x$TARGET_VER" = "x5.10" ; then
  453. TARGET_PLATFORM="sol10"
  454. fi
  455. fi
  456. AC_ARG_ENABLE([command-args],
  457. AS_HELP_STRING([--enable-command-args],[allows clients to specify command arguments. *** THIS IS A SECURITY RISK! *** Read the SECURITY file before using this option!]),
  458. AC_DEFINE_UNQUOTED(ENABLE_COMMAND_ARGUMENTS,[1],[Enable command-line arguments]))
  459. AC_ARG_ENABLE([bash-command-substitution],
  460. AS_HELP_STRING([--enable-bash-command-substitution],[allows clients to pass bash command substitutions of the form $(command). *** THIS IS A HIGH SECURITY RISK! *** Read the SECURITY file before using this option!]),
  461. AC_DEFINE_UNQUOTED(ENABLE_BASH_COMMAND_SUBSTITUTION,[1],[Enable bash command substitution]))
  462. AC_PATH_PROG(PERL,perl)
  463. AC_OUTPUT()
  464. #perl subst init-script
  465. #perl subst init-script.debian
  466. #perl subst init-script.suse
  467. #perl subst sample-config/nrpe.cfg
  468. #perl subst sample-config/nrpe.xinetd
  469. dnl Review options
  470. echo ""
  471. echo ""
  472. AC_MSG_RESULT([*** Configuration summary for $PKG_NAME $PKG_VERSION $PKG_REL_DATE ***:])
  473. echo ""
  474. echo " General Options:"
  475. echo " -------------------------"
  476. AC_MSG_RESULT([ NRPE port: $nrpe_port])
  477. AC_MSG_RESULT([ NRPE user: $nrpe_user])
  478. AC_MSG_RESULT([ NRPE group: $nrpe_group])
  479. AC_MSG_RESULT([ Nagios user: $nagios_user])
  480. AC_MSG_RESULT([ Nagios group: $nagios_group])
  481. echo ""
  482. echo ""
  483. echo "Review the options above for accuracy. If they look okay,"
  484. echo "type 'make all' to compile the NRPE daemon and client."
  485. echo ""