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