6fbc84a6770bd36537f5a3625385b0f9c9b8e02c
[rsyslog.git] / configure.ac
1 #                                               -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
3
4 AC_PREREQ(2.61)
5 AC_INIT([rsyslog],[5.8.7],[rsyslog@lists.adiscon.com])
6 AM_INIT_AUTOMAKE
7
8 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
9
10 AC_CONFIG_SRCDIR([ChangeLog])
11 AC_CONFIG_MACRO_DIR([m4])
12 AC_CONFIG_HEADERS([config.h])
13
14 AC_GNU_SOURCE
15
16 # check if valgrind is present
17 AC_CHECK_PROG(have_valgrind, [valgrind], [yes])
18 AM_CONDITIONAL(HAVE_VALGRIND, test x$have_valgrind = xyes)
19
20 # check for Java compiler
21 AC_CHECK_PROG(HAVE_JAVAC, [javac], [yes])
22 if test x"$HAVE_JAVAC" = x""; then
23         AC_MSG_WARN([no javac found, disabling features depending on it])
24 fi
25
26 # Checks for programs.
27 AC_PROG_CC
28 AM_PROG_CC_C_O
29 if test "$GCC" = "yes"
30 then CFLAGS="$CFLAGS -W -Wall -Wformat-security -Wshadow -Wcast-align -Wpointer-arith -Wmissing-format-attribute -g"
31 fi
32 AC_DISABLE_STATIC
33 AC_PROG_LIBTOOL
34 AC_CANONICAL_HOST
35
36 PKG_PROG_PKG_CONFIG
37
38 case "${host}" in
39   *-*-linux*)
40     os_type="linux"
41   ;;
42   *-*-*darwin*|*-*-freebsd*|*-*-netbsd*|*-*-openbsd*)
43     AC_DEFINE([OS_BSD], [1], [Indicator for a BSD OS])
44     os_type="bsd"
45   ;;
46   *-*-kfreebsd*)
47     # kernel is FreeBSD, but userspace is glibc - i.e. like linux
48     # do not DEFINE OS_BSD
49     os_type="bsd"
50   ;;
51   *-*-solaris*)
52     os_type="solaris"
53     AC_DEFINE([OS_SOLARIS], [1], [Indicator for a Solaris OS])
54     AC_DEFINE([_POSIX_PTHREAD_SEMANTICS], [1], [Use POSIX pthread semantics])
55     SOL_LIBS="-lsocket -lnsl"
56     AC_SUBST(SOL_LIBS)
57   ;;
58 esac
59
60 AC_DEFINE_UNQUOTED([HOSTENV], "$host", [the host environment, can be queried via a system variable])
61
62 # Checks for libraries.
63 save_LIBS=$LIBS
64 LIBS=
65 AC_SEARCH_LIBS(clock_gettime, rt)
66 RT_LIBS=$LIBS
67 LIBS=
68 AC_SEARCH_LIBS(dlopen, dl)
69 DL_LIBS=$LIBS
70 LIBS=$save_LIBS
71
72 AC_SUBST(RT_LIBS)
73 AC_SUBST(DL_LIBS)
74
75 # Checks for header files.
76 AC_HEADER_RESOLV
77 AC_HEADER_STDC
78 AC_HEADER_SYS_WAIT
79 AC_CHECK_HEADERS([arpa/inet.h libgen.h malloc.h fcntl.h locale.h netdb.h netinet/in.h paths.h stddef.h stdlib.h string.h sys/file.h sys/ioctl.h sys/param.h sys/socket.h sys/time.h sys/stat.h syslog.h unistd.h utmp.h utmpx.h sys/epoll.h sys/prctl.h])
80
81 # Checks for typedefs, structures, and compiler characteristics.
82 AC_C_CONST
83 AC_C_INLINE
84 AC_TYPE_OFF_T
85 AC_TYPE_PID_T
86 AC_TYPE_SIZE_T
87 AC_TYPE_SSIZE_T
88 AC_TYPE_MODE_T
89 AC_TYPE_UID_T
90 AC_TYPE_UINT8_T
91 AC_HEADER_TIME
92 AC_STRUCT_TM
93 AC_C_VOLATILE
94 AC_C_TYPEOF
95
96 sa_includes="\
97 $ac_includes_default
98 #if HAVE_SYS_SOCKET_H
99 # include <sys/socket.h>
100 #endif
101 "
102 AC_CHECK_MEMBERS([struct sockaddr.sa_len],,,[$sa_includes])
103
104 # Checks for library functions.
105 AC_FUNC_CHOWN
106 AC_FUNC_FORK
107 AC_PROG_GCC_TRADITIONAL
108 AC_FUNC_MALLOC
109 AC_FUNC_REALLOC
110 AC_FUNC_SELECT_ARGTYPES
111 AC_TYPE_SIGNAL
112 AC_FUNC_STAT
113 AC_FUNC_STRERROR_R
114 AC_FUNC_VPRINTF
115 AC_CHECK_FUNCS([flock basename alarm clock_gettime gethostbyname gethostname gettimeofday localtime_r memset mkdir regcomp select setid socket strcasecmp strchr strdup strerror strndup strnlen strrchr strstr strtol strtoul uname ttyname_r getline malloc_trim prctl epoll_create epoll_create1 fdatasync lseek64])
116
117 # the check below is probably ugly. If someone knows how to do it in a better way, please
118 # let me know! -- rgerhards, 2010-10-06
119 AC_CHECK_DECL([SCM_CREDENTIALS], [AC_DEFINE(HAVE_SCM_CREDENTIALS, [1], [set define])], [], [#include <sys/types.h>
120 #include <sys/socket.h>])
121
122 # Check for MAXHOSTNAMELEN
123 AC_MSG_CHECKING(for MAXHOSTNAMELEN)
124 AC_TRY_COMPILE([
125         #include <sys/param.h>
126         ], [
127         return MAXHOSTNAMELEN;
128         ]
129         ,
130         AC_MSG_RESULT(yes)
131         ,
132         # note: we use 1024 here, which should be far more than needed by any system. If that's too low, we simply
133         # life with the need to change it. Most of the code doesn't need it anyways, but there are a few places 
134         # where it actually is needed and it makes no sense to change them.
135         AC_DEFINE(MAXHOSTNAMELEN, 1024, [Define with a value if your <sys/param.h> does not define MAXHOSTNAMELEN])
136         AC_MSG_RESULT(no; defined as 64)
137 )
138
139 # check for availability of atomic operations
140 RS_ATOMIC_OPERATIONS
141 RS_ATOMIC_OPERATIONS_64BIT
142
143 # fall back to POSIX sems for atomic operations (cpu expensive)
144 AC_CHECK_HEADERS([semaphore.h])
145
146
147 # Additional module directories
148 AC_ARG_WITH(moddirs,
149         [AS_HELP_STRING([--with-moddirs=DIRS],[Additional module search paths appended to @<:@$libdir/rsyslog@:>@])],
150         [_save_IFS=$IFS ; IFS=$PATH_SEPARATOR ; moddirs=""
151          for w in ${with_moddirs} ;
152          do
153                  case $w in
154                  "") continue ;; */) ;; *)  w="${w}/" ;;
155                  esac
156                  for m in ${moddirs} ;
157                  do
158                          test "x$w" = "x${libdir}/${PACKAGE}/"   || \
159                          test "x$w" = "x$m" || test "x$w" = "x/" && \
160                          continue 2
161                  done
162                  case $moddirs in
163                  "") moddirs="$w" ;; *) moddirs="${moddirs}:${w}" ;;
164                  esac
165          done ; IFS=$_save_IFS],[moddirs=""]
166 )
167 AM_CONDITIONAL(WITH_MODDIRS, test x$moddirs != x)
168 AC_SUBST(moddirs)
169
170
171 # Large file support
172 # http://www.gnu.org/software/autoconf/manual/html_node/System-Services.html#index-AC_005fSYS_005fLARGEFILE-1028
173 AC_SYS_LARGEFILE
174 case "${enable_largefile}" in
175   no) ;;
176   *) enable_largefile="yes" ;;
177 esac
178
179 # Regular expressions
180 AC_ARG_ENABLE(regexp,
181         [AS_HELP_STRING([--enable-regexp],[Enable regular expressions support @<:@default=yes@:>@])],
182         [case "${enableval}" in
183          yes) enable_regexp="yes" ;;
184           no) enable_regexp="no" ;;
185            *) AC_MSG_ERROR(bad value ${enableval} for --enable-regexp) ;;
186          esac],
187         [enable_regexp=yes]
188 )
189 AM_CONDITIONAL(ENABLE_REGEXP, test x$enable_regexp = xyes)
190 if test "$enable_regexp" = "yes"; then
191         AC_DEFINE(FEATURE_REGEXP, 1, [Regular expressions support enabled.])
192 fi
193
194
195
196 # zlib compression
197 AC_ARG_ENABLE(zlib,
198         [AS_HELP_STRING([--enable-zlib],[Enable zlib compression  support @<:@default=yes@:>@])],
199         [case "${enableval}" in
200          yes) enable_zlib="yes" ;;
201           no) enable_zlib="no" ;;
202            *) AC_MSG_ERROR(bad value ${enableval} for --enable-zlib) ;;
203          esac],
204         [enable_zlib=yes]
205 )
206 AM_CONDITIONAL(ENABLE_ZLIB, test x$enable_zlib = xyes)
207 if test "$enable_zlib" = "yes"; then
208         AC_CHECK_HEADER(zlib.h, [zlib_header="yes"], [zlib_header="no" enable_zlib="false"])
209         if test "$zlib_header" = "yes"; then
210                 AC_CHECK_LIB(z, deflate,
211                         [AC_DEFINE(USE_NETZIP, 1, [Define if you want to enable zlib support]) 
212                          ZLIB_LIBS="-lz"
213                          AC_SUBST(ZLIB_LIBS)], enable_zlib="false")
214         fi
215 fi
216
217
218 #gssapi
219 AC_ARG_ENABLE(gssapi_krb5,
220         [AS_HELP_STRING([--enable-gssapi-krb5],[Enable GSSAPI Kerberos 5 support @<:@default=no@:>@])],
221         [case "${enableval}" in
222          yes) enable_gssapi_krb5="yes" ;;
223           no) enable_gssapi_krb5="no" ;;
224            *) AC_MSG_ERROR(bad value ${enableval} for --enable-gssapi-krb5) ;;
225          esac],
226         [enable_gssapi_krb5=no]
227 )
228 if test $enable_gssapi_krb5 = yes; then
229         AC_CHECK_LIB(gssapi_krb5, gss_acquire_cred, [
230                 AC_CHECK_HEADER(gssapi/gssapi.h, [
231                         AC_DEFINE(USE_GSSAPI,,
232                                   Define if you want to use GSSAPI)
233                         GSS_LIBS="-lgssapi_krb5"
234                         AC_SUBST(GSS_LIBS)
235                 ])
236         ])
237 fi
238 AM_CONDITIONAL(ENABLE_GSSAPI, test x$enable_gssapi_krb5 = xyes)
239
240
241 # multithreading via pthreads
242 AC_ARG_ENABLE(pthreads,
243         [AS_HELP_STRING([--enable-pthreads],[Enable multithreading via pthreads @<:@default=yes@:>@])],
244         [case "${enableval}" in
245          yes) enable_pthreads="yes" ;;
246           no) enable_pthreads="no" ;;
247            *) AC_MSG_ERROR(bad value ${enableval} for --enable-pthreads) ;;
248          esac],
249         [enable_pthreads=yes]
250 )
251
252 if test "x$enable_pthreads" = "xno"; then
253         AC_MSG_ERROR(rsyslog v3+ does no longer support single threading mode -- use a previous version for that);
254 fi
255
256 if test "x$enable_pthreads" != "xno"; then
257   AC_CHECK_HEADERS(
258     [pthread.h],
259     [
260       AC_CHECK_LIB(
261         [pthread],
262         [pthread_create],
263         [
264           AC_DEFINE([USE_PTHREADS], [1], [Multithreading support enabled.])
265           PTHREADS_LIBS="-lpthread"
266           case "${os_type}" in
267           solaris) PTHREADS_CFLAGS="-pthreads" ;;
268           *)       PTHREADS_CFLAGS="-pthread" ;;
269           esac
270           AC_SUBST(PTHREADS_LIBS)
271           AC_SUBST(PTHREADS_CFLAGS)
272         ],
273         [AC_MSG_FAILURE([pthread is missing])],
274         [-lpthread]
275       )
276     ],
277     [AC_MSG_FAILURE([pthread is missing])]
278   )
279 fi
280
281 AC_CHECK_FUNCS(
282     [pthread_setschedparam],
283     [
284       rsyslog_have_pthread_setschedparam=yes
285     ],
286     [
287       rsyslog_have_pthread_setschedparam=no
288     ]
289 )
290 AC_CHECK_HEADERS(
291     [sched.h],
292     [
293       rsyslog_have_sched_h=yes
294     ],
295     [
296       rsyslog_have_sched_h=no
297     ]
298 )
299 if test "$rsyslog_have_pthread_setschedparam" = "yes" -a "$rsyslog_have_sched_h" = "yes"; then
300         save_LIBS=$LIBS
301         LIBS=
302         AC_SEARCH_LIBS(sched_get_priority_max, rt)
303         if test "x$ac_cv_search" != "xno"; then
304                 AC_CHECK_FUNCS(sched_get_priority_max)
305         fi
306         IMUDP_LIBS=$LIBS
307         AC_SUBST(IMUDP_LIBS)
308         LIBS=$save_LIBS
309 fi
310
311
312 # klog
313 AC_ARG_ENABLE(klog,
314         [AS_HELP_STRING([--enable-klog],[Integrated klog functionality @<:@default=yes@:>@])],
315         [case "${enableval}" in
316          yes) enable_klog="yes" ;;
317           no) enable_klog="no" ;;
318            *) AC_MSG_ERROR(bad value ${enableval} for --enable-klog) ;;
319          esac],
320         [enable_klog="yes"]
321 )
322 AM_CONDITIONAL(ENABLE_IMKLOG, test x$enable_klog = xyes)
323 AM_CONDITIONAL(ENABLE_IMKLOG_BSD, test x$os_type = xbsd)
324 AM_CONDITIONAL(ENABLE_IMKLOG_LINUX, test x$os_type = xlinux)
325 AM_CONDITIONAL(ENABLE_IMKLOG_SOLARIS, test x$os_type = xsolaris)
326
327
328 #
329 # SYSLOG_UNIXAF
330 #
331 AC_MSG_CHECKING(for SYSLOG_UNIXAF support)
332 AC_ARG_ENABLE([unix],
333   [AS_HELP_STRING([--disable-unix], [Disable support for unix])],
334   [
335     if test "x${enableval}" = "xyes"; then
336       AC_MSG_RESULT([yes])
337       AC_DEFINE([SYSLOG_UNIXAF], [1], [Description])
338     else
339       AC_MSG_RESULT([no])
340     fi
341   ],
342   [
343     # enabled by default
344     AC_MSG_RESULT([yes])
345     AC_DEFINE([SYSLOG_UNIXAF], [1], [Description])
346   ])
347
348
349 # inet
350 AC_ARG_ENABLE(inet,
351         [AS_HELP_STRING([--enable-inet],[Enable networking support @<:@default=yes@:>@])],
352         [case "${enableval}" in
353          yes) enable_inet="yes" ;;
354           no) enable_inet="no" ;;
355            *) AC_MSG_ERROR(bad value ${enableval} for --enable-inet) ;;
356          esac],
357         [enable_inet="yes"]
358 )
359 AM_CONDITIONAL(ENABLE_INET, test x$enable_inet = xyes)
360 if test "$enable_inet" = "yes"; then
361         AC_DEFINE(SYSLOG_INET, 1, [network support is integrated.])
362 fi
363
364
365 #
366 # The following define determines whether the package adheres to the
367 # file system standard.
368 #
369 AC_MSG_CHECKING(for FSSTND support)
370 AC_ARG_ENABLE([fsstnd],
371   [AS_HELP_STRING([--disable-fsstnd], [Disable support for FSSTND])],
372   [
373     if test "x${enableval}" = "xyes"; then
374       AC_MSG_RESULT([yes])
375       AC_DEFINE([FSSTND], [1], [Description])
376     else
377       AC_MSG_RESULT([no])
378     fi
379   ],
380   [
381     # enabled by default
382     AC_MSG_RESULT([yes])
383     AC_DEFINE([FSSTND], [1], [Description])
384   ])
385
386
387 # support for unlimited select() syscall
388 AC_ARG_ENABLE(unlimited_select,
389         [AS_HELP_STRING([--enable-unlimited-select],[Enable unlimited select() syscall @<:@default=no@:>@])],
390         [case "${enableval}" in
391          yes) enable_unlimited_select="yes" ;;
392           no) enable_unlimited_select="no" ;;
393            *) AC_MSG_ERROR(bad value ${enableval} for --enable-unlimited-select) ;;
394          esac],
395         [enable_unlimited_select="no"]
396 )
397 if test "$enable_unlimited_select" = "yes"; then
398         AC_DEFINE(USE_UNLIMITED_SELECT, 1, [If defined, the select() syscall won't be limited to a particular number of file descriptors.])
399 fi
400
401
402 # support for systemd unit files
403 AC_ARG_WITH([systemdsystemunitdir],
404         AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]),
405         [], [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)])
406 if test "x$with_systemdsystemunitdir" != xno; then
407         AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
408 fi
409 AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ])
410
411
412 # debug
413 AC_ARG_ENABLE(debug,
414         [AS_HELP_STRING([--enable-debug],[Enable debug mode @<:@default=no@:>@])],
415         [case "${enableval}" in
416          yes) enable_debug="yes" ;;
417           no) enable_debug="no" ;;
418            *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
419          esac],
420         [enable_debug="no"]
421 )
422 if test "$enable_debug" = "yes"; then
423         AC_DEFINE(DEBUG, 1, [Defined if debug mode is enabled (its easier to check).])
424 fi
425 if test "$enable_debug" = "no"; then
426         AC_DEFINE(NDEBUG, 1, [Defined if debug mode is disabled.])
427 fi
428
429
430 # runtime instrumentation
431 AC_ARG_ENABLE(rtinst,
432         [AS_HELP_STRING([--enable-rtinst],[Enable runtime instrumentation mode @<:@default=no@:>@])],
433         [case "${enableval}" in
434          yes) enable_rtinst="yes" ;;
435           no) enable_rtinst="no" ;;
436            *) AC_MSG_ERROR(bad value ${enableval} for --enable-rtinst) ;;
437          esac],
438         [enable_rtinst="no"]
439 )
440 if test "$enable_rtinst" = "yes"; then
441         AC_DEFINE(RTINST, 1, [Defined if runtime instrumentation mode is enabled.])
442 fi
443
444
445 # valgrind
446 AC_ARG_ENABLE(valgrind,
447         [AS_HELP_STRING([--enable-valgrind],[Enable valgrind support settings @<:@default=no@:>@])],
448         [case "${enableval}" in
449          yes) enable_valgrind="yes" ;;
450           no) enable_valgrind="no" ;;
451            *) AC_MSG_ERROR(bad value ${enableval} for --enable-valgrind) ;;
452          esac],
453         [enable_valgrind="no"]
454 )
455 if test "$enable_valgrind" = "yes"; then
456         AC_DEFINE(VALGRIND, 1, [Defined if valgrind support settings are to be enabled (e.g. prevents dlclose()).])
457 fi
458
459
460 # memcheck
461 AC_ARG_ENABLE(memcheck,
462         [AS_HELP_STRING([--enable-memcheck],[Enable extended memory check support @<:@default=no@:>@])],
463         [case "${enableval}" in
464          yes) enable_memcheck="yes" ;;
465           no) enable_memcheck="no" ;;
466            *) AC_MSG_ERROR(bad value ${enableval} for --enable-memcheck) ;;
467          esac],
468         [enable_memcheck="no"]
469 )
470 if test "$enable_memcheck" = "yes"; then
471         AC_DEFINE(MEMCHECK, 1, [Defined if memcheck support settings are to be enabled (e.g. prevents dlclose()).])
472 fi
473
474
475 # compile diagnostic tools (small helpers usually not needed)
476 AC_ARG_ENABLE(diagtools,
477         [AS_HELP_STRING([--enable-diagtools],[Enable diagnostic tools @<:@default=no@:>@])],
478         [case "${enableval}" in
479          yes) enable_diagtools="yes" ;;
480           no) enable_diagtools="no" ;;
481            *) AC_MSG_ERROR(bad value ${enableval} for --enable-diagtools) ;;
482          esac],
483         [enable_diagtools=no]
484 )
485 AM_CONDITIONAL(ENABLE_DIAGTOOLS, test x$enable_diagtools = xyes)
486
487
488
489 # MySQL support
490 AC_ARG_ENABLE(mysql,
491         [AS_HELP_STRING([--enable-mysql],[Enable MySql database support @<:@default=no@:>@])],
492         [case "${enableval}" in
493          yes) enable_mysql="yes" ;;
494           no) enable_mysql="no" ;;
495            *) AC_MSG_ERROR(bad value ${enableval} for --enable-mysql) ;;
496          esac],
497         [enable_mysql=no]
498 )
499 if test "x$enable_mysql" = "xyes"; then
500   AC_CHECK_PROG(
501     [HAVE_MYSQL_CONFIG],
502     [mysql_config],
503     [yes],,,
504   )
505   if test "x${HAVE_MYSQL_CONFIG}" != "xyes"; then
506     AC_MSG_FAILURE([mysql_config not found in PATH - usually a package named mysql-dev, libmysql-dev or similar, is missing - install it to fix this issue])
507   fi
508   AC_CHECK_LIB(
509     [mysqlclient],
510     [mysql_init],
511     [MYSQL_CFLAGS=`mysql_config --cflags`
512      MYSQL_LIBS=`mysql_config --libs`
513     ],
514     [AC_MSG_FAILURE([MySQL library is missing])],
515     [`mysql_config --libs`]
516   )
517 fi
518 AM_CONDITIONAL(ENABLE_MYSQL, test x$enable_mysql = xyes)
519 AC_SUBST(MYSQL_CFLAGS)
520 AC_SUBST(MYSQL_LIBS)
521
522
523 # PostgreSQL support
524 AC_ARG_ENABLE(pgsql,
525         [AS_HELP_STRING([--enable-pgsql],[Enable PostgreSQL database support @<:@default=no@:>@])],
526         [case "${enableval}" in
527          yes) enable_pgsql="yes" ;;
528           no) enable_pgsql="no" ;;
529            *) AC_MSG_ERROR(bad value ${enableval} for --enable-pgsql) ;;
530          esac],
531         [enable_pgsql=no]
532 )
533 if test "x$enable_pgsql" = "xyes"; then
534   AC_CHECK_PROG(
535     [HAVE_PGSQL_CONFIG],
536     [pg_config],
537     [yes],,,
538   )
539   if test "x${HAVE_PGSQL_CONFIG}" != "xyes"; then
540     AC_MSG_FAILURE([pg_config not found in PATH])
541   fi
542   AC_CHECK_LIB(
543     [pq],
544     [PQconnectdb],
545     [PGSQL_CFLAGS="-I`pg_config --includedir`"
546      PGSQL_LIBS="-L`pg_config --libdir` -lpq"
547     ],
548     [AC_MSG_FAILURE([PgSQL library is missing])],
549     [-L`pg_config --libdir`]
550   )
551 fi
552 AM_CONDITIONAL(ENABLE_PGSQL, test x$enable_pgsql = xyes)
553 AC_SUBST(PGSQL_CFLAGS)
554 AC_SUBST(PGSQL_LIBS)
555
556
557 # oracle (OCI) support
558 AC_ARG_ENABLE(oracle,
559         [AS_HELP_STRING([--enable-oracle],[Enable native Oracle database support @<:@default=no@:>@]. (Check your ORACLE_HOME environment variable!))],
560         [case "${enableval}" in
561          yes) enable_oracle="yes" ;;
562          no) enable_oracle="no" ;;
563          *) AC_MSG_ERROR(bad value ${enableval} for --enable-oracle) ;;
564          esac],
565         [enable_oracle=no]
566 )
567 if test "x$enable_oracle" = "xyes"; then
568    if test -d "$ORACLE_HOME"
569    then
570        AC_CHECK_LIB([occi], [OCIEnvCreate],
571                     [ORACLE_CFLAGS=-I$ORACLE_HOME/rdbms/public]
572                     [ORACLE_LIBS=-L$ORACLE_HOME/lib -locci],
573                     [AC_MSG_FAILURE([Oracle (OCI) library is missing: wrong oracle home])],
574                     [-I$ORACLE_HOME/rdbms/public/ -L$ORACLE_HOME/lib -locci -lclntsh ]
575                  )
576     elif test -d "$ORACLE_LIB_PATH" -a -d "$ORACLE_INCLUDE_PATH"
577     then
578        AC_CHECK_LIB([occi], [OCIEnvCreate],
579                     [ORACLE_CFLAGS=-I$ORACLE_INCLUDE_PATH]
580                     [ORACLE_LIBS=-L$ORACLE_LIB_PATH -locci],
581                     [AC_MSG_FAILURE([Oracle (OCI) library is missing: wrong oracle directories])],
582                     [-I$ORACLE_INCLUDE_PATH -L$ORACLE_LIB_PATH -locci -lclntsh ]
583                  )
584     else
585         AC_CHECK_PROG(
586             [HAVE_ORACLE_CONFIG],
587             [oracle-instantclient-config],
588             [yes],,,
589             )
590         if test "x${HAVE_ORACLE_CONFIG}" != "xyes"; then
591            AC_MSG_FAILURE([oracle-instantclient-config not found in PATH])
592         fi
593         AC_CHECK_LIB(
594                 [occi],
595                 [OCIEnvCreate],
596                 [ORACLE_CFLAGS="`oracle-instantclient-config --cflags`"
597                 ORACLE_LIBS="`oracle-instantclient-config --libs`"
598                 ],
599                 [AC_MSG_FAILURE([Oracle (OCI) libraray is missing])],
600                 [`oracle-instantclient-config --libs --cflags`]
601                 )
602     fi
603 fi
604 AM_CONDITIONAL(ENABLE_ORACLE, test x$enable_oracle = xyes)
605 AC_SUBST(ORACLE_CFLAGS)
606 AC_SUBST(ORACLE_LIBS)
607
608
609 # libdbi support
610 AC_ARG_ENABLE(libdbi,
611         [AS_HELP_STRING([--enable-libdbi],[Enable libdbi database support @<:@default=no@:>@])],
612         [case "${enableval}" in
613          yes) enable_libdbi="yes" ;;
614           no) enable_libdbi="no" ;;
615            *) AC_MSG_ERROR(bad value ${enableval} for --enable-libdbi) ;;
616          esac],
617         [enable_libdbi=no]
618 )
619 if test "x$enable_libdbi" = "xyes"; then
620   AC_CHECK_HEADERS(
621     [dbi/dbi.h],,
622     [AC_MSG_FAILURE([libdbi is missing])]
623   )
624   AC_CHECK_LIB(
625     [dbi],
626     [dbi_initialize],
627     [LIBDBI_CFLAGS=""
628      LIBDBI_LIBS="-ldbi"
629     ],
630     [AC_MSG_FAILURE([libdbi library is missing])]
631   )
632   AC_CHECK_LIB(
633     [dbi],
634     [dbi_initialize_r],
635     [AC_DEFINE([HAVE_DBI_R], [1], [Define to 1 if libdbi supports the new plugin-safe interface])]
636   )
637 fi
638 AM_CONDITIONAL(ENABLE_OMLIBDBI, test x$enable_libdbi = xyes)
639 AC_SUBST(LIBDBI_CFLAGS)
640 AC_SUBST(LIBDBI_LIBS)
641
642
643 # SNMP support
644 AC_ARG_ENABLE(snmp,
645         [AS_HELP_STRING([--enable-snmp],[Enable SNMP support @<:@default=no@:>@])],
646         [case "${enableval}" in
647          yes) enable_snmp="yes" ;;
648           no) enable_snmp="no" ;;
649            *) AC_MSG_ERROR(bad value ${enableval} for --enable-snmp) ;;
650          esac],
651         [enable_snmp=no]
652 )
653 if test "x$enable_snmp" = "xyes"; then
654   AC_CHECK_HEADERS(
655     [net-snmp/net-snmp-config.h],,
656     [AC_MSG_FAILURE([Net-SNMP is missing])]
657   )
658   AC_CHECK_LIB(
659     [netsnmp],
660     [snmp_timeout],
661     [SNMP_CFLAGS=""
662      SNMP_LIBS="-lnetsnmp"
663     ],
664     [AC_MSG_FAILURE([Net-SNMP library is missing])]
665   )
666 fi
667 AM_CONDITIONAL(ENABLE_SNMP, test x$enable_snmp = xyes)
668 AC_SUBST(SNMP_CFLAGS)
669 AC_SUBST(SNMP_LIBS)
670
671
672 # GnuTLS support
673 AC_ARG_ENABLE(gnutls,
674         [AS_HELP_STRING([--enable-gnutls],[Enable GNU TLS support @<:@default=no@:>@])],
675         [case "${enableval}" in
676          yes) enable_gnutls="yes" ;;
677           no) enable_gnutls="no" ;;
678            *) AC_MSG_ERROR(bad value ${enableval} for --enable-gnutls) ;;
679          esac],
680         [enable_gnutls=no]
681 )
682 if test "x$enable_gnutls" = "xyes"; then
683         PKG_CHECK_MODULES(GNUTLS, gnutls >= 1.4.0)
684 fi
685 AM_CONDITIONAL(ENABLE_GNUTLS, test x$enable_gnutls = xyes)
686 AC_SUBST(GNUTLS_CFLAGS)
687 AC_SUBST(GNUTLS_LIBS)
688
689
690 # support for building the rsyslogd runtime
691 AC_ARG_ENABLE(rsyslogrt,
692         [AS_HELP_STRING([--enable-rsyslogrt],[Build rsyslogrt @<:@default=yes@:>@])],
693         [case "${enableval}" in
694          yes) enable_rsyslogrt="yes" ;;
695           no) enable_rsyslogrt="no" ;;
696            *) AC_MSG_ERROR(bad value ${enableval} for --enable-rsyslogrt) ;;
697          esac],
698         [enable_rsyslogrt=yes]
699 )
700 if test "x$enable_rsyslogrt" = "xyes"; then
701   RSRT_CFLAGS="-I\$(top_srcdir)/runtime -I\$(top_srcdir)"
702   RSRT_LIBS="\$(top_builddir)/runtime/librsyslog.la"
703 fi
704 AM_CONDITIONAL(ENABLE_RSYSLOGRT, test x$enable_rsyslogrt = xyes)
705 AC_SUBST(RSRT_CFLAGS)
706 AC_SUBST(RSRT_LIBS)
707
708
709 # support for NOT building rsyslogd (useful for source-based packaging systems)
710 AC_ARG_ENABLE(rsyslogd,
711         [AS_HELP_STRING([--enable-rsyslogd],[Build rsyslogd @<:@default=yes@:>@])],
712         [case "${enableval}" in
713          yes) enable_rsyslogd="yes" ;;
714           no) enable_rsyslogd="no" ;;
715            *) AC_MSG_ERROR(bad value ${enableval} for --enable-rsyslogd) ;;
716          esac],
717         [enable_rsyslogd=yes]
718 )
719 AM_CONDITIONAL(ENABLE_RSYSLOGD, test x$enable_rsyslogd = xyes)
720
721
722 # capability to enable an extended testbench. By default, this is off. The reason
723 # for this switch is that some test simply take too long to execute them on a regular
724 # basis. So we enable to skip them, while the majority of tests can still be used. The
725 # idea is that at least "make distcheck" executes the extended testbench, and also
726 # developers should explicitely enable it after important changes. -- rgerhards, 2010-04-12
727 AC_ARG_ENABLE(extended_tests,
728         [AS_HELP_STRING([--enable-extended-tests],[extended testbench @<:@default=no@:>@])],
729         [case "${enableval}" in
730          yes) enable_rsyslogd="yes" ;;
731           no) enable_rsyslogd="no" ;;
732            *) AC_MSG_ERROR(bad value ${enableval} for --enable-extended-tests) ;;
733          esac],
734         [enable_extended_tests=no]
735 )
736 AM_CONDITIONAL(ENABLE_EXTENDED_TESTS, test x$enable_extended_tests = xyes)
737
738
739 # capability to enable MySQL testbench tests. This requries that a Syslog database
740 # with the default schema has been created on the local (127.0.0.1) MySQL server and
741 # a user "rsyslog" with password "testbench" exists, is able to login with default
742 # parameters and has sufficient (read: all) privileges on that database.
743 # rgerhards, 2011-03-09
744 AC_ARG_ENABLE(mysql_tests,
745         [AS_HELP_STRING([--enable-mysql-tests],[enable MySQL specific tests in testbench @<:@default=no@:>@])],
746         [case "${enableval}" in
747          yes) enable_mysql_tests="yes" ;;
748           no) enable_mysql_tests="no" ;;
749            *) AC_MSG_ERROR(bad value ${enableval} for --enable-mysql-tests) ;;
750          esac],
751         [enable_mysql_tests=no]
752 )
753 AM_CONDITIONAL(ENABLE_MYSQL_TESTS, test x$enable_mysql_tests = xyes)
754
755
756 # Mail support (so far we do not need a library, but we need to turn this on and off)
757 AC_ARG_ENABLE(mail,
758         [AS_HELP_STRING([--enable-mail],[Enable mail support @<:@default=no@:>@])],
759         [case "${enableval}" in
760          yes) enable_mail="yes" ;;
761           no) enable_mail="no" ;;
762            *) AC_MSG_ERROR(bad value ${enableval} for --enable-mail) ;;
763          esac],
764         [enable_mail=no]
765 )
766 AM_CONDITIONAL(ENABLE_MAIL, test x$enable_mail = xyes)
767
768
769 # imdiag support (so far we do not need a library, but we need to turn this on and off)
770 # note that we enable this be default, because an important point is to make
771 # it available to users who do not know much about how to handle things. It
772 # would complicate things if we first needed to tell them how to enable imdiag.
773 # rgerhards, 2008-07-25
774 AC_ARG_ENABLE(imdiag,
775         [AS_HELP_STRING([--enable-imdiag],[Enable imdiag @<:@default=no@:>@])],
776         [case "${enableval}" in
777          yes) enable_imdiag="yes" ;;
778           no) enable_imdiag="no" ;;
779            *) AC_MSG_ERROR(bad value ${enableval} for --enable-imdiag) ;;
780          esac],
781         [enable_imdiag=no]
782 )
783 AM_CONDITIONAL(ENABLE_IMDIAG, test x$enable_imdiag = xyes)
784
785
786 # RELP support
787 AC_ARG_ENABLE(relp,
788         [AS_HELP_STRING([--enable-relp],[Enable RELP support @<:@default=no@:>@])],
789         [case "${enableval}" in
790          yes) enable_relp="yes" ;;
791           no) enable_relp="no" ;;
792            *) AC_MSG_ERROR(bad value ${enableval} for --enable-relp) ;;
793          esac],
794         [enable_relp=no]
795 )
796 if test "x$enable_relp" = "xyes"; then
797         PKG_CHECK_MODULES(RELP, relp >= 0.1.1)
798 fi
799 AM_CONDITIONAL(ENABLE_RELP, test x$enable_relp = xyes)
800 AC_SUBST(RELP_CFLAGS)
801 AC_SUBST(RELP_LIBS)
802
803
804 # RFC 3195 support
805 AC_ARG_ENABLE(rfc3195,
806         [AS_HELP_STRING([--enable-rfc3195],[Enable RFC3195 support @<:@default=no@:>@])],
807         [case "${enableval}" in
808          yes) enable_rfc3195="yes" ;;
809           no) enable_rfc3195="no" ;;
810            *) AC_MSG_ERROR(bad value ${enableval} for --enable-rfc3195) ;;
811          esac],
812         [enable_rfc3195=no]
813 )
814 if test "x$enable_rfc3195" = "xyes"; then
815         PKG_CHECK_MODULES(LIBLOGGING, liblogging >= 0.7.1)
816 fi
817 AM_CONDITIONAL(ENABLE_RFC3195, test x$enable_rfc3195 = xyes)
818 AC_SUBST(LIBLOGGING_CFLAGS)
819 AC_SUBST(LIBLOGGING_LIBS)
820
821
822 # enable/disable the testbench (e.g. because some important parts
823 # are missing)
824 AC_ARG_ENABLE(testbench,
825         [AS_HELP_STRING([--enable-testbench],[testbench enabled @<:@default=yes@:>@])],
826         [case "${enableval}" in
827          yes) enable_testbench="yes" ;;
828           no) enable_testbench="no" ;;
829            *) AC_MSG_ERROR(bad value ${enableval} for --enable-testbench) ;;
830          esac],
831         [enable_testbench=yes]
832 )
833 AM_CONDITIONAL(ENABLE_TESTBENCH, test x$enable_testbench = xyes)
834
835
836 # settings for the file input module
837 AC_ARG_ENABLE(imfile,
838         [AS_HELP_STRING([--enable-imfile],[file input module enabled @<:@default=no@:>@])],
839         [case "${enableval}" in
840          yes) enable_imfile="yes" ;;
841           no) enable_imfile="no" ;;
842            *) AC_MSG_ERROR(bad value ${enableval} for --enable-imfile) ;;
843          esac],
844         [enable_imfile=no]
845 )
846 AM_CONDITIONAL(ENABLE_IMFILE, test x$enable_imfile = xyes)
847
848
849 # settings for the door input module (under solaris, thus default off)
850 AC_ARG_ENABLE(imsolaris,
851         [AS_HELP_STRING([--enable-imsolaris],[solaris input module enabled @<:@default=no@:>@])],
852         [case "${enableval}" in
853          yes) enable_imsolaris="yes" ;;
854           no) enable_imsolaris="no" ;;
855            *) AC_MSG_ERROR(bad value ${enableval} for --enable-imsolaris) ;;
856          esac],
857         [enable_imsolaris=no]
858 )
859 AM_CONDITIONAL(ENABLE_IMSOLARIS, test x$enable_imsolaris = xyes)
860
861 # settings for the ptcp input module
862 AC_ARG_ENABLE(imptcp,
863         [AS_HELP_STRING([--enable-imptcp],[plain tcp input module enabled @<:@default=no@:>@])],
864         [case "${enableval}" in
865          yes) enable_imptcp="yes" ;;
866           no) enable_imptcp="no" ;;
867            *) AC_MSG_ERROR(bad value ${enableval} for --enable-imptcp) ;;
868          esac],
869         [enable_imptcp=no]
870 )
871 AM_CONDITIONAL(ENABLE_IMPTCP, test x$enable_imptcp = xyes)
872
873
874 # settings for the pstats input module
875 AC_ARG_ENABLE(impstats,
876         [AS_HELP_STRING([--enable-impstats],[periodic statistics module enabled @<:@default=no@:>@])],
877         [case "${enableval}" in
878          yes) enable_impstats="yes" ;;
879           no) enable_impstats="no" ;;
880            *) AC_MSG_ERROR(bad value ${enableval} for --enable-impstats) ;;
881          esac],
882         [enable_impstats=no]
883 )
884 AM_CONDITIONAL(ENABLE_IMPSTATS, test x$enable_impstats = xyes)
885
886
887 # settings for the omprog output module
888 AC_ARG_ENABLE(omprog,
889         [AS_HELP_STRING([--enable-omprog],[Compiles omprog module @<:@default=no@:>@])],
890         [case "${enableval}" in
891          yes) enable_omprog="yes" ;;
892           no) enable_omprog="no" ;;
893            *) AC_MSG_ERROR(bad value ${enableval} for --enable-omprog) ;;
894          esac],
895         [enable_omprog=no]
896 )
897 AM_CONDITIONAL(ENABLE_OMPROG, test x$enable_omprog = xyes)
898
899
900 # settings for omudpspoof
901 AC_ARG_ENABLE(omudpspoof,
902         [AS_HELP_STRING([--enable-omudpspoof],[Compiles omudpspoof module @<:@default=no@:>@])],
903         [case "${enableval}" in
904          yes) enable_omudpspoof="yes" ;;
905           no) enable_omudpspoof="no" ;;
906            *) AC_MSG_ERROR(bad value ${enableval} for --enable-omudpspoof) ;;
907          esac],
908         [enable_omudpspoof=no]
909 )
910
911 if test "x$enable_omudpspoof" = "xyes"; then
912   AC_CHECK_HEADERS(
913     [libnet.h],,
914     [AC_MSG_FAILURE([libnet is missing])]
915   )
916   AC_CHECK_LIB(
917     [net],
918     [libnet_init],
919     [UDPSPOOF_CFLAGS=""
920      UDPSPOOF_LIBS="-lnet"
921     ],
922     [AC_MSG_FAILURE([libnet is missing])]
923   )
924 fi
925 AM_CONDITIONAL(ENABLE_OMUDPSPOOF, test x$enable_omudpspoof = xyes)
926 AC_SUBST(UDPSPOOF_CFLAGS)
927 AC_SUBST(UDPSPOOF_LIBS)
928
929
930 # settings for omstdout
931 AC_ARG_ENABLE(omstdout,
932         [AS_HELP_STRING([--enable-omstdout],[Compiles stdout module @<:@default=no@:>@])],
933         [case "${enableval}" in
934          yes) enable_omstdout="yes" ;;
935           no) enable_omstdout="no" ;;
936            *) AC_MSG_ERROR(bad value ${enableval} for --enable-omstdout) ;;
937          esac],
938         [enable_omstdout=no]
939 )
940 AM_CONDITIONAL(ENABLE_OMSTDOUT, test x$enable_omstdout = xyes)
941
942
943 # settings for pmlastmsg
944 AC_ARG_ENABLE(pmlastmsg,
945         [AS_HELP_STRING([--enable-pmlastmsg],[Compiles lastmsg parser module @<:@default=no@:>@])],
946         [case "${enableval}" in
947          yes) enable_pmlastmsg="yes" ;;
948           no) enable_pmlastmsg="no" ;;
949            *) AC_MSG_ERROR(bad value ${enableval} for --enable-pmlastmsg) ;;
950          esac],
951         [enable_pmlastmsg=no]
952 )
953 AM_CONDITIONAL(ENABLE_PMLASTMSG, test x$enable_pmlastmsg = xyes)
954
955
956 # settings for pmcisconames
957 AC_ARG_ENABLE(pmcisconames,
958         [AS_HELP_STRING([--enable-pmcisconames],[Compiles cisconames parser module @<:@default=no@:>@])],
959         [case "${enableval}" in
960          yes) enable_pmcisconames="yes" ;;
961           no) enable_pmcisconames="no" ;;
962            *) AC_MSG_ERROR(bad value ${enableval} for --enable-pmcisconames) ;;
963          esac],
964         [enable_pmcisconames=no]
965 )
966 AM_CONDITIONAL(ENABLE_PMCISCONAMES, test x$enable_pmcisconames = xyes)
967
968
969 # settings for pmaixforwardedfrom
970 AC_ARG_ENABLE(pmaixforwardedfrom,
971         [AS_HELP_STRING([--enable-pmaixforwardedfrom],[Compiles aixforwardedfrom parser module @<:@default=no@:>@])],
972         [case "${enableval}" in
973          yes) enable_pmaixforwardedfrom="yes" ;;
974           no) enable_pmaixforwardedfrom="no" ;;
975            *) AC_MSG_ERROR(bad value ${enableval} for --enable-pmaixforwardedfrom) ;;
976          esac],
977         [enable_pmaixforwardedfrom=no]
978 )
979 AM_CONDITIONAL(ENABLE_PMAIXFORWARDEDFROM, test x$enable_pmaixforwardedfrom = xyes)
980
981
982 # settings for pmsnare
983 AC_ARG_ENABLE(pmsnare,
984         [AS_HELP_STRING([--enable-pmsnare],[Compiles snare parser module @<:@default=no@:>@])],
985         [case "${enableval}" in
986          yes) enable_pmsnare="yes" ;;
987           no) enable_pmsnare="no" ;;
988            *) AC_MSG_ERROR(bad value ${enableval} for --enable-pmsnare) ;;
989          esac],
990         [enable_pmsnare=no]
991 )
992 AM_CONDITIONAL(ENABLE_PMSNARE, test x$enable_pmsnare = xyes)
993
994
995 # settings for pmrfc3164sd
996 AC_ARG_ENABLE(pmrfc3164sd,
997         [AS_HELP_STRING([--enable-pmrfc3164sd],[Compiles rfc3164sd parser module @<:@default=no@:>@])],
998         [case "${enableval}" in
999          yes) enable_pmrfc3164sd="yes" ;;
1000           no) enable_pmrfc3164sd="no" ;;
1001            *) AC_MSG_ERROR(bad value ${enableval} for --enable-pmrfc3164sd) ;;
1002          esac],
1003         [enable_pmrfc3164sd=no]
1004 )
1005 AM_CONDITIONAL(ENABLE_PMRFC3164SD, test x$enable_pmrfc3164sd = xyes)
1006
1007
1008 # settings for omruleset
1009 AC_ARG_ENABLE(omruleset,
1010         [AS_HELP_STRING([--enable-omruleset],[Compiles ruleset forwarding module @<:@default=yes@:>@])],
1011         [case "${enableval}" in
1012          yes) enable_omruleset="yes" ;;
1013           no) enable_omruleset="no" ;;
1014            *) AC_MSG_ERROR(bad value ${enableval} for --enable-omruleset) ;;
1015          esac],
1016         [enable_omruleset=yes]
1017 )
1018 AM_CONDITIONAL(ENABLE_OMRULESET, test x$enable_omruleset = xyes)
1019
1020
1021 # settings for omdbalerting
1022 AC_ARG_ENABLE(omdbalerting,
1023         [AS_HELP_STRING([--enable-omdbalerting],[Compiles omdbalerting module @<:@default=no@:>@])],
1024         [case "${enableval}" in
1025          yes) enable_omdbalerting="yes" ;;
1026           no) enable_omdbalerting="no" ;;
1027            *) AC_MSG_ERROR(bad value ${enableval} for --enable-omdbalerting) ;;
1028          esac],
1029         [enable_omdbalerting=no]
1030 )
1031 AM_CONDITIONAL(ENABLE_OMDBALERTING, test x$enable_omdbalerting = xyes)
1032
1033
1034
1035 # building the GUI (mostly for diagnostic reasons)
1036 AC_ARG_ENABLE(gui,
1037         [AS_HELP_STRING([--enable-gui],[Enable GUI programs @<:@default=no@:>@])],
1038         [case "${enableval}" in
1039          yes) enable_gui="yes" ;;
1040           no) enable_gui="no" ;;
1041            *) AC_MSG_ERROR(bad value ${enableval} for --enable-gui) ;;
1042          esac],
1043         [enable_gui=no]
1044 )
1045 if test "x$enable_gui" = "xyes"; then
1046         if test x$HAVE_JAVAC = x; then
1047            AC_MSG_ERROR([GUI components need Java, but Java development system is not installed on this system])
1048         fi
1049 fi
1050 AM_CONDITIONAL(ENABLE_GUI, test x$enable_gui = xyes)
1051
1052
1053 AC_SUBST(RELP_CFLAGS)
1054 AC_SUBST(RELP_LIBS)
1055
1056 # settings for omuxsock
1057 AC_ARG_ENABLE(omuxsock,
1058         [AS_HELP_STRING([--enable-omuxsock],[Compiles omuxsock module @<:@default=no@:>@])],
1059         [case "${enableval}" in
1060          yes) enable_omuxsock="yes" ;;
1061           no) enable_omuxsock="no" ;;
1062            *) AC_MSG_ERROR(bad value ${enableval} for --enable-omuxsock) ;;
1063          esac],
1064         [enable_omuxsock=no]
1065 )
1066 AM_CONDITIONAL(ENABLE_OMUXSOCK, test x$enable_omuxsock = xyes)
1067
1068
1069 # This provides a vehicle to integrate custom modules, that are not
1070 # part of rsyslog, into the build process. It is named cust1, so that
1071 # additional such modules can easily be added.
1072 AC_ARG_ENABLE(cust1,
1073         [AS_HELP_STRING([--enable-cust1],[Compiles cust1 module @<:@default=no@:>@])],
1074         [case "${enableval}" in
1075          yes) enable_cust1="yes" ;;
1076           no) enable_cust1="no" ;;
1077            *) AC_MSG_ERROR(bad value ${enableval} for --enable-cust1) ;;
1078          esac],
1079         [enable_cust1=no]
1080 )
1081 AM_CONDITIONAL(ENABLE_CUST1, test x$enable_cust1 = xyes)
1082
1083
1084 # A custom strgen that also serves as a sample of how to do
1085 # SQL-generating strgen's
1086 AC_ARG_ENABLE(smcustbindcdr,
1087         [AS_HELP_STRING([--enable-smcustbindcdr],[Compiles smcustbindcdr module @<:@default=no@:>@])],
1088         [case "${enableval}" in
1089          yes) enable_smcustbindcdr="yes" ;;
1090           no) enable_smcustbindcdr="no" ;;
1091            *) AC_MSG_ERROR(bad value ${enableval} for --enable-smcustbindcdr) ;;
1092          esac],
1093         [enable_smcustbindcdr=no]
1094 )
1095 AM_CONDITIONAL(ENABLE_SMCUSTBINDCDR, test x$enable_smcustbindcdr = xyes)
1096
1097
1098 # settings for the template input module; copy and modify this code
1099 # if you intend to add your own module. Be sure to replace imtemplate
1100 # by the actual name of your module.
1101 AC_ARG_ENABLE(imtemplate,
1102         [AS_HELP_STRING([--enable-imtemplate],[Compiles imtemplate template module @<:@default=no@:>@])],
1103         [case "${enableval}" in
1104          yes) enable_imtemplate="yes" ;;
1105           no) enable_imtemplate="no" ;;
1106            *) AC_MSG_ERROR(bad value ${enableval} for --enable-imtemplate) ;;
1107          esac],
1108         [enable_imtemplate=no]
1109 )
1110 #
1111 # you may want to do some library checks here - see snmp, mysql, pgsql modules
1112 # for samples
1113 #
1114 AM_CONDITIONAL(ENABLE_IMTEMPLATE, test x$enable_imtemplate = xyes)
1115 # end of copy template - be sure to search for imtemplate to find everything!
1116
1117
1118 # settings for the template output module; copy and modify this code
1119 # if you intend to add your own module. Be sure to replace omtemplate
1120 # by the actual name of your module.
1121 AC_ARG_ENABLE(omtemplate,
1122         [AS_HELP_STRING([--enable-omtemplate],[Compiles omtemplate template module @<:@default=no@:>@])],
1123         [case "${enableval}" in
1124          yes) enable_omtemplate="yes" ;;
1125           no) enable_omtemplate="no" ;;
1126            *) AC_MSG_ERROR(bad value ${enableval} for --enable-omtemplate) ;;
1127          esac],
1128         [enable_omtemplate=no]
1129 )
1130 #
1131 # you may want to do some library checks here - see snmp, mysql, pgsql modules
1132 # for samples
1133 #
1134 AM_CONDITIONAL(ENABLE_OMTEMPLATE, test x$enable_omtemplate = xyes)
1135 # end of copy template - be sure to search for omtemplate to find everything!
1136
1137
1138 # settings for mmsnmptrapd message modification module
1139 AC_ARG_ENABLE(mmsnmptrapd,
1140         [AS_HELP_STRING([--enable-mmsnmptrapd],[Compiles mmsnmptrapd module @<:@default=no@:>@])],
1141         [case "${enableval}" in
1142          yes) enable_mmsnmptrapd="yes" ;;
1143           no) enable_mmsnmptrapd="no" ;;
1144            *) AC_MSG_ERROR(bad value ${enableval} for --enable-mmsnmptrapd) ;;
1145          esac],
1146         [enable_mmsnmptrapd=no]
1147 )
1148 AM_CONDITIONAL(ENABLE_MMSNMPTRAPD, test x$enable_mmsnmptrapd = xyes)
1149
1150
1151 # settings for the omhdfs;
1152 AC_ARG_ENABLE(omhdfs,
1153         [AS_HELP_STRING([--enable-omhdfs],[Compiles omhdfs template module @<:@default=no@:>@])],
1154         [case "${enableval}" in
1155          yes) enable_omhdfs="yes" ;;
1156           no) enable_omhdfs="no" ;;
1157            *) AC_MSG_ERROR(bad value ${enableval} for --enable-omhdfs) ;;
1158          esac],
1159         [enable_omhdfs=no]
1160 )
1161 #
1162 # you may want to do some library checks here - see snmp, mysql, pgsql modules
1163 # for samples
1164 #
1165 AM_CONDITIONAL(ENABLE_OMHDFS, test x$enable_omhdfs = xyes)
1166
1167
1168 AC_CONFIG_FILES([Makefile \
1169                 runtime/Makefile \
1170                 tools/Makefile \
1171                 doc/Makefile \
1172                 plugins/imudp/Makefile \
1173                 plugins/imtcp/Makefile \
1174                 plugins/im3195/Makefile \
1175                 plugins/imgssapi/Makefile \
1176                 plugins/imuxsock/Makefile \
1177                 plugins/immark/Makefile \
1178                 plugins/imklog/Makefile \
1179                 plugins/imtemplate/Makefile \
1180                 plugins/omtemplate/Makefile \
1181                 plugins/omhdfs/Makefile \
1182                 plugins/omprog/Makefile \
1183                 plugins/omstdout/Makefile \
1184                 plugins/pmrfc3164sd/Makefile \
1185                 plugins/pmlastmsg/Makefile \
1186                 plugins/pmcisconames/Makefile \
1187                 plugins/pmsnare/Makefile \
1188                 plugins/pmaixforwardedfrom/Makefile \
1189                 plugins/omruleset/Makefile \
1190                 plugins/omdbalerting/Makefile \
1191                 plugins/omuxsock/Makefile \
1192                 plugins/imfile/Makefile \
1193                 plugins/imsolaris/Makefile \
1194                 plugins/imptcp/Makefile \
1195                 plugins/impstats/Makefile \
1196                 plugins/imrelp/Makefile \
1197                 plugins/imdiag/Makefile \
1198                 plugins/omtesting/Makefile \
1199                 plugins/omgssapi/Makefile \
1200                 plugins/ommysql/Makefile \
1201                 plugins/ompgsql/Makefile \
1202                 plugins/omrelp/Makefile \
1203                 plugins/omlibdbi/Makefile \
1204                 plugins/ommail/Makefile \
1205                 plugins/omsnmp/Makefile \
1206                 plugins/omoracle/Makefile \
1207                 plugins/omudpspoof/Makefile \
1208                 plugins/sm_cust_bindcdr/Makefile \
1209                 plugins/mmsnmptrapd/Makefile \
1210                 plugins/cust1/Makefile \
1211                 java/Makefile \
1212                 tests/Makefile])
1213 AC_OUTPUT
1214
1215 echo "****************************************************"
1216 echo "rsyslog will be compiled with the following settings:"
1217 echo
1218 echo "    Large file support enabled:               $enable_largefile"
1219 echo "    Networking support enabled:               $enable_inet"
1220 echo "    Regular expressions support enabled:      $enable_regexp"
1221 echo "    Zlib compression support enabled:         $enable_zlib"
1222 echo "    rsyslog runtime will be built:            $enable_rsyslogrt"
1223 echo "    rsyslogd will be built:                   $enable_rsyslogd"
1224 echo "    GUI components will be built:             $enable_gui"
1225 echo "    custom module 1 will be built:            $enable_cust1"
1226 echo "    Unlimited select() support enabled:       $enable_unlimited_select"
1227 echo
1228 echo "---{ input plugins }---"
1229 echo "    Klog functionality enabled:               $enable_klog ($os_type)"
1230 echo "    plain tcp input module enabled:           $enable_imptcp"
1231 echo "    imdiag enabled:                           $enable_imdiag"
1232 echo "    file input module enabled:                $enable_imfile"
1233 echo "    Solaris input module enabled:             $enable_imsolaris"
1234 echo "    periodic statistics module enabled:       $enable_impstats"
1235 echo "    input template module will be compiled:   $enable_imtemplate"
1236 echo
1237 echo "---{ output plugins }---"
1238 echo "    Mail support enabled:                     $enable_mail"
1239 echo "    omprog module will be compiled:           $enable_omprog"
1240 echo "    omstdout module will be compiled:         $enable_omstdout"
1241 echo "    omhdfs module will be compiled:           $enable_omhdfs"
1242 echo "    omruleset module will be compiled:        $enable_omruleset"
1243 echo "    omdbalerting module will be compiled:     $enable_omdbalerting"
1244 echo "    omudpspoof module will be compiled:       $enable_omudpspoof"
1245 echo "    omuxsock module will be compiled:         $enable_omuxsock"
1246 echo "    output template module will be compiled:  $enable_omtemplate"
1247 echo
1248 echo "---{ parser modules }---"
1249 echo "    pmrfc3164sd module will be compiled:      $enable_pmrfc3164sd"
1250 echo "    pmlastmsg module will be compiled:        $enable_pmlastmsg"
1251 echo "    pmcisconames module will be compiled:     $enable_pmcisconames"
1252 echo "    pmaixforwardedfrom module w.be compiled:  $enable_pmaixforwardedfrom"
1253 echo "    pmsnare module will be compiled:          $enable_pmsnare"
1254 echo
1255 echo "---{ message modification modules }---"
1256 echo "    mmsnmptrapd module will be compiled:      $enable_mmsnmptrapd"
1257 echo
1258 echo "---{ strgen modules }---"
1259 echo "    sm_cust_bindcdr module will be compiled:  $enable_sm_cust_bindcdr"
1260 echo
1261 echo "---{ database support }---"
1262 echo "    MySql support enabled:                    $enable_mysql"
1263 echo "    libdbi support enabled:                   $enable_libdbi"
1264 echo "    PostgreSQL support enabled:               $enable_pgsql"
1265 echo "    Oracle (OCI) support enabled:             $enable_oracle"
1266 echo
1267 echo "---{ protocol support }---"
1268 echo "    GnuTLS network stream driver enabled:     $enable_gnutls"
1269 echo "    GSSAPI Kerberos 5 support enabled:        $enable_gssapi_krb5"
1270 echo "    RELP support enabled:                     $enable_relp"
1271 echo "    SNMP support enabled:                     $enable_snmp"
1272 echo
1273 echo "---{ debugging support }---"
1274 echo "    Testbench enabled:                        $enable_testbench"
1275 echo "    Extended Testbench enabled:               $enable_extended_tests"
1276 echo "    MySQL Tests enabled:                      $enable_mysql_tests"
1277 echo "    Debug mode enabled:                       $enable_debug"
1278 echo "    Runtime Instrumentation enabled:          $enable_rtinst"
1279 echo "    Diagnostic tools enabled:                 $enable_diagtools"
1280 echo "    Enhanced memory checking enabled:         $enable_memcheck"
1281 echo "    Valgrind support settings enabled:        $enable_valgrind"
1282 echo