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 (default off)
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 if test "$support_tls" = "yes"; then
1175 AC_DEFINE(HAVE_OPENSSL, 1, [Define if OpenSSL library is available])
1176 AC_DEFINE(HAVE_TLS, 1, [Define if TLS support should be enabled])
1177 AC_DEFINE(HAVE_CRYPTO, 1, [Define if encryption support should be enabled])
1180 if test "$ac_cv_openssl_sha2" = "yes"; then
1181 AC_DEFINE(HAVE_SHA2, 1, [Define if the SHA-2 family of digest algorithms is available])
1184 if test "$ac_cv_openssl_export" = "yes"; then
1185 AC_DEFINE(HAVE_OPENSSL_EXPORT_LIBRARY, 1, [Define if the OpenSSL library is export-contrained to 128bit ciphers])
1188 if test "$support_crypto" = "yes"; then
1189 AC_CHECK_LIB(crypto, EVP_PKEY_encrypt_old, AC_DEFINE(HAVE_OPENSSLv1, 1, [Set if have OpenSSL version 1.x]))
1192 LIBS="${saved_LIBS}"
1193 CFLAGS="${saved_CFLAGS}"
1200 AC_MSG_RESULT([$support_tls])
1202 if test "$support_tls" = "no"; then
1206 if test "$support_crypto" = "no"; then
1211 AC_SUBST(OPENSSL_LIBS)
1212 AC_SUBST(OPENSSL_INC)
1214 dnl -----------------------------------------------------------
1215 dnl dlopen is needed for plugins
1216 dnl -----------------------------------------------------------
1217 AC_SEARCH_LIBS(dlopen, [dl])
1219 dnl ------------------------------------------
1220 dnl Where to place working dir
1221 dnl ------------------------------------------
1222 working_dir=`eval echo ${prefix}/var/bacula/working`
1223 AC_ARG_WITH(working-dir,
1224 AC_HELP_STRING([--with-working-dir=PATH], [specify path of Bacula working directory]),
1226 if test "x$withval" != "xno" ; then
1227 working_dir=$withval
1232 AC_SUBST(working_dir)
1234 dnl ------------------------------------------------------------------
1235 dnl If the user has not set archivedir, we set our default as /tmp
1236 dnl ------------------------------------------------------------------
1238 AC_ARG_WITH(archivedir,
1239 AC_HELP_STRING([--with-archivedir=PATH], [specify path of SD archive directory]),
1241 if test "x$withval" != "xno" ; then
1247 AC_SUBST(archivedir)
1249 dnl ------------------------------------------------------------------
1250 dnl Allow the user to specify the daemon resource name default hostname
1251 dnl ------------------------------------------------------------------
1253 AC_ARG_WITH(basename,
1254 AC_HELP_STRING([--with-basename=RESNAME], [specify base resource name for daemons]),
1256 if test "x$withval" != "xno" ; then
1264 dnl ------------------------------------------------------------------
1265 dnl Allow the user to override the hostname (default = machine hostname)
1266 dnl ------------------------------------------------------------------
1267 hostname=`uname -n | cut -d '.' -f 1`
1268 if test x${hostname} = x ; then
1269 hostname="localhost"
1271 AC_ARG_WITH(hostname,
1272 AC_HELP_STRING([--with-hostname=RESNAME], [specify host name for daemons]),
1274 if test "x$withval" != "xno" ; then
1283 dnl ------------------------------------------
1284 dnl Where to place scriptdir (script files)
1285 dnl ------------------------------------------
1286 scriptdir=`eval echo ${sysconfdir}`
1287 AC_ARG_WITH(scriptdir,
1288 AC_HELP_STRING([--with-scriptdir=PATH], [specify path of Bacula scripts directory]),
1290 if test "x$withval" != "xno" ; then
1299 dnl ------------------------------------------
1300 dnl Where to place bsrdir (bsr files)
1301 dnl ------------------------------------------
1304 AC_HELP_STRING([--with-bsrdir=PATH], [specify path of Bacula bsrs directory]),
1306 if test "x$withval" != "xno" ; then
1314 dnl ------------------------------------------
1315 dnl Where to place logdir (bsr files)
1316 dnl ------------------------------------------
1319 AC_HELP_STRING([--with-logdir=PATH], [specify path of Bacula logs directory]),
1321 if test "x$withval" != "xno" ; then
1330 # ------------------------------------------
1331 # Where to place plugindir (plugin files)
1332 # ------------------------------------------
1333 plugindir=`eval echo ${libdir}`
1334 AC_ARG_WITH(plugindir,
1335 AC_HELP_STRING([--with-plugindir=PATH], [specify path of Bacula plugins directory]),
1337 if test "x$withval" != "xno" ; then
1345 dnl ------------------------------------------
1346 dnl Where to send dump email
1347 dnl ------------------------------------------
1348 dump_email=root@localhost
1349 AC_ARG_WITH(dump-email,
1350 AC_HELP_STRING([--with-dump-email=EMAIL], [dump email address]),
1352 if test "x$withval" != "xno" ; then
1358 AC_SUBST(dump_email)
1360 dnl ------------------------------------------
1361 dnl Where to send job email
1362 dnl ------------------------------------------
1363 job_email=root@localhost
1364 AC_ARG_WITH(job-email,
1365 AC_HELP_STRING([--with-job-email=EMAIL], [job output email address]),
1367 if test "x$withval" != "xno" ; then
1375 dnl ------------------------------------------
1376 dnl Where to find smtp host
1377 dnl ------------------------------------------
1379 AC_ARG_WITH(smtp_host,
1380 AC_HELP_STRING([--with-smtp-host=HOST], [SMTP mail host address]),
1382 if test "x$withval" != "xno" ; then
1390 dnl ------------------------------------
1391 dnl Where to place pid files
1392 dnl ------------------------------------
1394 AC_ARG_WITH(pid-dir,
1395 AC_HELP_STRING([--with-pid-dir=PATH], [specify location of Bacula pid files]),
1397 if test "x$withval" != "xno" ; then
1403 AC_DEFINE_UNQUOTED(_PATH_BACULA_PIDDIR, "$piddir")
1406 dnl ------------------------------------
1407 dnl Where to place subsys "lock file"
1408 dnl ------------------------------------
1409 subsysdir=/var/run/subsys
1410 if test -d /var/run/subsys; then
1411 subsysdir=/var/run/subsys
1412 elif test -d /var/lock/subsys; then
1413 subsysdir=/var/lock/subsys
1415 subsysdir=/var/run/subsys
1417 AC_ARG_WITH(subsys-dir,
1418 AC_HELP_STRING([--with-subsys-dir=PATH], [specify location of Bacula subsys file]),
1420 if test "x$withval" != "xno" ; then
1428 dnl ------------------------------------
1429 dnl Where to start assigning ports
1430 dnl ------------------------------------
1432 AC_ARG_WITH(baseport,
1433 AC_HELP_STRING([--with-baseport=PORT], [specify base port address for daemons]),
1435 if test "x$withval" != "xno" ; then
1442 dir_port=`expr $baseport`
1443 fd_port=`expr $baseport + 1`
1444 sd_port=`expr $fd_port + 1`
1450 dnl ------------------------------------------
1451 dnl Generate passwords
1452 dnl ------------------------------------------
1454 AC_ARG_WITH(dir-password,
1455 AC_HELP_STRING([--with-dir-password=PASSWORD], [specify Director's password]),
1457 if test "x$withval" != "xno" ; then
1458 dir_password=$withval
1463 if test "x$dir_password" = "x" ; then
1464 if test "x$OPENSSL" = "xnone" ; then
1465 key=`autoconf/randpass 33`
1467 key=`openssl rand -base64 33`
1473 AC_ARG_WITH(fd-password,
1474 AC_HELP_STRING([--with-fd-password=PASSWORD], [specify Client's password]),
1476 if test "x$withval" != "xno" ; then
1477 fd_password=$withval
1482 if test "x$fd_password" = "x" ; then
1483 if test "x$OPENSSL" = "xnone" ; then
1484 key=`autoconf/randpass 37`
1486 key=`openssl rand -base64 33`
1492 AC_ARG_WITH(sd-password,
1493 AC_HELP_STRING([--with-sd-password=PASSWORD], [specify Storage daemon's password]),
1495 if test "x$withval" != "xno" ; then
1496 sd_password=$withval
1501 if test "x$sd_password" = "x" ; then
1502 if test "x$OPENSSL" = "xnone" ; then
1503 key=`autoconf/randpass 41`
1505 key=`openssl rand -base64 33`
1511 AC_ARG_WITH(mon-dir-password,
1512 AC_HELP_STRING([--with-mon-dir-password=PASSWORD], [specify Director's password used by the monitor]),
1514 if test "x$withval" != "xno" ; then
1515 mon_dir_password=$withval
1520 if test "x$mon_dir_password" = "x" ; then
1521 if test "x$OPENSSL" = "xnone" ; then
1522 key=`autoconf/randpass 33`
1524 key=`openssl rand -base64 33`
1526 mon_dir_password=$key
1530 AC_ARG_WITH(mon-fd-password,
1531 AC_HELP_STRING([--with-mon-fd-password=PASSWORD], [specify Client's password used by the monitor]),
1533 if test "x$withval" != "xno" ; then
1534 mon_fd_password=$withval
1539 if test "x$mon_fd_password" = "x" ; then
1540 if test "x$OPENSSL" = "xnone" ; then
1541 key=`autoconf/randpass 37`
1543 key=`openssl rand -base64 33`
1545 mon_fd_password=$key
1549 AC_ARG_WITH(mon-sd-password,
1550 AC_HELP_STRING([--with-mon-sd-password=PASSWORD], [specify Storage daemon's password used by the monitor]),
1552 if test "x$withval" != "xno" ; then
1553 mon_sd_password=$withval
1558 if test "x$mon_sd_password" = "x" ; then
1559 if test "x$OPENSSL" = "xnone" ; then
1560 key=`autoconf/randpass 41`
1562 key=`openssl rand -base64 33`
1564 mon_sd_password=$key
1567 AC_SUBST(dir_password)
1568 AC_SUBST(fd_password)
1569 AC_SUBST(sd_password)
1570 AC_SUBST(mon_dir_password)
1571 AC_SUBST(mon_fd_password)
1572 AC_SUBST(mon_sd_password)
1575 dnl Pickup any database name
1578 AC_ARG_WITH(db_name,
1579 AC_HELP_STRING([--with-db-name=DBNAME], [specify database name @<:@default=bacula@:>@]),
1581 if test "x$withval" != "x" ; then
1589 AC_ARG_WITH(db_user,
1590 AC_HELP_STRING([--with-db-user=UNAME], [specify database user @<:@default=bacula@:>@]),
1592 if test "x$withval" != "x" ; then
1600 AC_ARG_WITH(db_password,
1601 AC_HELP_STRING([--with-db-password=PWD], [specify database password @<:@default=*none*@:>@]),
1603 if test "x$withval" != "x" ; then
1604 db_password=$withval
1608 AC_SUBST(db_password)
1611 dnl Pickup a database port
1614 AC_ARG_WITH(db_port,
1615 AC_HELP_STRING([--with-db-port=DBPORT], [specify a database port @<:@default=null@:>@]),
1617 if test "x$withval" != "x" ; then
1625 # Handle users and groups for each daemon
1628 AC_ARG_WITH(dir_user,
1629 AC_HELP_STRING([--with-dir-user=USER], [specify user for Director daemon]),
1631 if test "x$withval" != "x" ; then
1638 AC_ARG_WITH(dir_group,
1639 AC_HELP_STRING([--with-dir-group=GROUP], [specify group for Director daemon]),
1641 if test "x$withval" != "x" ; then
1648 AC_ARG_WITH(sd_user,
1649 AC_HELP_STRING([--with-sd-user=USER], [specify user for Storage daemon]),
1651 if test "x$withval" != "x" ; then
1658 AC_ARG_WITH(sd_group,
1659 AC_HELP_STRING([--with-sd-group=GROUP], [specify group for Storage daemon]),
1661 if test "x$withval" != "x" ; then
1668 AC_ARG_WITH(fd_user,
1669 AC_HELP_STRING([--with-fd-user=USER], [specify user for File daemon]),
1671 if test "x$withval" != "x" ; then
1678 AC_ARG_WITH(fd_group,
1679 AC_HELP_STRING([--with-fd-group=GROUP], [specify group for File daemon]),
1681 if test "x$withval" != "x" ; then
1695 dnl allow setting default executable permissions
1698 AC_ARG_WITH(sbin-perm,
1699 AC_HELP_STRING([--with-sbin-perm=MODE], [specify permissions for sbin binaries @<:@default=0750@:>@]),
1701 if test "x$withval" != "x" ; then
1709 dnl ------------------------------------------------
1710 dnl Bacula check for various SQL database engines
1711 dnl ------------------------------------------------
1712 BA_CHECK_POSTGRESQL_DB
1722 #BA_CHECK_DBI_DRIVER
1724 dnl -------------------------------------------
1725 dnl Make sure at least one database backend is found
1726 dnl -------------------------------------------
1727 if test "x${db_backends}" = "x" ; then
1730 echo "You have not specified either --enable-client-only or one of the"
1731 echo "supported databases: MySQL, PostgreSQL, or SQLite3."
1732 echo "This is not permitted. Please reconfigure."
1734 echo "Aborting the configuration ..."
1740 dnl -------------------------------------------
1741 dnl See how many catalog backends are configured.
1742 dnl -------------------------------------------
1743 case `echo $DB_BACKENDS | wc -w | sed -e 's/^ *//'` in
1745 DEFAULT_DB_TYPE="${DB_BACKENDS}"
1746 if test x$use_libtool = xno; then
1747 SHARED_CATALOG_TARGETS=""
1749 SHARED_CATALOG_TARGETS="libbaccats-${DEFAULT_DB_TYPE}.la"
1753 dnl ------------------------------------------------
1754 dnl Set the default backend to the first backend found
1755 dnl ------------------------------------------------
1756 DEFAULT_DB_TYPE=`echo ${DB_BACKENDS} | cut -d' ' -f1`
1758 dnl ------------------------------------------------
1759 dnl For multiple backend we need libtool support.
1760 dnl ------------------------------------------------
1761 if test x$use_libtool = xno; then
1764 echo "You have specified two or more of the"
1765 echo "supported databases: MySQL, PostgreSQL, or SQLite3."
1766 echo "This is not permitted when not using libtool Please reconfigure."
1768 echo "Aborting the configuration ..."
1774 SHARED_CATALOG_TARGETS=""
1775 for db_type in ${DB_BACKENDS}
1777 if test -z "${SHARED_CATALOG_TARGETS}"; then
1778 SHARED_CATALOG_TARGETS="libbaccats-${db_type}.la"
1780 SHARED_CATALOG_TARGETS="${SHARED_CATALOG_TARGETS} libbaccats-${db_type}.la"
1786 dnl -------------------------------------------
1787 dnl Unset DB_LIBS when using libtool as we link the
1788 dnl shared library using the right database lib no need to
1789 dnl set DB_LIBS which is only used for non shared versions
1790 dnl of the backends.
1791 dnl -------------------------------------------
1792 if test x$use_libtool = xyes; then
1796 AC_SUBST(DB_BACKENDS)
1798 AC_SUBST(DEFAULT_DB_TYPE)
1799 AC_SUBST(SHARED_CATALOG_TARGETS)
1801 dnl -------------------------------------------
1802 dnl enable batch attribute DB insert (default on)
1803 dnl -------------------------------------------
1804 support_batch_insert=yes
1805 AC_ARG_ENABLE(batch-insert,
1806 AC_HELP_STRING([--enable-batch-insert], [enable the DB batch insert code @<:@default=yes@:>@]),
1808 if test x$enableval = xno; then
1809 support_batch_insert=no
1814 if test x$support_batch_insert = xyes; then
1815 AC_DEFINE(USE_BATCH_FILE_INSERT, 1, [Set if DB batch insert code enabled])
1818 dnl -------------------------------------------
1819 dnl Check if mysql supports batch mode
1820 dnl -------------------------------------------
1821 if test ! -z "$MYSQL_LIB"; then
1822 AC_CHECK_LIB(mysql_r, mysql_thread_safe, AC_DEFINE(HAVE_MYSQL_THREAD_SAFE, 1, [Set if have mysql_thread_safe]))
1825 dnl -------------------------------------------
1826 dnl Check if sqlite supports batch mode
1827 dnl -------------------------------------------
1828 if test ! -z "SQLITE_LIB"; then
1829 AC_CHECK_LIB(sqlite3, sqlite3_threadsafe, AC_DEFINE(HAVE_SQLITE3_THREADSAFE, 1, [Set if have sqlite3_threadsafe]))
1832 dnl -------------------------------------------
1833 dnl Check if postgresql supports batch mode
1834 dnl -------------------------------------------
1835 if test ! -z "$POSTGRESQL_LIB"; then
1836 dnl For postgresql checking
1837 saved_LIBS="${LIBS}"
1838 LIBS="${saved_LIBS} ${POSTGRESQL_LIB}"
1840 AC_CHECK_LIB(pq, PQisthreadsafe, AC_DEFINE(HAVE_PQISTHREADSAFE, 1, [Set if have PQisthreadsafe]))
1841 AC_CHECK_LIB(pq, PQputCopyData, AC_DEFINE(HAVE_PQ_COPY, 1, [Set if have PQputCopyData]))
1842 if test "x$ac_cv_lib_pq_PQputCopyData" = "xyes"; then
1843 if test $support_batch_insert = yes ; then
1844 AC_DEFINE(HAVE_POSTGRESQL_BATCH_FILE_INSERT, 1, [Set if PostgreSQL DB batch insert code enabled])
1848 if test x$ac_cv_lib_pq_PQisthreadsafe != xyes -a x$support_batch_insert = xyes
1850 echo "WARNING: Your PostgreSQL client library is too old to detect "
1851 echo "if it was compiled with --enable-thread-safety, consider to "
1852 echo "upgrade it in order to avoid problems with Batch insert mode"
1856 dnl Revert after postgresql checks
1857 LIBS="${saved_LIBS}"
1860 dnl -------------------------------------------
1861 dnl Check if dbi supports batch mode
1862 dnl -------------------------------------------
1863 if test ! -z "$DBI_LIBS"; then
1864 dnl -------------------------------------------
1865 dnl Push the DB_PROG onto the stack of supported database backends for DBI
1866 dnl -------------------------------------------
1867 DB_BACKENDS="${DB_BACKENDS} ${DB_PROG}"
1869 dnl -------------------------------------------
1870 dnl Check for batch insert
1871 dnl -------------------------------------------
1872 if test $DB_PROG = postgresql; then
1873 AC_CHECK_LIB(pq, PQisthreadsafe, AC_DEFINE(HAVE_PQISTHREADSAFE))
1874 AC_CHECK_LIB(pq, PQputCopyData, AC_DEFINE(HAVE_PQ_COPY))
1875 test "x$ac_cv_lib_pq_PQputCopyData" = "xyes"
1877 if test $pkg = 0; then
1878 if test $support_batch_insert = yes ; then
1879 AC_DEFINE(HAVE_DBI_BATCH_FILE_INSERT, 1, [Set if DBI DB batch insert code enabled])
1884 dnl -------------------------------------------
1885 dnl If dbi was not chosen, let the comment in file
1886 dnl -------------------------------------------
1890 AC_SUBST(uncomment_dbi)
1892 AC_DEFINE(PROTOTYPES)
1894 dnl --------------------------------------------------------------------------
1895 dnl Supply default CFLAGS, if not specified by `CFLAGS=flags ./configure'
1897 if test -z "$CFLAGS" -o "$CFLAGS" = "-g -O2"; then
1898 if test -z "$CCOPTS"; then
1899 CCOPTS='-g -O2 -Wall'
1907 dnl See if we can use 64 bit file addresses
1908 largefile_support="no"
1913 dnl --------------------------------------------------------------------------
1914 dnl CHECKING FOR HEADER FILES
1915 dnl --------------------------------------------------------------------------
1953 AC_STRUCT_ST_BLKSIZE
1957 dnl --------------------------------------------------------------------------
1958 dnl Check for utime.h structure
1959 dnl --------------------------------------------------------------------------
1960 AC_CACHE_CHECK(for utime.h, ba_cv_header_utime_h,
1964 #include <sys/types.h>
1969 ba_cv_header_utime_h=yes
1971 ba_cv_header_utime_h=no
1976 test $ba_cv_header_utime_h = yes && AC_DEFINE(HAVE_UTIME_H, 1, [Set if utime.h exists])
1978 dnl --------------------------------------------------------------------------
1979 dnl Check for socklen_t
1980 dnl --------------------------------------------------------------------------
1981 AC_CACHE_CHECK(for socklen_t, ba_cv_header_socklen_t,
1985 #include <sys/types.h>
1986 #include <sys/socket.h>
1990 ba_cv_header_socklen_t=yes
1992 ba_cv_header_socklen_t=no
1997 test $ba_cv_header_socklen_t = yes && AC_DEFINE(HAVE_SOCKLEN_T, 1, [Set if socklen_t exists])
1999 dnl --------------------------------------------------------------------------
2000 dnl Check for ioctl request type
2001 dnl --------------------------------------------------------------------------
2003 AC_CACHE_CHECK(for ioctl_req_t, ba_cv_header_ioctl_req_t,
2008 #include <sys/types.h>
2009 #include <sys/ioctl.h>
2011 int (*d_ioctl)(int fd, unsigned long int request, ...);
2014 ba_cv_header_ioctl_req_t=yes
2016 ba_cv_header_ioctl_req_t=no
2021 test $ba_cv_header_ioctl_req_t = yes && AC_DEFINE(HAVE_IOCTL_ULINT_REQUEST, 1, [Set if ioctl request is unsigned long int])
2023 dnl Note: it is more correct to use AC_LANG(C++) but some of the older
2024 dnl *BSD systems still use old style C prototypes, which are wrong with
2025 dnl compiled with a C++ compiler.
2028 dnl --------------------------------------------------------------------------
2029 dnl Check for typeof()
2030 dnl --------------------------------------------------------------------------
2032 AC_CACHE_CHECK(for typeof, ba_cv_have_typeof,
2036 main(){char *a = 0; a = (typeof a)a;}
2038 ba_cv_have_typeof=yes
2040 ba_cv_have_typeof=no
2042 ba_cv_have_typeof=no
2047 test $ba_cv_have_typeof = yes && AC_DEFINE([HAVE_TYPEOF], 1, [Defind to 1 if compiler has typeof])
2052 AC_C_BIGENDIAN([AC_DEFINE([HAVE_BIG_ENDIAN], [1], [Big Endian])], [AC_DEFINE([HAVE_LITTLE_ENDIAN], [1], [Little Endian])])
2054 dnl --------------------------------------------------------------------------
2055 dnl CHECKING FOR FILESYSTEM TYPE
2056 dnl --------------------------------------------------------------------------
2057 AC_MSG_CHECKING(how to get filesystem type)
2059 # The order of these tests is important.
2062 #include <sys/statvfs.h>
2063 #include <sys/fstyp.h>
2065 AC_DEFINE(FSTYPE_STATVFS) fstype=SVR4
2067 if test $fstype = no; then
2070 #include <sys/statfs.h>
2071 #include <sys/fstyp.h>
2073 AC_DEFINE(FSTYPE_USG_STATFS) fstype=SVR3
2076 if test $fstype = no; then
2079 #include <sys/statfs.h>
2080 #include <sys/vmount.h>
2082 AC_DEFINE(FSTYPE_AIX_STATFS) fstype=AIX
2085 if test $fstype = no; then
2090 AC_DEFINE(FSTYPE_MNTENT) fstype=4.3BSD
2093 if test $fstype = no; then
2094 AC_EGREP_HEADER(f_type;, sys/mount.h, AC_DEFINE(FSTYPE_STATFS) fstype=4.4BSD/OSF1)
2096 if test $fstype = no; then
2099 #include <sys/mount.h>
2100 #include <sys/fs_types.h>
2102 AC_DEFINE(FSTYPE_GETMNT) fstype=Ultrix
2105 AC_MSG_RESULT($fstype)
2107 AC_CHECK_HEADER(sys/statvfs.h, [ AC_DEFINE(HAVE_SYS_STATVFS_H,1,[Defines if your system have the sys/statvfs.h header file])] , )
2110 AC_CHECK_FUNCS(backtrace)
2113 dnl --------------------------------------------------------------------------
2114 dnl CHECKING FOR TYPEDEFS, STRUCTURES, AND COMPILER CHARACTERISTICS.
2115 dnl --------------------------------------------------------------------------
2125 AC_CHECK_TYPE(ino_t, unsigned long)
2126 AC_CHECK_TYPE(dev_t, unsigned long)
2127 AC_CHECK_TYPE(daddr_t, long)
2128 AC_CHECK_TYPE(major_t, int)
2129 AC_CHECK_TYPE(minor_t, int)
2130 AC_CHECK_TYPE(ssize_t, int)
2136 AC_CHECK_SIZEOF(char, 1)
2137 AC_CHECK_SIZEOF(short int, 2)
2138 AC_CHECK_SIZEOF(int, 4)
2139 AC_CHECK_SIZEOF(long int, 4)
2140 AC_CHECK_SIZEOF(long long int, 8)
2141 AC_CHECK_SIZEOF(int *, 4)
2143 dnl Check for sys/types.h types
2144 AC_CACHE_CHECK([for u_int type], ac_cv_have_u_int,
2148 #include <sys/types.h>
2152 ac_cv_have_u_int="yes"
2154 ac_cv_have_u_int="no"
2159 if test "x$ac_cv_have_u_int" = "xyes" ; then
2160 AC_DEFINE(HAVE_U_INT)
2164 AC_CACHE_CHECK([for intmax_t type], ac_cv_have_intmax_t,
2168 #include <sys/types.h>
2172 ac_cv_have_intmax_t="yes"
2180 ac_cv_have_intmax_t="yes"
2182 ac_cv_have_intmax_t="no"
2189 if test "x$ac_cv_have_intmax_t" = "xyes" ; then
2190 AC_DEFINE(HAVE_INTMAX_T)
2194 AC_CACHE_CHECK([for u_intmax_t type], ac_cv_have_u_intmax_t,
2198 #include <sys/types.h>
2200 u_intmax_t a; a = 1;
2202 ac_cv_have_u_intmax_t="yes"
2208 u_intmax_t a; a = 1;
2210 ac_cv_have_u_intmax_t="yes"
2212 ac_cv_have_u_intmax_t="no"
2219 if test "x$ac_cv_have_u_intmax_t" = "xyes" ; then
2220 AC_DEFINE(HAVE_U_INTMAX_T)
2224 AC_CACHE_CHECK([for intXX_t types], ac_cv_have_intxx_t,
2228 #include <sys/types.h>
2230 int8_t a; int16_t b; int32_t c; a = b = c = 1;
2232 ac_cv_have_intxx_t="yes"
2234 ac_cv_have_intxx_t="no"
2239 if test "x$ac_cv_have_intxx_t" = "xyes" ; then
2240 AC_DEFINE(HAVE_INTXX_T)
2244 AC_CACHE_CHECK([for int64_t type], ac_cv_have_int64_t,
2248 #include <sys/types.h>
2252 ac_cv_have_int64_t="yes"
2254 ac_cv_have_int64_t="no"
2259 if test "x$ac_cv_have_int64_t" = "xyes" ; then
2260 AC_DEFINE(HAVE_INT64_T)
2264 AC_CACHE_CHECK([for u_intXX_t types], ac_cv_have_u_intxx_t,
2268 #include <sys/types.h>
2270 u_int8_t a; u_int16_t b; u_int32_t c; a = b = c = 1;
2272 ac_cv_have_u_intxx_t="yes"
2274 ac_cv_have_u_intxx_t="no"
2279 if test "x$ac_cv_have_u_intxx_t" = "xyes" ; then
2280 AC_DEFINE(HAVE_U_INTXX_T)
2284 AC_CACHE_CHECK([for u_int64_t types], ac_cv_have_u_int64_t,
2288 #include <sys/types.h>
2292 ac_cv_have_u_int64_t="yes"
2294 ac_cv_have_u_int64_t="no"
2299 if test "x$ac_cv_have_u_int64_t" = "xyes" ; then
2300 AC_DEFINE(HAVE_U_INT64_T)
2304 if (test -z "$have_u_intxx_t" || test -z "$have_intxx_t" && \
2305 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2307 AC_MSG_CHECKING([for intXX_t and u_intXX_t types in sys/bitypes.h])
2310 #include <sys/bitypes.h>
2312 int8_t a; int16_t b; int32_t c;
2313 u_int8_t e; u_int16_t f; u_int32_t g;
2314 a = b = c = e = f = g = 1;
2316 AC_DEFINE(HAVE_U_INTXX_T)
2317 AC_DEFINE(HAVE_INTXX_T)
2318 AC_DEFINE(HAVE_SYS_BITYPES_H)
2326 if test -z "$have_u_intxx_t" ; then
2327 AC_CACHE_CHECK([for uintXX_t types], ac_cv_have_uintxx_t,
2331 #include <sys/types.h>
2333 uint8_t a; uint16_t b;
2334 uint32_t c; a = b = c = 1;
2336 ac_cv_have_uintxx_t="yes"
2338 ac_cv_have_uintxx_t="no"
2343 if test "x$ac_cv_have_uintxx_t" = "xyes" ; then
2344 AC_DEFINE(HAVE_UINTXX_T)
2348 if (test -z "$have_u_int64_t" || test -z "$have_int64_t" && \
2349 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2351 AC_MSG_CHECKING([for int64_t and u_int64_t types in sys/bitypes.h])
2354 #include <sys/bitypes.h>
2356 int64_t a; u_int64_t b;
2359 AC_DEFINE(HAVE_U_INT64_T)
2360 AC_DEFINE(HAVE_INT64_T)
2368 if (test -z "$have_uintxx_t" && \
2369 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2371 AC_MSG_CHECKING([for uintXX_t types in sys/bitypes.h])
2374 #include <sys/bitypes.h>
2376 uint8_t a; uint16_t b;
2377 uint32_t c; a = b = c = 1;
2379 AC_DEFINE(HAVE_UINTXX_T)
2387 dnl --------------------------------------------------------------------------
2388 dnl CHECKING FOR REQUIRED LIBRARY FUNCTIONS
2389 dnl --------------------------------------------------------------------------
2405 [echo 'configure: cannot find needed function.'; exit 1]
2408 AC_CHECK_FUNCS(getpagesize, [AC_DEFINE(HAVE_GETPAGESIZE, 1, [Set if have getpagesize])])
2409 AC_CHECK_FUNCS(malloc_trim, [AC_DEFINE(HAVE_MALLOC_TRIM, 1, [Set if have malloc_trim])])
2411 AC_CHECK_FUNCS(fchdir, [AC_DEFINE(HAVE_FCHDIR)])
2412 AC_CHECK_FUNCS(strtoll, [AC_DEFINE(HAVE_STRTOLL)])
2413 AC_CHECK_FUNCS(posix_fadvise)
2414 AC_CHECK_FUNCS(fdatasync)
2416 AC_CHECK_FUNCS(chflags)
2418 AC_CHECK_FUNCS(snprintf vsnprintf gethostid fseeko)
2420 AC_CACHE_CHECK(for va_copy, ba_cv_va_copy,
2425 void use_va_copy(va_list args){va_list args2; va_copy(args2,args); va_end(args2);}
2426 void call_use_va_copy(int junk,...){va_list args; va_start(args,junk); use_va_copy(args); va_end(args);}
2428 call_use_va_copy(1,2,3)
2437 test $ba_cv_va_copy = yes && AC_DEFINE(HAVE_VA_COPY, 1, [Set if va_copy exists])
2439 dnl --------------------------------------------------------------------------
2440 dnl CHECKING FOR THREAD SAFE FUNCTIONS
2441 dnl --------------------------------------------------------------------------
2442 AC_CHECK_FUNCS(localtime_r readdir_r strerror_r gethostbyname_r)
2444 # If resolver functions are not in libc check for -lnsl or -lresolv.
2445 AC_CHECK_FUNC(gethostbyname_r,
2446 AC_MSG_RESULT(using libc's resolver),
2447 AC_CHECK_LIB(nsl,gethostbyname_r)
2448 AC_CHECK_LIB(resolv,gethostbyname_r))
2450 AC_CHECK_FUNCS(inet_pton, [AC_DEFINE(HAVE_INET_PTON)])
2451 AC_CHECK_FUNCS(inet_ntop, [AC_DEFINE(HAVE_INET_NTOP)])
2452 AC_CHECK_FUNCS(gethostbyname2, [AC_DEFINE(HAVE_GETHOSTBYNAME2)])
2454 dnl ----------------------------
2455 dnl check sa_len of sockaddr
2456 dnl ----------------------------
2457 AC_CACHE_CHECK(for struct sockaddr has a sa_len field, ac_cv_struct_sockaddr_sa_len,
2461 #include <sys/socket.h>
2463 struct sockaddr s; s.sa_len;
2465 ac_cv_struct_sockaddr_sa_len=yes
2466 ], [ac_cv_struct_sockaddr_sa_len=no
2472 if test $ac_cv_struct_sockaddr_sa_len = yes; then
2473 AC_DEFINE(HAVE_SA_LEN, 1, [Define if sa_len field exists in struct sockaddr])
2480 AC_CHECK_FUNCS(getmntinfo, [AC_DEFINE(HAVE_GETMNTINFO)])
2481 AC_FUNC_CLOSEDIR_VOID
2482 AC_FUNC_SETPGRP dnl check for BSD setpgrp.
2483 # AC_FUNC_FNMATCH dnl use local version
2485 AC_CHECK_LIB(intl, gettext, [LIBS="$LIBS -lintl"])
2487 AC_CHECK_LIB(sun, getpwnam)
2489 AC_CHECK_HEADERS(zlib.h)
2490 AC_CHECK_LIB(z, deflate, [ZLIBS="-lz"])
2492 if test x$ZLIBS = x-lz; then
2493 AC_DEFINE(HAVE_LIBZ)
2501 AC_CHECK_HEADERS(lzo/lzoconf.h)
2502 AC_CHECK_HEADERS(lzo/lzo1x.h)
2503 AC_CHECK_LIB(lzo2, lzo1x_1_compress, [LZOLIBS="-llzo2"])
2505 if test x$LZOLIBS = x-llzo2; then
2512 dnl Check for ACL support and libraries
2516 AC_HELP_STRING([--disable-acl], [disable acl support @<:@default=auto@:>@]),
2518 if test x$enableval = xyes; then
2520 elif test x$enableval = xno; then
2527 have_extended_acl=no
2528 if test x$support_acl = xyes -o x$support_acl = xauto; then
2529 AC_CHECK_HEADER(sys/acl.h, [ AC_DEFINE(HAVE_SYS_ACL_H,1,[Defines if your system have the sys/acl.h header file])] , )
2532 dnl First check for acl_get_file in libc
2534 AC_CHECK_FUNC(acl_get_file,
2541 dnl Check for acl_get_file in libacl (Linux)
2543 if test $have_acl = no; then
2544 AC_CHECK_LIB(acl, acl_get_file,
2547 FDLIBS="-lacl $FDLIBS"
2553 dnl Check for acl_get_file in libpacl (OSF1)
2554 dnl and if ACL_TYPE_DEFAULT_DIR is defined.
2556 if test $have_acl = no -a \
2557 x${HAVE_OSF1_OS_TRUE} = x; then
2558 AC_CHECK_LIB(pacl, acl_get_file,
2561 FDLIBS="-lpacl $FDLIBS"
2565 AC_MSG_CHECKING(for ACL_TYPE_DEFAULT_DIR in acl.h include file)
2566 grep ACL_TYPE_DEFAULT_DIR /usr/include/sys/acl.h > /dev/null 2>&1
2567 if test $? = 0; then
2568 AC_DEFINE(HAVE_ACL_TYPE_DEFAULT_DIR,1,[Defines if your system have the ACL_TYPE_DEFAULT_DIR acl type])
2576 dnl On OSX check for availability of ACL_TYPE_EXTENDED
2578 if test $have_acl = yes -a \
2579 x${HAVE_DARWIN_OS_TRUE} = x; then
2580 AC_MSG_CHECKING(for ACL_TYPE_EXTENDED in acl.h include file)
2581 grep ACL_TYPE_EXTENDED /usr/include/sys/acl.h > /dev/null 2>&1
2582 if test $? = 0; then
2583 AC_DEFINE(HAVE_ACL_TYPE_EXTENDED,1,[Defines if your system have the ACL_TYPE_EXTENDED acl type])
2591 dnl On FreeBSD check for availability of ACL_TYPE_NFS4
2593 if test $have_acl = yes -a \
2594 x${HAVE_FREEBSD_OS_TRUE} = x; then
2595 AC_MSG_CHECKING(for ACL_TYPE_NFS4 in acl.h include file)
2596 grep ACL_TYPE_NFS4 /usr/include/sys/acl.h > /dev/null 2>&1
2597 if test $? = 0; then
2598 AC_DEFINE(HAVE_ACL_TYPE_NFS4,1,[Defines if your system have the ACL_TYPE_NFS4 acl type])
2606 dnl Check for acltotext and acl_totext (Solaris)
2608 if test $have_acl = no -a \
2609 x${HAVE_SUN_OS_TRUE} = x; then
2610 AC_CHECK_LIB(sec, acltotext,
2613 FDLIBS="-lsec $FDLIBS"
2615 AC_CHECK_LIB(sec, acl_totext,
2617 have_extended_acl=yes
2625 dnl Check for acl_get and aclx_get (AIX)
2627 if test $have_acl = no -a \
2628 x${HAVE_AIX_OS_TRUE} = x; then
2629 AC_CHECK_FUNC(acl_get,
2633 AC_CHECK_FUNC(aclx_get,
2635 have_extended_acl=yes
2642 if test x$support_acl = xyes -a $have_acl != yes; then
2643 AC_MSG_ERROR([acl support explicitly enabled but no supported acl implementation found,
2644 please either load the acl libraries or rerun configure without --enable-acl])
2646 if test $have_acl = yes; then
2647 AC_DEFINE([HAVE_ACL],1,[Normal acl support])
2650 if test $have_extended_acl = yes; then
2651 AC_DEFINE([HAVE_EXTENDED_ACL],1,[Extended acl support])
2657 dnl Check for XATTR support
2660 AC_ARG_ENABLE(xattr,
2661 AC_HELP_STRING([--disable-xattr], [disable xattr support @<:@default=auto@:>@]),
2663 if test x$enableval = xyes; then
2665 elif test x$enableval = xno; then
2672 if test x$support_xattr = xyes -o x$support_xattr = xauto; then
2674 dnl First check for *BSD support
2675 dnl When running on a BSD variant
2677 if test x${HAVE_FREEBSD_OS_TRUE} = x -o \
2678 x${HAVE_NETBSD_OS_TRUE} = x -o \
2679 x${HAVE_OPENBSD_OS_TRUE} = x; then
2680 AC_CHECK_HEADER(sys/extattr.h, [ AC_DEFINE(HAVE_SYS_EXTATTR_H,1,[Defines if your system have the sys/extattr.h header file])] , )
2681 AC_CHECK_HEADER(libutil.h, [ AC_DEFINE(HAVE_LIBUTIL_H,1,[Defines if your system have the libutil.h header file])] , )
2682 AC_CHECK_FUNCS(extattr_get_link extattr_set_link extattr_list_link,
2685 AC_DEFINE([HAVE_EXTATTR_GET_LINK],1,[Define to 1 if you have the 'extattr_get_link' function.])
2686 AC_DEFINE([HAVE_EXTATTR_SET_LINK],1,[Define to 1 if you have the 'extattr_set_link' function.])
2687 AC_DEFINE([HAVE_EXTATTR_LIST_LINK],1,[Define to 1 if you have the 'extattr_list_link' function.])
2691 if test $have_xattr = no; then
2692 AC_CHECK_FUNCS(extattr_get_file extattr_set_file extattr_list_file,
2695 AC_DEFINE([HAVE_EXTATTR_GET_FILE],1,[Define to 1 if you have the 'extattr_get_file' function.])
2696 AC_DEFINE([HAVE_EXTATTR_SET_FILE],1,[Define to 1 if you have the 'extattr_set_file' function.])
2697 AC_DEFINE([HAVE_EXTATTR_LIST_FILE],1,[Define to 1 if you have the 'extattr_list_file' function.])
2702 if test $have_xattr = yes; then
2703 have_extattr_string_in_libc=no
2704 AC_CHECK_FUNCS(extattr_namespace_to_string extattr_string_to_namespace,
2706 have_extattr_string_in_libc=yes
2707 AC_DEFINE([HAVE_EXTATTR_NAMESPACE_TO_STRING],1,[Define to 1 if you have the 'extattr_namespace_to_string' function.])
2708 AC_DEFINE([HAVE_EXTATTR_STRING_TO_NAMESPACE],1,[Define to 1 if you have the 'extattr_string_to_namespace' function.])
2713 dnl If extattr_namespace_to_string and extattr_string_to_namespace are not in libc see if they are in libutil
2715 if test $have_extattr_string_in_libc = no; then
2716 AC_CHECK_LIB(util, extattr_namespace_to_string extattr_string_to_namespace,
2718 AC_DEFINE([HAVE_EXTATTR_NAMESPACE_TO_STRING],1,[Define to 1 if you have the 'extattr_namespace_to_string' function.])
2719 AC_DEFINE([HAVE_EXTATTR_STRING_TO_NAMESPACE],1,[Define to 1 if you have the 'extattr_string_to_namespace' function.])
2720 FDLIBS="-lutil $FDLIBS"
2728 dnl If we failed to find *BSD support try the AIX implementation of extented attributes (EA)
2729 dnl When running on AIX
2731 if test $have_xattr = no -a \
2732 x${HAVE_AIX_OS_TRUE} = x; then
2733 AC_CHECK_HEADER(sys/ea.h, [ AC_DEFINE(HAVE_SYS_EA_H,1,[Defines if your system have the sys/ea.h header file])] , )
2734 AC_CHECK_FUNCS(llistea lgetea lsetea,
2737 AC_DEFINE([HAVE_LLISTEA],1,[Define to 1 if you have the 'llistea' function.])
2738 AC_DEFINE([HAVE_LGETEA],1,[Define to 1 if you have the 'lgetea' function.])
2739 AC_DEFINE([HAVE_LSETEA],1,[Define to 1 if you have the 'lsetea' function.])
2743 if test $have_xattr = no; then
2744 AC_CHECK_FUNCS(listea getea setea,
2747 AC_DEFINE([HAVE_LISTEA],1,[Define to 1 if you have the 'listea' function.])
2748 AC_DEFINE([HAVE_GETEA],1,[Define to 1 if you have the 'getea' function.])
2749 AC_DEFINE([HAVE_SETEA],1,[Define to 1 if you have the 'setea' function.])
2756 dnl If we failed to find AIX support try the TRU64 implementation of extented attributes
2757 dnl when running on a TRU64 OS.
2759 if test $have_xattr = no -a \
2760 x${HAVE_OSF1_OS_TRUE} = x; then
2761 AC_CHECK_HEADER(sys/proplist.h, [ AC_DEFINE(HAVE_SYS_PROPLIST_H,1,[Defines if your system have the sys/proplist.h header file])] , )
2762 AC_CHECK_FUNCS(getproplist get_proplist_entry sizeof_proplist_entry add_proplist_entry setproplist,
2765 AC_DEFINE([HAVE_GETPROPLIST],1,[Define to 1 if you have the 'getproplist' function.])
2766 AC_DEFINE([HAVE_GET_PROPLIST_ENTRY],1,[Define to 1 if you have the 'get_proplist_entry' function.])
2767 AC_DEFINE([HAVE_SIZEOF_PROPLIST_ENTRY],1,[Define to 1 if you have the 'sizeof_proplist_entry' function.])
2768 AC_DEFINE([HAVE_ADD_PROPLIST_ENTRY],1,[Define to 1 if you have the 'add_proplist_entry' function.])
2769 AC_DEFINE([HAVE_SETPROPLIST],1,[Define to 1 if you have the 'setproplist' function.])
2775 dnl If we failed to find TRU64 support try the SOLARIS implementation of extented and extensible attributes
2776 dnl when running on a Solaris.
2778 if test $have_xattr = no -a \
2779 x${HAVE_SUN_OS_TRUE} = x; then
2780 AC_CHECK_HEADER(sys/attr.h, [ AC_DEFINE(HAVE_SYS_ATTR_H,1,[Defines if your system have the sys/attr.h header file])] , )
2781 AC_CHECK_HEADER(sys/nvpair.h, [ AC_DEFINE(HAVE_SYS_NVPAIR_H,1,[Defines if your system have the sys/nvpair.h header file])] , )
2782 AC_CHECK_HEADER(attr.h, [ AC_DEFINE(HAVE_ATTR_H,1,[Defines if your system have the attr.h header file])] , )
2784 AC_CHECK_FUNCS(openat fstatat unlinkat fchownat futimesat,
2787 AC_DEFINE([HAVE_OPENAT],1,[Define to 1 if you have the 'openat' function.])
2788 AC_DEFINE([HAVE_FSTATAT],1,[Define to 1 if you have the 'fstatat' function.])
2789 AC_DEFINE([HAVE_UNLINKAT],1,[Define to 1 if you have the 'unlinkat' function.])
2790 AC_DEFINE([HAVE_FCHOWNAT],1,[Define to 1 if you have the 'fchownat' function.])
2791 AC_DEFINE([HAVE_FUTIMESAT],1,[Define to 1 if you have the 'futimesat' function.])
2795 if test $have_xattr = yes; then
2796 AC_CHECK_LIB(nvpair, nvlist_next_nvpair,
2798 AC_DEFINE([HAVE_NVLIST_NEXT_NVPAIR],1,[Define to 1 if you have the 'nvlist_next_nvpair' function.])
2799 FDLIBS="-lnvpair $FDLIBS"
2806 dnl If we failed to find Solaris support try the generic xattr support code
2808 if test $have_xattr = no; then
2809 AC_CHECK_HEADER(sys/xattr.h, [ AC_DEFINE(HAVE_SYS_XATTR_H,1,[Defines if your system have the sys/xattr.h header file])] , )
2810 AC_CHECK_FUNCS(llistxattr lgetxattr lsetxattr,
2813 AC_DEFINE([HAVE_LLISTXATTR],1,[Define to 1 if you have the 'llistxattr' function.])
2814 AC_DEFINE([HAVE_LGETXATTR],1,[Define to 1 if you have the 'lgetxattr' function.])
2815 AC_DEFINE([HAVE_LSETXATTR],1,[Define to 1 if you have the 'lsetxattr' function.])
2819 if test $have_xattr = no; then
2820 AC_CHECK_FUNCS(listxattr getxattr setxattr,
2823 AC_DEFINE([HAVE_LISTXATTR],1,[Define to 1 if you have the 'listxattr' function.])
2824 AC_DEFINE([HAVE_GETXATTR],1,[Define to 1 if you have the 'getxattr' function.])
2825 AC_DEFINE([HAVE_SETXATTR],1,[Define to 1 if you have the 'setxattr' function.])
2831 if test x$support_xattr = xyes -a $have_xattr != yes; then
2832 AC_MSG_ERROR([xattr support explicitly enabled but no supported xattr implementation found,
2833 please either load the xattr libraries or rerun configure without --enable-xattr])
2835 if test $have_xattr = yes; then
2836 AC_DEFINE([HAVE_XATTR],1,[Extended Attributes support])
2842 dnl Check for pthread libraries
2845 AC_CHECK_LIB(pthread, pthread_create, PTHREAD_LIB="-lpthread",
2847 AC_CHECK_LIB(pthreads, pthread_create, PTHREAD_LIB="-lpthreads",
2849 AC_CHECK_LIB(c_r, pthread_create, PTHREAD_LIB="-lc_r",
2851 AC_CHECK_FUNC(pthread_create)
2860 dnl Check for headers, functions and libraries required to support
2861 dnl keeping readall capabilities
2863 AC_CHECK_HEADERS(sys/prctl.h sys/capability.h)
2864 AC_CHECK_FUNCS(prctl setreuid)
2865 AC_CHECK_LIB([cap], [cap_set_proc], [CAP_LIBS="-lcap"], [CAP_LIBS=])
2866 if test x$CAP_LIBS = x-lcap; then
2867 AC_DEFINE(HAVE_LIBCAP, 1, [Define if you have libcap])
2876 if test x$have_gcc = xyes ; then
2877 CPPFLAGS="$CPPFLAGS -fno-strict-aliasing -fno-exceptions -fno-rtti"
2878 CFLAGS="$CFLAGS -fno-strict-aliasing -fno-exceptions -fno-rtti"
2880 LDFLAGS=${LDFLAGS--O}
2881 CPPFLAGS="$CPPFLAGS"
2893 AC_SUBST(X_EXTRA_LIBS)
2898 dnl extra configurable objects
2909 dnl Finally we set appropriate distribution specific
2910 dnl variables and defaults
2912 dnl PFILES are platform specific files
2913 PFILES="platforms/Makefile"
2917 COMPRESS_MANPAGES=yes
2919 hostname=`uname -n | cut -d '.' -f 1`
2920 if test x${hostname} = x ; then
2921 hostname="localhost"
2923 dnl Make sure hostname is resolved
2924 ping -c 1 $hostname 2>/dev/null 1>/dev/null
2925 if test ! $? = 0; then
2926 hostname="localhost"
2932 PSCMD="ps -e -o pid,comm"
2934 platforms/aix/Makefile"
2935 TAPEDRIVE="/dev/rmt0.1"
2939 PTHREAD_LIB="-lpthread -lexc"
2940 if test "${CC}" = "gcc" ; then
2947 TAPEDRIVE="/dev/nrmt0"
2950 DISTVER=`uname -a |awk '{print $3}'`
2951 TAPEDRIVE="/dev/nrmt0"
2952 PTHREAD_LIB="-pthread"
2953 CFLAGS="${CFLAGS} -pthread"
2954 PSCMD="ps -ax -o pid,command"
2958 platforms/bsdi/Makefile \
2959 platforms/bsdi/bacula-fd \
2960 platforms/bsdi/bacula-sd \
2961 platforms/bsdi/bacula-dir"
2962 largefile_support="yes"
2965 DISTVER=`uname -a |awk '{print $3}'`
2966 TAPEDRIVE="/dev/nrst0"
2969 WLDFLAGS="-mwindows"
2973 TAPEDRIVE="/dev/nst0"
2974 PSCMD="ps -e -o pid,command"
2977 platforms/darwin/Makefile"
2981 TAPEDRIVE="/dev/nst0"
2982 PSCMD="ps -e -o pid,command"
2985 platforms/osx/Makefile"
2988 if `test -f /etc/apt/sources.list && grep -q ubuntu /etc/apt/sources.list`; then
2991 DISTVER=`cat /etc/debian_version`
2992 if test -f /etc/lsb-release ; then
2994 if test "x$DISTRIB_ID" != "x" ; then
2995 DISTNAME=$DISTRIB_ID
2997 if test "x$DISTRIB_RELEASE" != "x" ; then
2998 DISTVER=$DISTRIB_RELEASE
3001 if test "$DISTNAME" = "Ubuntu" ; then
3004 TAPEDRIVE="/dev/nst0"
3005 PSCMD="ps -e -o pid,command"
3006 if test "$DISTNAME" = "ubuntu" ; then
3008 platforms/ubuntu/Makefile \
3009 platforms/ubuntu/bacula-fd \
3010 platforms/ubuntu/bacula-sd \
3011 platforms/ubuntu/bacula-dir"
3014 platforms/debian/Makefile \
3015 platforms/debian/bacula-fd \
3016 platforms/debian/bacula-sd \
3017 platforms/debian/bacula-dir"
3021 DISTVER=`uname -a |awk '{print $3}'`
3022 VER=`echo $DISTVER | cut -c 1`
3023 if test x$VER = x4 ; then
3024 PTHREAD_LIB="${PTHREAD_LIBS:--pthread}"
3025 CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS:--pthread}"
3029 TAPEDRIVE="/dev/nrsa0"
3030 PSCMD="ps -ax -o pid,command"
3032 platforms/freebsd/Makefile \
3033 platforms/freebsd/bacula-fd \
3034 platforms/freebsd/bacula-sd \
3035 platforms/freebsd/bacula-dir"
3036 largefile_support="yes"
3039 PSCMD="UNIX95=1; ps -e -o pid,comm"
3040 CFLAGS="${CFLAGS} -D_XOPEN_SOURCE_EXTENDED=1"
3042 TAPEDRIVE="/dev/rmt/0hnb"
3043 PTHREAD_LIB="-lpthread"
3044 AC_DEFINE([_INCLUDE_LONGLONG])
3048 TAPEDRIVE="/dev/rmt/0cbn"
3049 PSCMD="ps -e -o pid,comm"
3051 platforms/irix/Makefile \
3052 platforms/irix/bacula-fd \
3053 platforms/irix/bacula-sd \
3054 platforms/irix/bacula-dir"
3057 DISTVER=`uname -a |awk '{print $3}'`
3060 TAPEDRIVE="/dev/nrst0"
3061 PSCMD="ps -ax -o pid,command"
3062 PTHREAD_LIB="-pthread"
3063 CFLAGS="${CFLAGS} -pthread"
3066 DISTVER=`uname -a |awk '{print $3}'`
3069 TAPEDRIVE="/dev/nrst0"
3070 PSCMD="ps -ax -o pid,command"
3071 PTHREAD_LIB="-pthread"
3072 CFLAGS="${CFLAGS} -pthread"
3074 platforms/openbsd/Makefile \
3075 platforms/openbsd/bacula-fd \
3076 platforms/openbsd/bacula-sd \
3077 platforms/openbsd/bacula-dir"
3080 if test -f /etc/whitebox-release ; then
3081 f=/etc/whitebox-release
3083 f=/etc/redhat-release
3085 if test `cat $f | grep release |\
3086 cut -f 3 -d ' '`x = "Enterprise"x ; then
3087 DISTVER="Enterprise "`cat $f | grep release |\
3090 DISTVER=`cat /etc/redhat-release | grep release |\
3093 TAPEDRIVE="/dev/nst0"
3094 PSCMD="ps -e -o pid,command"
3096 platforms/redhat/Makefile \
3097 platforms/redhat/bacula-fd \
3098 platforms/redhat/bacula-sd \
3099 platforms/redhat/bacula-dir
3103 DISTVER=`cat /etc/mandrake-release | grep release |\
3105 TAPEDRIVE="/dev/nst0"
3106 PSCMD="ps -e -o pid,command"
3108 platforms/mandrake/Makefile \
3109 platforms/mandrake/bacula-fd \
3110 platforms/mandrake/bacula-sd \
3111 platforms/mandrake/bacula-dir \
3115 DISTVER=`awk '/version / {print $5}' < /etc/gentoo-release`
3116 TAPEDRIVE="/dev/nst0"
3117 PSCMD="ps -e -o pid,command"
3119 platforms/gentoo/Makefile \
3120 platforms/gentoo/bacula-init \
3121 platforms/gentoo/bacula-fd \
3122 platforms/gentoo/bacula-sd \
3123 platforms/gentoo/bacula-dir"
3126 DISTVER=`cat /etc/slackware-version`
3127 TAPEDRIVE="/dev/nst0"
3128 PSCMD="ps -e -o pid,command"
3130 platforms/slackware/Makefile \
3131 platforms/slackware/rc.bacula-fd \
3132 platforms/slackware/rc.bacula-sd \
3133 platforms/slackware/rc.bacula-dir\
3134 platforms/slackware/functions.bacula"
3138 TAPEDRIVE="/dev/rmt/0cbn"
3139 PSCMD="ps -e -o pid,comm"
3141 platforms/solaris/Makefile \
3142 platforms/solaris/bacula-fd \
3143 platforms/solaris/bacula-sd \
3144 platforms/solaris/bacula-dir"
3148 AC_DEFINE(HAVE_OLD_SOCKOPT)
3149 AC_DEFINE(USE_THR_SETCONCURRENCY)
3152 AC_DEFINE(USE_THR_SETCONCURRENCY)
3157 LIBS="$LIBS -lresolv -lrt"
3160 DISTVER=`cat /etc/SuSE-release |grep VERSION|\
3162 TAPEDRIVE="/dev/nst0"
3163 PSCMD="ps -e -o pid,command"
3165 platforms/suse/Makefile \
3166 platforms/suse/bacula-fd \
3167 platforms/suse/bacula-sd \
3168 platforms/suse/bacula-dir \
3169 platforms/suse/bacula"
3174 TAPEDRIVE="/dev/nst0"
3175 PSCMD="ps -e -o pid,command"
3177 platforms/suse/Makefile \
3178 platforms/suse/bacula-fd \
3179 platforms/suse/bacula-sd \
3180 platforms/suse/bacula-dir"
3184 TAPEDRIVE="/dev/nst0"
3187 echo " === Something went wrong. Unknown DISTNAME $DISTNAME ==="
3193 LIBS="$PTHREAD_LIB $LIBS"
3195 AC_DEFINE_UNQUOTED(lld, "$lld")
3196 AC_DEFINE_UNQUOTED(llu, "$llu")
3203 AC_SUBST(COMPRESS_MANPAGES)
3205 dnl common parts of the Makefile
3206 MCOMMON=./autoconf/Make.common
3207 AC_SUBST_FILE(MCOMMON)
3210 if test "x${subsysdir}" = "x${sbindir}" ; then
3213 echo "You have set both --sbindir and --with-subsys-dir"
3214 echo " equal to: ${subsysdir} "
3215 echo "This is not permitted. Please reconfigure."
3217 echo "Aborting configuration ..."
3223 AC_OUTPUT([autoconf/Make.common \
3226 scripts/btraceback \
3229 scripts/bacula-ctl-dir \
3230 scripts/bacula-ctl-fd \
3231 scripts/bacula-ctl-sd \
3232 scripts/devel_bacula \
3235 scripts/bacula.desktop.gnome1 \
3236 scripts/bacula.desktop.gnome2 \
3237 scripts/bacula.desktop.gnome1.consolehelper \
3238 scripts/bacula.desktop.gnome2.consolehelper \
3239 scripts/bacula.desktop.gnome1.xsu \
3240 scripts/bacula.desktop.gnome2.xsu \
3241 scripts/bgnome-console.console_apps \
3242 scripts/mtx-changer \
3243 scripts/disk-changer \
3244 scripts/dvd-handler \
3245 scripts/dvd-simulator \
3246 scripts/bacula-tray-monitor.desktop \
3247 scripts/logwatch/Makefile \
3248 scripts/logwatch/logfile.bacula.conf \
3249 scripts/wxconsole.console_apps \
3250 scripts/wxconsole.desktop.consolehelper \
3251 scripts/wxconsole.desktop.xsu \
3252 scripts/bat.desktop \
3253 scripts/bat.desktop.xsu \
3254 scripts/bat.desktop.consolehelper \
3255 scripts/bat.console_apps \
3258 src/console/Makefile \
3259 src/console/bconsole.conf \
3260 src/qt-console/tray-monitor/tray-monitor.pro \
3261 src/qt-console/tray-monitor/tray-monitor.conf \
3262 src/qt-console/bat.conf \
3263 src/qt-console/bat.pro \
3264 src/qt-console/bat.pro.mingw32 \
3265 src/qt-console/install_conf_file \
3266 src/wx-console/Makefile \
3267 src/wx-console/bwx-console.conf \
3268 src/tray-monitor/Makefile \
3269 src/tray-monitor/tray-monitor.conf \
3271 src/dird/bacula-dir.conf \
3273 src/stored/Makefile \
3274 src/stored/bacula-sd.conf \
3275 src/filed/Makefile \
3276 src/filed/bacula-fd.conf \
3278 src/cats/make_catalog_backup.pl \
3279 src/cats/make_catalog_backup \
3280 src/cats/delete_catalog_backup \
3281 src/cats/create_postgresql_database \
3282 src/cats/update_postgresql_tables \
3283 src/cats/make_postgresql_tables \
3284 src/cats/grant_postgresql_privileges \
3285 src/cats/drop_postgresql_tables \
3286 src/cats/drop_postgresql_database \
3287 src/cats/create_mysql_database \
3288 src/cats/update_mysql_tables \
3289 src/cats/make_mysql_tables \
3290 src/cats/grant_mysql_privileges \
3291 src/cats/drop_mysql_tables \
3292 src/cats/drop_mysql_database \
3293 src/cats/create_sqlite3_database \
3294 src/cats/update_sqlite3_tables \
3295 src/cats/make_sqlite3_tables \
3296 src/cats/grant_sqlite3_privileges \
3297 src/cats/drop_sqlite3_tables \
3298 src/cats/drop_sqlite3_database \
3301 src/cats/create_bacula_database \
3302 src/cats/update_bacula_tables \
3303 src/cats/grant_bacula_privileges \
3304 src/cats/make_bacula_tables \
3305 src/cats/drop_bacula_tables \
3306 src/cats/drop_bacula_database \
3307 src/cats/install-default-backend \
3308 src/findlib/Makefile \
3309 src/tools/Makefile \
3310 src/plugins/fd/Makefile \
3311 src/plugins/sd/Makefile \
3312 src/plugins/dir/Makefile \
3313 src/win32/Makefile.inc \
3315 updatedb/update_mysql_tables_9_to_10 \
3316 updatedb/update_sqlite3_tables_9_to_10 \
3317 updatedb/update_postgresql_tables_9_to_10 \
3318 updatedb/update_mysql_tables_10_to_11 \
3319 updatedb/update_sqlite3_tables_10_to_11 \
3320 updatedb/update_postgresql_tables_10_to_11 \
3321 updatedb/update_mysql_tables_11_to_12 \
3322 updatedb/update_sqlite3_tables_11_to_12 \
3323 updatedb/update_postgresql_tables_11_to_12 \
3324 examples/nagios/check_bacula/Makefile \
3329 if test "${support_bat}" = "yes" ; then
3330 if test "x$QMAKE" = "xnone"; then
3331 AC_MSG_ERROR([Could not find qmake $PATH. Check your Qt installation])
3335 echo "Creating bat Makefile"
3345 dnl if CC is gcc, we can rebuild the dependencies (since the depend rule
3346 dnl requires gcc). If it's not, don't rebuild dependencies
3348 if test X"$GCC" = "Xyes" ; then
3349 echo "Doing make of dependencies"
3350 ${MAKE:-make} depend
3354 chmod 755 install_conf_file build-depkgs-qt-console
3358 chmod 755 bacula btraceback mtx-changer
3359 chmod 755 dvd-handler dvd-simulator
3360 chmod 755 bconsole mtx-changer devel_bacula logrotate
3364 chmod 755 $c/update_mysql_tables_10_to_11 $c/update_sqlite3_tables_10_to_11
3365 chmod 755 $c/update_postgresql_tables_10_to_11
3366 chmod 755 $c/update_mysql_tables_11_to_12 $c/update_sqlite3_tables_11_to_12
3367 chmod 755 $c/update_postgresql_tables_11_to_12
3372 chmod 755 $c/create_bacula_database $c/update_bacula_tables $c/make_bacula_tables
3373 chmod 755 $c/grant_bacula_privileges $c/drop_bacula_tables $c/drop_bacula_database
3375 chmod 755 $c/create_mysql_database $c/update_mysql_tables $c/make_mysql_tables
3376 chmod 755 $c/grant_mysql_privileges $c/drop_mysql_tables $c/drop_mysql_database
3378 chmod 755 $c/create_sqlite3_database $c/update_sqlite3_tables $c/make_sqlite3_tables
3379 chmod 755 $c/grant_sqlite3_privileges $c/drop_sqlite3_tables $c/drop_sqlite3_database
3381 chmod 755 $c/create_postgresql_database $c/update_postgresql_tables $c/make_postgresql_tables
3382 chmod 755 $c/grant_postgresql_privileges $c/drop_postgresql_tables $c/drop_postgresql_database
3384 #chmod 755 $c/create_ingres_database $c/update_ingres_tables $c/make_ingres_tables
3385 #chmod 755 $c/grant_ingres_privileges $c/drop_ingres_tables $c/drop_ingres_database
3388 chmod 755 $c/make_catalog_backup $c/delete_catalog_backup $c/make_catalog_backup.pl
3392 chmod 755 $c/install-default-backend
3394 chmod 755 src/win32/build-depkgs-mingw32
3396 if test "x$ac_cv_sys_largefile_CFLAGS" != "xno" ; then
3397 largefile_support="yes"
3400 dnl Only try to find out the version number of the compiler when we know its some kind of GCC compiler
3401 if test X"$GCC" = "Xyes" ; then
3403 dnl A whole lot of hand springs to get the compiler version.
3404 dnl This is because gcc changed the output in version 3.0
3406 CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 3 -d ' '`
3407 if test "x${CCVERSION}" = "x" ; then
3408 CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 1 -d ' '`
3410 CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 3 -d ' '`
3411 if test x"${CXXVERSION}" = x ; then
3412 CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 1 -d ' '`
3416 # clean up any old junk
3423 Configuration on `date`:
3425 Host: ${host}${post_host} -- ${DISTNAME} ${DISTVER}
3426 Bacula version: ${BACULA} ${VERSION} (${DATE})
3427 Source code location: ${srcdir}
3428 Install binaries: ${sbindir}
3429 Install libraries: ${libdir}
3430 Install config files: ${sysconfdir}
3431 Scripts directory: ${scriptdir}
3432 Archive directory: ${archivedir}
3433 Working directory: ${working_dir}
3434 PID directory: ${piddir}
3435 Subsys directory: ${subsysdir}
3436 Man directory: ${mandir}
3437 Data directory: ${datarootdir}
3438 Plugin directory: ${plugindir}
3439 C Compiler: ${CC} ${CCVERSION}
3440 C++ Compiler: ${CXX} ${CXXVERSION}
3441 Compiler flags: ${WCFLAGS} ${CFLAGS}
3442 Linker flags: ${WLDFLAGS} ${LDFLAGS}
3444 Statically Linked Tools: ${support_static_tools}
3445 Statically Linked FD: ${support_static_fd}
3446 Statically Linked SD: ${support_static_sd}
3447 Statically Linked DIR: ${support_static_dir}
3448 Statically Linked CONS: ${support_static_cons}
3449 Database backends: ${db_backends}
3450 Database port: ${db_port}
3451 Database name: ${db_name}
3452 Database user: ${db_user}
3454 Job Output Email: ${job_email}
3455 Traceback Email: ${dump_email}
3456 SMTP Host Address: ${smtp_host}
3458 Director Port: ${dir_port}
3459 File daemon Port: ${fd_port}
3460 Storage daemon Port: ${sd_port}
3462 Director User: ${dir_user}
3463 Director Group: ${dir_group}
3464 Storage Daemon User: ${sd_user}
3465 Storage DaemonGroup: ${sd_group}
3466 File Daemon User: ${fd_user}
3467 File Daemon Group: ${fd_group}
3469 Large file support: $largefile_support
3470 Bacula conio support: ${got_conio} ${CONS_LIBS}
3471 readline support: ${got_readline} ${PRTREADLINE_SRC}
3472 TCP Wrappers support: ${TCPW_MSG} ${WRAPLIBS}
3473 TLS support: ${support_tls}
3474 Encryption support: ${support_crypto}
3475 ZLIB support: ${have_zlib}
3476 LZO support: ${have_lzo}
3477 enable-smartalloc: ${support_smartalloc}
3478 enable-lockmgr: ${support_lockmgr}
3479 bat support: ${support_bat}
3480 enable-gnome: ${support_gnome} ${gnome_version}
3481 enable-bwx-console: ${support_wx_console} ${wx_version}
3482 enable-tray-monitor: ${support_tray_monitor}
3483 client-only: ${build_client_only}
3484 build-dird: ${build_dird}
3485 build-stored: ${build_stored}
3486 Plugin support: ${have_plugins}
3487 ACL support: ${have_acl}
3488 XATTR support: ${have_xattr}
3489 Python support: ${support_python} ${PYTHON_LIBS}
3490 Batch insert enabled: ${support_batch_insert}
3494 # create a small shell script useful for support with
3495 # configure options and config.out info
3496 cat > scripts/bacula_config << EOF
3499 $ $0 $ac_configure_args
3501 cat config.out >> scripts/bacula_config
3502 echo __EOC__ >> scripts/bacula_config
3503 chmod 755 scripts/bacula_config