configure.ac 16 KB

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