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
383 batch_insert_db_backends=""
386 dnl --------------------------------------------------------------------------
387 dnl CHECKING COMMAND LINE OPTIONS
388 dnl --------------------------------------------------------------------------
390 dnl -------------------------------------------
391 dnl gnome -- no longer supported
392 dnl -------------------------------------------
394 AC_HELP_STRING([--enable-gnome], [enable build of bgnome-console GUI @<:@default=no@:>@]),
396 if test x$enableval = xyes; then
403 if test x$support_gnome = xyes; then
404 AC_MSG_ERROR(bgnome-console no longer supported)
405 AC_MSG_ERROR(--enable-gnome option no longer supported)
407 # AC_SUBST(GNOME_DIR)
409 dnl -------------------------------------------
410 dnl bat (default off)
411 dnl -------------------------------------------
413 AC_HELP_STRING([--enable-bat], [enable build of bat Qt4 GUI @<:@default=no@:>@]),
415 if test x$enableval = xyes; then
416 AC_DEFINE(HAVE_BAT, 1, [Set if Bacula bat Qt4 GUI support enabled])
423 if test x$support_bat = xyes; then
424 abc=`$PKGCONFIG --atleast-version=4.2 QtGui`
426 if test $pkg = 0; then
427 BAT_DIR=src/qt-console
429 AC_MSG_ERROR(Unable to find Qt4 installation needed by bat)
434 dnl The qwt library was used with bat, but that is no longer the case
442 dnl if test x$support_bat = xyes; then
443 dnl AC_MSG_CHECKING(for qwt support)
445 dnl AC_HELP_STRING([--with-qwt@<:@=DIR@:>@], [specify qwt library directory]),
447 dnl case "$with_qwt" in
452 dnl if test -f ${with_qwt}/include/qwt.h; then
453 dnl QWT_INC="${with_qwt}/include"
454 dnl QWT_LDFLAGS="-L${with_qwt}/lib"
464 dnl dnl Search in standard places, or --with-qwt not specified
466 dnl if test $no_qwt = no; then
467 dnl if test x$QWT_INC = x; then
468 dnl for root in /usr /usr/local; do
469 dnl for ver in qwt qwt5 qwt-qt4; do
470 dnl if test -f ${root}/include/${ver}/qwt.h; then
471 dnl QWT_INC="${root}/include/${ver}"
472 dnl if test -d ${root}/lib64/; then
473 dnl QWT_LDFLAGS="-L${root}/lib64"
474 dnl elif test -d ${root}/lib/64/; then
475 dnl QWT_LDFLAGS="-L${root}/64"
477 dnl QWT_LDFLAGS="-L${root}/lib"
488 dnl if test x$QWT_INC = x; then
489 dnl AC_MSG_RESULT(no)
491 dnl AC_DEFINE(HAVE_QWT, 1, [Set if bat QWT library found])
492 dnl AC_MSG_RESULT(yes)
498 AC_SUBST(QWT_LDFLAGS)
502 dnl -------------------------------------------
503 dnl bwx-console (default off)
504 dnl -------------------------------------------
505 AC_ARG_ENABLE(bwx-console,
506 AC_HELP_STRING([--enable-bwx-console], [enable build of wxWidgets console @<:@default=no@:>@]),
508 if test x$enableval = xyes; then
509 support_wx_console=yes
515 if test x$support_wx_console = xyes; then
516 abc=`$WXCONFIG $WXFLAGS --cppflags`
518 if test $pkg = 0; then
519 wx_version="wxWidgets `$WXCONFIG $WXFLAGS --release`"
520 WXCONS_CPPFLAGS=`$WXCONFIG $WXFLAGS --cppflags`
521 WXCONS_LDFLAGS=`$WXCONFIG $WXFLAGS --libs`
523 AC_SUBST(WXCONS_CPPFLAGS)
524 AC_SUBST(WXCONS_LDFLAGS)
525 WX_DIR="src/wx-console"
528 echo "wx-config program not found. bwx-console disabled."
530 support_wx_console=no
535 dnl -------------------------------------------
536 dnl tray-monitor (default off)
537 dnl -------------------------------------------
538 AC_ARG_ENABLE(tray-monitor,
539 AC_HELP_STRING([--enable-tray-monitor], [enable build of Gnome tray monitor (compatible with KDE @<:@default=no@:>@]),
541 if test x$enableval = xyes; then
542 support_tray_monitor=yes
548 if test x$support_tray_monitor = xyes; then
549 abc=`$PKGCONFIG --exists gtk+-2.0`
551 if test $pkg = 0; then
552 TRAY_MONITOR_CPPFLAGS=`$PKGCONFIG --cflags gtk+-2.0`
553 TRAY_MONITOR_LDFLAGS=`$PKGCONFIG --libs gtk+-2.0`
554 AC_SUBST(TRAY_MONITOR_CPPFLAGS)
555 AC_SUBST(TRAY_MONITOR_LDFLAGS)
556 TRAY_MONITOR_DIR=src/tray-monitor
557 abc=`$PKGCONFIG --atleast-version=2.4 gtk+-2.0`
559 if test $pkg = 0; then
560 AC_DEFINE(HAVE_GTK_2_4, 1, [Set if you have GTK 4.2 or greater loaded])
564 AC_SUBST(TRAY_MONITOR_DIR)
566 dnl -------------------------------------------
567 dnl smartalloc (default off)
568 dnl -------------------------------------------
569 AC_ARG_ENABLE(smartalloc,
570 AC_HELP_STRING([--enable-smartalloc], [enable smartalloc debugging support @<:@default=no@:>@]),
572 if test x$enableval = xno; then
573 support_smartalloc=no
578 if test x$support_smartalloc = xyes; then
579 AC_DEFINE(SMARTALLOC, 1, [Set if you want Smartalloc enabled])
582 dnl -------------------------------------------
583 dnl Lock Manager (default off)
584 dnl -------------------------------------------
585 AC_ARG_ENABLE(lockmgr,
586 AC_HELP_STRING([--enable-lockmgr], [enable lock manager support @<:@default=no@:>@]),
588 if test x$enableval = xyes; then
594 if test x$support_lockmgr = xyes; then
595 AC_DEFINE(_USE_LOCKMGR, 1, [Set if you want Lock Manager enabled])
599 dnl -------------------------------------------
600 dnl static-tools (default off)
601 dnl -------------------------------------------
602 AC_ARG_ENABLE(static-tools,
603 AC_HELP_STRING([--enable-static-tools], [enable static tape tools @<:@default=no@:>@]),
605 if test x$enableval = xyes; then
606 if test x$use_libtool = xyes; then
607 AC_MSG_ERROR([Libtool is enabled, not compatible with static tools,
608 please rerun configure with --disable-libtool])
610 support_static_tools=yes
616 if test x$support_static_tools = xyes; then
617 TTOOL_LDFLAGS="-static"
619 AC_SUBST(TTOOL_LDFLAGS)
621 dnl -------------------------------------------
622 dnl static-fd (default off)
623 dnl -------------------------------------------
624 AC_ARG_ENABLE(static-fd,
625 AC_HELP_STRING([--enable-static-fd], [enable static File daemon @<:@default=no@:>@]),
627 if test x$enableval = xyes; then
628 if test x$use_libtool = xyes; then
629 AC_MSG_ERROR([Libtool is enabled, not compatible with static tools,
630 please rerun configure with --disable-libtool])
632 support_static_fd=yes
638 if test x$support_static_fd = xyes; then
639 STATIC_FD="static-bacula-fd"
643 dnl -------------------------------------------
644 dnl static-sd (default off)
645 dnl -------------------------------------------
646 AC_ARG_ENABLE(static-sd,
647 AC_HELP_STRING([--enable-static-sd], [enable static Storage daemon @<:@default=no@:>@]),
649 if test x$enableval = xyes; then
650 if test x$use_libtool = xyes; then
651 AC_MSG_ERROR([Libtool is enabled, not compatible with static tools,
652 please rerun configure with --disable-libtool])
654 support_static_sd=yes
660 if test x$support_static_sd = xyes; then
661 STATIC_SD="static-bacula-sd"
665 dnl -------------------------------------------
666 dnl static-dir (default off)
667 dnl -------------------------------------------
668 AC_ARG_ENABLE(static-dir,
669 AC_HELP_STRING([--enable-static-dir], [enable static Director @<:@default=no@:>@]),
671 if test x$enableval = xyes; then
672 if test x$use_libtool = xyes; then
673 AC_MSG_ERROR([Libtool is enabled, not compatible with static tools,
674 please rerun configure with --disable-libtool])
676 support_static_dir=yes
682 if test x$support_static_dir = xyes; then
683 STATIC_DIR="static-bacula-dir"
687 dnl -------------------------------------------
688 dnl static-cons (default off)
689 dnl -------------------------------------------
690 AC_ARG_ENABLE(static-cons,
691 AC_HELP_STRING([--enable-static-cons], [enable static Console @<:@default=no@:>@]),
693 if test x$enableval = xyes; then
694 if test x$use_libtool = xyes; then
695 AC_MSG_ERROR([Libtool is enabled, not compatible with static tools,
696 please rerun configure with --disable-libtool])
698 support_static_cons=yes
706 if test x$support_static_cons = xyes; then
707 STATIC_CONS="static-bconsole"
708 STATIC_GNOME_CONS="static-bgnome-console"
709 STATIC_WX_CONS="static-bwx-console"
711 AC_SUBST(STATIC_CONS)
712 AC_SUBST(STATIC_GNOME_CONS)
713 AC_SUBST(STATIC_WX_CONS)
715 dnl -------------------------------------------
716 dnl client_only (default off)
717 dnl -------------------------------------------
718 AC_ARG_ENABLE(client-only,
719 AC_HELP_STRING([--enable-client-only], [build client (File daemon) only @<:@default=no@:>@]),
721 if test x$enableval = xyes; then
722 build_client_only=yes
728 if test x$build_client_only = xno; then
735 dnl -------------------------------------------
736 dnl director (default on)
737 dnl -------------------------------------------
738 AC_ARG_ENABLE(build-dird,
739 AC_HELP_STRING([--enable-build-dird], [enable building of dird (Director) @<:@default=yes@:>@]),
741 if test x$enableval = xno; then
746 if test x$build_dird = xyes; then
751 DIR_TOOLS="NODIRTOOLS"
756 dnl -------------------------------------------
757 dnl stored (default on)
758 dnl -------------------------------------------
759 AC_ARG_ENABLE(build-stored,
760 AC_HELP_STRING([--enable-build-stored], [enable building of stored (Storage daemon) @<:@default=yes@:>@]),
762 if test x$enableval = xno; then
767 if test x$build_stored = xyes; then
768 STORED_DIR="src/stored"
774 dnl ---------------------------------------------------
775 dnl Check for conio (Bacula readline substitute)(
776 dnl ---------------------------------------------------
777 dnl this allows you to turn it completely off
779 AC_HELP_STRING([--disable-conio], [disable conio support @<:@default=no@:>@]),
781 if test x$enableval = xno; then
788 dnl ---------------------------------------------------
789 dnl Check for IPv6 support
790 dnl ---------------------------------------------------
791 dnl this allows you to turn it completely off
794 AC_HELP_STRING([--enable-ipv6], [enable ipv6 support @<:@default=yes@:>@]),
796 if test x$enableval = xno; then
802 if test x$support_ipv6 = xyes; then
803 AC_TRY_LINK([ #include <sys/types.h>
804 #include <sys/socket.h>
805 #include <netinet/in.h>], [struct sockaddr_in6 s; struct in6_addr t=in6addr_any; int i=AF_INET6; s; t.s6_addr[0] = 0;],
806 [support_ipv6=yes], [support_ipv6=no])
809 if test x$support_ipv6 = xyes; then
810 AC_DEFINE(HAVE_IPV6,1,[Whether to enable IPv6 support])
814 AC_CHECK_HEADER(curses.h, [
815 AC_CHECK_LIB(tinfo, tgetent, [ TERM_LIB="-ltinfo" ], [
816 AC_CHECK_LIB(ncurses, tgetent, [ TERM_LIB="-lncurses" ], [
817 AC_CHECK_LIB(termcap, tgetent, [ TERM_LIB="-ltermcap" ])
821 [ AC_CHECK_HEADERS(curses.h)
822 AC_CHECK_HEADER(term.h,
823 [ AC_CHECK_LIB(curses, tgetent,
824 [ TERM_LIB="-lcurses" ] )
830 if test x$support_conio = xyes; then
831 if test x$TERM_LIB != x; then
837 AC_DEFINE(HAVE_CONIO, 1, [Set if Bacula conio support enabled])
839 echo " "; echo "Required libraries not found. CONIO turned off ..."; echo " "
844 dnl ---------------------------------------------------
845 dnl Check for readline support/directory (default off)
846 dnl ---------------------------------------------------
847 dnl this allows you to turn it completely off
848 AC_ARG_ENABLE(readline,
849 AC_HELP_STRING([--disable-readline], [disable readline support @<:@default=yes@:>@]),
851 if test x$enableval = xno; then
856 if test x$TERM_LIB = x ; then
862 if test x$support_readline = xyes; then
863 AC_ARG_WITH(readline,
864 AC_HELP_STRING([--with-readline@<:@=DIR@:>@], [specify readline library directory]),
866 case "$with_readline" in
871 if test -f ${with_readline}/readline.h; then
872 CONS_INC="-I${with_readline}"
873 CONS_LDFLAGS="-L$with_readline"
874 elif test -f ${with_readline}/include/readline/readline.h; then
875 CONS_INC="-I${with_readline}/include/readline"
876 CONS_LDFLAGS="-L${with_readline}/lib"
877 with_readline="${with_readline}/include/readline"
879 with_readline="/usr/include/readline"
882 AC_CHECK_HEADER(${with_readline}/readline.h,
884 AC_DEFINE(HAVE_READLINE, 1, [Set to enable readline support])
885 CONS_LIBS="-lreadline -lhistory $TERM_LIB"
889 echo "readline.h not found. readline turned off ..."
896 dnl check for standard readline library
897 AC_CHECK_HEADER(/usr/include/readline/readline.h,
899 AC_DEFINE(HAVE_READLINE, 1, [Set to enable readline support])
901 CONS_INC="-I/usr/include/readline"
902 CONS_LIBS="-lreadline $TERM_LIB"
904 dnl Did not find standard library, so try Bacula's default
905 AC_CHECK_HEADER(${TOP_DIR}/depkgs/readline/readline.h,
907 AC_DEFINE(HAVE_READLINE, 1, [Set to enable readline support])
909 CONS_INC="-I${TOP_DIR}/depkgs/readline"
910 CONS_LIBS="-lreadline -lhistory $TERM_LIB"
911 CONS_LDFLAGS="-L${TOP_DIR}/depkgs/readline"
912 PRTREADLINE_SRC="${TOP_DIR}/depkgs/readline"
915 echo "readline.h not found. readline turned off ..."
929 AC_SUBST(CONS_LDFLAGS)
930 AC_SUBST(READLINE_SRC)
932 dnl Minimal stuff for readline Makefile configuration
937 AC_CHECK_FUNCS(strcasecmp select setenv putenv tcgetattr lstat lchown)
938 AC_CHECK_FUNCS(nanosleep nl_langinfo)
939 AC_CHECK_HEADERS(varargs.h)
941 dnl End of readline/conio stuff
942 dnl -----------------------------------------------------------------------
944 dnl -----------------------------------------------------------------------
945 dnl Check for Python support
947 AC_MSG_CHECKING(for Python support)
949 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.]),
953 if test "$withval" != "no"; then
954 if test "$withval" = "yes"; then
955 if test -e /usr/bin/python-config ; then
956 PYTHON_INCDIR=`/usr/bin/python-config --includes`
957 PYTHON_LIBS=`/usr/bin/python-config --libs`
959 for python_root in /usr /usr/local /usr/sfw; do
960 for ver in python2.2 python2.3 python2.4 python2.5 python2.6 python3; do
961 if test -f $python_root/include/${ver}/Python.h; then
962 PYTHON_INCDIR=-I$python_root/include/${ver}
963 if test -d $python_root/lib64/${ver}/config; then
964 PYTHON_LIBS="-L$python_root/lib64/${ver}/config -l${ver}"
966 PYTHON_LIBS="-L$python_root/lib/${ver}/config -l${ver}"
973 if test x$PYTHON_INCDIR = x; then
974 if test -f $prefix/include/Python.h; then
975 PYTHON_INCDIR=-I$prefix/include
976 if test -d $prefix/lib64/config; then
977 PYTHON_LIBS="-L$prefix/lib64/config -lpython"
979 PYTHON_LIBS="-L$prefix/lib/config -lpython"
983 AC_MSG_ERROR(Unable to find Python.h in standard locations)
988 if test -e $withval/bin/python-config ; then
989 PYTHON_INCDIR=`$withval/bin/python-config --includes`
990 PYTHON_LIBS=`$withval/bin/python-config --libs`
991 elif test -f $withval/Python.h; then
992 PYTHON_INCDIR=-I$withval
993 PYTHON_LIBS="-L$withval/config -lpython"
994 elif test -f $withval/include/Python.h; then
995 PYTHON_INCDIR=-I$withval/include
996 if test -d $withval/lib64/config; then
997 PYTHON_LIBS="-L$withval/lib64/config -lpython"
999 PYTHON_LIBS="-L$withval/lib/config -lpython"
1001 elif test -f $withval/include/python/Python.h; then
1002 PYTHON_INCDIR=-I$withval/include/python
1003 if test -d $withval/lib64/python/config; then
1004 PYTHON_LIBS="-L$withval/lib64/python/config -lpython"
1006 PYTHON_LIBS="-L$withval/lib/python/config -lpython"
1010 AC_MSG_ERROR(Invalid Python directory $withval - unable to find Python.h under $withval)
1014 AC_DEFINE([HAVE_PYTHON], 1)
1017 AC_MSG_NOTICE(checking for more Python libs)
1018 saved_LIBS="$LIBS"; LIBS=
1019 AC_SEARCH_LIBS(shm_open, [rt])
1020 AC_CHECK_LIB(util, openpty)
1021 PYTHON_LIBS="$PYTHON_LIBS $LIBS"
1030 AC_SUBST(PYTHON_LIBS)
1031 AC_SUBST(PYTHON_INCDIR)
1034 dnl Find where sockets are (especially for Solaris)
1035 dnl Do this before the TCP Wrappers test since tcp wrappers
1036 dnl uses the socket library and some linkers are stupid.
1038 AC_CHECK_FUNC(socket,
1039 AC_MSG_RESULT(using libc's socket),
1040 AC_CHECK_LIB(xnet,socket)
1041 AC_CHECK_LIB(socket,socket)
1042 AC_CHECK_LIB(inet,socket))
1044 dnl -----------------------------------------------------------
1045 dnl Check whether user wants TCP wrappers support (default off)
1046 dnl -----------------------------------------------------------
1049 AC_ARG_WITH(tcp-wrappers,
1050 AC_HELP_STRING([--with-tcp-wrappers@<:@=DIR@:>@], [enable tcpwrappers support]),
1052 if test "x$withval" != "xno" ; then
1054 LIBS="$saved_LIBS -lwrap"
1055 AC_SEARCH_LIBS(nanosleep, [rt])
1056 AC_MSG_CHECKING(for libwrap)
1059 #include <sys/types.h>
1061 int deny_severity = 0;
1062 int allow_severity = 0;
1063 struct request_info *req;
1068 AC_DEFINE(HAVE_LIBWRAP, 1, [Set to enable libwraper support])
1073 LIBS="$saved_LIBS -lwrap -lnsl"
1074 WRAPLIBS="$saved_LIBS -lwrap -lnsl"
1077 #include <sys/types.h>
1079 int deny_severity = 0;
1080 int allow_severity = 0;
1081 struct request_info *req;
1086 AC_DEFINE(HAVE_LIBWRAP, 1, [Set to enable libwraper support])
1091 AC_MSG_ERROR([*** libwrap missing])
1100 dnl -----------------------------------------------------------
1101 dnl Check whether OpenSSL is available
1102 dnl -----------------------------------------------------------
1103 AC_MSG_CHECKING([for OpenSSL])
1104 dnl The following uses quadrigraphs:
1107 AC_ARG_WITH(openssl,
1108 AC_HELP_STRING([--with-openssl@<:@=DIR@:>@], [Include OpenSSL support. DIR is the OpenSSL base]),
1110 with_openssl_directory=${withval}
1114 if test "x$with_openssl_directory" != "xno"; then
1115 OPENSSL_LIBS="-lssl -lcrypto"
1118 if test "x$with_openssl_directory" != "xyes" && test x"${with_openssl_directory}" != "x"; then
1120 # Make sure the $with_openssl_directory also makes sense
1122 if test -d "$with_openssl_directory/lib" -a -d "$with_openssl_directory/include"; then
1123 OPENSSL_LIBS="-L$with_openssl_directory/lib $OPENSSL_LIBS"
1124 OPENSSL_INC="-I$with_openssl_directory/include $OPENSSL_INC"
1128 saved_LIBS="${LIBS}"
1129 saved_CFLAGS="${CFLAGS}"
1130 LIBS="${saved_LIBS} ${OPENSSL_LIBS}"
1131 CFLAGS="${saved_CFLAGS} ${OPENSSL_INC}"
1135 #include <openssl/ssl.h>
1137 CRYPTO_set_id_callback(NULL);
1140 support_crypto="yes"
1149 #include <openssl/evp.h>
1153 ac_cv_openssl_sha2="yes"
1155 ac_cv_openssl_sha2="no"
1159 dnl Solaris disables greater than 128+ bit encryption in their OpenSSL
1160 dnl implementation, presumably for export reasons. If 192bit AES
1161 dnl is available, we assume that we're running with a 'non-export'
1162 dnl openssl library.
1165 #include <openssl/evp.h>
1169 ac_cv_openssl_export="no"
1171 ac_cv_openssl_export="yes"
1175 AC_MSG_RESULT([$support_tls])
1176 if test "$support_tls" = "yes"; then
1177 AC_DEFINE(HAVE_OPENSSL, 1, [Define if OpenSSL library is available])
1178 AC_DEFINE(HAVE_TLS, 1, [Define if TLS support should be enabled])
1179 AC_DEFINE(HAVE_CRYPTO, 1, [Define if encryption support should be enabled])
1182 if test "$ac_cv_openssl_sha2" = "yes"; then
1183 AC_DEFINE(HAVE_SHA2, 1, [Define if the SHA-2 family of digest algorithms is available])
1186 if test "$ac_cv_openssl_export" = "yes"; then
1187 AC_DEFINE(HAVE_OPENSSL_EXPORT_LIBRARY, 1, [Define if the OpenSSL library is export-contrained to 128bit ciphers])
1190 if test "$support_crypto" = "yes"; then
1191 AC_CHECK_LIB(crypto, EVP_PKEY_encrypt_old, AC_DEFINE(HAVE_OPENSSLv1, 1, [Set if have OpenSSL version 1.x]))
1194 LIBS="${saved_LIBS}"
1195 CFLAGS="${saved_CFLAGS}"
1199 AC_MSG_RESULT([$support_tls])
1202 if test "$support_tls" = "no" -o "$support_crypto" = "no"; then
1207 AC_SUBST(OPENSSL_LIBS)
1208 AC_SUBST(OPENSSL_INC)
1210 dnl -----------------------------------------------------------
1211 dnl dlopen is needed for plugins
1212 dnl -----------------------------------------------------------
1213 AC_SEARCH_LIBS(dlopen, [dl])
1215 dnl ------------------------------------------
1216 dnl Where to place working dir
1217 dnl ------------------------------------------
1218 working_dir=`eval echo ${prefix}/var/bacula/working`
1219 AC_ARG_WITH(working-dir,
1220 AC_HELP_STRING([--with-working-dir=PATH], [specify path of Bacula working directory]),
1222 if test "x$withval" != "xno" ; then
1223 working_dir=$withval
1228 AC_SUBST(working_dir)
1230 dnl ------------------------------------------------------------------
1231 dnl If the user has not set archivedir, we set our default as /tmp
1232 dnl ------------------------------------------------------------------
1234 AC_ARG_WITH(archivedir,
1235 AC_HELP_STRING([--with-archivedir=PATH], [specify path of SD archive directory]),
1237 if test "x$withval" != "xno" ; then
1243 AC_SUBST(archivedir)
1245 dnl ------------------------------------------------------------------
1246 dnl Allow the user to specify the daemon resource name default hostname
1247 dnl ------------------------------------------------------------------
1249 AC_ARG_WITH(basename,
1250 AC_HELP_STRING([--with-basename=RESNAME], [specify base resource name for daemons]),
1252 if test "x$withval" != "xno" ; then
1260 dnl ------------------------------------------------------------------
1261 dnl Allow the user to override the hostname (default = machine hostname)
1262 dnl ------------------------------------------------------------------
1263 hostname=`uname -n | cut -d '.' -f 1`
1264 if test x${hostname} = x ; then
1265 hostname="localhost"
1267 dnl Make sure hostname is resolved
1268 ping -c 1 $hostname 2>/dev/null 1>/dev/null
1269 if test ! $? = 0; then
1270 hostname="localhost"
1272 AC_ARG_WITH(hostname,
1273 AC_HELP_STRING([--with-hostname=RESNAME], [specify host name for daemons]),
1275 if test "x$withval" != "xno" ; then
1284 dnl ------------------------------------------
1285 dnl Where to place scriptdir (script files)
1286 dnl ------------------------------------------
1287 scriptdir=`eval echo ${sysconfdir}`
1288 AC_ARG_WITH(scriptdir,
1289 AC_HELP_STRING([--with-scriptdir=PATH], [specify path of Bacula scripts directory]),
1291 if test "x$withval" != "xno" ; then
1300 dnl ------------------------------------------
1301 dnl Where to place bsrdir (bsr files)
1302 dnl ------------------------------------------
1305 AC_HELP_STRING([--with-bsrdir=PATH], [specify path of Bacula bsrs directory]),
1307 if test "x$withval" != "xno" ; then
1315 dnl ------------------------------------------
1316 dnl Where to place logdir (bsr files)
1317 dnl ------------------------------------------
1320 AC_HELP_STRING([--with-logdir=PATH], [specify path of Bacula logs directory]),
1322 if test "x$withval" != "xno" ; then
1331 # ------------------------------------------
1332 # Where to place plugindir (plugin files)
1333 # ------------------------------------------
1334 plugindir=`eval echo ${libdir}`
1335 AC_ARG_WITH(plugindir,
1336 AC_HELP_STRING([--with-plugindir=PATH], [specify path of Bacula plugins directory]),
1338 if test "x$withval" != "xno" ; then
1346 dnl ------------------------------------------
1347 dnl Where to send dump email
1348 dnl ------------------------------------------
1349 dump_email=root@localhost
1350 AC_ARG_WITH(dump-email,
1351 AC_HELP_STRING([--with-dump-email=EMAIL], [dump email address]),
1353 if test "x$withval" != "xno" ; then
1359 AC_SUBST(dump_email)
1361 dnl ------------------------------------------
1362 dnl Where to send job email
1363 dnl ------------------------------------------
1364 job_email=root@localhost
1365 AC_ARG_WITH(job-email,
1366 AC_HELP_STRING([--with-job-email=EMAIL], [job output email address]),
1368 if test "x$withval" != "xno" ; then
1376 dnl ------------------------------------------
1377 dnl Where to find smtp host
1378 dnl ------------------------------------------
1380 AC_ARG_WITH(smtp_host,
1381 AC_HELP_STRING([--with-smtp-host=HOST], [SMTP mail host address]),
1383 if test "x$withval" != "xno" ; then
1391 dnl ------------------------------------
1392 dnl Where to place pid files
1393 dnl ------------------------------------
1395 AC_ARG_WITH(pid-dir,
1396 AC_HELP_STRING([--with-pid-dir=PATH], [specify location of Bacula pid files]),
1398 if test "x$withval" != "xno" ; then
1404 AC_DEFINE_UNQUOTED(_PATH_BACULA_PIDDIR, "$piddir")
1407 dnl ------------------------------------
1408 dnl Where to place subsys "lock file"
1409 dnl ------------------------------------
1410 subsysdir=/var/run/subsys
1411 if test -d /var/run/subsys; then
1412 subsysdir=/var/run/subsys
1413 elif test -d /var/lock/subsys; then
1414 subsysdir=/var/lock/subsys
1416 subsysdir=/var/run/subsys
1418 AC_ARG_WITH(subsys-dir,
1419 AC_HELP_STRING([--with-subsys-dir=PATH], [specify location of Bacula subsys file]),
1421 if test "x$withval" != "xno" ; then
1429 dnl ------------------------------------
1430 dnl Where to start assigning ports
1431 dnl ------------------------------------
1433 AC_ARG_WITH(baseport,
1434 AC_HELP_STRING([--with-baseport=PORT], [specify base port address for daemons]),
1436 if test "x$withval" != "xno" ; then
1443 dir_port=`expr $baseport`
1444 fd_port=`expr $baseport + 1`
1445 sd_port=`expr $fd_port + 1`
1451 dnl ------------------------------------------
1452 dnl Generate passwords
1453 dnl ------------------------------------------
1455 AC_ARG_WITH(dir-password,
1456 AC_HELP_STRING([--with-dir-password=PASSWORD], [specify Director's password]),
1458 if test "x$withval" != "xno" ; then
1459 dir_password=$withval
1464 if test "x$dir_password" = "x" ; then
1465 if test "x$OPENSSL" = "xnone" ; then
1466 key=`autoconf/randpass 33`
1468 key=`openssl rand -base64 33`
1474 AC_ARG_WITH(fd-password,
1475 AC_HELP_STRING([--with-fd-password=PASSWORD], [specify Client's password]),
1477 if test "x$withval" != "xno" ; then
1478 fd_password=$withval
1483 if test "x$fd_password" = "x" ; then
1484 if test "x$OPENSSL" = "xnone" ; then
1485 key=`autoconf/randpass 37`
1487 key=`openssl rand -base64 33`
1493 AC_ARG_WITH(sd-password,
1494 AC_HELP_STRING([--with-sd-password=PASSWORD], [specify Storage daemon's password]),
1496 if test "x$withval" != "xno" ; then
1497 sd_password=$withval
1502 if test "x$sd_password" = "x" ; then
1503 if test "x$OPENSSL" = "xnone" ; then
1504 key=`autoconf/randpass 41`
1506 key=`openssl rand -base64 33`
1512 AC_ARG_WITH(mon-dir-password,
1513 AC_HELP_STRING([--with-mon-dir-password=PASSWORD], [specify Director's password used by the monitor]),
1515 if test "x$withval" != "xno" ; then
1516 mon_dir_password=$withval
1521 if test "x$mon_dir_password" = "x" ; then
1522 if test "x$OPENSSL" = "xnone" ; then
1523 key=`autoconf/randpass 33`
1525 key=`openssl rand -base64 33`
1527 mon_dir_password=$key
1531 AC_ARG_WITH(mon-fd-password,
1532 AC_HELP_STRING([--with-mon-fd-password=PASSWORD], [specify Client's password used by the monitor]),
1534 if test "x$withval" != "xno" ; then
1535 mon_fd_password=$withval
1540 if test "x$mon_fd_password" = "x" ; then
1541 if test "x$OPENSSL" = "xnone" ; then
1542 key=`autoconf/randpass 37`
1544 key=`openssl rand -base64 33`
1546 mon_fd_password=$key
1550 AC_ARG_WITH(mon-sd-password,
1551 AC_HELP_STRING([--with-mon-sd-password=PASSWORD], [specify Storage daemon's password used by the monitor]),
1553 if test "x$withval" != "xno" ; then
1554 mon_sd_password=$withval
1559 if test "x$mon_sd_password" = "x" ; then
1560 if test "x$OPENSSL" = "xnone" ; then
1561 key=`autoconf/randpass 41`
1563 key=`openssl rand -base64 33`
1565 mon_sd_password=$key
1568 AC_SUBST(dir_password)
1569 AC_SUBST(fd_password)
1570 AC_SUBST(sd_password)
1571 AC_SUBST(mon_dir_password)
1572 AC_SUBST(mon_fd_password)
1573 AC_SUBST(mon_sd_password)
1576 dnl Pickup any database name
1579 AC_ARG_WITH(db_name,
1580 AC_HELP_STRING([--with-db-name=DBNAME], [specify database name @<:@default=bacula@:>@]),
1582 if test "x$withval" != "x" ; then
1590 AC_ARG_WITH(db_user,
1591 AC_HELP_STRING([--with-db-user=UNAME], [specify database user @<:@default=bacula@:>@]),
1593 if test "x$withval" != "x" ; then
1601 AC_ARG_WITH(db_password,
1602 AC_HELP_STRING([--with-db-password=PWD], [specify database password @<:@default=*none*@:>@]),
1604 if test "x$withval" != "x" ; then
1605 db_password=$withval
1609 AC_SUBST(db_password)
1612 dnl Pickup a database port
1615 AC_ARG_WITH(db_port,
1616 AC_HELP_STRING([--with-db-port=DBPORT], [specify a database port @<:@default=null@:>@]),
1618 if test "x$withval" != "x" ; then
1626 # Handle users and groups for each daemon
1629 AC_ARG_WITH(dir_user,
1630 AC_HELP_STRING([--with-dir-user=USER], [specify user for Director daemon]),
1632 if test "x$withval" != "x" ; then
1639 AC_ARG_WITH(dir_group,
1640 AC_HELP_STRING([--with-dir-group=GROUP], [specify group for Director daemon]),
1642 if test "x$withval" != "x" ; then
1649 AC_ARG_WITH(sd_user,
1650 AC_HELP_STRING([--with-sd-user=USER], [specify user for Storage daemon]),
1652 if test "x$withval" != "x" ; then
1659 AC_ARG_WITH(sd_group,
1660 AC_HELP_STRING([--with-sd-group=GROUP], [specify group for Storage daemon]),
1662 if test "x$withval" != "x" ; then
1669 AC_ARG_WITH(fd_user,
1670 AC_HELP_STRING([--with-fd-user=USER], [specify user for File daemon]),
1672 if test "x$withval" != "x" ; then
1679 AC_ARG_WITH(fd_group,
1680 AC_HELP_STRING([--with-fd-group=GROUP], [specify group for File daemon]),
1682 if test "x$withval" != "x" ; then
1696 dnl allow setting default executable permissions
1699 AC_ARG_WITH(sbin-perm,
1700 AC_HELP_STRING([--with-sbin-perm=MODE], [specify permissions for sbin binaries @<:@default=0750@:>@]),
1702 if test "x$withval" != "x" ; then
1710 dnl -------------------------------------------
1711 dnl enable batch attribute DB insert (default on)
1712 dnl -------------------------------------------
1713 support_batch_insert=yes
1714 AC_ARG_ENABLE(batch-insert,
1715 AC_HELP_STRING([--enable-batch-insert], [enable the DB batch insert code @<:@default=yes@:>@]),
1717 if test x$enableval = xno; then
1718 support_batch_insert=no
1723 if test x$support_batch_insert = xyes; then
1724 AC_DEFINE(USE_BATCH_FILE_INSERT, 1, [Set if DB batch insert code enabled])
1727 dnl ------------------------------------------------
1728 dnl Bacula check for various SQL database engines
1729 dnl ------------------------------------------------
1732 dnl Set uncomment_dbi by default to '#' if DBI is enabled this will get reset
1736 BA_CHECK_POSTGRESQL_DB
1746 #BA_CHECK_DBI_DRIVER
1748 dnl -------------------------------------------
1749 dnl If no batch insert backend are enable set
1750 dnl variable to None
1751 dnl -------------------------------------------
1752 if test -z "${batch_insert_db_backends}"; then
1753 batch_insert_db_backends="None"
1756 dnl -------------------------------------------
1757 dnl Make sure at least one database backend is found
1758 dnl -------------------------------------------
1759 if test "x${db_backends}" = "x" ; then
1762 echo "You have not specified either --enable-client-only or one of the"
1763 echo "supported databases: MySQL, PostgreSQL, or SQLite3."
1764 echo "This is not permitted. Please reconfigure."
1766 echo "Aborting the configuration ..."
1772 dnl -------------------------------------------
1773 dnl See how many catalog backends are configured.
1774 dnl -------------------------------------------
1775 case `echo $DB_BACKENDS | wc -w | sed -e 's/^ *//'` in
1777 DEFAULT_DB_TYPE="${DB_BACKENDS}"
1778 if test x$use_libtool = xno; then
1779 SHARED_CATALOG_TARGETS=""
1781 SHARED_CATALOG_TARGETS="libbaccats-${DEFAULT_DB_TYPE}.la"
1785 dnl ------------------------------------------------
1786 dnl Set the default backend to the first backend found
1787 dnl ------------------------------------------------
1788 DEFAULT_DB_TYPE=`echo ${DB_BACKENDS} | cut -d' ' -f1`
1790 dnl ------------------------------------------------
1791 dnl For multiple backend we need libtool support.
1792 dnl ------------------------------------------------
1793 if test x$use_libtool = xno; then
1796 echo "You have specified two or more of the"
1797 echo "supported databases: MySQL, PostgreSQL, or SQLite3."
1798 echo "This is not permitted when not using libtool Please reconfigure."
1800 echo "Aborting the configuration ..."
1806 SHARED_CATALOG_TARGETS=""
1807 for db_type in ${DB_BACKENDS}
1809 if test -z "${SHARED_CATALOG_TARGETS}"; then
1810 SHARED_CATALOG_TARGETS="libbaccats-${db_type}.la"
1812 SHARED_CATALOG_TARGETS="${SHARED_CATALOG_TARGETS} libbaccats-${db_type}.la"
1818 dnl -------------------------------------------
1819 dnl Unset DB_LIBS when using libtool as we link the
1820 dnl shared library using the right database lib no need to
1821 dnl set DB_LIBS which is only used for non shared versions
1822 dnl of the backends.
1823 dnl -------------------------------------------
1824 if test x$use_libtool = xyes; then
1828 AC_SUBST(uncomment_dbi)
1829 AC_SUBST(DB_BACKENDS)
1831 AC_SUBST(DEFAULT_DB_TYPE)
1832 AC_SUBST(SHARED_CATALOG_TARGETS)
1834 AC_DEFINE(PROTOTYPES)
1836 dnl --------------------------------------------------------------------------
1837 dnl Supply default CFLAGS, if not specified by `CFLAGS=flags ./configure'
1839 if test -z "$CFLAGS" -o "$CFLAGS" = "-g -O2"; then
1840 if test -z "$CCOPTS"; then
1841 CCOPTS='-g -O2 -Wall'
1849 dnl See if we can use 64 bit file addresses
1850 largefile_support="no"
1855 dnl --------------------------------------------------------------------------
1856 dnl CHECKING FOR HEADER FILES
1857 dnl --------------------------------------------------------------------------
1895 AC_STRUCT_ST_BLKSIZE
1899 dnl --------------------------------------------------------------------------
1900 dnl Check for utime.h structure
1901 dnl --------------------------------------------------------------------------
1902 AC_CACHE_CHECK(for utime.h, ba_cv_header_utime_h,
1906 #include <sys/types.h>
1911 ba_cv_header_utime_h=yes
1913 ba_cv_header_utime_h=no
1918 test $ba_cv_header_utime_h = yes && AC_DEFINE(HAVE_UTIME_H, 1, [Set if utime.h exists])
1920 dnl --------------------------------------------------------------------------
1921 dnl Check for socklen_t
1922 dnl --------------------------------------------------------------------------
1923 AC_CACHE_CHECK(for socklen_t, ba_cv_header_socklen_t,
1927 #include <sys/types.h>
1928 #include <sys/socket.h>
1932 ba_cv_header_socklen_t=yes
1934 ba_cv_header_socklen_t=no
1939 test $ba_cv_header_socklen_t = yes && AC_DEFINE(HAVE_SOCKLEN_T, 1, [Set if socklen_t exists])
1941 dnl --------------------------------------------------------------------------
1942 dnl Check for ioctl request type
1943 dnl --------------------------------------------------------------------------
1945 AC_CACHE_CHECK(for ioctl_req_t, ba_cv_header_ioctl_req_t,
1950 #include <sys/types.h>
1951 #include <sys/ioctl.h>
1953 int (*d_ioctl)(int fd, unsigned long int request, ...);
1956 ba_cv_header_ioctl_req_t=yes
1958 ba_cv_header_ioctl_req_t=no
1963 test $ba_cv_header_ioctl_req_t = yes && AC_DEFINE(HAVE_IOCTL_ULINT_REQUEST, 1, [Set if ioctl request is unsigned long int])
1965 dnl Note: it is more correct to use AC_LANG(C++) but some of the older
1966 dnl *BSD systems still use old style C prototypes, which are wrong with
1967 dnl compiled with a C++ compiler.
1970 dnl --------------------------------------------------------------------------
1971 dnl Check for typeof()
1972 dnl --------------------------------------------------------------------------
1974 AC_CACHE_CHECK(for typeof, ba_cv_have_typeof,
1978 main(){char *a = 0; a = (typeof a)a;}
1980 ba_cv_have_typeof=yes
1982 ba_cv_have_typeof=no
1984 ba_cv_have_typeof=no
1989 test $ba_cv_have_typeof = yes && AC_DEFINE([HAVE_TYPEOF], 1, [Defind to 1 if compiler has typeof])
1994 AC_C_BIGENDIAN([AC_DEFINE([HAVE_BIG_ENDIAN], [1], [Big Endian])], [AC_DEFINE([HAVE_LITTLE_ENDIAN], [1], [Little Endian])])
1996 dnl --------------------------------------------------------------------------
1997 dnl CHECKING FOR FILESYSTEM TYPE
1998 dnl --------------------------------------------------------------------------
1999 AC_MSG_CHECKING(how to get filesystem type)
2001 # The order of these tests is important.
2004 #include <sys/statvfs.h>
2005 #include <sys/fstyp.h>
2007 AC_DEFINE(FSTYPE_STATVFS) fstype=SVR4
2009 if test $fstype = no; then
2012 #include <sys/statfs.h>
2013 #include <sys/fstyp.h>
2015 AC_DEFINE(FSTYPE_USG_STATFS) fstype=SVR3
2018 if test $fstype = no; then
2021 #include <sys/statfs.h>
2022 #include <sys/vmount.h>
2024 AC_DEFINE(FSTYPE_AIX_STATFS) fstype=AIX
2027 if test $fstype = no; then
2032 AC_DEFINE(FSTYPE_MNTENT) fstype=4.3BSD
2035 if test $fstype = no; then
2036 AC_EGREP_HEADER(f_type;, sys/mount.h, AC_DEFINE(FSTYPE_STATFS) fstype=4.4BSD/OSF1)
2038 if test $fstype = no; then
2041 #include <sys/mount.h>
2042 #include <sys/fs_types.h>
2044 AC_DEFINE(FSTYPE_GETMNT) fstype=Ultrix
2047 AC_MSG_RESULT($fstype)
2049 AC_CHECK_HEADER(sys/statvfs.h, [ AC_DEFINE(HAVE_SYS_STATVFS_H,1,[Defines if your system have the sys/statvfs.h header file])] , )
2052 AC_CHECK_FUNCS(backtrace)
2055 dnl --------------------------------------------------------------------------
2056 dnl CHECKING FOR TYPEDEFS, STRUCTURES, AND COMPILER CHARACTERISTICS.
2057 dnl --------------------------------------------------------------------------
2067 AC_CHECK_TYPE(ino_t, unsigned long)
2068 AC_CHECK_TYPE(dev_t, unsigned long)
2069 AC_CHECK_TYPE(daddr_t, long)
2070 AC_CHECK_TYPE(major_t, int)
2071 AC_CHECK_TYPE(minor_t, int)
2072 AC_CHECK_TYPE(ssize_t, int)
2078 AC_CHECK_SIZEOF(char, 1)
2079 AC_CHECK_SIZEOF(short int, 2)
2080 AC_CHECK_SIZEOF(int, 4)
2081 AC_CHECK_SIZEOF(long int, 4)
2082 AC_CHECK_SIZEOF(long long int, 8)
2083 AC_CHECK_SIZEOF(int *, 4)
2085 dnl Check for sys/types.h types
2086 AC_CACHE_CHECK([for u_int type], ac_cv_have_u_int,
2090 #include <sys/types.h>
2094 ac_cv_have_u_int="yes"
2096 ac_cv_have_u_int="no"
2101 if test "x$ac_cv_have_u_int" = "xyes" ; then
2102 AC_DEFINE(HAVE_U_INT)
2106 AC_CACHE_CHECK([for intmax_t type], ac_cv_have_intmax_t,
2110 #include <sys/types.h>
2114 ac_cv_have_intmax_t="yes"
2122 ac_cv_have_intmax_t="yes"
2124 ac_cv_have_intmax_t="no"
2131 if test "x$ac_cv_have_intmax_t" = "xyes" ; then
2132 AC_DEFINE(HAVE_INTMAX_T)
2136 AC_CACHE_CHECK([for u_intmax_t type], ac_cv_have_u_intmax_t,
2140 #include <sys/types.h>
2142 u_intmax_t a; a = 1;
2144 ac_cv_have_u_intmax_t="yes"
2150 u_intmax_t a; a = 1;
2152 ac_cv_have_u_intmax_t="yes"
2154 ac_cv_have_u_intmax_t="no"
2161 if test "x$ac_cv_have_u_intmax_t" = "xyes" ; then
2162 AC_DEFINE(HAVE_U_INTMAX_T)
2166 AC_CACHE_CHECK([for intXX_t types], ac_cv_have_intxx_t,
2170 #include <sys/types.h>
2172 int8_t a; int16_t b; int32_t c; a = b = c = 1;
2174 ac_cv_have_intxx_t="yes"
2176 ac_cv_have_intxx_t="no"
2181 if test "x$ac_cv_have_intxx_t" = "xyes" ; then
2182 AC_DEFINE(HAVE_INTXX_T)
2186 AC_CACHE_CHECK([for int64_t type], ac_cv_have_int64_t,
2190 #include <sys/types.h>
2194 ac_cv_have_int64_t="yes"
2196 ac_cv_have_int64_t="no"
2201 if test "x$ac_cv_have_int64_t" = "xyes" ; then
2202 AC_DEFINE(HAVE_INT64_T)
2206 AC_CACHE_CHECK([for u_intXX_t types], ac_cv_have_u_intxx_t,
2210 #include <sys/types.h>
2212 u_int8_t a; u_int16_t b; u_int32_t c; a = b = c = 1;
2214 ac_cv_have_u_intxx_t="yes"
2216 ac_cv_have_u_intxx_t="no"
2221 if test "x$ac_cv_have_u_intxx_t" = "xyes" ; then
2222 AC_DEFINE(HAVE_U_INTXX_T)
2226 AC_CACHE_CHECK([for u_int64_t types], ac_cv_have_u_int64_t,
2230 #include <sys/types.h>
2234 ac_cv_have_u_int64_t="yes"
2236 ac_cv_have_u_int64_t="no"
2241 if test "x$ac_cv_have_u_int64_t" = "xyes" ; then
2242 AC_DEFINE(HAVE_U_INT64_T)
2246 if (test -z "$have_u_intxx_t" || test -z "$have_intxx_t" && \
2247 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2249 AC_MSG_CHECKING([for intXX_t and u_intXX_t types in sys/bitypes.h])
2252 #include <sys/bitypes.h>
2254 int8_t a; int16_t b; int32_t c;
2255 u_int8_t e; u_int16_t f; u_int32_t g;
2256 a = b = c = e = f = g = 1;
2258 AC_DEFINE(HAVE_U_INTXX_T)
2259 AC_DEFINE(HAVE_INTXX_T)
2260 AC_DEFINE(HAVE_SYS_BITYPES_H)
2268 if test -z "$have_u_intxx_t" ; then
2269 AC_CACHE_CHECK([for uintXX_t types], ac_cv_have_uintxx_t,
2273 #include <sys/types.h>
2275 uint8_t a; uint16_t b;
2276 uint32_t c; a = b = c = 1;
2278 ac_cv_have_uintxx_t="yes"
2280 ac_cv_have_uintxx_t="no"
2285 if test "x$ac_cv_have_uintxx_t" = "xyes" ; then
2286 AC_DEFINE(HAVE_UINTXX_T)
2290 if (test -z "$have_u_int64_t" || test -z "$have_int64_t" && \
2291 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2293 AC_MSG_CHECKING([for int64_t and u_int64_t types in sys/bitypes.h])
2296 #include <sys/bitypes.h>
2298 int64_t a; u_int64_t b;
2301 AC_DEFINE(HAVE_U_INT64_T)
2302 AC_DEFINE(HAVE_INT64_T)
2310 if (test -z "$have_uintxx_t" && \
2311 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2313 AC_MSG_CHECKING([for uintXX_t types in sys/bitypes.h])
2316 #include <sys/bitypes.h>
2318 uint8_t a; uint16_t b;
2319 uint32_t c; a = b = c = 1;
2321 AC_DEFINE(HAVE_UINTXX_T)
2329 dnl --------------------------------------------------------------------------
2330 dnl CHECKING FOR REQUIRED LIBRARY FUNCTIONS
2331 dnl --------------------------------------------------------------------------
2347 [echo 'configure: cannot find needed function.'; exit 1]
2350 AC_CHECK_FUNCS(getpagesize, [AC_DEFINE(HAVE_GETPAGESIZE, 1, [Set if have getpagesize])])
2351 AC_CHECK_FUNCS(malloc_trim, [AC_DEFINE(HAVE_MALLOC_TRIM, 1, [Set if have malloc_trim])])
2353 AC_CHECK_FUNCS(fchdir, [AC_DEFINE(HAVE_FCHDIR)])
2354 AC_CHECK_FUNCS(strtoll, [AC_DEFINE(HAVE_STRTOLL)])
2355 AC_CHECK_FUNCS(posix_fadvise)
2356 AC_CHECK_FUNCS(fdatasync)
2358 AC_CHECK_FUNCS(chflags)
2360 AC_CHECK_FUNCS(snprintf vsnprintf gethostid fseeko)
2362 AC_CACHE_CHECK(for va_copy, ba_cv_va_copy,
2367 void use_va_copy(va_list args){va_list args2; va_copy(args2,args); va_end(args2);}
2368 void call_use_va_copy(int junk,...){va_list args; va_start(args,junk); use_va_copy(args); va_end(args);}
2370 call_use_va_copy(1,2,3)
2379 test $ba_cv_va_copy = yes && AC_DEFINE(HAVE_VA_COPY, 1, [Set if va_copy exists])
2381 dnl --------------------------------------------------------------------------
2382 dnl CHECKING FOR THREAD SAFE FUNCTIONS
2383 dnl --------------------------------------------------------------------------
2384 AC_CHECK_FUNCS(localtime_r readdir_r strerror_r gethostbyname_r)
2386 # If resolver functions are not in libc check for -lnsl or -lresolv.
2387 AC_CHECK_FUNC(gethostbyname_r,
2388 AC_MSG_RESULT(using libc's resolver),
2389 AC_CHECK_LIB(nsl,gethostbyname_r)
2390 AC_CHECK_LIB(resolv,gethostbyname_r))
2392 AC_CHECK_FUNCS(inet_pton, [AC_DEFINE(HAVE_INET_PTON)])
2393 AC_CHECK_FUNCS(inet_ntop, [AC_DEFINE(HAVE_INET_NTOP)])
2394 AC_CHECK_FUNCS(gethostbyname2, [AC_DEFINE(HAVE_GETHOSTBYNAME2)])
2396 dnl ----------------------------
2397 dnl check sa_len of sockaddr
2398 dnl ----------------------------
2399 AC_CACHE_CHECK(for struct sockaddr has a sa_len field, ac_cv_struct_sockaddr_sa_len,
2403 #include <sys/socket.h>
2405 struct sockaddr s; s.sa_len;
2407 ac_cv_struct_sockaddr_sa_len=yes
2408 ], [ac_cv_struct_sockaddr_sa_len=no
2414 if test $ac_cv_struct_sockaddr_sa_len = yes; then
2415 AC_DEFINE(HAVE_SA_LEN, 1, [Define if sa_len field exists in struct sockaddr])
2422 AC_CHECK_FUNCS(getmntinfo, [AC_DEFINE(HAVE_GETMNTINFO)])
2423 AC_FUNC_CLOSEDIR_VOID
2424 AC_FUNC_SETPGRP dnl check for BSD setpgrp.
2425 # AC_FUNC_FNMATCH dnl use local version
2427 AC_CHECK_LIB(intl, gettext, [LIBS="$LIBS -lintl"])
2429 AC_CHECK_LIB(sun, getpwnam)
2431 AC_CHECK_HEADERS(zlib.h)
2432 AC_CHECK_LIB(z, deflate, [ZLIBS="-lz"])
2434 if test x$ZLIBS = x-lz; then
2435 AC_DEFINE(HAVE_LIBZ)
2444 AC_CHECK_HEADER(lzo/lzoconf.h,
2446 AC_CHECK_HEADER(lzo/lzo1x.h,
2448 AC_CHECK_LIB(lzo2, lzo1x_1_compress,
2451 AC_DEFINE(HAVE_LZO,1,[Define to 1 if you have LZO compression])
2459 dnl Check for ACL support and libraries
2463 AC_HELP_STRING([--disable-acl], [disable acl support @<:@default=auto@:>@]),
2465 if test x$enableval = xyes; then
2467 elif test x$enableval = xno; then
2474 have_extended_acl=no
2475 if test x$support_acl = xyes -o x$support_acl = xauto; then
2476 AC_CHECK_HEADER(sys/acl.h, [ AC_DEFINE(HAVE_SYS_ACL_H,1,[Defines if your system have the sys/acl.h header file])] , )
2479 dnl First check for acl_get_file in libc
2481 AC_CHECK_FUNC(acl_get_file,
2488 dnl Check for acl_get_file in libacl (Linux)
2490 if test $have_acl = no; then
2491 AC_CHECK_LIB(acl, acl_get_file,
2494 FDLIBS="-lacl $FDLIBS"
2500 dnl Check for acl_get_file in libpacl (OSF1)
2501 dnl and if ACL_TYPE_DEFAULT_DIR is defined.
2503 if test $have_acl = no -a \
2504 x${HAVE_OSF1_OS_TRUE} = x; then
2505 AC_CHECK_LIB(pacl, acl_get_file,
2508 FDLIBS="-lpacl $FDLIBS"
2512 AC_MSG_CHECKING(for ACL_TYPE_DEFAULT_DIR in acl.h include file)
2513 grep ACL_TYPE_DEFAULT_DIR /usr/include/sys/acl.h > /dev/null 2>&1
2514 if test $? = 0; then
2515 AC_DEFINE(HAVE_ACL_TYPE_DEFAULT_DIR,1,[Defines if your system have the ACL_TYPE_DEFAULT_DIR acl type])
2523 dnl On OSX check for availability of ACL_TYPE_EXTENDED
2525 if test $have_acl = yes -a \
2526 x${HAVE_DARWIN_OS_TRUE} = x; then
2527 AC_MSG_CHECKING(for ACL_TYPE_EXTENDED in acl.h include file)
2528 grep ACL_TYPE_EXTENDED /usr/include/sys/acl.h > /dev/null 2>&1
2529 if test $? = 0; then
2530 AC_DEFINE(HAVE_ACL_TYPE_EXTENDED,1,[Defines if your system have the ACL_TYPE_EXTENDED acl type])
2538 dnl On FreeBSD check for availability of ACL_TYPE_NFS4
2540 if test $have_acl = yes -a \
2541 x${HAVE_FREEBSD_OS_TRUE} = x; then
2542 AC_MSG_CHECKING(for ACL_TYPE_NFS4 in acl.h include file)
2543 grep ACL_TYPE_NFS4 /usr/include/sys/acl.h > /dev/null 2>&1
2544 if test $? = 0; then
2545 AC_DEFINE(HAVE_ACL_TYPE_NFS4,1,[Defines if your system have the ACL_TYPE_NFS4 acl type])
2553 dnl Check for acltotext and acl_totext (Solaris)
2555 if test $have_acl = no -a \
2556 x${HAVE_SUN_OS_TRUE} = x; then
2557 AC_CHECK_LIB(sec, acltotext,
2560 FDLIBS="-lsec $FDLIBS"
2562 AC_CHECK_LIB(sec, acl_totext,
2564 have_extended_acl=yes
2572 dnl Check for acl_get and aclx_get (AIX)
2574 if test $have_acl = no -a \
2575 x${HAVE_AIX_OS_TRUE} = x; then
2576 AC_CHECK_FUNC(acl_get,
2580 AC_CHECK_FUNC(aclx_get,
2582 have_extended_acl=yes
2589 if test x$support_acl = xyes -a $have_acl != yes; then
2590 AC_MSG_ERROR([acl support explicitly enabled but no supported acl implementation found,
2591 please either load the acl libraries or rerun configure without --enable-acl])
2593 if test $have_acl = yes; then
2594 AC_DEFINE([HAVE_ACL],1,[Normal acl support])
2597 if test $have_extended_acl = yes; then
2598 AC_DEFINE([HAVE_EXTENDED_ACL],1,[Extended acl support])
2604 dnl Check for XATTR support
2607 AC_ARG_ENABLE(xattr,
2608 AC_HELP_STRING([--disable-xattr], [disable xattr support @<:@default=auto@:>@]),
2610 if test x$enableval = xyes; then
2612 elif test x$enableval = xno; then
2619 if test x$support_xattr = xyes -o x$support_xattr = xauto; then
2621 dnl First check for *BSD support
2622 dnl When running on a BSD variant
2624 if test x${HAVE_FREEBSD_OS_TRUE} = x -o \
2625 x${HAVE_NETBSD_OS_TRUE} = x -o \
2626 x${HAVE_OPENBSD_OS_TRUE} = x; then
2627 AC_CHECK_HEADER(sys/extattr.h, [ AC_DEFINE(HAVE_SYS_EXTATTR_H,1,[Defines if your system have the sys/extattr.h header file])] , )
2628 AC_CHECK_HEADER(libutil.h, [ AC_DEFINE(HAVE_LIBUTIL_H,1,[Defines if your system have the libutil.h header file])] , )
2629 AC_CHECK_FUNCS(extattr_get_link extattr_set_link extattr_list_link,
2632 AC_DEFINE([HAVE_EXTATTR_GET_LINK],1,[Define to 1 if you have the 'extattr_get_link' function.])
2633 AC_DEFINE([HAVE_EXTATTR_SET_LINK],1,[Define to 1 if you have the 'extattr_set_link' function.])
2634 AC_DEFINE([HAVE_EXTATTR_LIST_LINK],1,[Define to 1 if you have the 'extattr_list_link' function.])
2638 if test $have_xattr = no; then
2639 AC_CHECK_FUNCS(extattr_get_file extattr_set_file extattr_list_file,
2642 AC_DEFINE([HAVE_EXTATTR_GET_FILE],1,[Define to 1 if you have the 'extattr_get_file' function.])
2643 AC_DEFINE([HAVE_EXTATTR_SET_FILE],1,[Define to 1 if you have the 'extattr_set_file' function.])
2644 AC_DEFINE([HAVE_EXTATTR_LIST_FILE],1,[Define to 1 if you have the 'extattr_list_file' function.])
2649 if test $have_xattr = yes; then
2650 have_extattr_string_in_libc=no
2651 AC_CHECK_FUNCS(extattr_namespace_to_string extattr_string_to_namespace,
2653 have_extattr_string_in_libc=yes
2654 AC_DEFINE([HAVE_EXTATTR_NAMESPACE_TO_STRING],1,[Define to 1 if you have the 'extattr_namespace_to_string' function.])
2655 AC_DEFINE([HAVE_EXTATTR_STRING_TO_NAMESPACE],1,[Define to 1 if you have the 'extattr_string_to_namespace' function.])
2660 dnl If extattr_namespace_to_string and extattr_string_to_namespace are not in libc see if they are in libutil
2662 if test $have_extattr_string_in_libc = no; then
2663 AC_CHECK_LIB(util, extattr_namespace_to_string extattr_string_to_namespace,
2665 AC_DEFINE([HAVE_EXTATTR_NAMESPACE_TO_STRING],1,[Define to 1 if you have the 'extattr_namespace_to_string' function.])
2666 AC_DEFINE([HAVE_EXTATTR_STRING_TO_NAMESPACE],1,[Define to 1 if you have the 'extattr_string_to_namespace' function.])
2667 FDLIBS="-lutil $FDLIBS"
2675 dnl If we failed to find *BSD support try the AIX implementation of extented attributes (EA)
2676 dnl When running on AIX
2678 if test $have_xattr = no -a \
2679 x${HAVE_AIX_OS_TRUE} = x; then
2680 AC_CHECK_HEADER(sys/ea.h, [ AC_DEFINE(HAVE_SYS_EA_H,1,[Defines if your system have the sys/ea.h header file])] , )
2681 AC_CHECK_FUNCS(llistea lgetea lsetea,
2684 AC_DEFINE([HAVE_LLISTEA],1,[Define to 1 if you have the 'llistea' function.])
2685 AC_DEFINE([HAVE_LGETEA],1,[Define to 1 if you have the 'lgetea' function.])
2686 AC_DEFINE([HAVE_LSETEA],1,[Define to 1 if you have the 'lsetea' function.])
2690 if test $have_xattr = no; then
2691 AC_CHECK_FUNCS(listea getea setea,
2694 AC_DEFINE([HAVE_LISTEA],1,[Define to 1 if you have the 'listea' function.])
2695 AC_DEFINE([HAVE_GETEA],1,[Define to 1 if you have the 'getea' function.])
2696 AC_DEFINE([HAVE_SETEA],1,[Define to 1 if you have the 'setea' function.])
2703 dnl If we failed to find AIX support try the TRU64 implementation of extented attributes
2704 dnl when running on a TRU64 OS.
2706 if test $have_xattr = no -a \
2707 x${HAVE_OSF1_OS_TRUE} = x; then
2708 AC_CHECK_HEADER(sys/proplist.h, [ AC_DEFINE(HAVE_SYS_PROPLIST_H,1,[Defines if your system have the sys/proplist.h header file])] , )
2709 AC_CHECK_FUNCS(getproplist get_proplist_entry sizeof_proplist_entry add_proplist_entry setproplist,
2712 AC_DEFINE([HAVE_GETPROPLIST],1,[Define to 1 if you have the 'getproplist' function.])
2713 AC_DEFINE([HAVE_GET_PROPLIST_ENTRY],1,[Define to 1 if you have the 'get_proplist_entry' function.])
2714 AC_DEFINE([HAVE_SIZEOF_PROPLIST_ENTRY],1,[Define to 1 if you have the 'sizeof_proplist_entry' function.])
2715 AC_DEFINE([HAVE_ADD_PROPLIST_ENTRY],1,[Define to 1 if you have the 'add_proplist_entry' function.])
2716 AC_DEFINE([HAVE_SETPROPLIST],1,[Define to 1 if you have the 'setproplist' function.])
2722 dnl If we failed to find TRU64 support try the SOLARIS implementation of extented and extensible attributes
2723 dnl when running on a Solaris.
2725 if test $have_xattr = no -a \
2726 x${HAVE_SUN_OS_TRUE} = x; then
2727 AC_CHECK_HEADER(sys/attr.h, [ AC_DEFINE(HAVE_SYS_ATTR_H,1,[Defines if your system have the sys/attr.h header file])] , )
2728 AC_CHECK_HEADER(sys/nvpair.h, [ AC_DEFINE(HAVE_SYS_NVPAIR_H,1,[Defines if your system have the sys/nvpair.h header file])] , )
2729 AC_CHECK_HEADER(attr.h, [ AC_DEFINE(HAVE_ATTR_H,1,[Defines if your system have the attr.h header file])] , )
2731 AC_CHECK_FUNCS(openat fstatat unlinkat fchownat futimesat,
2734 AC_DEFINE([HAVE_OPENAT],1,[Define to 1 if you have the 'openat' function.])
2735 AC_DEFINE([HAVE_FSTATAT],1,[Define to 1 if you have the 'fstatat' function.])
2736 AC_DEFINE([HAVE_UNLINKAT],1,[Define to 1 if you have the 'unlinkat' function.])
2737 AC_DEFINE([HAVE_FCHOWNAT],1,[Define to 1 if you have the 'fchownat' function.])
2738 AC_DEFINE([HAVE_FUTIMESAT],1,[Define to 1 if you have the 'futimesat' function.])
2742 if test $have_xattr = yes; then
2743 AC_CHECK_LIB(nvpair, nvlist_next_nvpair,
2745 AC_DEFINE([HAVE_NVLIST_NEXT_NVPAIR],1,[Define to 1 if you have the 'nvlist_next_nvpair' function.])
2746 FDLIBS="-lnvpair $FDLIBS"
2753 dnl If we failed to find Solaris support try the generic xattr support code
2755 if test $have_xattr = no; then
2756 AC_CHECK_HEADER(sys/xattr.h, [ AC_DEFINE(HAVE_SYS_XATTR_H,1,[Defines if your system have the sys/xattr.h header file])] , )
2757 AC_CHECK_FUNCS(llistxattr lgetxattr lsetxattr,
2760 AC_DEFINE([HAVE_LLISTXATTR],1,[Define to 1 if you have the 'llistxattr' function.])
2761 AC_DEFINE([HAVE_LGETXATTR],1,[Define to 1 if you have the 'lgetxattr' function.])
2762 AC_DEFINE([HAVE_LSETXATTR],1,[Define to 1 if you have the 'lsetxattr' function.])
2766 if test $have_xattr = no; then
2767 AC_CHECK_FUNCS(listxattr getxattr setxattr,
2770 AC_DEFINE([HAVE_LISTXATTR],1,[Define to 1 if you have the 'listxattr' function.])
2771 AC_DEFINE([HAVE_GETXATTR],1,[Define to 1 if you have the 'getxattr' function.])
2772 AC_DEFINE([HAVE_SETXATTR],1,[Define to 1 if you have the 'setxattr' function.])
2778 if test x$support_xattr = xyes -a $have_xattr != yes; then
2779 AC_MSG_ERROR([xattr support explicitly enabled but no supported xattr implementation found,
2780 please either load the xattr libraries or rerun configure without --enable-xattr])
2782 if test $have_xattr = yes; then
2783 AC_DEFINE([HAVE_XATTR],1,[Extended Attributes support])
2789 dnl Check for pthread libraries
2792 AC_CHECK_LIB(pthread, pthread_create, PTHREAD_LIB="-lpthread",
2794 AC_CHECK_LIB(pthreads, pthread_create, PTHREAD_LIB="-lpthreads",
2796 AC_CHECK_LIB(c_r, pthread_create, PTHREAD_LIB="-lc_r",
2798 AC_CHECK_FUNC(pthread_create)
2807 dnl Check for headers, functions and libraries required to support
2808 dnl keeping readall capabilities
2810 AC_CHECK_HEADERS(sys/prctl.h sys/capability.h)
2811 AC_CHECK_FUNCS(prctl setreuid)
2812 AC_CHECK_LIB([cap], [cap_set_proc], [CAP_LIBS="-lcap"], [CAP_LIBS=])
2813 if test x$CAP_LIBS = x-lcap; then
2814 AC_DEFINE(HAVE_LIBCAP, 1, [Define if you have libcap])
2823 if test x$have_gcc = xyes ; then
2824 CPPFLAGS="$CPPFLAGS -fno-strict-aliasing -fno-exceptions -fno-rtti"
2825 CFLAGS="$CFLAGS -fno-strict-aliasing -fno-exceptions -fno-rtti"
2827 LDFLAGS=${LDFLAGS--O}
2828 CPPFLAGS="$CPPFLAGS"
2840 AC_SUBST(X_EXTRA_LIBS)
2845 dnl extra configurable objects
2856 dnl Finally we set appropriate distribution specific
2857 dnl variables and defaults
2859 dnl PFILES are platform specific files
2860 PFILES="platforms/Makefile"
2864 COMPRESS_MANPAGES=yes
2869 PSCMD="ps -e -o pid,comm"
2871 platforms/aix/Makefile"
2872 TAPEDRIVE="/dev/rmt0.1"
2876 PTHREAD_LIB="-lpthread -lexc"
2877 if test "${CC}" = "gcc" ; then
2884 TAPEDRIVE="/dev/nrmt0"
2887 DISTVER=`uname -a |awk '{print $3}'`
2888 TAPEDRIVE="/dev/nrmt0"
2889 PTHREAD_LIB="-pthread"
2890 CFLAGS="${CFLAGS} -pthread"
2891 PSCMD="ps -ax -o pid,command"
2895 platforms/bsdi/Makefile \
2896 platforms/bsdi/bacula-fd \
2897 platforms/bsdi/bacula-sd \
2898 platforms/bsdi/bacula-dir"
2899 largefile_support="yes"
2902 DISTVER=`uname -a |awk '{print $3}'`
2903 TAPEDRIVE="/dev/nrst0"
2906 WLDFLAGS="-mwindows"
2910 TAPEDRIVE="/dev/nst0"
2911 PSCMD="ps -e -o pid,command"
2914 platforms/darwin/Makefile"
2918 TAPEDRIVE="/dev/nst0"
2919 PSCMD="ps -e -o pid,command"
2922 platforms/osx/Makefile"
2925 if `test -f /etc/apt/sources.list && grep -q ubuntu /etc/apt/sources.list`; then
2928 DISTVER=`cat /etc/debian_version`
2929 if test -f /etc/lsb-release ; then
2931 if test "x$DISTRIB_ID" != "x" ; then
2932 DISTNAME=$DISTRIB_ID
2934 if test "x$DISTRIB_RELEASE" != "x" ; then
2935 DISTVER=$DISTRIB_RELEASE
2938 if test "$DISTNAME" = "Ubuntu" ; then
2941 TAPEDRIVE="/dev/nst0"
2942 PSCMD="ps -e -o pid,command"
2943 if test "$DISTNAME" = "ubuntu" ; then
2945 platforms/ubuntu/Makefile \
2946 platforms/ubuntu/bacula-fd \
2947 platforms/ubuntu/bacula-sd \
2948 platforms/ubuntu/bacula-dir"
2951 platforms/debian/Makefile \
2952 platforms/debian/bacula-fd \
2953 platforms/debian/bacula-sd \
2954 platforms/debian/bacula-dir"
2958 DISTVER=`uname -a |awk '{print $3}'`
2959 VER=`echo $DISTVER | cut -c 1`
2960 if test x$VER = x4 ; then
2961 PTHREAD_LIB="${PTHREAD_LIBS:--pthread}"
2962 CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS:--pthread}"
2966 TAPEDRIVE="/dev/nrsa0"
2967 PSCMD="ps -ax -o pid,command"
2969 platforms/freebsd/Makefile \
2970 platforms/freebsd/bacula-fd \
2971 platforms/freebsd/bacula-sd \
2972 platforms/freebsd/bacula-dir"
2973 largefile_support="yes"
2976 PSCMD="UNIX95=1; ps -e -o pid,comm"
2977 CFLAGS="${CFLAGS} -D_XOPEN_SOURCE_EXTENDED=1"
2979 TAPEDRIVE="/dev/rmt/0hnb"
2980 PTHREAD_LIB="-lpthread"
2981 AC_DEFINE([_INCLUDE_LONGLONG])
2985 TAPEDRIVE="/dev/rmt/0cbn"
2986 PSCMD="ps -e -o pid,comm"
2988 platforms/irix/Makefile \
2989 platforms/irix/bacula-fd \
2990 platforms/irix/bacula-sd \
2991 platforms/irix/bacula-dir"
2994 DISTVER=`uname -a |awk '{print $3}'`
2997 TAPEDRIVE="/dev/nrst0"
2998 PSCMD="ps -ax -o pid,command"
2999 PTHREAD_LIB="-pthread"
3000 CFLAGS="${CFLAGS} -pthread"
3003 DISTVER=`uname -a |awk '{print $3}'`
3006 TAPEDRIVE="/dev/nrst0"
3007 PSCMD="ps -ax -o pid,command"
3008 PTHREAD_LIB="-pthread"
3009 CFLAGS="${CFLAGS} -pthread"
3011 platforms/openbsd/Makefile \
3012 platforms/openbsd/bacula-fd \
3013 platforms/openbsd/bacula-sd \
3014 platforms/openbsd/bacula-dir"
3017 if test -f /etc/whitebox-release ; then
3018 f=/etc/whitebox-release
3020 f=/etc/redhat-release
3022 if test `cat $f | grep release |\
3023 cut -f 3 -d ' '`x = "Enterprise"x ; then
3024 DISTVER="Enterprise "`cat $f | grep release |\
3027 DISTVER=`cat /etc/redhat-release | grep release |\
3030 TAPEDRIVE="/dev/nst0"
3031 PSCMD="ps -e -o pid,command"
3033 platforms/redhat/Makefile \
3034 platforms/redhat/bacula-fd \
3035 platforms/redhat/bacula-sd \
3036 platforms/redhat/bacula-dir
3040 DISTVER=`cat /etc/mandrake-release | grep release |\
3042 TAPEDRIVE="/dev/nst0"
3043 PSCMD="ps -e -o pid,command"
3045 platforms/mandrake/Makefile \
3046 platforms/mandrake/bacula-fd \
3047 platforms/mandrake/bacula-sd \
3048 platforms/mandrake/bacula-dir \
3052 DISTVER=`awk '/version / {print $5}' < /etc/gentoo-release`
3053 TAPEDRIVE="/dev/nst0"
3054 PSCMD="ps -e -o pid,command"
3056 platforms/gentoo/Makefile \
3057 platforms/gentoo/bacula-init \
3058 platforms/gentoo/bacula-fd \
3059 platforms/gentoo/bacula-sd \
3060 platforms/gentoo/bacula-dir"
3063 DISTVER=`cat /etc/slackware-version`
3064 TAPEDRIVE="/dev/nst0"
3065 PSCMD="ps -e -o pid,command"
3067 platforms/slackware/Makefile \
3068 platforms/slackware/rc.bacula-fd \
3069 platforms/slackware/rc.bacula-sd \
3070 platforms/slackware/rc.bacula-dir\
3071 platforms/slackware/functions.bacula"
3075 TAPEDRIVE="/dev/rmt/0cbn"
3076 PSCMD="ps -e -o pid,comm"
3078 platforms/solaris/Makefile \
3079 platforms/solaris/bacula-fd \
3080 platforms/solaris/bacula-sd \
3081 platforms/solaris/bacula-dir"
3085 AC_DEFINE(HAVE_OLD_SOCKOPT)
3086 AC_DEFINE(USE_THR_SETCONCURRENCY)
3089 AC_DEFINE(USE_THR_SETCONCURRENCY)
3094 LIBS="$LIBS -lresolv -lrt"
3097 DISTVER=`cat /etc/SuSE-release |grep VERSION|\
3099 TAPEDRIVE="/dev/nst0"
3100 PSCMD="ps -e -o pid,command"
3102 platforms/suse/Makefile \
3103 platforms/suse/bacula-fd \
3104 platforms/suse/bacula-sd \
3105 platforms/suse/bacula-dir \
3106 platforms/suse/bacula"
3111 TAPEDRIVE="/dev/nst0"
3112 PSCMD="ps -e -o pid,command"
3114 platforms/suse/Makefile \
3115 platforms/suse/bacula-fd \
3116 platforms/suse/bacula-sd \
3117 platforms/suse/bacula-dir"
3121 TAPEDRIVE="/dev/nst0"
3124 echo " === Something went wrong. Unknown DISTNAME $DISTNAME ==="
3128 dnl -------------------------------------------
3129 dnl systemd (default off)
3130 dnl -------------------------------------------
3131 AC_MSG_CHECKING(for systemd support)
3132 AC_ARG_WITH(systemd,
3133 AC_HELP_STRING([--with-systemd@<:@=UNITDIR@:>@], [Include systemd support. UNITDIR is where systemd system .service files are located, default is to ask systemctl.]),
3135 if test "$withval" != "no"; then
3136 if test "$withval" = "yes"; then
3137 SYSTEMD_UNITDIR="`systemctl show | grep UnitPath | cut -d " " -f2`"
3139 SYSTEMD_UNITDIR="${withval}"
3143 platforms/systemd/Makefile \
3144 platforms/systemd/bacula-dir.service \
3145 platforms/systemd/bacula-fd.service \
3146 platforms/systemd/bacula-sd.service"
3147 AC_DEFINE(HAVE_SYSTEMD, 1, [Define to 1 if systemd support should be enabled])
3149 support_systemd="yes"
3152 support_systemd="no"
3155 support_systemd="no"
3159 AC_SUBST(SYSTEMD_UNITDIR)
3163 LIBS="$PTHREAD_LIB $LIBS"
3165 AC_DEFINE_UNQUOTED(lld, "$lld")
3166 AC_DEFINE_UNQUOTED(llu, "$llu")
3173 AC_SUBST(COMPRESS_MANPAGES)
3175 dnl common parts of the Makefile
3176 MCOMMON=./autoconf/Make.common
3177 AC_SUBST_FILE(MCOMMON)
3180 if test "x${subsysdir}" = "x${sbindir}" ; then
3183 echo "You have set both --sbindir and --with-subsys-dir"
3184 echo " equal to: ${subsysdir} "
3185 echo "This is not permitted. Please reconfigure."
3187 echo "Aborting configuration ..."
3193 AC_OUTPUT([autoconf/Make.common \
3196 scripts/btraceback \
3199 scripts/bacula-ctl-dir \
3200 scripts/bacula-ctl-fd \
3201 scripts/bacula-ctl-sd \
3202 scripts/devel_bacula \
3205 scripts/bacula.desktop.gnome1 \
3206 scripts/bacula.desktop.gnome2 \
3207 scripts/bacula.desktop.gnome1.consolehelper \
3208 scripts/bacula.desktop.gnome2.consolehelper \
3209 scripts/bacula.desktop.gnome1.xsu \
3210 scripts/bacula.desktop.gnome2.xsu \
3211 scripts/mtx-changer \
3212 scripts/disk-changer \
3213 scripts/dvd-handler \
3214 scripts/dvd-simulator \
3215 scripts/bacula-tray-monitor.desktop \
3216 scripts/logwatch/Makefile \
3217 scripts/logwatch/logfile.bacula.conf \
3218 scripts/wxconsole.console_apps \
3219 scripts/wxconsole.desktop.consolehelper \
3220 scripts/wxconsole.desktop.xsu \
3221 scripts/bat.desktop \
3222 scripts/bat.desktop.xsu \
3223 scripts/bat.desktop.consolehelper \
3224 scripts/bat.console_apps \
3227 src/console/Makefile \
3228 src/console/bconsole.conf \
3229 src/qt-console/tray-monitor/tray-monitor.pro \
3230 src/qt-console/tray-monitor/tray-monitor.conf \
3231 src/qt-console/bat.conf \
3232 src/qt-console/bat.pro \
3233 src/qt-console/bat.pro.mingw32 \
3234 src/qt-console/install_conf_file \
3235 src/wx-console/Makefile \
3236 src/wx-console/bwx-console.conf \
3237 src/tray-monitor/Makefile \
3238 src/tray-monitor/tray-monitor.conf \
3240 src/dird/bacula-dir.conf \
3242 src/stored/Makefile \
3243 src/stored/bacula-sd.conf \
3244 src/filed/Makefile \
3245 src/filed/bacula-fd.conf \
3247 src/cats/make_catalog_backup.pl \
3248 src/cats/make_catalog_backup \
3249 src/cats/delete_catalog_backup \
3250 src/cats/create_postgresql_database \
3251 src/cats/update_postgresql_tables \
3252 src/cats/make_postgresql_tables \
3253 src/cats/grant_postgresql_privileges \
3254 src/cats/drop_postgresql_tables \
3255 src/cats/drop_postgresql_database \
3256 src/cats/create_mysql_database \
3257 src/cats/update_mysql_tables \
3258 src/cats/make_mysql_tables \
3259 src/cats/grant_mysql_privileges \
3260 src/cats/drop_mysql_tables \
3261 src/cats/drop_mysql_database \
3262 src/cats/create_sqlite3_database \
3263 src/cats/update_sqlite3_tables \
3264 src/cats/make_sqlite3_tables \
3265 src/cats/grant_sqlite3_privileges \
3266 src/cats/drop_sqlite3_tables \
3267 src/cats/drop_sqlite3_database \
3270 src/cats/create_bacula_database \
3271 src/cats/update_bacula_tables \
3272 src/cats/grant_bacula_privileges \
3273 src/cats/make_bacula_tables \
3274 src/cats/drop_bacula_tables \
3275 src/cats/drop_bacula_database \
3276 src/cats/install-default-backend \
3277 src/findlib/Makefile \
3278 src/tools/Makefile \
3279 src/plugins/fd/Makefile \
3280 src/plugins/sd/Makefile \
3281 src/plugins/dir/Makefile \
3282 src/win32/Makefile.inc \
3284 updatedb/update_mysql_tables_9_to_10 \
3285 updatedb/update_sqlite3_tables_9_to_10 \
3286 updatedb/update_postgresql_tables_9_to_10 \
3287 updatedb/update_mysql_tables_10_to_11 \
3288 updatedb/update_sqlite3_tables_10_to_11 \
3289 updatedb/update_postgresql_tables_10_to_11 \
3290 updatedb/update_mysql_tables_11_to_12 \
3291 updatedb/update_sqlite3_tables_11_to_12 \
3292 updatedb/update_postgresql_tables_11_to_12 \
3293 updatedb/update_mysql_tables_12_to_14 \
3294 updatedb/update_sqlite3_tables_12_to_14 \
3295 updatedb/update_postgresql_tables_12_to_14 \
3296 examples/nagios/check_bacula/Makefile \
3297 platforms/rpms/redhat/bacula.spec \
3298 platforms/rpms/redhat/bacula-bat.spec \
3299 platforms/rpms/redhat/bacula-docs.spec \
3300 platforms/rpms/redhat/bacula-mtx.spec \
3305 if test "${support_bat}" = "yes" ; then
3306 if test "x$QMAKE" = "xnone"; then
3307 AC_MSG_ERROR([Could not find qmake $PATH. Check your Qt installation])
3311 echo "Creating bat Makefile"
3321 dnl if CC is gcc, we can rebuild the dependencies (since the depend rule
3322 dnl requires gcc). If it's not, don't rebuild dependencies
3324 if test X"$GCC" = "Xyes" ; then
3325 echo "Doing make of dependencies"
3326 ${MAKE:-make} depend
3330 chmod 755 install_conf_file build-depkgs-qt-console
3334 chmod 755 bacula btraceback mtx-changer
3335 chmod 755 dvd-handler dvd-simulator
3336 chmod 755 bconsole mtx-changer devel_bacula logrotate
3340 chmod 755 $c/update_mysql_tables_10_to_11 $c/update_sqlite3_tables_10_to_11
3341 chmod 755 $c/update_postgresql_tables_10_to_11
3342 chmod 755 $c/update_mysql_tables_11_to_12 $c/update_sqlite3_tables_11_to_12
3343 chmod 755 $c/update_postgresql_tables_11_to_12
3348 chmod 755 $c/create_bacula_database $c/update_bacula_tables $c/make_bacula_tables
3349 chmod 755 $c/grant_bacula_privileges $c/drop_bacula_tables $c/drop_bacula_database
3351 chmod 755 $c/create_mysql_database $c/update_mysql_tables $c/make_mysql_tables
3352 chmod 755 $c/grant_mysql_privileges $c/drop_mysql_tables $c/drop_mysql_database
3354 chmod 755 $c/create_sqlite3_database $c/update_sqlite3_tables $c/make_sqlite3_tables
3355 chmod 755 $c/grant_sqlite3_privileges $c/drop_sqlite3_tables $c/drop_sqlite3_database
3357 chmod 755 $c/create_postgresql_database $c/update_postgresql_tables $c/make_postgresql_tables
3358 chmod 755 $c/grant_postgresql_privileges $c/drop_postgresql_tables $c/drop_postgresql_database
3360 #chmod 755 $c/create_ingres_database $c/update_ingres_tables $c/make_ingres_tables
3361 #chmod 755 $c/grant_ingres_privileges $c/drop_ingres_tables $c/drop_ingres_database
3364 chmod 755 $c/make_catalog_backup $c/delete_catalog_backup $c/make_catalog_backup.pl
3368 chmod 755 $c/install-default-backend
3370 chmod 755 src/win32/build-depkgs-mingw32
3372 if test "x$ac_cv_sys_largefile_CFLAGS" != "xno" ; then
3373 largefile_support="yes"
3376 dnl Only try to find out the version number of the compiler when we know its some kind of GCC compiler
3377 if test X"$GCC" = "Xyes" ; then
3379 dnl A whole lot of hand springs to get the compiler version.
3380 dnl This is because gcc changed the output in version 3.0
3382 CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 3 -d ' '`
3383 if test "x${CCVERSION}" = "x" ; then
3384 CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 1 -d ' '`
3386 CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 3 -d ' '`
3387 if test x"${CXXVERSION}" = x ; then
3388 CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 1 -d ' '`
3392 # clean up any old junk
3399 Configuration on `date`:
3401 Host: ${host}${post_host} -- ${DISTNAME} ${DISTVER}
3402 Bacula version: ${BACULA} ${VERSION} (${DATE})
3403 Source code location: ${srcdir}
3404 Install binaries: ${sbindir}
3405 Install libraries: ${libdir}
3406 Install config files: ${sysconfdir}
3407 Scripts directory: ${scriptdir}
3408 Archive directory: ${archivedir}
3409 Working directory: ${working_dir}
3410 PID directory: ${piddir}
3411 Subsys directory: ${subsysdir}
3412 Man directory: ${mandir}
3413 Data directory: ${datarootdir}
3414 Plugin directory: ${plugindir}
3415 C Compiler: ${CC} ${CCVERSION}
3416 C++ Compiler: ${CXX} ${CXXVERSION}
3417 Compiler flags: ${WCFLAGS} ${CFLAGS}
3418 Linker flags: ${WLDFLAGS} ${LDFLAGS}
3420 Statically Linked Tools: ${support_static_tools}
3421 Statically Linked FD: ${support_static_fd}
3422 Statically Linked SD: ${support_static_sd}
3423 Statically Linked DIR: ${support_static_dir}
3424 Statically Linked CONS: ${support_static_cons}
3425 Database backends: ${db_backends}
3426 Database port: ${db_port}
3427 Database name: ${db_name}
3428 Database user: ${db_user}
3430 Job Output Email: ${job_email}
3431 Traceback Email: ${dump_email}
3432 SMTP Host Address: ${smtp_host}
3434 Director Port: ${dir_port}
3435 File daemon Port: ${fd_port}
3436 Storage daemon Port: ${sd_port}
3438 Director User: ${dir_user}
3439 Director Group: ${dir_group}
3440 Storage Daemon User: ${sd_user}
3441 Storage DaemonGroup: ${sd_group}
3442 File Daemon User: ${fd_user}
3443 File Daemon Group: ${fd_group}
3445 Large file support: $largefile_support
3446 Bacula conio support: ${got_conio} ${CONS_LIBS}
3447 readline support: ${got_readline} ${PRTREADLINE_SRC}
3448 TCP Wrappers support: ${TCPW_MSG} ${WRAPLIBS}
3449 TLS support: ${support_tls}
3450 Encryption support: ${support_crypto}
3451 ZLIB support: ${have_zlib}
3452 LZO support: ${have_lzo}
3453 enable-smartalloc: ${support_smartalloc}
3454 enable-lockmgr: ${support_lockmgr}
3455 bat support: ${support_bat}
3456 enable-gnome: ${support_gnome} ${gnome_version}
3457 enable-bwx-console: ${support_wx_console} ${wx_version}
3458 enable-tray-monitor: ${support_tray_monitor}
3459 client-only: ${build_client_only}
3460 build-dird: ${build_dird}
3461 build-stored: ${build_stored}
3462 Plugin support: ${have_plugins}
3463 ACL support: ${have_acl}
3464 XATTR support: ${have_xattr}
3465 Python support: ${support_python} ${PYTHON_LIBS}
3466 systemd support: ${support_systemd} ${SYSTEMD_UNITDIR}
3467 Batch insert enabled: ${batch_insert_db_backends}
3471 # create a small shell script useful for support with
3472 # configure options and config.out info
3473 cat > scripts/bacula_config << EOF
3476 $ $0 $ac_configure_args
3478 cat config.out >> scripts/bacula_config
3479 echo __EOC__ >> scripts/bacula_config
3480 chmod 755 scripts/bacula_config