3 dnl Process this file with autoconf to produce a configure script.
5 dnl require a recent autoconf
7 AC_INIT([bacula], m4_esyscmd([sed -n -e 's/^.*VERSION.*"\(.*\)"$/\1/p' ../src/version.h src/version.h 2> /dev/null | tr -d '\n']))
8 AC_CONFIG_SRCDIR(src/version.h)
16 AC_CONFIG_AUX_DIR(${BUILD_DIR}/autoconf)
17 AC_CONFIG_HEADERS(src/config.h:autoconf/config.h.in)
19 dnl minimal Win32 stuff for "make clean"
20 WIN32BUILDDIR=${BUILD_DIR}/src/win32
21 WIN32MAINDIR=${BUILD_DIR}
22 WIN32TOPDIR=${TOP_DIR}
23 AC_SUBST(WIN32BUILDDIR)
24 AC_SUBST(WIN32MAINDIR)
27 dnl search for true and false programs.
28 AC_PATH_PROGS(TRUEPRG, true, :)
29 AC_PATH_PROGS(FALSEPRG, false, :)
34 if test "x$BACULA" != x; then
35 post_host=`echo -${BACULA} | tr 'A-Z ' 'a-z-'`
37 BACULA=${BACULA:-Bacula}
38 VERSION=`sed -n -e 's/^.*VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
39 DATE=`sed -n -e 's/^.*[ \t]*BDATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
40 LSMDATE=`sed -n -e 's/^.*LSMDATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
41 BDB_VERSION=`sed -n -e 's/^.*BDB_VERSION \(.*\)$/\1/p' ${srcdir}/src/cats/cats.h`
46 AC_SUBST(post_host)dnl
47 AC_SUBST(BDB_VERSION)dnl
50 dnl can be overwritten by specific values from version.h
51 LIBBAC_LT_RELEASE=`sed -n -e 's/^#.*LIBBAC_LT_RELEASE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
52 LIBBACCFG_LT_RELEASE=`sed -n -e 's/^#.*LIBBACCFG_LT_RELEASE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
53 LIBBACPY_LT_RELEASE=`sed -n -e 's/^#.*LIBBACPY_LT_RELEASE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
55 LIBBAC_LT_RELEASE=${LIBBAC_LT_RELEASE:-$VERSION}
56 LIBBACCFG_LT_RELEASE=${LIBBACCFG_LT_RELEASE:-$VERSION}
57 LIBBACPY_LT_RELEASE=${LIBBACPY_LT_RELEASE:-$VERSION}
59 AC_SUBST(LIBBAC_LT_RELEASE)dnl
60 AC_SUBST(LIBBACCFG_LT_RELEASE)dnl
61 AC_SUBST(LIBBACPY_LT_RELEASE)dnl
64 dnl can be overwritten by specific values from version.h
65 LIBBACSQL_LT_RELEASE=`sed -n -e 's/^#.*LIBBACSQL_LT_RELEASE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
66 LIBBACCATS_LT_RELEASE=`sed -n -e 's/^#.*LIBBACCATS_LT_RELEASE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
68 LIBBACSQL_LT_RELEASE=${LIBBACSQL_LT_RELEASE:-$VERSION}
69 LIBBACCATS_LT_RELEASE=${LIBBACCATS_LT_RELEASE:-$VERSION}
71 AC_SUBST(LIBBACSQL_LT_RELEASE)dnl
72 AC_SUBST(LIBBACCATS_LT_RELEASE)dnl
75 dnl can be overwritten by specific values from version.h
76 LIBBACFIND_LT_RELEASE=`sed -n -e 's/^#.*LIBBACFIND_LT_RELEASE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
78 LIBBACFIND_LT_RELEASE=${LIBBACFIND_LT_RELEASE:-$VERSION}
80 AC_SUBST(LIBBACFIND_LT_RELEASE)dnl
82 echo "configuring for ${BACULA} $VERSION ($DATE)"
85 dnl -------------------------------------------------------
86 dnl Check for compiler.
87 dnl ------------------------------------------------------
91 AC_PROG_CC_C_O dnl Determine if C compiler support -c -o.
92 AC_PROG_GCC_TRADITIONAL dnl Determine if ioctl() need -traditional.
96 if test "x$BASECC" = xgcc; then
100 AC_PATH_PROG(CXX, $CXX, $CXX)
101 if test ! -e $CXX; then
102 AC_MSG_ERROR(Unable to find C++ compiler)
105 dnl -------------------------------------------------------
106 dnl Check for programs.
107 dnl ------------------------------------------------------
109 AC_PATH_PROG(MV, mv, mv)
111 dnl If we name the variable RM it will shadow the RM variable in the configure script and we overwrite the
112 dnl value with the name of the rm command and not rm -f which is its normal content. This gives all kind
113 dnl of strange output of the configure script (like things don't exist etc.).
114 dnl So we name it REMOVE (more software has run into this problem)
115 AC_PATH_PROG(REMOVE, rm, rm)
116 AC_PATH_PROG(CP, cp, cp)
117 AC_PATH_PROG(SED, sed, sed)
118 AC_PATH_PROG(ECHO, echo, echo)
119 AC_PATH_PROG(CMP, cmp, cmp)
120 AC_PATH_PROG(TBL, tbl, tbl)
121 AC_PATH_PROG(AR, ar, ar)
122 AC_PATH_PROG(OPENSSL, openssl, none)
123 AC_PATH_PROG(MTX, mtx, mtx)
124 AC_PATH_PROG(DD, dd, dd)
125 AC_PATH_PROG(MKISOFS, mkisofs, mkisofs)
126 AC_PATH_PROG(PYTHON, python, python)
127 AC_PATH_PROG(GROWISOFS, growisofs, growisofs)
128 AC_PATH_PROG(DVDRWMEDIAINFO, dvd+rw-mediainfo, dvd+rw-mediainfo)
129 AC_PATH_PROG(DVDRWFORMAT, dvd+rw-format, dvd+rw-format)
130 AC_PATH_PROG(PKGCONFIG, pkg-config, pkg-config)
131 AC_PATH_PROG(QMAKE, qmake, none)
132 AC_PATH_PROG(GMAKE, gmake, none)
133 AC_ARG_VAR(WXCONFIG, [wx-config command. On some systems, you must set it to wx-config-2.6 to use wxWidgets 2.6.])
134 if test "x$WXCONFIG" = x; then
137 AC_PATH_PROG(WXCONFIG, ${WXCONFIG}, ${WXCONFIG})
138 AC_ARG_VAR(WXFLAGS, [Parameters to pass to wx-config (e.g. --unicode=no).])
139 AC_PATH_PROG(CDRECORD, cdrecord, cdrecord)
140 AC_PATH_PROG(PIDOF, pidof, pidof)
142 # Some AWK programs fail, so test it and warn the user
143 if echo xfoo | $AWK 'BEGIN { prog=ARGV[1]; ARGC=1 }
144 { if ((prog == $2) || (("(" prog ")") == $2) ||
145 (("[" prog "]") == $2) ||
146 ((prog ":") == $2)) { print $1 ; exit 0 } }' xfoo>/dev/null; then :;
148 AC_MSG_ERROR([!!!!!!!!! WARNING !!!!!!!!!!!!!!
149 The regex engine of $AWK is too broken to be used you
150 might want to install GNU AWK.
151 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!])
154 AC_PATH_PROG(AWK, $THE_AWK, $THE_AWK)
157 test -n "$ARFLAG" || ARFLAGS="cr"
164 AC_SUBST(LOCAL_CFLAGS)
165 AC_SUBST(LOCAL_LDFLAGS)
168 dnl --------------------------------------------------
170 dnl --------------------------------------------------
172 AC_ARG_ENABLE(libtool,
173 AC_HELP_STRING([--enable-libtool], [enable building using GNU libtool @<:@default=yes@:>@]),
175 if test x$enableval = xno; then
180 LT_INIT([shared disable-static])
183 if test x$use_libtool != xno; then
184 DEFAULT_OBJECT_TYPE=".lo"
185 DEFAULT_ARCHIVE_TYPE=".la"
186 DEFAULT_SHARED_OBJECT_TYPE=".la"
187 LIBTOOL="\$(LIBTOOL)"
188 LIBTOOL_INSTALL_TARGET="libtool-install"
189 LIBTOOL_UNINSTALL_TARGET="libtool-uninstall"
190 LIBTOOL_CLEAN_TARGET="libtool-clean"
191 QMAKE_LIBTOOL="${BUILD_DIR}/libtool"
192 FD_PLUGIN_DIR="src/plugins/fd"
195 DEFAULT_OBJECT_TYPE=".o"
196 DEFAULT_ARCHIVE_TYPE=".a"
197 DEFAULT_SHARED_OBJECT_TYPE=".so"
198 LIBTOOL="# \$(LIBTOOL)"
199 LIBTOOL_INSTALL_TARGET=""
200 LIBTOOL_UNINSTALL_TARGET=""
201 LIBTOOL_CLEAN_TARGET=""
202 QMAKE_LIBTOOL="# ${BUILD_DIR}/libtool"
207 AC_SUBST(DEFAULT_OBJECT_TYPE)
208 AC_SUBST(DEFAULT_ARCHIVE_TYPE)
209 AC_SUBST(DEFAULT_SHARED_OBJECT_TYPE)
211 AC_SUBST(LIBTOOL_INSTALL_TARGET)
212 AC_SUBST(LIBTOOL_UNINSTALL_TARGET)
213 AC_SUBST(LIBTOOL_CLEAN_TARGET)
214 AC_SUBST(QMAKE_LIBTOOL)
215 AC_SUBST(FD_PLUGIN_DIR)
217 dnl --------------------------------------------------
218 dnl Include file handling
219 dnl --------------------------------------------------
220 AC_ARG_ENABLE(includes,
221 AC_HELP_STRING([--enable-includes], [enable installing of include files @<:@default=no@:>@]),
223 if test x$enableval = xyes; then
229 dnl It only makes sense to install include files when you install libraries which only happens when
230 dnl libtool is enabled
232 if test x$use_libtool != xno -a x$install_includes = xyes; then
233 INCLUDE_INSTALL_TARGET="install-includes"
234 INCLUDE_UNINSTALL_TARGET="uninstall-includes"
236 INCLUDE_INSTALL_TARGET=""
237 INCLUDE_UNINSTALL_TARGET=""
239 AC_SUBST(INCLUDE_INSTALL_TARGET)
240 AC_SUBST(INCLUDE_UNINSTALL_TARGET)
242 dnl --------------------------------------------------
243 dnl Bacula OP Sys determination (see aclocal.m4)
244 dnl --------------------------------------------------
247 dnl -----------------------------------------------------------
248 dnl Bacula OPSys Distribution determination (see aclocal.m4)
249 dnl ----------------------------------------------------------
250 BA_CHECK_OPSYS_DISTNAME
252 dnl --------------------------------------------------
253 dnl Suppport for gettext (translations)
254 dnl By default, $datarootdir is ${prefix}/share
255 dnl --------------------------------------------------
256 AM_GNU_GETTEXT([external])
258 dnl ------------------------------------------------------------------
259 dnl If the user has not set --prefix, we set our default to nothing.
260 dnl In this case, if the user has not set --sysconfdir, we set it
261 dnl to the package default of /etc/bacula. If either --prefix or
262 dnl --sysconfdir is set, we leave sysconfdir alone except to eval it.
263 dnl If the user has not set --libdir, we set it to the package
264 dnl default of /usr/lib. If either --prefix or --libdir is set,
265 dnl we leave libdir alone except to eval it. If the user has not set
266 dnl --includedir, we set it to the package default of /usr/include.
267 dnl If either --prefix or --includedir is set, we leave includedir
268 dnl alone except to eval it
269 dnl ------------------------------------------------------------------
270 os_name=`uname -s 2>/dev/null`
271 if test x${prefix} = xNONE ; then
272 if test `eval echo ${sysconfdir}` = NONE/etc ; then
273 sysconfdir=/etc/bacula
276 if test `eval echo ${libdir}` = NONE/lib ; then
279 os_processor=`uname -p 2>/dev/null`
280 case ${os_processor} in
295 if test `eval echo ${includedir}` = NONE/include ; then
296 includedir=/usr/include
299 if test `eval echo ${datarootdir}` = NONE/share ; then
300 datarootdir=/usr/share
305 dnl -------------------------------------------------------------------------
306 dnl If the user has not set --exec-prefix, we default to ${prefix}
307 dnl -------------------------------------------------------------------------
308 if test x${exec_prefix} = xNONE ; then
309 exec_prefix=${prefix}
312 sysconfdir=`eval echo ${sysconfdir}`
313 datarootdir=`eval echo ${datarootdir}`
314 docdir=`eval echo ${docdir}`
315 htmldir=`eval echo ${htmldir}`
316 libdir=`eval echo ${libdir}`
317 includedir=`eval echo ${includedir}`
318 localedir=`eval echo ${datarootdir}/locale`
319 AC_DEFINE_UNQUOTED(SYSCONFDIR, "$sysconfdir")
320 AC_DEFINE_UNQUOTED(LOCALEDIR, "$localedir")
322 dnl ------------------------------------------------------------------
323 dnl If the user has not set --sbindir, we set our default as /sbin
324 dnl ------------------------------------------------------------------
325 if test x$sbindir = x'${exec_prefix}/sbin' ; then
326 sbindir=${exec_prefix}/sbin
328 sbindir=`eval echo ${sbindir}`
330 dnl -------------------------------------------------------------------------
331 dnl If the user has not set --mandir, we default to /usr/share/man
332 dnl -------------------------------------------------------------------------
333 if test x$mandir = x'${prefix}/man' ; then
334 mandir=/usr/share/man
337 dnl -------------------------------------------------------------------------
338 dnl If the user has not set --htmldir, we default to /usr/share/doc/bacula/html
339 dnl -------------------------------------------------------------------------
340 if test x$htmldir = x'/usr/share/doc/bacula/' ; then
341 htmldir=`eval echo ${docdir}html`
344 dnl -------------------------------------------------------------------------
345 dnl If the user has not set --docdir, we default to /usr/share/doc/bacula
346 dnl -------------------------------------------------------------------------
347 if test x$docdir = x'/usr/share/doc/' ; then
348 docdir=`eval echo ${docdir}bacula`
352 AC_PATH_PROGS(MSGFMT, msgfmt, no)
353 if test "$MSGFMT" = "no"
355 echo 'msgfmt program not found, disabling NLS !'
357 USE_INCLUDED_LIBINTL=no
362 support_smartalloc=yes
367 support_wx_console=no
368 support_tray_monitor=no
373 support_static_tools=no
376 support_static_dir=no
377 support_static_cons=no
385 dnl --------------------------------------------------------------------------
386 dnl CHECKING COMMAND LINE OPTIONS
387 dnl --------------------------------------------------------------------------
389 dnl -------------------------------------------
390 dnl gnome -- no longer supported
391 dnl -------------------------------------------
393 AC_HELP_STRING([--enable-gnome], [enable build of bgnome-console GUI @<:@default=no@:>@]),
395 if test x$enableval = xyes; then
402 if test x$support_gnome = xyes; then
403 AC_MSG_ERROR(bgnome-console no longer supported)
404 AC_MSG_ERROR(--enable-gnome option no longer supported)
406 # AC_SUBST(GNOME_DIR)
408 dnl -------------------------------------------
409 dnl bat (default off)
410 dnl -------------------------------------------
412 AC_HELP_STRING([--enable-bat], [enable build of bat Qt4 GUI @<:@default=no@:>@]),
414 if test x$enableval = xyes; then
415 AC_DEFINE(HAVE_BAT, 1, [Set if Bacula bat Qt4 GUI support enabled])
422 if test x$support_bat = xyes; then
423 abc=`$PKGCONFIG --atleast-version=4.2 QtGui`
425 if test $pkg = 0; then
426 BAT_DIR=src/qt-console
428 AC_MSG_ERROR(Unable to find Qt4 installation needed by bat)
433 dnl The qwt library was used with bat, but that is no longer the case
441 dnl if test x$support_bat = xyes; then
442 dnl AC_MSG_CHECKING(for qwt support)
444 dnl AC_HELP_STRING([--with-qwt@<:@=DIR@:>@], [specify qwt library directory]),
446 dnl case "$with_qwt" in
451 dnl if test -f ${with_qwt}/include/qwt.h; then
452 dnl QWT_INC="${with_qwt}/include"
453 dnl QWT_LDFLAGS="-L${with_qwt}/lib"
463 dnl dnl Search in standard places, or --with-qwt not specified
465 dnl if test $no_qwt = no; then
466 dnl if test x$QWT_INC = x; then
467 dnl for root in /usr /usr/local; do
468 dnl for ver in qwt qwt5 qwt-qt4; do
469 dnl if test -f ${root}/include/${ver}/qwt.h; then
470 dnl QWT_INC="${root}/include/${ver}"
471 dnl if test -d ${root}/lib64/; then
472 dnl QWT_LDFLAGS="-L${root}/lib64"
473 dnl elif test -d ${root}/lib/64/; then
474 dnl QWT_LDFLAGS="-L${root}/64"
476 dnl QWT_LDFLAGS="-L${root}/lib"
487 dnl if test x$QWT_INC = x; then
488 dnl AC_MSG_RESULT(no)
490 dnl AC_DEFINE(HAVE_QWT, 1, [Set if bat QWT library found])
491 dnl AC_MSG_RESULT(yes)
497 AC_SUBST(QWT_LDFLAGS)
501 dnl -------------------------------------------
502 dnl bwx-console (default off)
503 dnl -------------------------------------------
504 AC_ARG_ENABLE(bwx-console,
505 AC_HELP_STRING([--enable-bwx-console], [enable build of wxWidgets console @<:@default=no@:>@]),
507 if test x$enableval = xyes; then
508 support_wx_console=yes
514 if test x$support_wx_console = xyes; then
515 abc=`$WXCONFIG $WXFLAGS --cppflags`
517 if test $pkg = 0; then
518 wx_version="wxWidgets `$WXCONFIG $WXFLAGS --release`"
519 WXCONS_CPPFLAGS=`$WXCONFIG $WXFLAGS --cppflags`
520 WXCONS_LDFLAGS=`$WXCONFIG $WXFLAGS --libs`
522 AC_SUBST(WXCONS_CPPFLAGS)
523 AC_SUBST(WXCONS_LDFLAGS)
524 WX_DIR="src/wx-console"
527 echo "wx-config program not found. bwx-console disabled."
529 support_wx_console=no
534 dnl -------------------------------------------
535 dnl tray-monitor (default off)
536 dnl -------------------------------------------
537 AC_ARG_ENABLE(tray-monitor,
538 AC_HELP_STRING([--enable-tray-monitor], [enable build of Gnome tray monitor (compatible with KDE @<:@default=no@:>@]),
540 if test x$enableval = xyes; then
541 support_tray_monitor=yes
547 if test x$support_tray_monitor = xyes; then
548 abc=`$PKGCONFIG --exists gtk+-2.0`
550 if test $pkg = 0; then
551 TRAY_MONITOR_CPPFLAGS=`$PKGCONFIG --cflags gtk+-2.0`
552 TRAY_MONITOR_LDFLAGS=`$PKGCONFIG --libs gtk+-2.0`
553 AC_SUBST(TRAY_MONITOR_CPPFLAGS)
554 AC_SUBST(TRAY_MONITOR_LDFLAGS)
555 TRAY_MONITOR_DIR=src/tray-monitor
556 abc=`$PKGCONFIG --atleast-version=2.4 gtk+-2.0`
558 if test $pkg = 0; then
559 AC_DEFINE(HAVE_GTK_2_4, 1, [Set if you have GTK 4.2 or greater loaded])
563 AC_SUBST(TRAY_MONITOR_DIR)
565 dnl -------------------------------------------
566 dnl smartalloc (default off)
567 dnl -------------------------------------------
568 AC_ARG_ENABLE(smartalloc,
569 AC_HELP_STRING([--enable-smartalloc], [enable smartalloc debugging support @<:@default=no@:>@]),
571 if test x$enableval = xno; then
572 support_smartalloc=no
577 if test x$support_smartalloc = xyes; then
578 AC_DEFINE(SMARTALLOC, 1, [Set if you want Smartalloc enabled])
581 dnl -------------------------------------------
582 dnl Lock Manager (default off)
583 dnl -------------------------------------------
584 AC_ARG_ENABLE(lockmgr,
585 AC_HELP_STRING([--enable-lockmgr], [enable lock manager support @<:@default=no@:>@]),
587 if test x$enableval = xyes; then
593 if test x$support_lockmgr = xyes; then
594 AC_DEFINE(_USE_LOCKMGR, 1, [Set if you want Lock Manager enabled])
598 dnl -------------------------------------------
599 dnl static-tools (default off)
600 dnl -------------------------------------------
601 AC_ARG_ENABLE(static-tools,
602 AC_HELP_STRING([--enable-static-tools], [enable static tape tools @<:@default=no@:>@]),
604 if test x$enableval = xyes; then
605 if test x$use_libtool = xyes; then
606 AC_MSG_ERROR([Libtool is enabled, not compatible with static tools,
607 please rerun configure with --disable-libtool])
609 support_static_tools=yes
615 if test x$support_static_tools = xyes; then
616 TTOOL_LDFLAGS="-static"
618 AC_SUBST(TTOOL_LDFLAGS)
620 dnl -------------------------------------------
621 dnl static-fd (default off)
622 dnl -------------------------------------------
623 AC_ARG_ENABLE(static-fd,
624 AC_HELP_STRING([--enable-static-fd], [enable static File daemon @<:@default=no@:>@]),
626 if test x$enableval = xyes; then
627 if test x$use_libtool = xyes; then
628 AC_MSG_ERROR([Libtool is enabled, not compatible with static tools,
629 please rerun configure with --disable-libtool])
631 support_static_fd=yes
637 if test x$support_static_fd = xyes; then
638 STATIC_FD="static-bacula-fd"
642 dnl -------------------------------------------
643 dnl static-sd (default off)
644 dnl -------------------------------------------
645 AC_ARG_ENABLE(static-sd,
646 AC_HELP_STRING([--enable-static-sd], [enable static Storage daemon @<:@default=no@:>@]),
648 if test x$enableval = xyes; then
649 if test x$use_libtool = xyes; then
650 AC_MSG_ERROR([Libtool is enabled, not compatible with static tools,
651 please rerun configure with --disable-libtool])
653 support_static_sd=yes
659 if test x$support_static_sd = xyes; then
660 STATIC_SD="static-bacula-sd"
664 dnl -------------------------------------------
665 dnl static-dir (default off)
666 dnl -------------------------------------------
667 AC_ARG_ENABLE(static-dir,
668 AC_HELP_STRING([--enable-static-dir], [enable static Director @<:@default=no@:>@]),
670 if test x$enableval = xyes; then
671 if test x$use_libtool = xyes; then
672 AC_MSG_ERROR([Libtool is enabled, not compatible with static tools,
673 please rerun configure with --disable-libtool])
675 support_static_dir=yes
681 if test x$support_static_dir = xyes; then
682 STATIC_DIR="static-bacula-dir"
686 dnl -------------------------------------------
687 dnl static-cons (default off)
688 dnl -------------------------------------------
689 AC_ARG_ENABLE(static-cons,
690 AC_HELP_STRING([--enable-static-cons], [enable static Console @<:@default=no@:>@]),
692 if test x$enableval = xyes; then
693 if test x$use_libtool = xyes; then
694 AC_MSG_ERROR([Libtool is enabled, not compatible with static tools,
695 please rerun configure with --disable-libtool])
697 support_static_cons=yes
705 if test x$support_static_cons = xyes; then
706 STATIC_CONS="static-bconsole"
707 STATIC_GNOME_CONS="static-bgnome-console"
708 STATIC_WX_CONS="static-bwx-console"
710 AC_SUBST(STATIC_CONS)
711 AC_SUBST(STATIC_GNOME_CONS)
712 AC_SUBST(STATIC_WX_CONS)
714 dnl -------------------------------------------
715 dnl client_only (default off)
716 dnl -------------------------------------------
717 AC_ARG_ENABLE(client-only,
718 AC_HELP_STRING([--enable-client-only], [build client (File daemon) only @<:@default=no@:>@]),
720 if test x$enableval = xyes; then
721 build_client_only=yes
727 if test x$build_client_only = xno; then
734 dnl -------------------------------------------
735 dnl director (default on)
736 dnl -------------------------------------------
737 AC_ARG_ENABLE(build-dird,
738 AC_HELP_STRING([--enable-build-dird], [enable building of dird (Director) @<:@default=yes@:>@]),
740 if test x$enableval = xno; then
745 if test x$build_dird = xyes; then
750 DIR_TOOLS="NODIRTOOLS"
755 dnl -------------------------------------------
756 dnl stored (default on)
757 dnl -------------------------------------------
758 AC_ARG_ENABLE(build-stored,
759 AC_HELP_STRING([--enable-build-stored], [enable building of stored (Storage daemon) @<:@default=yes@:>@]),
761 if test x$enableval = xno; then
766 if test x$build_stored = xyes; then
767 STORED_DIR="src/stored"
773 dnl ---------------------------------------------------
774 dnl Check for conio (Bacula readline substitute)(
775 dnl ---------------------------------------------------
776 dnl this allows you to turn it completely off
778 AC_HELP_STRING([--disable-conio], [disable conio support @<:@default=no@:>@]),
780 if test x$enableval = xno; then
787 dnl ---------------------------------------------------
788 dnl Check for IPv6 support
789 dnl ---------------------------------------------------
790 dnl this allows you to turn it completely off
793 AC_HELP_STRING([--enable-ipv6], [enable ipv6 support @<:@default=yes@:>@]),
795 if test x$enableval = xno; then
801 if test x$support_ipv6 = xyes; then
802 AC_TRY_LINK([ #include <sys/types.h>
803 #include <sys/socket.h>
804 #include <netinet/in.h>], [struct sockaddr_in6 s; struct in6_addr t=in6addr_any; int i=AF_INET6; s; t.s6_addr[0] = 0;],
805 [support_ipv6=yes], [support_ipv6=no])
808 if test x$support_ipv6 = xyes; then
809 AC_DEFINE(HAVE_IPV6,1,[Whether to enable IPv6 support])
813 AC_CHECK_HEADER(curses.h, [
814 AC_CHECK_LIB(tinfo, tgetent, [ TERM_LIB="-ltinfo" ], [
815 AC_CHECK_LIB(ncurses, tgetent, [ TERM_LIB="-lncurses" ], [
816 AC_CHECK_LIB(termcap, tgetent, [ TERM_LIB="-ltermcap" ])
820 [ AC_CHECK_HEADERS(curses.h)
821 AC_CHECK_HEADER(term.h,
822 [ AC_CHECK_LIB(curses, tgetent,
823 [ TERM_LIB="-lcurses" ] )
829 if test x$support_conio = xyes; then
830 if test x$TERM_LIB != x; then
836 AC_DEFINE(HAVE_CONIO, 1, [Set if Bacula conio support enabled])
838 echo " "; echo "Required libraries not found. CONIO turned off ..."; echo " "
843 dnl ---------------------------------------------------
844 dnl Check for readline support/directory (default off)
845 dnl ---------------------------------------------------
846 dnl this allows you to turn it completely off
847 AC_ARG_ENABLE(readline,
848 AC_HELP_STRING([--disable-readline], [disable readline support @<:@default=yes@:>@]),
850 if test x$enableval = xno; then
855 if test x$TERM_LIB = x ; then
861 if test x$support_readline = xyes; then
862 AC_ARG_WITH(readline,
863 AC_HELP_STRING([--with-readline@<:@=DIR@:>@], [specify readline library directory]),
865 case "$with_readline" in
870 if test -f ${with_readline}/readline.h; then
871 CONS_INC="-I${with_readline}"
872 CONS_LDFLAGS="-L$with_readline"
873 elif test -f ${with_readline}/include/readline/readline.h; then
874 CONS_INC="-I${with_readline}/include/readline"
875 CONS_LDFLAGS="-L${with_readline}/lib"
876 with_readline="${with_readline}/include/readline"
878 with_readline="/usr/include/readline"
881 AC_CHECK_HEADER(${with_readline}/readline.h,
883 AC_DEFINE(HAVE_READLINE, 1, [Set to enable readline support])
884 CONS_LIBS="-lreadline -lhistory $TERM_LIB"
888 echo "readline.h not found. readline turned off ..."
895 dnl check for standard readline library
896 AC_CHECK_HEADER(/usr/include/readline/readline.h,
898 AC_DEFINE(HAVE_READLINE, 1, [Set to enable readline support])
900 CONS_INC="-I/usr/include/readline"
901 CONS_LIBS="-lreadline $TERM_LIB"
903 dnl Did not find standard library, so try Bacula's default
904 AC_CHECK_HEADER(${TOP_DIR}/depkgs/readline/readline.h,
906 AC_DEFINE(HAVE_READLINE, 1, [Set to enable readline support])
908 CONS_INC="-I${TOP_DIR}/depkgs/readline"
909 CONS_LIBS="-lreadline -lhistory $TERM_LIB"
910 CONS_LDFLAGS="-L${TOP_DIR}/depkgs/readline"
911 PRTREADLINE_SRC="${TOP_DIR}/depkgs/readline"
914 echo "readline.h not found. readline turned off ..."
928 AC_SUBST(CONS_LDFLAGS)
929 AC_SUBST(READLINE_SRC)
931 dnl Minimal stuff for readline Makefile configuration
936 AC_CHECK_FUNCS(strcasecmp select setenv putenv tcgetattr lstat lchown)
937 AC_CHECK_FUNCS(nanosleep nl_langinfo)
938 AC_CHECK_HEADERS(varargs.h)
940 dnl End of readline/conio stuff
941 dnl -----------------------------------------------------------------------
943 dnl -----------------------------------------------------------------------
944 dnl Check for Python support
946 AC_MSG_CHECKING(for Python support)
948 AC_HELP_STRING([--with-python@<:@=DIR@:>@], [Include Python support. DIR is the Python base install directory, default is to search through a number of common places for the Python files.]),
952 if test "$withval" != "no"; then
953 if test "$withval" = "yes"; then
954 if test -e /usr/bin/python-config ; then
955 PYTHON_INCDIR=`/usr/bin/python-config --includes`
956 PYTHON_LIBS=`/usr/bin/python-config --libs`
958 for python_root in /usr /usr/local /usr/sfw; do
959 for ver in python2.2 python2.3 python2.4 python2.5 python2.6 python3; do
960 if test -f $python_root/include/${ver}/Python.h; then
961 PYTHON_INCDIR=-I$python_root/include/${ver}
962 if test -d $python_root/lib64/${ver}/config; then
963 PYTHON_LIBS="-L$python_root/lib64/${ver}/config -l${ver}"
965 PYTHON_LIBS="-L$python_root/lib/${ver}/config -l${ver}"
972 if test x$PYTHON_INCDIR = x; then
973 if test -f $prefix/include/Python.h; then
974 PYTHON_INCDIR=-I$prefix/include
975 if test -d $prefix/lib64/config; then
976 PYTHON_LIBS="-L$prefix/lib64/config -lpython"
978 PYTHON_LIBS="-L$prefix/lib/config -lpython"
982 AC_MSG_ERROR(Unable to find Python.h in standard locations)
987 if test -e $withval/bin/python-config ; then
988 PYTHON_INCDIR=`$withval/bin/python-config --includes`
989 PYTHON_LIBS=`$withval/bin/python-config --libs`
990 elif test -f $withval/Python.h; then
991 PYTHON_INCDIR=-I$withval
992 PYTHON_LIBS="-L$withval/config -lpython"
993 elif test -f $withval/include/Python.h; then
994 PYTHON_INCDIR=-I$withval/include
995 if test -d $withval/lib64/config; then
996 PYTHON_LIBS="-L$withval/lib64/config -lpython"
998 PYTHON_LIBS="-L$withval/lib/config -lpython"
1000 elif test -f $withval/include/python/Python.h; then
1001 PYTHON_INCDIR=-I$withval/include/python
1002 if test -d $withval/lib64/python/config; then
1003 PYTHON_LIBS="-L$withval/lib64/python/config -lpython"
1005 PYTHON_LIBS="-L$withval/lib/python/config -lpython"
1009 AC_MSG_ERROR(Invalid Python directory $withval - unable to find Python.h under $withval)
1013 AC_DEFINE([HAVE_PYTHON], 1)
1016 AC_MSG_NOTICE(checking for more Python libs)
1017 saved_LIBS="$LIBS"; LIBS=
1018 AC_SEARCH_LIBS(shm_open, [rt])
1019 AC_CHECK_LIB(util, openpty)
1020 PYTHON_LIBS="$PYTHON_LIBS $LIBS"
1029 AC_SUBST(PYTHON_LIBS)
1030 AC_SUBST(PYTHON_INCDIR)
1033 dnl Find where sockets are (especially for Solaris)
1034 dnl Do this before the TCP Wrappers test since tcp wrappers
1035 dnl uses the socket library and some linkers are stupid.
1037 AC_CHECK_FUNC(socket,
1038 AC_MSG_RESULT(using libc's socket),
1039 AC_CHECK_LIB(xnet,socket)
1040 AC_CHECK_LIB(socket,socket)
1041 AC_CHECK_LIB(inet,socket))
1043 dnl -----------------------------------------------------------
1044 dnl Check whether user wants TCP wrappers support (default off)
1045 dnl -----------------------------------------------------------
1048 AC_ARG_WITH(tcp-wrappers,
1049 AC_HELP_STRING([--with-tcp-wrappers@<:@=DIR@:>@], [enable tcpwrappers support]),
1051 if test "x$withval" != "xno" ; then
1053 LIBS="$saved_LIBS -lwrap"
1054 AC_SEARCH_LIBS(nanosleep, [rt])
1055 AC_MSG_CHECKING(for libwrap)
1058 #include <sys/types.h>
1060 int deny_severity = 0;
1061 int allow_severity = 0;
1062 struct request_info *req;
1067 AC_DEFINE(HAVE_LIBWRAP, 1, [Set to enable libwraper support])
1072 LIBS="$saved_LIBS -lwrap -lnsl"
1073 WRAPLIBS="$saved_LIBS -lwrap -lnsl"
1076 #include <sys/types.h>
1078 int deny_severity = 0;
1079 int allow_severity = 0;
1080 struct request_info *req;
1085 AC_DEFINE(HAVE_LIBWRAP, 1, [Set to enable libwraper support])
1090 AC_MSG_ERROR([*** libwrap missing])
1099 dnl -----------------------------------------------------------
1100 dnl Check whether OpenSSL is available
1101 dnl -----------------------------------------------------------
1102 AC_MSG_CHECKING([for OpenSSL])
1103 dnl The following uses quadrigraphs:
1106 AC_ARG_WITH(openssl,
1107 AC_HELP_STRING([--with-openssl@<:@=DIR@:>@], [Include OpenSSL support. DIR is the OpenSSL base]),
1109 with_openssl_directory=${withval}
1113 if test "x$with_openssl_directory" != "xno"; then
1114 OPENSSL_LIBS="-lssl -lcrypto"
1117 if test "x$with_openssl_directory" != "xyes" && test x"${with_openssl_directory}" != "x"; then
1119 # Make sure the $with_openssl_directory also makes sense
1121 if test -d "$with_openssl_directory/lib" -a -d "$with_openssl_directory/include"; then
1122 OPENSSL_LIBS="-L$with_openssl_directory/lib $OPENSSL_LIBS"
1123 OPENSSL_INC="-I$with_openssl_directory/include $OPENSSL_INC"
1127 saved_LIBS="${LIBS}"
1128 saved_CFLAGS="${CFLAGS}"
1129 LIBS="${saved_LIBS} ${OPENSSL_LIBS}"
1130 CFLAGS="${saved_CFLAGS} ${OPENSSL_INC}"
1134 #include <openssl/ssl.h>
1136 CRYPTO_set_id_callback(NULL);
1139 support_crypto="yes"
1148 #include <openssl/evp.h>
1152 ac_cv_openssl_sha2="yes"
1154 ac_cv_openssl_sha2="no"
1158 dnl Solaris disables greater than 128+ bit encryption in their OpenSSL
1159 dnl implementation, presumably for export reasons. If 192bit AES
1160 dnl is available, we assume that we're running with a 'non-export'
1161 dnl openssl library.
1164 #include <openssl/evp.h>
1168 ac_cv_openssl_export="no"
1170 ac_cv_openssl_export="yes"
1174 AC_MSG_RESULT([$support_tls])
1175 if test "$support_tls" = "yes"; then
1176 AC_DEFINE(HAVE_OPENSSL, 1, [Define if OpenSSL library is available])
1177 AC_DEFINE(HAVE_TLS, 1, [Define if TLS support should be enabled])
1178 AC_DEFINE(HAVE_CRYPTO, 1, [Define if encryption support should be enabled])
1181 if test "$ac_cv_openssl_sha2" = "yes"; then
1182 AC_DEFINE(HAVE_SHA2, 1, [Define if the SHA-2 family of digest algorithms is available])
1185 if test "$ac_cv_openssl_export" = "yes"; then
1186 AC_DEFINE(HAVE_OPENSSL_EXPORT_LIBRARY, 1, [Define if the OpenSSL library is export-contrained to 128bit ciphers])
1189 if test "$support_crypto" = "yes"; then
1190 AC_CHECK_LIB(crypto, EVP_PKEY_encrypt_old, AC_DEFINE(HAVE_OPENSSLv1, 1, [Set if have OpenSSL version 1.x]))
1193 LIBS="${saved_LIBS}"
1194 CFLAGS="${saved_CFLAGS}"
1198 AC_MSG_RESULT([$support_tls])
1201 if test "$support_tls" = "no" -o "$support_crypto" = "no"; then
1206 AC_SUBST(OPENSSL_LIBS)
1207 AC_SUBST(OPENSSL_INC)
1209 dnl -----------------------------------------------------------
1210 dnl dlopen is needed for plugins
1211 dnl -----------------------------------------------------------
1212 AC_SEARCH_LIBS(dlopen, [dl])
1214 dnl ------------------------------------------
1215 dnl Where to place working dir
1216 dnl ------------------------------------------
1217 working_dir=`eval echo ${prefix}/var/bacula/working`
1218 AC_ARG_WITH(working-dir,
1219 AC_HELP_STRING([--with-working-dir=PATH], [specify path of Bacula working directory]),
1221 if test "x$withval" != "xno" ; then
1222 working_dir=$withval
1227 AC_SUBST(working_dir)
1229 dnl ------------------------------------------------------------------
1230 dnl If the user has not set archivedir, we set our default as /tmp
1231 dnl ------------------------------------------------------------------
1233 AC_ARG_WITH(archivedir,
1234 AC_HELP_STRING([--with-archivedir=PATH], [specify path of SD archive directory]),
1236 if test "x$withval" != "xno" ; then
1242 AC_SUBST(archivedir)
1244 dnl ------------------------------------------------------------------
1245 dnl Allow the user to specify the daemon resource name default hostname
1246 dnl ------------------------------------------------------------------
1248 AC_ARG_WITH(basename,
1249 AC_HELP_STRING([--with-basename=RESNAME], [specify base resource name for daemons]),
1251 if test "x$withval" != "xno" ; then
1259 dnl ------------------------------------------------------------------
1260 dnl Allow the user to override the hostname (default = machine hostname)
1261 dnl ------------------------------------------------------------------
1262 hostname=`uname -n | cut -d '.' -f 1`
1263 if test x${hostname} = x ; then
1264 hostname="localhost"
1266 AC_ARG_WITH(hostname,
1267 AC_HELP_STRING([--with-hostname=RESNAME], [specify host name for daemons]),
1269 if test "x$withval" != "xno" ; then
1278 dnl ------------------------------------------
1279 dnl Where to place scriptdir (script files)
1280 dnl ------------------------------------------
1281 scriptdir=`eval echo ${sysconfdir}`
1282 AC_ARG_WITH(scriptdir,
1283 AC_HELP_STRING([--with-scriptdir=PATH], [specify path of Bacula scripts directory]),
1285 if test "x$withval" != "xno" ; then
1294 dnl ------------------------------------------
1295 dnl Where to place bsrdir (bsr files)
1296 dnl ------------------------------------------
1299 AC_HELP_STRING([--with-bsrdir=PATH], [specify path of Bacula bsrs directory]),
1301 if test "x$withval" != "xno" ; then
1309 dnl ------------------------------------------
1310 dnl Where to place logdir (bsr files)
1311 dnl ------------------------------------------
1314 AC_HELP_STRING([--with-logdir=PATH], [specify path of Bacula logs directory]),
1316 if test "x$withval" != "xno" ; then
1325 # ------------------------------------------
1326 # Where to place plugindir (plugin files)
1327 # ------------------------------------------
1328 plugindir=`eval echo ${libdir}`
1329 AC_ARG_WITH(plugindir,
1330 AC_HELP_STRING([--with-plugindir=PATH], [specify path of Bacula plugins directory]),
1332 if test "x$withval" != "xno" ; then
1340 dnl ------------------------------------------
1341 dnl Where to send dump email
1342 dnl ------------------------------------------
1343 dump_email=root@localhost
1344 AC_ARG_WITH(dump-email,
1345 AC_HELP_STRING([--with-dump-email=EMAIL], [dump email address]),
1347 if test "x$withval" != "xno" ; then
1353 AC_SUBST(dump_email)
1355 dnl ------------------------------------------
1356 dnl Where to send job email
1357 dnl ------------------------------------------
1358 job_email=root@localhost
1359 AC_ARG_WITH(job-email,
1360 AC_HELP_STRING([--with-job-email=EMAIL], [job output email address]),
1362 if test "x$withval" != "xno" ; then
1370 dnl ------------------------------------------
1371 dnl Where to find smtp host
1372 dnl ------------------------------------------
1374 AC_ARG_WITH(smtp_host,
1375 AC_HELP_STRING([--with-smtp-host=HOST], [SMTP mail host address]),
1377 if test "x$withval" != "xno" ; then
1385 dnl ------------------------------------
1386 dnl Where to place pid files
1387 dnl ------------------------------------
1389 AC_ARG_WITH(pid-dir,
1390 AC_HELP_STRING([--with-pid-dir=PATH], [specify location of Bacula pid files]),
1392 if test "x$withval" != "xno" ; then
1398 AC_DEFINE_UNQUOTED(_PATH_BACULA_PIDDIR, "$piddir")
1401 dnl ------------------------------------
1402 dnl Where to place subsys "lock file"
1403 dnl ------------------------------------
1404 subsysdir=/var/run/subsys
1405 if test -d /var/run/subsys; then
1406 subsysdir=/var/run/subsys
1407 elif test -d /var/lock/subsys; then
1408 subsysdir=/var/lock/subsys
1410 subsysdir=/var/run/subsys
1412 AC_ARG_WITH(subsys-dir,
1413 AC_HELP_STRING([--with-subsys-dir=PATH], [specify location of Bacula subsys file]),
1415 if test "x$withval" != "xno" ; then
1423 dnl ------------------------------------
1424 dnl Where to start assigning ports
1425 dnl ------------------------------------
1427 AC_ARG_WITH(baseport,
1428 AC_HELP_STRING([--with-baseport=PORT], [specify base port address for daemons]),
1430 if test "x$withval" != "xno" ; then
1437 dir_port=`expr $baseport`
1438 fd_port=`expr $baseport + 1`
1439 sd_port=`expr $fd_port + 1`
1445 dnl ------------------------------------------
1446 dnl Generate passwords
1447 dnl ------------------------------------------
1449 AC_ARG_WITH(dir-password,
1450 AC_HELP_STRING([--with-dir-password=PASSWORD], [specify Director's password]),
1452 if test "x$withval" != "xno" ; then
1453 dir_password=$withval
1458 if test "x$dir_password" = "x" ; then
1459 if test "x$OPENSSL" = "xnone" ; then
1460 key=`autoconf/randpass 33`
1462 key=`openssl rand -base64 33`
1468 AC_ARG_WITH(fd-password,
1469 AC_HELP_STRING([--with-fd-password=PASSWORD], [specify Client's password]),
1471 if test "x$withval" != "xno" ; then
1472 fd_password=$withval
1477 if test "x$fd_password" = "x" ; then
1478 if test "x$OPENSSL" = "xnone" ; then
1479 key=`autoconf/randpass 37`
1481 key=`openssl rand -base64 33`
1487 AC_ARG_WITH(sd-password,
1488 AC_HELP_STRING([--with-sd-password=PASSWORD], [specify Storage daemon's password]),
1490 if test "x$withval" != "xno" ; then
1491 sd_password=$withval
1496 if test "x$sd_password" = "x" ; then
1497 if test "x$OPENSSL" = "xnone" ; then
1498 key=`autoconf/randpass 41`
1500 key=`openssl rand -base64 33`
1506 AC_ARG_WITH(mon-dir-password,
1507 AC_HELP_STRING([--with-mon-dir-password=PASSWORD], [specify Director's password used by the monitor]),
1509 if test "x$withval" != "xno" ; then
1510 mon_dir_password=$withval
1515 if test "x$mon_dir_password" = "x" ; then
1516 if test "x$OPENSSL" = "xnone" ; then
1517 key=`autoconf/randpass 33`
1519 key=`openssl rand -base64 33`
1521 mon_dir_password=$key
1525 AC_ARG_WITH(mon-fd-password,
1526 AC_HELP_STRING([--with-mon-fd-password=PASSWORD], [specify Client's password used by the monitor]),
1528 if test "x$withval" != "xno" ; then
1529 mon_fd_password=$withval
1534 if test "x$mon_fd_password" = "x" ; then
1535 if test "x$OPENSSL" = "xnone" ; then
1536 key=`autoconf/randpass 37`
1538 key=`openssl rand -base64 33`
1540 mon_fd_password=$key
1544 AC_ARG_WITH(mon-sd-password,
1545 AC_HELP_STRING([--with-mon-sd-password=PASSWORD], [specify Storage daemon's password used by the monitor]),
1547 if test "x$withval" != "xno" ; then
1548 mon_sd_password=$withval
1553 if test "x$mon_sd_password" = "x" ; then
1554 if test "x$OPENSSL" = "xnone" ; then
1555 key=`autoconf/randpass 41`
1557 key=`openssl rand -base64 33`
1559 mon_sd_password=$key
1562 AC_SUBST(dir_password)
1563 AC_SUBST(fd_password)
1564 AC_SUBST(sd_password)
1565 AC_SUBST(mon_dir_password)
1566 AC_SUBST(mon_fd_password)
1567 AC_SUBST(mon_sd_password)
1570 dnl Pickup any database name
1573 AC_ARG_WITH(db_name,
1574 AC_HELP_STRING([--with-db-name=DBNAME], [specify database name @<:@default=bacula@:>@]),
1576 if test "x$withval" != "x" ; then
1584 AC_ARG_WITH(db_user,
1585 AC_HELP_STRING([--with-db-user=UNAME], [specify database user @<:@default=bacula@:>@]),
1587 if test "x$withval" != "x" ; then
1595 AC_ARG_WITH(db_password,
1596 AC_HELP_STRING([--with-db-password=PWD], [specify database password @<:@default=*none*@:>@]),
1598 if test "x$withval" != "x" ; then
1599 db_password=$withval
1603 AC_SUBST(db_password)
1606 dnl Pickup a database port
1609 AC_ARG_WITH(db_port,
1610 AC_HELP_STRING([--with-db-port=DBPORT], [specify a database port @<:@default=null@:>@]),
1612 if test "x$withval" != "x" ; then
1620 # Handle users and groups for each daemon
1623 AC_ARG_WITH(dir_user,
1624 AC_HELP_STRING([--with-dir-user=USER], [specify user for Director daemon]),
1626 if test "x$withval" != "x" ; then
1633 AC_ARG_WITH(dir_group,
1634 AC_HELP_STRING([--with-dir-group=GROUP], [specify group for Director daemon]),
1636 if test "x$withval" != "x" ; then
1643 AC_ARG_WITH(sd_user,
1644 AC_HELP_STRING([--with-sd-user=USER], [specify user for Storage daemon]),
1646 if test "x$withval" != "x" ; then
1653 AC_ARG_WITH(sd_group,
1654 AC_HELP_STRING([--with-sd-group=GROUP], [specify group for Storage daemon]),
1656 if test "x$withval" != "x" ; then
1663 AC_ARG_WITH(fd_user,
1664 AC_HELP_STRING([--with-fd-user=USER], [specify user for File daemon]),
1666 if test "x$withval" != "x" ; then
1673 AC_ARG_WITH(fd_group,
1674 AC_HELP_STRING([--with-fd-group=GROUP], [specify group for File daemon]),
1676 if test "x$withval" != "x" ; then
1690 dnl allow setting default executable permissions
1693 AC_ARG_WITH(sbin-perm,
1694 AC_HELP_STRING([--with-sbin-perm=MODE], [specify permissions for sbin binaries @<:@default=0750@:>@]),
1696 if test "x$withval" != "x" ; then
1704 dnl ------------------------------------------------
1705 dnl Bacula check for various SQL database engines
1706 dnl ------------------------------------------------
1707 BA_CHECK_POSTGRESQL_DB
1717 #BA_CHECK_DBI_DRIVER
1719 dnl -------------------------------------------
1720 dnl Make sure at least one database backend is found
1721 dnl -------------------------------------------
1722 if test "x${db_backends}" = "x" ; then
1725 echo "You have not specified either --enable-client-only or one of the"
1726 echo "supported databases: MySQL, PostgreSQL, or SQLite3."
1727 echo "This is not permitted. Please reconfigure."
1729 echo "Aborting the configuration ..."
1735 dnl -------------------------------------------
1736 dnl See how many catalog backends are configured.
1737 dnl -------------------------------------------
1738 case `echo $DB_BACKENDS | wc -w | sed -e 's/^ *//'` in
1740 DEFAULT_DB_TYPE="${DB_BACKENDS}"
1741 if test x$use_libtool = xno; then
1742 SHARED_CATALOG_TARGETS=""
1744 SHARED_CATALOG_TARGETS="libbaccats-${DEFAULT_DB_TYPE}.la"
1748 dnl ------------------------------------------------
1749 dnl Set the default backend to the first backend found
1750 dnl ------------------------------------------------
1751 DEFAULT_DB_TYPE=`echo ${DB_BACKENDS} | cut -d' ' -f1`
1753 dnl ------------------------------------------------
1754 dnl For multiple backend we need libtool support.
1755 dnl ------------------------------------------------
1756 if test x$use_libtool = xno; then
1759 echo "You have specified two or more of the"
1760 echo "supported databases: MySQL, PostgreSQL, or SQLite3."
1761 echo "This is not permitted when not using libtool Please reconfigure."
1763 echo "Aborting the configuration ..."
1769 SHARED_CATALOG_TARGETS=""
1770 for db_type in ${DB_BACKENDS}
1772 if test -z "${SHARED_CATALOG_TARGETS}"; then
1773 SHARED_CATALOG_TARGETS="libbaccats-${db_type}.la"
1775 SHARED_CATALOG_TARGETS="${SHARED_CATALOG_TARGETS} libbaccats-${db_type}.la"
1781 dnl -------------------------------------------
1782 dnl Unset DB_LIBS when using libtool as we link the
1783 dnl shared library using the right database lib no need to
1784 dnl set DB_LIBS which is only used for non shared versions
1785 dnl of the backends.
1786 dnl -------------------------------------------
1787 if test x$use_libtool = xyes; then
1791 AC_SUBST(DB_BACKENDS)
1793 AC_SUBST(DEFAULT_DB_TYPE)
1794 AC_SUBST(SHARED_CATALOG_TARGETS)
1796 dnl -------------------------------------------
1797 dnl enable batch attribute DB insert (default on)
1798 dnl -------------------------------------------
1799 support_batch_insert=yes
1800 AC_ARG_ENABLE(batch-insert,
1801 AC_HELP_STRING([--enable-batch-insert], [enable the DB batch insert code @<:@default=yes@:>@]),
1803 if test x$enableval = xno; then
1804 support_batch_insert=no
1809 if test x$support_batch_insert = xyes; then
1810 AC_DEFINE(USE_BATCH_FILE_INSERT, 1, [Set if DB batch insert code enabled])
1813 dnl -------------------------------------------
1814 dnl Check if mysql supports batch mode
1815 dnl -------------------------------------------
1816 if test ! -z "$MYSQL_LIB"; then
1817 AC_CHECK_LIB(mysql_r, mysql_thread_safe, AC_DEFINE(HAVE_MYSQL_THREAD_SAFE, 1, [Set if have mysql_thread_safe]))
1820 dnl -------------------------------------------
1821 dnl Check if sqlite supports batch mode
1822 dnl -------------------------------------------
1823 if test ! -z "SQLITE_LIB"; then
1824 AC_CHECK_LIB(sqlite3, sqlite3_threadsafe, AC_DEFINE(HAVE_SQLITE3_THREADSAFE, 1, [Set if have sqlite3_threadsafe]))
1827 dnl -------------------------------------------
1828 dnl Check if postgresql supports batch mode
1829 dnl -------------------------------------------
1830 if test ! -z "$POSTGRESQL_LIB"; then
1831 dnl For postgresql checking
1832 saved_LIBS="${LIBS}"
1833 LIBS="${saved_LIBS} ${POSTGRESQL_LIB}"
1835 AC_CHECK_LIB(pq, PQisthreadsafe, AC_DEFINE(HAVE_PQISTHREADSAFE, 1, [Set if have PQisthreadsafe]))
1836 AC_CHECK_LIB(pq, PQputCopyData, AC_DEFINE(HAVE_PQ_COPY, 1, [Set if have PQputCopyData]))
1837 if test "x$ac_cv_lib_pq_PQputCopyData" = "xyes"; then
1838 if test $support_batch_insert = yes ; then
1839 AC_DEFINE(HAVE_POSTGRESQL_BATCH_FILE_INSERT, 1, [Set if PostgreSQL DB batch insert code enabled])
1843 if test x$ac_cv_lib_pq_PQisthreadsafe != xyes -a x$support_batch_insert = xyes
1845 echo "WARNING: Your PostgreSQL client library is too old to detect "
1846 echo "if it was compiled with --enable-thread-safety, consider to "
1847 echo "upgrade it in order to avoid problems with Batch insert mode"
1851 dnl Revert after postgresql checks
1852 LIBS="${saved_LIBS}"
1855 dnl -------------------------------------------
1856 dnl Check if dbi supports batch mode
1857 dnl -------------------------------------------
1858 if test ! -z "$DBI_LIBS"; then
1859 dnl -------------------------------------------
1860 dnl Push the DB_PROG onto the stack of supported database backends for DBI
1861 dnl -------------------------------------------
1862 DB_BACKENDS="${DB_BACKENDS} ${DB_PROG}"
1864 dnl -------------------------------------------
1865 dnl Check for batch insert
1866 dnl -------------------------------------------
1867 if test $DB_PROG = postgresql; then
1868 AC_CHECK_LIB(pq, PQisthreadsafe, AC_DEFINE(HAVE_PQISTHREADSAFE))
1869 AC_CHECK_LIB(pq, PQputCopyData, AC_DEFINE(HAVE_PQ_COPY))
1870 test "x$ac_cv_lib_pq_PQputCopyData" = "xyes"
1872 if test $pkg = 0; then
1873 if test $support_batch_insert = yes ; then
1874 AC_DEFINE(HAVE_DBI_BATCH_FILE_INSERT, 1, [Set if DBI DB batch insert code enabled])
1879 dnl -------------------------------------------
1880 dnl If dbi was not chosen, let the comment in file
1881 dnl -------------------------------------------
1885 AC_SUBST(uncomment_dbi)
1887 AC_DEFINE(PROTOTYPES)
1889 dnl --------------------------------------------------------------------------
1890 dnl Supply default CFLAGS, if not specified by `CFLAGS=flags ./configure'
1892 if test -z "$CFLAGS" -o "$CFLAGS" = "-g -O2"; then
1893 if test -z "$CCOPTS"; then
1894 CCOPTS='-g -O2 -Wall'
1902 dnl See if we can use 64 bit file addresses
1903 largefile_support="no"
1908 dnl --------------------------------------------------------------------------
1909 dnl CHECKING FOR HEADER FILES
1910 dnl --------------------------------------------------------------------------
1948 AC_STRUCT_ST_BLKSIZE
1952 dnl --------------------------------------------------------------------------
1953 dnl Check for utime.h structure
1954 dnl --------------------------------------------------------------------------
1955 AC_CACHE_CHECK(for utime.h, ba_cv_header_utime_h,
1959 #include <sys/types.h>
1964 ba_cv_header_utime_h=yes
1966 ba_cv_header_utime_h=no
1971 test $ba_cv_header_utime_h = yes && AC_DEFINE(HAVE_UTIME_H, 1, [Set if utime.h exists])
1973 dnl --------------------------------------------------------------------------
1974 dnl Check for socklen_t
1975 dnl --------------------------------------------------------------------------
1976 AC_CACHE_CHECK(for socklen_t, ba_cv_header_socklen_t,
1980 #include <sys/types.h>
1981 #include <sys/socket.h>
1985 ba_cv_header_socklen_t=yes
1987 ba_cv_header_socklen_t=no
1992 test $ba_cv_header_socklen_t = yes && AC_DEFINE(HAVE_SOCKLEN_T, 1, [Set if socklen_t exists])
1994 dnl --------------------------------------------------------------------------
1995 dnl Check for ioctl request type
1996 dnl --------------------------------------------------------------------------
1998 AC_CACHE_CHECK(for ioctl_req_t, ba_cv_header_ioctl_req_t,
2003 #include <sys/types.h>
2004 #include <sys/ioctl.h>
2006 int (*d_ioctl)(int fd, unsigned long int request, ...);
2009 ba_cv_header_ioctl_req_t=yes
2011 ba_cv_header_ioctl_req_t=no
2016 test $ba_cv_header_ioctl_req_t = yes && AC_DEFINE(HAVE_IOCTL_ULINT_REQUEST, 1, [Set if ioctl request is unsigned long int])
2018 dnl Note: it is more correct to use AC_LANG(C++) but some of the older
2019 dnl *BSD systems still use old style C prototypes, which are wrong with
2020 dnl compiled with a C++ compiler.
2023 dnl --------------------------------------------------------------------------
2024 dnl Check for typeof()
2025 dnl --------------------------------------------------------------------------
2027 AC_CACHE_CHECK(for typeof, ba_cv_have_typeof,
2031 main(){char *a = 0; a = (typeof a)a;}
2033 ba_cv_have_typeof=yes
2035 ba_cv_have_typeof=no
2037 ba_cv_have_typeof=no
2042 test $ba_cv_have_typeof = yes && AC_DEFINE([HAVE_TYPEOF], 1, [Defind to 1 if compiler has typeof])
2047 AC_C_BIGENDIAN([AC_DEFINE([HAVE_BIG_ENDIAN], [1], [Big Endian])], [AC_DEFINE([HAVE_LITTLE_ENDIAN], [1], [Little Endian])])
2049 dnl --------------------------------------------------------------------------
2050 dnl CHECKING FOR FILESYSTEM TYPE
2051 dnl --------------------------------------------------------------------------
2052 AC_MSG_CHECKING(how to get filesystem type)
2054 # The order of these tests is important.
2057 #include <sys/statvfs.h>
2058 #include <sys/fstyp.h>
2060 AC_DEFINE(FSTYPE_STATVFS) fstype=SVR4
2062 if test $fstype = no; then
2065 #include <sys/statfs.h>
2066 #include <sys/fstyp.h>
2068 AC_DEFINE(FSTYPE_USG_STATFS) fstype=SVR3
2071 if test $fstype = no; then
2074 #include <sys/statfs.h>
2075 #include <sys/vmount.h>
2077 AC_DEFINE(FSTYPE_AIX_STATFS) fstype=AIX
2080 if test $fstype = no; then
2085 AC_DEFINE(FSTYPE_MNTENT) fstype=4.3BSD
2088 if test $fstype = no; then
2089 AC_EGREP_HEADER(f_type;, sys/mount.h, AC_DEFINE(FSTYPE_STATFS) fstype=4.4BSD/OSF1)
2091 if test $fstype = no; then
2094 #include <sys/mount.h>
2095 #include <sys/fs_types.h>
2097 AC_DEFINE(FSTYPE_GETMNT) fstype=Ultrix
2100 AC_MSG_RESULT($fstype)
2102 AC_CHECK_HEADER(sys/statvfs.h, [ AC_DEFINE(HAVE_SYS_STATVFS_H,1,[Defines if your system have the sys/statvfs.h header file])] , )
2105 AC_CHECK_FUNCS(backtrace)
2108 dnl --------------------------------------------------------------------------
2109 dnl CHECKING FOR TYPEDEFS, STRUCTURES, AND COMPILER CHARACTERISTICS.
2110 dnl --------------------------------------------------------------------------
2120 AC_CHECK_TYPE(ino_t, unsigned long)
2121 AC_CHECK_TYPE(dev_t, unsigned long)
2122 AC_CHECK_TYPE(daddr_t, long)
2123 AC_CHECK_TYPE(major_t, int)
2124 AC_CHECK_TYPE(minor_t, int)
2125 AC_CHECK_TYPE(ssize_t, int)
2131 AC_CHECK_SIZEOF(char, 1)
2132 AC_CHECK_SIZEOF(short int, 2)
2133 AC_CHECK_SIZEOF(int, 4)
2134 AC_CHECK_SIZEOF(long int, 4)
2135 AC_CHECK_SIZEOF(long long int, 8)
2136 AC_CHECK_SIZEOF(int *, 4)
2138 dnl Check for sys/types.h types
2139 AC_CACHE_CHECK([for u_int type], ac_cv_have_u_int,
2143 #include <sys/types.h>
2147 ac_cv_have_u_int="yes"
2149 ac_cv_have_u_int="no"
2154 if test "x$ac_cv_have_u_int" = "xyes" ; then
2155 AC_DEFINE(HAVE_U_INT)
2159 AC_CACHE_CHECK([for intmax_t type], ac_cv_have_intmax_t,
2163 #include <sys/types.h>
2167 ac_cv_have_intmax_t="yes"
2175 ac_cv_have_intmax_t="yes"
2177 ac_cv_have_intmax_t="no"
2184 if test "x$ac_cv_have_intmax_t" = "xyes" ; then
2185 AC_DEFINE(HAVE_INTMAX_T)
2189 AC_CACHE_CHECK([for u_intmax_t type], ac_cv_have_u_intmax_t,
2193 #include <sys/types.h>
2195 u_intmax_t a; a = 1;
2197 ac_cv_have_u_intmax_t="yes"
2203 u_intmax_t a; a = 1;
2205 ac_cv_have_u_intmax_t="yes"
2207 ac_cv_have_u_intmax_t="no"
2214 if test "x$ac_cv_have_u_intmax_t" = "xyes" ; then
2215 AC_DEFINE(HAVE_U_INTMAX_T)
2219 AC_CACHE_CHECK([for intXX_t types], ac_cv_have_intxx_t,
2223 #include <sys/types.h>
2225 int8_t a; int16_t b; int32_t c; a = b = c = 1;
2227 ac_cv_have_intxx_t="yes"
2229 ac_cv_have_intxx_t="no"
2234 if test "x$ac_cv_have_intxx_t" = "xyes" ; then
2235 AC_DEFINE(HAVE_INTXX_T)
2239 AC_CACHE_CHECK([for int64_t type], ac_cv_have_int64_t,
2243 #include <sys/types.h>
2247 ac_cv_have_int64_t="yes"
2249 ac_cv_have_int64_t="no"
2254 if test "x$ac_cv_have_int64_t" = "xyes" ; then
2255 AC_DEFINE(HAVE_INT64_T)
2259 AC_CACHE_CHECK([for u_intXX_t types], ac_cv_have_u_intxx_t,
2263 #include <sys/types.h>
2265 u_int8_t a; u_int16_t b; u_int32_t c; a = b = c = 1;
2267 ac_cv_have_u_intxx_t="yes"
2269 ac_cv_have_u_intxx_t="no"
2274 if test "x$ac_cv_have_u_intxx_t" = "xyes" ; then
2275 AC_DEFINE(HAVE_U_INTXX_T)
2279 AC_CACHE_CHECK([for u_int64_t types], ac_cv_have_u_int64_t,
2283 #include <sys/types.h>
2287 ac_cv_have_u_int64_t="yes"
2289 ac_cv_have_u_int64_t="no"
2294 if test "x$ac_cv_have_u_int64_t" = "xyes" ; then
2295 AC_DEFINE(HAVE_U_INT64_T)
2299 if (test -z "$have_u_intxx_t" || test -z "$have_intxx_t" && \
2300 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2302 AC_MSG_CHECKING([for intXX_t and u_intXX_t types in sys/bitypes.h])
2305 #include <sys/bitypes.h>
2307 int8_t a; int16_t b; int32_t c;
2308 u_int8_t e; u_int16_t f; u_int32_t g;
2309 a = b = c = e = f = g = 1;
2311 AC_DEFINE(HAVE_U_INTXX_T)
2312 AC_DEFINE(HAVE_INTXX_T)
2313 AC_DEFINE(HAVE_SYS_BITYPES_H)
2321 if test -z "$have_u_intxx_t" ; then
2322 AC_CACHE_CHECK([for uintXX_t types], ac_cv_have_uintxx_t,
2326 #include <sys/types.h>
2328 uint8_t a; uint16_t b;
2329 uint32_t c; a = b = c = 1;
2331 ac_cv_have_uintxx_t="yes"
2333 ac_cv_have_uintxx_t="no"
2338 if test "x$ac_cv_have_uintxx_t" = "xyes" ; then
2339 AC_DEFINE(HAVE_UINTXX_T)
2343 if (test -z "$have_u_int64_t" || test -z "$have_int64_t" && \
2344 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2346 AC_MSG_CHECKING([for int64_t and u_int64_t types in sys/bitypes.h])
2349 #include <sys/bitypes.h>
2351 int64_t a; u_int64_t b;
2354 AC_DEFINE(HAVE_U_INT64_T)
2355 AC_DEFINE(HAVE_INT64_T)
2363 if (test -z "$have_uintxx_t" && \
2364 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2366 AC_MSG_CHECKING([for uintXX_t types in sys/bitypes.h])
2369 #include <sys/bitypes.h>
2371 uint8_t a; uint16_t b;
2372 uint32_t c; a = b = c = 1;
2374 AC_DEFINE(HAVE_UINTXX_T)
2382 dnl --------------------------------------------------------------------------
2383 dnl CHECKING FOR REQUIRED LIBRARY FUNCTIONS
2384 dnl --------------------------------------------------------------------------
2400 [echo 'configure: cannot find needed function.'; exit 1]
2403 AC_CHECK_FUNCS(getpagesize, [AC_DEFINE(HAVE_GETPAGESIZE, 1, [Set if have getpagesize])])
2404 AC_CHECK_FUNCS(malloc_trim, [AC_DEFINE(HAVE_MALLOC_TRIM, 1, [Set if have malloc_trim])])
2406 AC_CHECK_FUNCS(fchdir, [AC_DEFINE(HAVE_FCHDIR)])
2407 AC_CHECK_FUNCS(strtoll, [AC_DEFINE(HAVE_STRTOLL)])
2408 AC_CHECK_FUNCS(posix_fadvise)
2409 AC_CHECK_FUNCS(fdatasync)
2411 AC_CHECK_FUNCS(chflags)
2413 AC_CHECK_FUNCS(snprintf vsnprintf gethostid fseeko)
2415 AC_CACHE_CHECK(for va_copy, ba_cv_va_copy,
2420 void use_va_copy(va_list args){va_list args2; va_copy(args2,args); va_end(args2);}
2421 void call_use_va_copy(int junk,...){va_list args; va_start(args,junk); use_va_copy(args); va_end(args);}
2423 call_use_va_copy(1,2,3)
2432 test $ba_cv_va_copy = yes && AC_DEFINE(HAVE_VA_COPY, 1, [Set if va_copy exists])
2434 dnl --------------------------------------------------------------------------
2435 dnl CHECKING FOR THREAD SAFE FUNCTIONS
2436 dnl --------------------------------------------------------------------------
2437 AC_CHECK_FUNCS(localtime_r readdir_r strerror_r gethostbyname_r)
2439 # If resolver functions are not in libc check for -lnsl or -lresolv.
2440 AC_CHECK_FUNC(gethostbyname_r,
2441 AC_MSG_RESULT(using libc's resolver),
2442 AC_CHECK_LIB(nsl,gethostbyname_r)
2443 AC_CHECK_LIB(resolv,gethostbyname_r))
2445 AC_CHECK_FUNCS(inet_pton, [AC_DEFINE(HAVE_INET_PTON)])
2446 AC_CHECK_FUNCS(inet_ntop, [AC_DEFINE(HAVE_INET_NTOP)])
2447 AC_CHECK_FUNCS(gethostbyname2, [AC_DEFINE(HAVE_GETHOSTBYNAME2)])
2449 dnl ----------------------------
2450 dnl check sa_len of sockaddr
2451 dnl ----------------------------
2452 AC_CACHE_CHECK(for struct sockaddr has a sa_len field, ac_cv_struct_sockaddr_sa_len,
2456 #include <sys/socket.h>
2458 struct sockaddr s; s.sa_len;
2460 ac_cv_struct_sockaddr_sa_len=yes
2461 ], [ac_cv_struct_sockaddr_sa_len=no
2467 if test $ac_cv_struct_sockaddr_sa_len = yes; then
2468 AC_DEFINE(HAVE_SA_LEN, 1, [Define if sa_len field exists in struct sockaddr])
2475 AC_CHECK_FUNCS(getmntinfo, [AC_DEFINE(HAVE_GETMNTINFO)])
2476 AC_FUNC_CLOSEDIR_VOID
2477 AC_FUNC_SETPGRP dnl check for BSD setpgrp.
2478 # AC_FUNC_FNMATCH dnl use local version
2480 AC_CHECK_LIB(intl, gettext, [LIBS="$LIBS -lintl"])
2482 AC_CHECK_LIB(sun, getpwnam)
2484 AC_CHECK_HEADERS(zlib.h)
2485 AC_CHECK_LIB(z, deflate, [ZLIBS="-lz"])
2487 if test x$ZLIBS = x-lz; then
2488 AC_DEFINE(HAVE_LIBZ)
2496 AC_CHECK_HEADERS(lzo/lzoconf.h)
2497 AC_CHECK_HEADERS(lzo/lzo1x.h)
2498 AC_CHECK_LIB(lzo2, lzo1x_1_compress, [LZOLIBS="-llzo2"])
2500 if test x$LZOLIBS = x-llzo2; then
2507 dnl Check for ACL support and libraries
2511 AC_HELP_STRING([--disable-acl], [disable acl support @<:@default=auto@:>@]),
2513 if test x$enableval = xyes; then
2515 elif test x$enableval = xno; then
2522 have_extended_acl=no
2523 if test x$support_acl = xyes -o x$support_acl = xauto; then
2524 AC_CHECK_HEADER(sys/acl.h, [ AC_DEFINE(HAVE_SYS_ACL_H,1,[Defines if your system have the sys/acl.h header file])] , )
2527 dnl First check for acl_get_file in libc
2529 AC_CHECK_FUNC(acl_get_file,
2536 dnl Check for acl_get_file in libacl (Linux)
2538 if test $have_acl = no; then
2539 AC_CHECK_LIB(acl, acl_get_file,
2542 FDLIBS="-lacl $FDLIBS"
2548 dnl Check for acl_get_file in libpacl (OSF1)
2549 dnl and if ACL_TYPE_DEFAULT_DIR is defined.
2551 if test $have_acl = no -a \
2552 x${HAVE_OSF1_OS_TRUE} = x; then
2553 AC_CHECK_LIB(pacl, acl_get_file,
2556 FDLIBS="-lpacl $FDLIBS"
2560 AC_MSG_CHECKING(for ACL_TYPE_DEFAULT_DIR in acl.h include file)
2561 grep ACL_TYPE_DEFAULT_DIR /usr/include/sys/acl.h > /dev/null 2>&1
2562 if test $? = 0; then
2563 AC_DEFINE(HAVE_ACL_TYPE_DEFAULT_DIR,1,[Defines if your system have the ACL_TYPE_DEFAULT_DIR acl type])
2571 dnl On OSX check for availability of ACL_TYPE_EXTENDED
2573 if test $have_acl = yes -a \
2574 x${HAVE_DARWIN_OS_TRUE} = x; then
2575 AC_MSG_CHECKING(for ACL_TYPE_EXTENDED in acl.h include file)
2576 grep ACL_TYPE_EXTENDED /usr/include/sys/acl.h > /dev/null 2>&1
2577 if test $? = 0; then
2578 AC_DEFINE(HAVE_ACL_TYPE_EXTENDED,1,[Defines if your system have the ACL_TYPE_EXTENDED acl type])
2586 dnl On FreeBSD check for availability of ACL_TYPE_NFS4
2588 if test $have_acl = yes -a \
2589 x${HAVE_FREEBSD_OS_TRUE} = x; then
2590 AC_MSG_CHECKING(for ACL_TYPE_NFS4 in acl.h include file)
2591 grep ACL_TYPE_NFS4 /usr/include/sys/acl.h > /dev/null 2>&1
2592 if test $? = 0; then
2593 AC_DEFINE(HAVE_ACL_TYPE_NFS4,1,[Defines if your system have the ACL_TYPE_NFS4 acl type])
2601 dnl Check for acltotext and acl_totext (Solaris)
2603 if test $have_acl = no -a \
2604 x${HAVE_SUN_OS_TRUE} = x; then
2605 AC_CHECK_LIB(sec, acltotext,
2608 FDLIBS="-lsec $FDLIBS"
2610 AC_CHECK_LIB(sec, acl_totext,
2612 have_extended_acl=yes
2620 dnl Check for acl_get and aclx_get (AIX)
2622 if test $have_acl = no -a \
2623 x${HAVE_AIX_OS_TRUE} = x; then
2624 AC_CHECK_FUNC(acl_get,
2628 AC_CHECK_FUNC(aclx_get,
2630 have_extended_acl=yes
2637 if test x$support_acl = xyes -a $have_acl != yes; then
2638 AC_MSG_ERROR([acl support explicitly enabled but no supported acl implementation found,
2639 please either load the acl libraries or rerun configure without --enable-acl])
2641 if test $have_acl = yes; then
2642 AC_DEFINE([HAVE_ACL],1,[Normal acl support])
2645 if test $have_extended_acl = yes; then
2646 AC_DEFINE([HAVE_EXTENDED_ACL],1,[Extended acl support])
2652 dnl Check for XATTR support
2655 AC_ARG_ENABLE(xattr,
2656 AC_HELP_STRING([--disable-xattr], [disable xattr support @<:@default=auto@:>@]),
2658 if test x$enableval = xyes; then
2660 elif test x$enableval = xno; then
2667 if test x$support_xattr = xyes -o x$support_xattr = xauto; then
2669 dnl First check for *BSD support
2670 dnl When running on a BSD variant
2672 if test x${HAVE_FREEBSD_OS_TRUE} = x -o \
2673 x${HAVE_NETBSD_OS_TRUE} = x -o \
2674 x${HAVE_OPENBSD_OS_TRUE} = x; then
2675 AC_CHECK_HEADER(sys/extattr.h, [ AC_DEFINE(HAVE_SYS_EXTATTR_H,1,[Defines if your system have the sys/extattr.h header file])] , )
2676 AC_CHECK_HEADER(libutil.h, [ AC_DEFINE(HAVE_LIBUTIL_H,1,[Defines if your system have the libutil.h header file])] , )
2677 AC_CHECK_FUNCS(extattr_get_link extattr_set_link extattr_list_link,
2680 AC_DEFINE([HAVE_EXTATTR_GET_LINK],1,[Define to 1 if you have the 'extattr_get_link' function.])
2681 AC_DEFINE([HAVE_EXTATTR_SET_LINK],1,[Define to 1 if you have the 'extattr_set_link' function.])
2682 AC_DEFINE([HAVE_EXTATTR_LIST_LINK],1,[Define to 1 if you have the 'extattr_list_link' function.])
2686 if test $have_xattr = no; then
2687 AC_CHECK_FUNCS(extattr_get_file extattr_set_file extattr_list_file,
2690 AC_DEFINE([HAVE_EXTATTR_GET_FILE],1,[Define to 1 if you have the 'extattr_get_file' function.])
2691 AC_DEFINE([HAVE_EXTATTR_SET_FILE],1,[Define to 1 if you have the 'extattr_set_file' function.])
2692 AC_DEFINE([HAVE_EXTATTR_LIST_FILE],1,[Define to 1 if you have the 'extattr_list_file' function.])
2697 if test $have_xattr = yes; then
2698 have_extattr_string_in_libc=no
2699 AC_CHECK_FUNCS(extattr_namespace_to_string extattr_string_to_namespace,
2701 have_extattr_string_in_libc=yes
2702 AC_DEFINE([HAVE_EXTATTR_NAMESPACE_TO_STRING],1,[Define to 1 if you have the 'extattr_namespace_to_string' function.])
2703 AC_DEFINE([HAVE_EXTATTR_STRING_TO_NAMESPACE],1,[Define to 1 if you have the 'extattr_string_to_namespace' function.])
2708 dnl If extattr_namespace_to_string and extattr_string_to_namespace are not in libc see if they are in libutil
2710 if test $have_extattr_string_in_libc = no; then
2711 AC_CHECK_LIB(util, extattr_namespace_to_string extattr_string_to_namespace,
2713 AC_DEFINE([HAVE_EXTATTR_NAMESPACE_TO_STRING],1,[Define to 1 if you have the 'extattr_namespace_to_string' function.])
2714 AC_DEFINE([HAVE_EXTATTR_STRING_TO_NAMESPACE],1,[Define to 1 if you have the 'extattr_string_to_namespace' function.])
2715 FDLIBS="-lutil $FDLIBS"
2723 dnl If we failed to find *BSD support try the AIX implementation of extented attributes (EA)
2724 dnl When running on AIX
2726 if test $have_xattr = no -a \
2727 x${HAVE_AIX_OS_TRUE} = x; then
2728 AC_CHECK_HEADER(sys/ea.h, [ AC_DEFINE(HAVE_SYS_EA_H,1,[Defines if your system have the sys/ea.h header file])] , )
2729 AC_CHECK_FUNCS(llistea lgetea lsetea,
2732 AC_DEFINE([HAVE_LLISTEA],1,[Define to 1 if you have the 'llistea' function.])
2733 AC_DEFINE([HAVE_LGETEA],1,[Define to 1 if you have the 'lgetea' function.])
2734 AC_DEFINE([HAVE_LSETEA],1,[Define to 1 if you have the 'lsetea' function.])
2738 if test $have_xattr = no; then
2739 AC_CHECK_FUNCS(listea getea setea,
2742 AC_DEFINE([HAVE_LISTEA],1,[Define to 1 if you have the 'listea' function.])
2743 AC_DEFINE([HAVE_GETEA],1,[Define to 1 if you have the 'getea' function.])
2744 AC_DEFINE([HAVE_SETEA],1,[Define to 1 if you have the 'setea' function.])
2751 dnl If we failed to find AIX support try the TRU64 implementation of extented attributes
2752 dnl when running on a TRU64 OS.
2754 if test $have_xattr = no -a \
2755 x${HAVE_OSF1_OS_TRUE} = x; then
2756 AC_CHECK_HEADER(sys/proplist.h, [ AC_DEFINE(HAVE_SYS_PROPLIST_H,1,[Defines if your system have the sys/proplist.h header file])] , )
2757 AC_CHECK_FUNCS(getproplist get_proplist_entry sizeof_proplist_entry add_proplist_entry setproplist,
2760 AC_DEFINE([HAVE_GETPROPLIST],1,[Define to 1 if you have the 'getproplist' function.])
2761 AC_DEFINE([HAVE_GET_PROPLIST_ENTRY],1,[Define to 1 if you have the 'get_proplist_entry' function.])
2762 AC_DEFINE([HAVE_SIZEOF_PROPLIST_ENTRY],1,[Define to 1 if you have the 'sizeof_proplist_entry' function.])
2763 AC_DEFINE([HAVE_ADD_PROPLIST_ENTRY],1,[Define to 1 if you have the 'add_proplist_entry' function.])
2764 AC_DEFINE([HAVE_SETPROPLIST],1,[Define to 1 if you have the 'setproplist' function.])
2770 dnl If we failed to find TRU64 support try the SOLARIS implementation of extented and extensible attributes
2771 dnl when running on a Solaris.
2773 if test $have_xattr = no -a \
2774 x${HAVE_SUN_OS_TRUE} = x; then
2775 AC_CHECK_HEADER(sys/attr.h, [ AC_DEFINE(HAVE_SYS_ATTR_H,1,[Defines if your system have the sys/attr.h header file])] , )
2776 AC_CHECK_HEADER(sys/nvpair.h, [ AC_DEFINE(HAVE_SYS_NVPAIR_H,1,[Defines if your system have the sys/nvpair.h header file])] , )
2777 AC_CHECK_HEADER(attr.h, [ AC_DEFINE(HAVE_ATTR_H,1,[Defines if your system have the attr.h header file])] , )
2779 AC_CHECK_FUNCS(openat fstatat unlinkat fchownat futimesat,
2782 AC_DEFINE([HAVE_OPENAT],1,[Define to 1 if you have the 'openat' function.])
2783 AC_DEFINE([HAVE_FSTATAT],1,[Define to 1 if you have the 'fstatat' function.])
2784 AC_DEFINE([HAVE_UNLINKAT],1,[Define to 1 if you have the 'unlinkat' function.])
2785 AC_DEFINE([HAVE_FCHOWNAT],1,[Define to 1 if you have the 'fchownat' function.])
2786 AC_DEFINE([HAVE_FUTIMESAT],1,[Define to 1 if you have the 'futimesat' function.])
2790 if test $have_xattr = yes; then
2791 AC_CHECK_LIB(nvpair, nvlist_next_nvpair,
2793 AC_DEFINE([HAVE_NVLIST_NEXT_NVPAIR],1,[Define to 1 if you have the 'nvlist_next_nvpair' function.])
2794 FDLIBS="-lnvpair $FDLIBS"
2801 dnl If we failed to find Solaris support try the generic xattr support code
2803 if test $have_xattr = no; then
2804 AC_CHECK_HEADER(sys/xattr.h, [ AC_DEFINE(HAVE_SYS_XATTR_H,1,[Defines if your system have the sys/xattr.h header file])] , )
2805 AC_CHECK_FUNCS(llistxattr lgetxattr lsetxattr,
2808 AC_DEFINE([HAVE_LLISTXATTR],1,[Define to 1 if you have the 'llistxattr' function.])
2809 AC_DEFINE([HAVE_LGETXATTR],1,[Define to 1 if you have the 'lgetxattr' function.])
2810 AC_DEFINE([HAVE_LSETXATTR],1,[Define to 1 if you have the 'lsetxattr' function.])
2814 if test $have_xattr = no; then
2815 AC_CHECK_FUNCS(listxattr getxattr setxattr,
2818 AC_DEFINE([HAVE_LISTXATTR],1,[Define to 1 if you have the 'listxattr' function.])
2819 AC_DEFINE([HAVE_GETXATTR],1,[Define to 1 if you have the 'getxattr' function.])
2820 AC_DEFINE([HAVE_SETXATTR],1,[Define to 1 if you have the 'setxattr' function.])
2826 if test x$support_xattr = xyes -a $have_xattr != yes; then
2827 AC_MSG_ERROR([xattr support explicitly enabled but no supported xattr implementation found,
2828 please either load the xattr libraries or rerun configure without --enable-xattr])
2830 if test $have_xattr = yes; then
2831 AC_DEFINE([HAVE_XATTR],1,[Extended Attributes support])
2837 dnl Check for pthread libraries
2840 AC_CHECK_LIB(pthread, pthread_create, PTHREAD_LIB="-lpthread",
2842 AC_CHECK_LIB(pthreads, pthread_create, PTHREAD_LIB="-lpthreads",
2844 AC_CHECK_LIB(c_r, pthread_create, PTHREAD_LIB="-lc_r",
2846 AC_CHECK_FUNC(pthread_create)
2855 dnl Check for headers, functions and libraries required to support
2856 dnl keeping readall capabilities
2858 AC_CHECK_HEADERS(sys/prctl.h sys/capability.h)
2859 AC_CHECK_FUNCS(prctl setreuid)
2860 AC_CHECK_LIB([cap], [cap_set_proc], [CAP_LIBS="-lcap"], [CAP_LIBS=])
2861 if test x$CAP_LIBS = x-lcap; then
2862 AC_DEFINE(HAVE_LIBCAP, 1, [Define if you have libcap])
2871 if test x$have_gcc = xyes ; then
2872 CPPFLAGS="$CPPFLAGS -fno-strict-aliasing -fno-exceptions -fno-rtti"
2873 CFLAGS="$CFLAGS -fno-strict-aliasing -fno-exceptions -fno-rtti"
2875 LDFLAGS=${LDFLAGS--O}
2876 CPPFLAGS="$CPPFLAGS"
2888 AC_SUBST(X_EXTRA_LIBS)
2893 dnl extra configurable objects
2904 dnl Finally we set appropriate distribution specific
2905 dnl variables and defaults
2907 dnl PFILES are platform specific files
2908 PFILES="platforms/Makefile"
2912 COMPRESS_MANPAGES=yes
2914 hostname=`uname -n | cut -d '.' -f 1`
2915 if test x${hostname} = x ; then
2916 hostname="localhost"
2918 dnl Make sure hostname is resolved
2919 ping -c 1 $hostname 2>/dev/null 1>/dev/null
2920 if test ! $? = 0; then
2921 hostname="localhost"
2927 PSCMD="ps -e -o pid,comm"
2929 platforms/aix/Makefile"
2930 TAPEDRIVE="/dev/rmt0.1"
2934 PTHREAD_LIB="-lpthread -lexc"
2935 if test "${CC}" = "gcc" ; then
2942 TAPEDRIVE="/dev/nrmt0"
2945 DISTVER=`uname -a |awk '{print $3}'`
2946 TAPEDRIVE="/dev/nrmt0"
2947 PTHREAD_LIB="-pthread"
2948 CFLAGS="${CFLAGS} -pthread"
2949 PSCMD="ps -ax -o pid,command"
2953 platforms/bsdi/Makefile \
2954 platforms/bsdi/bacula-fd \
2955 platforms/bsdi/bacula-sd \
2956 platforms/bsdi/bacula-dir"
2957 largefile_support="yes"
2960 DISTVER=`uname -a |awk '{print $3}'`
2961 TAPEDRIVE="/dev/nrst0"
2964 WLDFLAGS="-mwindows"
2968 TAPEDRIVE="/dev/nst0"
2969 PSCMD="ps -e -o pid,command"
2972 platforms/darwin/Makefile"
2976 TAPEDRIVE="/dev/nst0"
2977 PSCMD="ps -e -o pid,command"
2980 platforms/osx/Makefile"
2983 if `test -f /etc/apt/sources.list && grep -q ubuntu /etc/apt/sources.list`; then
2986 DISTVER=`cat /etc/debian_version`
2987 if test -f /etc/lsb-release ; then
2989 if test "x$DISTRIB_ID" != "x" ; then
2990 DISTNAME=$DISTRIB_ID
2992 if test "x$DISTRIB_RELEASE" != "x" ; then
2993 DISTVER=$DISTRIB_RELEASE
2996 if test "$DISTNAME" = "Ubuntu" ; then
2999 TAPEDRIVE="/dev/nst0"
3000 PSCMD="ps -e -o pid,command"
3001 if test "$DISTNAME" = "ubuntu" ; then
3003 platforms/ubuntu/Makefile \
3004 platforms/ubuntu/bacula-fd \
3005 platforms/ubuntu/bacula-sd \
3006 platforms/ubuntu/bacula-dir"
3009 platforms/debian/Makefile \
3010 platforms/debian/bacula-fd \
3011 platforms/debian/bacula-sd \
3012 platforms/debian/bacula-dir"
3016 DISTVER=`uname -a |awk '{print $3}'`
3017 VER=`echo $DISTVER | cut -c 1`
3018 if test x$VER = x4 ; then
3019 PTHREAD_LIB="${PTHREAD_LIBS:--pthread}"
3020 CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS:--pthread}"
3024 TAPEDRIVE="/dev/nrsa0"
3025 PSCMD="ps -ax -o pid,command"
3027 platforms/freebsd/Makefile \
3028 platforms/freebsd/bacula-fd \
3029 platforms/freebsd/bacula-sd \
3030 platforms/freebsd/bacula-dir"
3031 largefile_support="yes"
3034 PSCMD="UNIX95=1; ps -e -o pid,comm"
3035 CFLAGS="${CFLAGS} -D_XOPEN_SOURCE_EXTENDED=1"
3037 TAPEDRIVE="/dev/rmt/0hnb"
3038 PTHREAD_LIB="-lpthread"
3039 AC_DEFINE([_INCLUDE_LONGLONG])
3043 TAPEDRIVE="/dev/rmt/0cbn"
3044 PSCMD="ps -e -o pid,comm"
3046 platforms/irix/Makefile \
3047 platforms/irix/bacula-fd \
3048 platforms/irix/bacula-sd \
3049 platforms/irix/bacula-dir"
3052 DISTVER=`uname -a |awk '{print $3}'`
3055 TAPEDRIVE="/dev/nrst0"
3056 PSCMD="ps -ax -o pid,command"
3057 PTHREAD_LIB="-pthread"
3058 CFLAGS="${CFLAGS} -pthread"
3061 DISTVER=`uname -a |awk '{print $3}'`
3064 TAPEDRIVE="/dev/nrst0"
3065 PSCMD="ps -ax -o pid,command"
3066 PTHREAD_LIB="-pthread"
3067 CFLAGS="${CFLAGS} -pthread"
3069 platforms/openbsd/Makefile \
3070 platforms/openbsd/bacula-fd \
3071 platforms/openbsd/bacula-sd \
3072 platforms/openbsd/bacula-dir"
3075 if test -f /etc/whitebox-release ; then
3076 f=/etc/whitebox-release
3078 f=/etc/redhat-release
3080 if test `cat $f | grep release |\
3081 cut -f 3 -d ' '`x = "Enterprise"x ; then
3082 DISTVER="Enterprise "`cat $f | grep release |\
3085 DISTVER=`cat /etc/redhat-release | grep release |\
3088 TAPEDRIVE="/dev/nst0"
3089 PSCMD="ps -e -o pid,command"
3091 platforms/redhat/Makefile \
3092 platforms/redhat/bacula-fd \
3093 platforms/redhat/bacula-sd \
3094 platforms/redhat/bacula-dir
3098 DISTVER=`cat /etc/mandrake-release | grep release |\
3100 TAPEDRIVE="/dev/nst0"
3101 PSCMD="ps -e -o pid,command"
3103 platforms/mandrake/Makefile \
3104 platforms/mandrake/bacula-fd \
3105 platforms/mandrake/bacula-sd \
3106 platforms/mandrake/bacula-dir \
3110 DISTVER=`awk '/version / {print $5}' < /etc/gentoo-release`
3111 TAPEDRIVE="/dev/nst0"
3112 PSCMD="ps -e -o pid,command"
3114 platforms/gentoo/Makefile \
3115 platforms/gentoo/bacula-init \
3116 platforms/gentoo/bacula-fd \
3117 platforms/gentoo/bacula-sd \
3118 platforms/gentoo/bacula-dir"
3121 DISTVER=`cat /etc/slackware-version`
3122 TAPEDRIVE="/dev/nst0"
3123 PSCMD="ps -e -o pid,command"
3125 platforms/slackware/Makefile \
3126 platforms/slackware/rc.bacula-fd \
3127 platforms/slackware/rc.bacula-sd \
3128 platforms/slackware/rc.bacula-dir\
3129 platforms/slackware/functions.bacula"
3133 TAPEDRIVE="/dev/rmt/0cbn"
3134 PSCMD="ps -e -o pid,comm"
3136 platforms/solaris/Makefile \
3137 platforms/solaris/bacula-fd \
3138 platforms/solaris/bacula-sd \
3139 platforms/solaris/bacula-dir"
3143 AC_DEFINE(HAVE_OLD_SOCKOPT)
3144 AC_DEFINE(USE_THR_SETCONCURRENCY)
3147 AC_DEFINE(USE_THR_SETCONCURRENCY)
3152 LIBS="$LIBS -lresolv -lrt"
3155 DISTVER=`cat /etc/SuSE-release |grep VERSION|\
3157 TAPEDRIVE="/dev/nst0"
3158 PSCMD="ps -e -o pid,command"
3160 platforms/suse/Makefile \
3161 platforms/suse/bacula-fd \
3162 platforms/suse/bacula-sd \
3163 platforms/suse/bacula-dir \
3164 platforms/suse/bacula"
3169 TAPEDRIVE="/dev/nst0"
3170 PSCMD="ps -e -o pid,command"
3172 platforms/suse/Makefile \
3173 platforms/suse/bacula-fd \
3174 platforms/suse/bacula-sd \
3175 platforms/suse/bacula-dir"
3179 TAPEDRIVE="/dev/nst0"
3182 echo " === Something went wrong. Unknown DISTNAME $DISTNAME ==="
3188 LIBS="$PTHREAD_LIB $LIBS"
3190 AC_DEFINE_UNQUOTED(lld, "$lld")
3191 AC_DEFINE_UNQUOTED(llu, "$llu")
3198 AC_SUBST(COMPRESS_MANPAGES)
3200 dnl common parts of the Makefile
3201 MCOMMON=./autoconf/Make.common
3202 AC_SUBST_FILE(MCOMMON)
3205 if test "x${subsysdir}" = "x${sbindir}" ; then
3208 echo "You have set both --sbindir and --with-subsys-dir"
3209 echo " equal to: ${subsysdir} "
3210 echo "This is not permitted. Please reconfigure."
3212 echo "Aborting configuration ..."
3218 AC_OUTPUT([autoconf/Make.common \
3221 scripts/btraceback \
3224 scripts/bacula-ctl-dir \
3225 scripts/bacula-ctl-fd \
3226 scripts/bacula-ctl-sd \
3227 scripts/devel_bacula \
3230 scripts/bacula.desktop.gnome1 \
3231 scripts/bacula.desktop.gnome2 \
3232 scripts/bacula.desktop.gnome1.consolehelper \
3233 scripts/bacula.desktop.gnome2.consolehelper \
3234 scripts/bacula.desktop.gnome1.xsu \
3235 scripts/bacula.desktop.gnome2.xsu \
3236 scripts/mtx-changer \
3237 scripts/disk-changer \
3238 scripts/dvd-handler \
3239 scripts/dvd-simulator \
3240 scripts/bacula-tray-monitor.desktop \
3241 scripts/logwatch/Makefile \
3242 scripts/logwatch/logfile.bacula.conf \
3243 scripts/wxconsole.console_apps \
3244 scripts/wxconsole.desktop.consolehelper \
3245 scripts/wxconsole.desktop.xsu \
3246 scripts/bat.desktop \
3247 scripts/bat.desktop.xsu \
3248 scripts/bat.desktop.consolehelper \
3249 scripts/bat.console_apps \
3252 src/console/Makefile \
3253 src/console/bconsole.conf \
3254 src/qt-console/tray-monitor/tray-monitor.pro \
3255 src/qt-console/tray-monitor/tray-monitor.conf \
3256 src/qt-console/bat.conf \
3257 src/qt-console/bat.pro \
3258 src/qt-console/bat.pro.mingw32 \
3259 src/qt-console/install_conf_file \
3260 src/wx-console/Makefile \
3261 src/wx-console/bwx-console.conf \
3262 src/tray-monitor/Makefile \
3263 src/tray-monitor/tray-monitor.conf \
3265 src/dird/bacula-dir.conf \
3267 src/stored/Makefile \
3268 src/stored/bacula-sd.conf \
3269 src/filed/Makefile \
3270 src/filed/bacula-fd.conf \
3272 src/cats/make_catalog_backup.pl \
3273 src/cats/make_catalog_backup \
3274 src/cats/delete_catalog_backup \
3275 src/cats/create_postgresql_database \
3276 src/cats/update_postgresql_tables \
3277 src/cats/make_postgresql_tables \
3278 src/cats/grant_postgresql_privileges \
3279 src/cats/drop_postgresql_tables \
3280 src/cats/drop_postgresql_database \
3281 src/cats/create_mysql_database \
3282 src/cats/update_mysql_tables \
3283 src/cats/make_mysql_tables \
3284 src/cats/grant_mysql_privileges \
3285 src/cats/drop_mysql_tables \
3286 src/cats/drop_mysql_database \
3287 src/cats/create_sqlite3_database \
3288 src/cats/update_sqlite3_tables \
3289 src/cats/make_sqlite3_tables \
3290 src/cats/grant_sqlite3_privileges \
3291 src/cats/drop_sqlite3_tables \
3292 src/cats/drop_sqlite3_database \
3295 src/cats/create_bacula_database \
3296 src/cats/update_bacula_tables \
3297 src/cats/grant_bacula_privileges \
3298 src/cats/make_bacula_tables \
3299 src/cats/drop_bacula_tables \
3300 src/cats/drop_bacula_database \
3301 src/cats/install-default-backend \
3302 src/findlib/Makefile \
3303 src/tools/Makefile \
3304 src/plugins/fd/Makefile \
3305 src/plugins/sd/Makefile \
3306 src/plugins/dir/Makefile \
3307 src/win32/Makefile.inc \
3309 updatedb/update_mysql_tables_9_to_10 \
3310 updatedb/update_sqlite3_tables_9_to_10 \
3311 updatedb/update_postgresql_tables_9_to_10 \
3312 updatedb/update_mysql_tables_10_to_11 \
3313 updatedb/update_sqlite3_tables_10_to_11 \
3314 updatedb/update_postgresql_tables_10_to_11 \
3315 updatedb/update_mysql_tables_11_to_12 \
3316 updatedb/update_sqlite3_tables_11_to_12 \
3317 updatedb/update_postgresql_tables_11_to_12 \
3318 updatedb/update_mysql_tables_12_to_14 \
3319 updatedb/update_sqlite3_tables_12_to_14 \
3320 updatedb/update_postgresql_tables_12_to_14 \
3321 examples/nagios/check_bacula/Makefile \
3326 if test "${support_bat}" = "yes" ; then
3327 if test "x$QMAKE" = "xnone"; then
3328 AC_MSG_ERROR([Could not find qmake $PATH. Check your Qt installation])
3332 echo "Creating bat Makefile"
3342 dnl if CC is gcc, we can rebuild the dependencies (since the depend rule
3343 dnl requires gcc). If it's not, don't rebuild dependencies
3345 if test X"$GCC" = "Xyes" ; then
3346 echo "Doing make of dependencies"
3347 ${MAKE:-make} depend
3351 chmod 755 install_conf_file build-depkgs-qt-console
3355 chmod 755 bacula btraceback mtx-changer
3356 chmod 755 dvd-handler dvd-simulator
3357 chmod 755 bconsole mtx-changer devel_bacula logrotate
3361 chmod 755 $c/update_mysql_tables_10_to_11 $c/update_sqlite3_tables_10_to_11
3362 chmod 755 $c/update_postgresql_tables_10_to_11
3363 chmod 755 $c/update_mysql_tables_11_to_12 $c/update_sqlite3_tables_11_to_12
3364 chmod 755 $c/update_postgresql_tables_11_to_12
3369 chmod 755 $c/create_bacula_database $c/update_bacula_tables $c/make_bacula_tables
3370 chmod 755 $c/grant_bacula_privileges $c/drop_bacula_tables $c/drop_bacula_database
3372 chmod 755 $c/create_mysql_database $c/update_mysql_tables $c/make_mysql_tables
3373 chmod 755 $c/grant_mysql_privileges $c/drop_mysql_tables $c/drop_mysql_database
3375 chmod 755 $c/create_sqlite3_database $c/update_sqlite3_tables $c/make_sqlite3_tables
3376 chmod 755 $c/grant_sqlite3_privileges $c/drop_sqlite3_tables $c/drop_sqlite3_database
3378 chmod 755 $c/create_postgresql_database $c/update_postgresql_tables $c/make_postgresql_tables
3379 chmod 755 $c/grant_postgresql_privileges $c/drop_postgresql_tables $c/drop_postgresql_database
3381 #chmod 755 $c/create_ingres_database $c/update_ingres_tables $c/make_ingres_tables
3382 #chmod 755 $c/grant_ingres_privileges $c/drop_ingres_tables $c/drop_ingres_database
3385 chmod 755 $c/make_catalog_backup $c/delete_catalog_backup $c/make_catalog_backup.pl
3389 chmod 755 $c/install-default-backend
3391 chmod 755 src/win32/build-depkgs-mingw32
3393 if test "x$ac_cv_sys_largefile_CFLAGS" != "xno" ; then
3394 largefile_support="yes"
3397 dnl Only try to find out the version number of the compiler when we know its some kind of GCC compiler
3398 if test X"$GCC" = "Xyes" ; then
3400 dnl A whole lot of hand springs to get the compiler version.
3401 dnl This is because gcc changed the output in version 3.0
3403 CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 3 -d ' '`
3404 if test "x${CCVERSION}" = "x" ; then
3405 CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 1 -d ' '`
3407 CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 3 -d ' '`
3408 if test x"${CXXVERSION}" = x ; then
3409 CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 1 -d ' '`
3413 # clean up any old junk
3420 Configuration on `date`:
3422 Host: ${host}${post_host} -- ${DISTNAME} ${DISTVER}
3423 Bacula version: ${BACULA} ${VERSION} (${DATE})
3424 Source code location: ${srcdir}
3425 Install binaries: ${sbindir}
3426 Install libraries: ${libdir}
3427 Install config files: ${sysconfdir}
3428 Scripts directory: ${scriptdir}
3429 Archive directory: ${archivedir}
3430 Working directory: ${working_dir}
3431 PID directory: ${piddir}
3432 Subsys directory: ${subsysdir}
3433 Man directory: ${mandir}
3434 Data directory: ${datarootdir}
3435 Plugin directory: ${plugindir}
3436 C Compiler: ${CC} ${CCVERSION}
3437 C++ Compiler: ${CXX} ${CXXVERSION}
3438 Compiler flags: ${WCFLAGS} ${CFLAGS}
3439 Linker flags: ${WLDFLAGS} ${LDFLAGS}
3441 Statically Linked Tools: ${support_static_tools}
3442 Statically Linked FD: ${support_static_fd}
3443 Statically Linked SD: ${support_static_sd}
3444 Statically Linked DIR: ${support_static_dir}
3445 Statically Linked CONS: ${support_static_cons}
3446 Database backends: ${db_backends}
3447 Database port: ${db_port}
3448 Database name: ${db_name}
3449 Database user: ${db_user}
3451 Job Output Email: ${job_email}
3452 Traceback Email: ${dump_email}
3453 SMTP Host Address: ${smtp_host}
3455 Director Port: ${dir_port}
3456 File daemon Port: ${fd_port}
3457 Storage daemon Port: ${sd_port}
3459 Director User: ${dir_user}
3460 Director Group: ${dir_group}
3461 Storage Daemon User: ${sd_user}
3462 Storage DaemonGroup: ${sd_group}
3463 File Daemon User: ${fd_user}
3464 File Daemon Group: ${fd_group}
3466 Large file support: $largefile_support
3467 Bacula conio support: ${got_conio} ${CONS_LIBS}
3468 readline support: ${got_readline} ${PRTREADLINE_SRC}
3469 TCP Wrappers support: ${TCPW_MSG} ${WRAPLIBS}
3470 TLS support: ${support_tls}
3471 Encryption support: ${support_crypto}
3472 ZLIB support: ${have_zlib}
3473 LZO support: ${have_lzo}
3474 enable-smartalloc: ${support_smartalloc}
3475 enable-lockmgr: ${support_lockmgr}
3476 bat support: ${support_bat}
3477 enable-gnome: ${support_gnome} ${gnome_version}
3478 enable-bwx-console: ${support_wx_console} ${wx_version}
3479 enable-tray-monitor: ${support_tray_monitor}
3480 client-only: ${build_client_only}
3481 build-dird: ${build_dird}
3482 build-stored: ${build_stored}
3483 Plugin support: ${have_plugins}
3484 ACL support: ${have_acl}
3485 XATTR support: ${have_xattr}
3486 Python support: ${support_python} ${PYTHON_LIBS}
3487 Batch insert enabled: ${support_batch_insert}
3491 # create a small shell script useful for support with
3492 # configure options and config.out info
3493 cat > scripts/bacula_config << EOF
3496 $ $0 $ac_configure_args
3498 cat config.out >> scripts/bacula_config
3499 echo __EOC__ >> scripts/bacula_config
3500 chmod 755 scripts/bacula_config