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${docdir} ; then
341 htmldir=`eval echo ${docdir}bacula/html`
344 dnl -------------------------------------------------------------------------
345 dnl If the user has not set --docdir, we default to /usr/share/doc/
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
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, Ingres, SQLite3 or DBI."
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, Ingres, SQLite3 or DBI."
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_HEADERS([cxxabi.h execinfo.h], [ AC_DEFINE(HAVE_BACKTRACE,1,[Defines if your system have the cxxabi.h and execinfo.h header files for 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)
2499 dnl Check if we have AFS on this system
2505 AC_HELP_STRING([--disable-afs], [disable afs support @<:@default=auto@:>@]),
2507 if test x$enableval = xyes; then
2509 elif test x$enableval = xno; then
2516 if test x$support_afs = xyes -o x$support_afs = xauto; then
2518 AC_HELP_STRING([--with-afsdir@<:@=DIR@:>@], [Directory holding AFS includes/libs]),
2519 with_afsdir=$withval
2523 dnl Search in standard places, or --with-afsdir not specified
2525 if test x$with_afsdir = x; then
2526 for root in /usr /usr/local; do
2527 if test -d ${root}/include/afs/ ; then
2534 AFS_CFLAGS="-I${with_afsdir}/include"
2536 saved_CFLAGS="${CFLAGS}"
2537 CFLAGS="${AFS_CFLAGS} ${saved_CFLAGS}"
2539 AC_CHECK_HEADERS(afs/stds.h)
2541 CFLAGS="${saved_CFLAGS}"
2544 dnl See if we can find a libsys with the pioctl symbol in there
2546 for dir in ${with_afsdir}/lib ${with_afsdir}/lib/afs
2548 for arch_type in .a .so
2550 A=`test -f ${dir}/libsys${arch_type} && nm ${dir}/libsys${arch_type} | grep pioctl`
2552 if test $pkg = 0; then
2554 AFS_LIBS="-L${dir} -lsys -lrx -llwp ${dir}/util.a"
2560 if test x$support_afs = xyes -a $have_afs != yes; then
2561 AC_MSG_ERROR([afs support explicitly enabled but no supported afs implementation found,
2562 please either load the afs libraries or rerun configure without --enable-afs])
2564 if test $have_afs = yes; then
2565 AC_DEFINE([HAVE_AFS],1,[Defines if your system has AFS support])
2566 AC_DEFINE([HAVE_AFS_ACL],1,[Andrew FileSystem ACL support])
2571 AC_SUBST(AFS_CFLAGS)
2575 dnl Check for ACL support and libraries
2579 AC_HELP_STRING([--disable-acl], [disable acl support @<:@default=auto@:>@]),
2581 if test x$enableval = xyes; then
2583 elif test x$enableval = xno; then
2590 have_extended_acl=no
2591 if test x$support_acl = xyes -o x$support_acl = xauto; then
2592 AC_CHECK_HEADER(sys/acl.h, [ AC_DEFINE(HAVE_SYS_ACL_H,1,[Defines if your system have the sys/acl.h header file])] , )
2595 dnl First check for acl_get_file in libc
2597 AC_CHECK_FUNC(acl_get_file,
2604 dnl Check for acl_get_file in libacl (Linux)
2606 if test $have_acl = no; then
2607 AC_CHECK_LIB(acl, acl_get_file,
2610 if test $have_afs = yes; then
2612 dnl Because of possible naming conflict with AFS libacl make sure we use the one in /usr/lib64 or /usr/lib !!!
2614 if test -d /usr/lib64/; then
2615 FDLIBS="-L/usr/lib64 -lacl $FDLIBS"
2617 FDLIBS="-L/usr/lib -lacl $FDLIBS"
2620 FDLIBS="-lacl $FDLIBS"
2627 dnl Check for acl_get_file in libpacl (OSF1)
2628 dnl and if ACL_TYPE_DEFAULT_DIR is defined.
2630 if test $have_acl = no -a \
2631 x${HAVE_OSF1_OS_TRUE} = x; then
2632 AC_CHECK_LIB(pacl, acl_get_file,
2635 FDLIBS="-lpacl $FDLIBS"
2639 AC_CHECK_DECL([ACL_TYPE_DEFAULT_DIR],
2640 [AC_DEFINE(HAVE_ACL_TYPE_DEFAULT_DIR,1,[Defines if your system have the ACL_TYPE_DEFAULT_DIR acl type])],
2642 [[#include <sys/acl.h>]])
2646 dnl On OSX check for availability of ACL_TYPE_EXTENDED
2648 if test $have_acl = yes -a \
2649 x${HAVE_DARWIN_OS_TRUE} = x; then
2650 AC_CHECK_DECL([ACL_TYPE_EXTENDED],
2651 [AC_DEFINE(HAVE_ACL_TYPE_EXTENDED,1,[Defines if your system have the ACL_TYPE_EXTENDED acl type])],
2653 [[#include <sys/acl.h>]])
2657 dnl On FreeBSD check for availability of ACL_TYPE_NFS4
2659 if test $have_acl = yes -a \
2660 x${HAVE_FREEBSD_OS_TRUE} = x; then
2661 AC_CHECK_DECL([ACL_TYPE_NFS4],
2662 [AC_DEFINE(HAVE_ACL_TYPE_NFS4,1,[Defines if your system have the ACL_TYPE_NFS4 acl type])],
2664 [[#include <sys/acl.h>]])
2668 dnl Check for acltotext and acl_totext (Solaris)
2670 if test $have_acl = no -a \
2671 x${HAVE_SUN_OS_TRUE} = x; then
2672 AC_CHECK_LIB(sec, acltotext,
2675 FDLIBS="-lsec $FDLIBS"
2677 AC_CHECK_LIB(sec, acl_totext,
2679 have_extended_acl=yes
2687 dnl Check for acl_get and aclx_get (AIX)
2689 if test $have_acl = no -a \
2690 x${HAVE_AIX_OS_TRUE} = x; then
2691 AC_CHECK_FUNC(acl_get,
2695 AC_CHECK_FUNC(aclx_get,
2697 have_extended_acl=yes
2704 if test x$support_acl = xyes -a $have_acl != yes; then
2705 AC_MSG_ERROR([acl support explicitly enabled but no supported acl implementation found,
2706 please either load the acl libraries or rerun configure without --enable-acl])
2708 if test $have_acl = yes; then
2709 AC_DEFINE([HAVE_ACL],1,[Normal acl support])
2712 if test $have_extended_acl = yes; then
2713 AC_DEFINE([HAVE_EXTENDED_ACL],1,[Extended acl support])
2719 dnl Check for XATTR support
2722 AC_ARG_ENABLE(xattr,
2723 AC_HELP_STRING([--disable-xattr], [disable xattr support @<:@default=auto@:>@]),
2725 if test x$enableval = xyes; then
2727 elif test x$enableval = xno; then
2734 if test x$support_xattr = xyes -o x$support_xattr = xauto; then
2736 dnl First check for *BSD support
2737 dnl When running on a BSD variant
2739 if test x${HAVE_FREEBSD_OS_TRUE} = x -o \
2740 x${HAVE_NETBSD_OS_TRUE} = x -o \
2741 x${HAVE_OPENBSD_OS_TRUE} = x; then
2742 AC_CHECK_HEADER(sys/extattr.h, [ AC_DEFINE(HAVE_SYS_EXTATTR_H,1,[Defines if your system have the sys/extattr.h header file])] , )
2743 AC_CHECK_HEADER(libutil.h, [ AC_DEFINE(HAVE_LIBUTIL_H,1,[Defines if your system have the libutil.h header file])] , )
2744 AC_CHECK_FUNCS(extattr_get_link extattr_set_link extattr_list_link,
2747 AC_DEFINE([HAVE_EXTATTR_GET_LINK],1,[Define to 1 if you have the 'extattr_get_link' function.])
2748 AC_DEFINE([HAVE_EXTATTR_SET_LINK],1,[Define to 1 if you have the 'extattr_set_link' function.])
2749 AC_DEFINE([HAVE_EXTATTR_LIST_LINK],1,[Define to 1 if you have the 'extattr_list_link' function.])
2753 if test $have_xattr = no; then
2754 AC_CHECK_FUNCS(extattr_get_file extattr_set_file extattr_list_file,
2757 AC_DEFINE([HAVE_EXTATTR_GET_FILE],1,[Define to 1 if you have the 'extattr_get_file' function.])
2758 AC_DEFINE([HAVE_EXTATTR_SET_FILE],1,[Define to 1 if you have the 'extattr_set_file' function.])
2759 AC_DEFINE([HAVE_EXTATTR_LIST_FILE],1,[Define to 1 if you have the 'extattr_list_file' function.])
2764 if test $have_xattr = yes; then
2765 have_extattr_string_in_libc=no
2766 AC_CHECK_FUNCS(extattr_namespace_to_string extattr_string_to_namespace,
2768 have_extattr_string_in_libc=yes
2769 AC_DEFINE([HAVE_EXTATTR_NAMESPACE_TO_STRING],1,[Define to 1 if you have the 'extattr_namespace_to_string' function.])
2770 AC_DEFINE([HAVE_EXTATTR_STRING_TO_NAMESPACE],1,[Define to 1 if you have the 'extattr_string_to_namespace' function.])
2775 dnl If extattr_namespace_to_string and extattr_string_to_namespace are not in libc see if they are in libutil
2777 if test $have_extattr_string_in_libc = no; then
2778 AC_CHECK_LIB(util, extattr_namespace_to_string extattr_string_to_namespace,
2780 AC_DEFINE([HAVE_EXTATTR_NAMESPACE_TO_STRING],1,[Define to 1 if you have the 'extattr_namespace_to_string' function.])
2781 AC_DEFINE([HAVE_EXTATTR_STRING_TO_NAMESPACE],1,[Define to 1 if you have the 'extattr_string_to_namespace' function.])
2782 FDLIBS="-lutil $FDLIBS"
2790 dnl If we failed to find *BSD support try the AIX implementation of extented attributes (EA)
2791 dnl When running on AIX
2793 if test $have_xattr = no -a \
2794 x${HAVE_AIX_OS_TRUE} = x; then
2795 AC_CHECK_HEADER(sys/ea.h, [ AC_DEFINE(HAVE_SYS_EA_H,1,[Defines if your system have the sys/ea.h header file])] , )
2796 AC_CHECK_FUNCS(llistea lgetea lsetea,
2799 AC_DEFINE([HAVE_LLISTEA],1,[Define to 1 if you have the 'llistea' function.])
2800 AC_DEFINE([HAVE_LGETEA],1,[Define to 1 if you have the 'lgetea' function.])
2801 AC_DEFINE([HAVE_LSETEA],1,[Define to 1 if you have the 'lsetea' function.])
2805 if test $have_xattr = no; then
2806 AC_CHECK_FUNCS(listea getea setea,
2809 AC_DEFINE([HAVE_LISTEA],1,[Define to 1 if you have the 'listea' function.])
2810 AC_DEFINE([HAVE_GETEA],1,[Define to 1 if you have the 'getea' function.])
2811 AC_DEFINE([HAVE_SETEA],1,[Define to 1 if you have the 'setea' function.])
2818 dnl If we failed to find AIX support try the TRU64 implementation of extented attributes
2819 dnl when running on a TRU64 OS.
2821 if test $have_xattr = no -a \
2822 x${HAVE_OSF1_OS_TRUE} = x; then
2823 AC_CHECK_HEADER(sys/proplist.h, [ AC_DEFINE(HAVE_SYS_PROPLIST_H,1,[Defines if your system have the sys/proplist.h header file])] , )
2824 AC_CHECK_FUNCS(getproplist get_proplist_entry sizeof_proplist_entry add_proplist_entry setproplist,
2827 AC_DEFINE([HAVE_GETPROPLIST],1,[Define to 1 if you have the 'getproplist' function.])
2828 AC_DEFINE([HAVE_GET_PROPLIST_ENTRY],1,[Define to 1 if you have the 'get_proplist_entry' function.])
2829 AC_DEFINE([HAVE_SIZEOF_PROPLIST_ENTRY],1,[Define to 1 if you have the 'sizeof_proplist_entry' function.])
2830 AC_DEFINE([HAVE_ADD_PROPLIST_ENTRY],1,[Define to 1 if you have the 'add_proplist_entry' function.])
2831 AC_DEFINE([HAVE_SETPROPLIST],1,[Define to 1 if you have the 'setproplist' function.])
2837 dnl If we failed to find TRU64 support try the SOLARIS implementation of extented and extensible attributes
2838 dnl when running on a Solaris.
2840 if test $have_xattr = no -a \
2841 x${HAVE_SUN_OS_TRUE} = x; then
2842 AC_CHECK_HEADER(sys/attr.h, [ AC_DEFINE(HAVE_SYS_ATTR_H,1,[Defines if your system have the sys/attr.h header file])] , )
2843 AC_CHECK_HEADER(sys/nvpair.h, [ AC_DEFINE(HAVE_SYS_NVPAIR_H,1,[Defines if your system have the sys/nvpair.h header file])] , )
2844 AC_CHECK_HEADER(attr.h, [ AC_DEFINE(HAVE_ATTR_H,1,[Defines if your system have the attr.h header file])] , )
2846 AC_CHECK_FUNCS(openat fstatat unlinkat fchownat futimesat,
2849 AC_DEFINE([HAVE_OPENAT],1,[Define to 1 if you have the 'openat' function.])
2850 AC_DEFINE([HAVE_FSTATAT],1,[Define to 1 if you have the 'fstatat' function.])
2851 AC_DEFINE([HAVE_UNLINKAT],1,[Define to 1 if you have the 'unlinkat' function.])
2852 AC_DEFINE([HAVE_FCHOWNAT],1,[Define to 1 if you have the 'fchownat' function.])
2853 AC_DEFINE([HAVE_FUTIMESAT],1,[Define to 1 if you have the 'futimesat' function.])
2857 if test $have_xattr = yes; then
2858 AC_CHECK_LIB(nvpair, nvlist_next_nvpair,
2860 AC_DEFINE([HAVE_NVLIST_NEXT_NVPAIR],1,[Define to 1 if you have the 'nvlist_next_nvpair' function.])
2861 FDLIBS="-lnvpair $FDLIBS"
2868 dnl If we failed to find Solaris support try the generic xattr support code
2870 if test $have_xattr = no; then
2871 AC_CHECK_HEADER(sys/xattr.h, [ AC_DEFINE(HAVE_SYS_XATTR_H,1,[Defines if your system have the sys/xattr.h header file])] , )
2872 AC_CHECK_FUNCS(llistxattr lgetxattr lsetxattr,
2875 AC_DEFINE([HAVE_LLISTXATTR],1,[Define to 1 if you have the 'llistxattr' function.])
2876 AC_DEFINE([HAVE_LGETXATTR],1,[Define to 1 if you have the 'lgetxattr' function.])
2877 AC_DEFINE([HAVE_LSETXATTR],1,[Define to 1 if you have the 'lsetxattr' function.])
2881 if test $have_xattr = no; then
2882 AC_CHECK_FUNCS(listxattr getxattr setxattr,
2885 AC_DEFINE([HAVE_LISTXATTR],1,[Define to 1 if you have the 'listxattr' function.])
2886 AC_DEFINE([HAVE_GETXATTR],1,[Define to 1 if you have the 'getxattr' function.])
2887 AC_DEFINE([HAVE_SETXATTR],1,[Define to 1 if you have the 'setxattr' function.])
2893 if test x$support_xattr = xyes -a $have_xattr != yes; then
2894 AC_MSG_ERROR([xattr support explicitly enabled but no supported xattr implementation found,
2895 please either load the xattr libraries or rerun configure without --enable-xattr])
2897 if test $have_xattr = yes; then
2898 AC_DEFINE([HAVE_XATTR],1,[Extended Attributes support])
2904 dnl Check for pthread libraries
2907 AC_CHECK_LIB(pthread, pthread_create, PTHREAD_LIB="-lpthread",
2909 AC_CHECK_LIB(pthreads, pthread_create, PTHREAD_LIB="-lpthreads",
2911 AC_CHECK_LIB(c_r, pthread_create, PTHREAD_LIB="-lc_r",
2913 AC_CHECK_FUNC(pthread_create)
2922 dnl Check for headers, functions and libraries required to support
2923 dnl keeping readall capabilities
2925 AC_CHECK_HEADERS(sys/prctl.h sys/capability.h)
2926 AC_CHECK_FUNCS(prctl setreuid)
2927 AC_CHECK_LIB([cap], [cap_set_proc], [CAP_LIBS="-lcap"], [CAP_LIBS=])
2928 if test x$CAP_LIBS = x-lcap; then
2929 AC_DEFINE(HAVE_LIBCAP, 1, [Define if you have libcap])
2938 if test x$have_gcc = xyes ; then
2939 CPPFLAGS="$CPPFLAGS -fno-strict-aliasing -fno-exceptions -fno-rtti"
2940 CFLAGS="$CFLAGS -fno-strict-aliasing -fno-exceptions -fno-rtti"
2942 LDFLAGS=${LDFLAGS--O}
2943 CPPFLAGS="$CPPFLAGS"
2955 AC_SUBST(X_EXTRA_LIBS)
2960 dnl extra configurable objects
2971 dnl Finally we set appropriate distribution specific
2972 dnl variables and defaults
2974 dnl PFILES are platform specific files
2975 PFILES="platforms/Makefile"
2980 hostname=`uname -n | cut -d '.' -f 1`
2981 if test x${hostname} = x ; then
2982 hostname="localhost"
2984 dnl Make sure hostname is resolved
2985 ping -c 1 $hostname 2>/dev/null 1>/dev/null
2986 if test ! $? = 0; then
2987 hostname="localhost"
2993 PSCMD="ps -e -o pid,comm"
2995 platforms/aix/Makefile"
2996 TAPEDRIVE="/dev/rmt0.1"
3000 PTHREAD_LIB="-lpthread -lexc"
3001 if test "${CC}" = "gcc" ; then
3008 TAPEDRIVE="/dev/nrmt0"
3011 DISTVER=`uname -a |awk '{print $3}'`
3012 TAPEDRIVE="/dev/nrmt0"
3013 PTHREAD_LIB="-pthread"
3014 CFLAGS="${CFLAGS} -pthread"
3015 PSCMD="ps -ax -o pid,command"
3019 platforms/bsdi/Makefile \
3020 platforms/bsdi/bacula-fd \
3021 platforms/bsdi/bacula-sd \
3022 platforms/bsdi/bacula-dir"
3023 largefile_support="yes"
3026 DISTVER=`uname -a |awk '{print $3}'`
3027 TAPEDRIVE="/dev/nrst0"
3030 WLDFLAGS="-mwindows"
3034 TAPEDRIVE="/dev/nst0"
3035 PSCMD="ps -e -o pid,command"
3038 platforms/darwin/Makefile"
3042 TAPEDRIVE="/dev/nst0"
3043 PSCMD="ps -e -o pid,command"
3046 platforms/osx/Makefile"
3049 if `test -f /etc/apt/sources.list && grep -q ubuntu /etc/apt/sources.list`; then
3052 DISTVER=`cat /etc/debian_version`
3053 if test -f /etc/lsb-release ; then
3055 if test "x$DISTRIB_ID" != "x" ; then
3056 DISTNAME=$DISTRIB_ID
3058 if test "x$DISTRIB_RELEASE" != "x" ; then
3059 DISTVER=$DISTRIB_RELEASE
3062 if test "$DISTNAME" = "Ubuntu" ; then
3065 TAPEDRIVE="/dev/nst0"
3066 PSCMD="ps -e -o pid,command"
3067 if test "$DISTNAME" = "ubuntu" ; then
3069 platforms/ubuntu/Makefile \
3070 platforms/ubuntu/bacula-fd \
3071 platforms/ubuntu/bacula-sd \
3072 platforms/ubuntu/bacula-dir"
3075 platforms/debian/Makefile \
3076 platforms/debian/bacula-fd \
3077 platforms/debian/bacula-sd \
3078 platforms/debian/bacula-dir"
3082 DISTVER=`uname -a |awk '{print $3}'`
3083 VER=`echo $DISTVER | cut -c 1`
3084 if test x$VER = x4 ; then
3085 PTHREAD_LIB="${PTHREAD_LIBS:--pthread}"
3086 CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS:--pthread}"
3090 TAPEDRIVE="/dev/nrsa0"
3091 PSCMD="ps -ax -o pid,command"
3093 platforms/freebsd/Makefile \
3094 platforms/freebsd/bacula-fd \
3095 platforms/freebsd/bacula-sd \
3096 platforms/freebsd/bacula-dir"
3097 largefile_support="yes"
3100 PSCMD="UNIX95=1; ps -e -o pid,comm"
3101 CFLAGS="${CFLAGS} -D_XOPEN_SOURCE_EXTENDED=1"
3103 TAPEDRIVE="/dev/rmt/0hnb"
3104 PTHREAD_LIB="-lpthread"
3105 AC_DEFINE([_INCLUDE_LONGLONG])
3109 TAPEDRIVE="/dev/rmt/0cbn"
3110 PSCMD="ps -e -o pid,comm"
3112 platforms/irix/Makefile \
3113 platforms/irix/bacula-fd \
3114 platforms/irix/bacula-sd \
3115 platforms/irix/bacula-dir"
3118 DISTVER=`uname -a |awk '{print $3}'`
3121 TAPEDRIVE="/dev/nrst0"
3122 PSCMD="ps -ax -o pid,command"
3123 PTHREAD_LIB="-pthread"
3124 CFLAGS="${CFLAGS} -pthread"
3127 DISTVER=`uname -a |awk '{print $3}'`
3130 TAPEDRIVE="/dev/nrst0"
3131 PSCMD="ps -ax -o pid,command"
3132 PTHREAD_LIB="-pthread"
3133 CFLAGS="${CFLAGS} -pthread"
3135 platforms/openbsd/Makefile \
3136 platforms/openbsd/bacula-fd \
3137 platforms/openbsd/bacula-sd \
3138 platforms/openbsd/bacula-dir"
3141 if test -f /etc/whitebox-release ; then
3142 f=/etc/whitebox-release
3144 f=/etc/redhat-release
3146 if test `cat $f | grep release |\
3147 cut -f 3 -d ' '`x = "Enterprise"x ; then
3148 DISTVER="Enterprise "`cat $f | grep release |\
3151 DISTVER=`cat /etc/redhat-release | grep release |\
3154 TAPEDRIVE="/dev/nst0"
3155 PSCMD="ps -e -o pid,command"
3157 platforms/redhat/Makefile \
3158 platforms/redhat/bacula-fd \
3159 platforms/redhat/bacula-sd \
3160 platforms/redhat/bacula-dir
3164 DISTVER=`cat /etc/mandrake-release | grep release |\
3166 TAPEDRIVE="/dev/nst0"
3167 PSCMD="ps -e -o pid,command"
3169 platforms/mandrake/Makefile \
3170 platforms/mandrake/bacula-fd \
3171 platforms/mandrake/bacula-sd \
3172 platforms/mandrake/bacula-dir \
3176 DISTVER=`awk '/version / {print $5}' < /etc/gentoo-release`
3177 TAPEDRIVE="/dev/nst0"
3178 PSCMD="ps -e -o pid,command"
3180 platforms/gentoo/Makefile \
3181 platforms/gentoo/bacula-init \
3182 platforms/gentoo/bacula-fd \
3183 platforms/gentoo/bacula-sd \
3184 platforms/gentoo/bacula-dir"
3187 DISTVER=`cat /etc/slackware-version`
3188 TAPEDRIVE="/dev/nst0"
3189 PSCMD="ps -e -o pid,command"
3191 platforms/slackware/Makefile \
3192 platforms/slackware/rc.bacula-fd \
3193 platforms/slackware/rc.bacula-sd \
3194 platforms/slackware/rc.bacula-dir\
3195 platforms/slackware/functions.bacula"
3199 TAPEDRIVE="/dev/rmt/0cbn"
3200 PSCMD="ps -e -o pid,comm"
3202 platforms/solaris/Makefile \
3203 platforms/solaris/bacula-fd \
3204 platforms/solaris/bacula-sd \
3205 platforms/solaris/bacula-dir"
3208 AC_DEFINE(HAVE_OLD_SOCKOPT)
3209 AC_DEFINE(USE_THR_SETCONCURRENCY)
3212 AC_DEFINE(USE_THR_SETCONCURRENCY)
3217 LIBS="$LIBS -lresolv -lrt"
3220 DISTVER=`cat /etc/SuSE-release |grep VERSION|\
3222 TAPEDRIVE="/dev/nst0"
3223 PSCMD="ps -e -o pid,command"
3225 platforms/suse/Makefile \
3226 platforms/suse/bacula-fd \
3227 platforms/suse/bacula-sd \
3228 platforms/suse/bacula-dir \
3229 platforms/suse/bacula"
3234 TAPEDRIVE="/dev/nst0"
3235 PSCMD="ps -e -o pid,command"
3237 platforms/suse/Makefile \
3238 platforms/suse/bacula-fd \
3239 platforms/suse/bacula-sd \
3240 platforms/suse/bacula-dir"
3244 TAPEDRIVE="/dev/nst0"
3247 echo " === Something went wrong. Unknown DISTNAME $DISTNAME ==="
3253 LIBS="$PTHREAD_LIB $LIBS"
3255 AC_DEFINE_UNQUOTED(lld, "$lld")
3256 AC_DEFINE_UNQUOTED(llu, "$llu")
3264 dnl common parts of the Makefile
3265 MCOMMON=./autoconf/Make.common
3266 AC_SUBST_FILE(MCOMMON)
3269 if test "x${subsysdir}" = "x${sbindir}" ; then
3272 echo "You have set both --sbindir and --with-subsys-dir"
3273 echo " equal to: ${subsysdir} "
3274 echo "This is not permitted. Please reconfigure."
3276 echo "Aborting configuration ..."
3282 AC_OUTPUT([autoconf/Make.common \
3285 scripts/btraceback \
3288 scripts/bacula-ctl-dir \
3289 scripts/bacula-ctl-fd \
3290 scripts/bacula-ctl-sd \
3291 scripts/devel_bacula \
3294 scripts/bacula.desktop.gnome1 \
3295 scripts/bacula.desktop.gnome2 \
3296 scripts/bacula.desktop.gnome1.consolehelper \
3297 scripts/bacula.desktop.gnome2.consolehelper \
3298 scripts/bacula.desktop.gnome1.xsu \
3299 scripts/bacula.desktop.gnome2.xsu \
3300 scripts/bgnome-console.console_apps \
3301 scripts/mtx-changer \
3302 scripts/disk-changer \
3303 scripts/dvd-handler \
3304 scripts/dvd-simulator \
3305 scripts/bacula-tray-monitor.desktop \
3306 scripts/logwatch/Makefile \
3307 scripts/logwatch/logfile.bacula.conf \
3308 scripts/wxconsole.console_apps \
3309 scripts/wxconsole.desktop.consolehelper \
3310 scripts/wxconsole.desktop.xsu \
3311 scripts/bat.desktop \
3312 scripts/bat.desktop.xsu \
3313 scripts/bat.desktop.consolehelper \
3314 scripts/bat.console_apps \
3317 src/console/Makefile \
3318 src/console/bconsole.conf \
3319 src/qt-console/tray-monitor/tray-monitor.pro \
3320 src/qt-console/tray-monitor/tray-monitor.conf \
3321 src/qt-console/bat.conf \
3322 src/qt-console/bat.pro \
3323 src/qt-console/bat.pro.mingw32 \
3324 src/qt-console/install_conf_file \
3325 src/wx-console/Makefile \
3326 src/wx-console/bwx-console.conf \
3327 src/tray-monitor/Makefile \
3328 src/tray-monitor/tray-monitor.conf \
3330 src/dird/bacula-dir.conf \
3332 src/stored/Makefile \
3333 src/stored/bacula-sd.conf \
3334 src/filed/Makefile \
3335 src/filed/bacula-fd.conf \
3337 src/cats/make_catalog_backup.pl \
3338 src/cats/make_catalog_backup \
3339 src/cats/delete_catalog_backup \
3340 src/cats/create_postgresql_database \
3341 src/cats/update_postgresql_tables \
3342 src/cats/make_postgresql_tables \
3343 src/cats/grant_postgresql_privileges \
3344 src/cats/drop_postgresql_tables \
3345 src/cats/drop_postgresql_database \
3346 src/cats/create_mysql_database \
3347 src/cats/update_mysql_tables \
3348 src/cats/make_mysql_tables \
3349 src/cats/grant_mysql_privileges \
3350 src/cats/drop_mysql_tables \
3351 src/cats/drop_mysql_database \
3352 src/cats/create_sqlite3_database \
3353 src/cats/update_sqlite3_tables \
3354 src/cats/make_sqlite3_tables \
3355 src/cats/grant_sqlite3_privileges \
3356 src/cats/drop_sqlite3_tables \
3357 src/cats/drop_sqlite3_database \
3358 src/cats/create_ingres_database \
3359 src/cats/update_ingres_tables \
3360 src/cats/make_ingres_tables \
3361 src/cats/grant_ingres_privileges \
3362 src/cats/drop_ingres_tables \
3363 src/cats/drop_ingres_database \
3366 src/cats/create_bacula_database \
3367 src/cats/update_bacula_tables \
3368 src/cats/grant_bacula_privileges \
3369 src/cats/make_bacula_tables \
3370 src/cats/drop_bacula_tables \
3371 src/cats/drop_bacula_database \
3372 src/findlib/Makefile \
3373 src/tools/Makefile \
3374 src/plugins/fd/Makefile \
3375 src/plugins/sd/Makefile \
3376 src/plugins/dir/Makefile \
3377 src/win32/Makefile.inc \
3379 updatedb/update_mysql_tables_9_to_10 \
3380 updatedb/update_sqlite3_tables_9_to_10 \
3381 updatedb/update_postgresql_tables_9_to_10 \
3382 updatedb/update_mysql_tables_10_to_11 \
3383 updatedb/update_sqlite3_tables_10_to_11 \
3384 updatedb/update_postgresql_tables_10_to_11 \
3385 updatedb/update_mysql_tables_11_to_12 \
3386 updatedb/update_sqlite3_tables_11_to_12 \
3387 updatedb/update_postgresql_tables_11_to_12 \
3388 examples/nagios/check_bacula/Makefile \
3393 if test "${support_bat}" = "yes" ; then
3394 if test "x$QMAKE" = "xnone"; then
3395 AC_MSG_ERROR([Could not find qmake $PATH. Check your Qt installation])
3399 echo "Creating bat Makefile"
3409 dnl if CC is gcc, we can rebuild the dependencies (since the depend rule
3410 dnl requires gcc). If it's not, don't rebuild dependencies
3412 if test X"$GCC" = "Xyes" ; then
3413 echo "Doing make of dependencies"
3414 ${MAKE:-make} depend
3418 chmod 755 install_conf_file build-depkgs-qt-console
3422 chmod 755 bacula btraceback mtx-changer
3423 chmod 755 dvd-handler dvd-simulator
3424 chmod 755 bconsole mtx-changer devel_bacula logrotate
3428 chmod 755 $c/update_mysql_tables_10_to_11 $c/update_sqlite3_tables_10_to_11
3429 chmod 755 $c/update_postgresql_tables_10_to_11
3430 chmod 755 $c/update_mysql_tables_11_to_12 $c/update_sqlite3_tables_11_to_12
3431 chmod 755 $c/update_postgresql_tables_11_to_12
3436 chmod 755 $c/create_bacula_database $c/update_bacula_tables $c/make_bacula_tables
3437 chmod 755 $c/grant_bacula_privileges $c/drop_bacula_tables $c/drop_bacula_database
3439 chmod 755 $c/create_mysql_database $c/update_mysql_tables $c/make_mysql_tables
3440 chmod 755 $c/grant_mysql_privileges $c/drop_mysql_tables $c/drop_mysql_database
3442 chmod 755 $c/create_sqlite3_database $c/update_sqlite3_tables $c/make_sqlite3_tables
3443 chmod 755 $c/grant_sqlite3_privileges $c/drop_sqlite3_tables $c/drop_sqlite3_database
3445 chmod 755 $c/create_postgresql_database $c/update_postgresql_tables $c/make_postgresql_tables
3446 chmod 755 $c/grant_postgresql_privileges $c/drop_postgresql_tables $c/drop_postgresql_database
3448 chmod 755 $c/create_ingres_database $c/update_ingres_tables $c/make_ingres_tables
3449 chmod 755 $c/grant_ingres_privileges $c/drop_ingres_tables $c/drop_ingres_database
3452 chmod 755 $c/make_catalog_backup $c/delete_catalog_backup $c/make_catalog_backup.pl
3456 chmod 755 src/win32/build-depkgs-mingw32
3458 if test "x$ac_cv_sys_largefile_CFLAGS" != "xno" ; then
3459 largefile_support="yes"
3462 dnl Only try to find out the version number of the compiler when we know its some kind of GCC compiler
3463 if test X"$GCC" = "Xyes" ; then
3465 dnl A whole lot of hand springs to get the compiler version.
3466 dnl This is because gcc changed the output in version 3.0
3468 CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 3 -d ' '`
3469 if test "x${CCVERSION}" = "x" ; then
3470 CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 1 -d ' '`
3472 CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 3 -d ' '`
3473 if test x"${CXXVERSION}" = x ; then
3474 CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 1 -d ' '`
3478 # clean up any old junk
3485 Configuration on `date`:
3487 Host: ${host}${post_host} -- ${DISTNAME} ${DISTVER}
3488 Bacula version: ${BACULA} ${VERSION} (${DATE})
3489 Source code location: ${srcdir}
3490 Install binaries: ${sbindir}
3491 Install libraries: ${libdir}
3492 Install config files: ${sysconfdir}
3493 Scripts directory: ${scriptdir}
3494 Archive directory: ${archivedir}
3495 Working directory: ${working_dir}
3496 PID directory: ${piddir}
3497 Subsys directory: ${subsysdir}
3498 Man directory: ${mandir}
3499 Data directory: ${datarootdir}
3500 Plugin directory: ${plugindir}
3501 C Compiler: ${CC} ${CCVERSION}
3502 C++ Compiler: ${CXX} ${CXXVERSION}
3503 Compiler flags: ${WCFLAGS} ${CFLAGS}
3504 Linker flags: ${WLDFLAGS} ${LDFLAGS}
3506 Statically Linked Tools: ${support_static_tools}
3507 Statically Linked FD: ${support_static_fd}
3508 Statically Linked SD: ${support_static_sd}
3509 Statically Linked DIR: ${support_static_dir}
3510 Statically Linked CONS: ${support_static_cons}
3511 Database backends: ${db_backends}
3512 Database port: ${db_port}
3513 Database name: ${db_name}
3514 Database user: ${db_user}
3516 Job Output Email: ${job_email}
3517 Traceback Email: ${dump_email}
3518 SMTP Host Address: ${smtp_host}
3520 Director Port: ${dir_port}
3521 File daemon Port: ${fd_port}
3522 Storage daemon Port: ${sd_port}
3524 Director User: ${dir_user}
3525 Director Group: ${dir_group}
3526 Storage Daemon User: ${sd_user}
3527 Storage DaemonGroup: ${sd_group}
3528 File Daemon User: ${fd_user}
3529 File Daemon Group: ${fd_group}
3531 Large file support: $largefile_support
3532 Bacula conio support: ${got_conio} ${CONS_LIBS}
3533 readline support: ${got_readline} ${PRTREADLINE_SRC}
3534 TCP Wrappers support: ${TCPW_MSG} ${WRAPLIBS}
3535 TLS support: ${support_tls}
3536 Encryption support: ${support_crypto}
3537 ZLIB support: ${have_zlib}
3538 enable-smartalloc: ${support_smartalloc}
3539 enable-lockmgr: ${support_lockmgr}
3540 bat support: ${support_bat}
3541 enable-gnome: ${support_gnome} ${gnome_version}
3542 enable-bwx-console: ${support_wx_console} ${wx_version}
3543 enable-tray-monitor: ${support_tray_monitor}
3544 client-only: ${build_client_only}
3545 build-dird: ${build_dird}
3546 build-stored: ${build_stored}
3547 Plugin support: ${have_plugins}
3548 AFS support: ${have_afs}
3549 ACL support: ${have_acl}
3550 XATTR support: ${have_xattr}
3551 Python support: ${support_python} ${PYTHON_LIBS}
3552 Batch insert enabled: ${support_batch_insert}
3556 # create a small shell script useful for support with
3557 # configure options and config.out info
3558 cat > scripts/bacula_config << EOF
3561 $ $0 $ac_configure_args
3563 cat config.out >> scripts/bacula_config
3564 echo __EOC__ >> scripts/bacula_config
3565 chmod 755 scripts/bacula_config