configure.ac 15 KB

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