3 dnl Process this file with autoconf to produce a configure script.
12 AC_CONFIG_AUX_DIR(${BUILD_DIR}/autoconf)
13 AC_CONFIG_HEADER(src/config.h:autoconf/config.h.in)
15 dnl minimal Win32 stuff for "make clean"
16 WIN32BUILDDIR=${BUILD_DIR}/src/win32
17 WIN32MAINDIR=${BUILD_DIR}
18 WIN32TOPDIR=${TOP_DIR}
19 AC_SUBST(WIN32BUILDDIR)
20 AC_SUBST(WIN32MAINDIR)
23 dnl require a recent autoconf
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`
45 AC_SUBST(post_host)dnl
46 echo "configuring for ${BACULA} $VERSION ($DATE)"
48 dnl -------------------------------------------------------
49 dnl Check for compiler.
50 dnl ------------------------------------------------------
54 AC_PROG_CC_C_O dnl Determine if C compiler support -c -o.
55 AC_PROG_GCC_TRADITIONAL dnl Determine if ioctl() need -traditional.
59 if test "x$BASECC" = xgcc; then
63 AC_PATH_PROG(CXX, $CXX, $CXX)
64 if test ! -e $CXX; then
65 AC_MSG_ERROR(Unable to find C++ compiler)
68 dnl -------------------------------------------------------
69 dnl Check for programs.
70 dnl ------------------------------------------------------
72 AC_PATH_PROG(MV, mv, mv)
74 dnl If we name the variable RM it will shadow the RM variable in the configure script and we overwrite the
75 dnl value with the name of the rm command and not rm -f which is its normal content. This gives all kind
76 dnl of strange output of the configure script (like things don't exist etc.).
77 dnl So we name it REMOVE (more software has run into this problem)
78 AC_PATH_PROG(REMOVE, rm, rm)
79 AC_PATH_PROG(CP, cp, cp)
80 AC_PATH_PROG(SED, sed, sed)
81 AC_PATH_PROG(ECHO, echo, echo)
82 AC_PATH_PROG(CMP, cmp, cmp)
83 AC_PATH_PROG(TBL, tbl, tbl)
84 AC_PATH_PROG(AR, ar, ar)
85 AC_PATH_PROG(OPENSSL, openssl, none)
86 AC_PATH_PROG(MTX, mtx, mtx)
87 AC_PATH_PROG(DD, dd, dd)
88 AC_PATH_PROG(MKISOFS, mkisofs, mkisofs)
89 AC_PATH_PROG(PYTHON, python, python)
90 AC_PATH_PROG(GROWISOFS, growisofs, growisofs)
91 AC_PATH_PROG(DVDRWMEDIAINFO, dvd+rw-mediainfo, dvd+rw-mediainfo)
92 AC_PATH_PROG(DVDRWFORMAT, dvd+rw-format, dvd+rw-format)
93 AC_PATH_PROG(PKGCONFIG, pkg-config, pkg-config)
94 AC_PATH_PROG(QMAKE, qmake, none)
95 AC_PATH_PROG(QMAKEQT4, qmake-qt4, none)
96 AC_PATH_PROG(GMAKE, gmake, none)
97 AC_ARG_VAR(WXCONFIG, [wx-config command. On some systems, you must set it to wx-config-2.6 to use wxWidgets 2.6.])
98 if test "x$WXCONFIG" = x; then
101 AC_PATH_PROG(WXCONFIG, ${WXCONFIG}, ${WXCONFIG})
102 AC_ARG_VAR(WXFLAGS, [Parameters to pass to wx-config (e.g. --unicode=no).])
103 AC_PATH_PROG(CDRECORD, cdrecord, cdrecord)
104 AC_PATH_PROG(PIDOF, pidof, pidof)
106 # Some AWK programs fail, so test it and warn the user
107 if echo xfoo | $AWK 'BEGIN { prog=ARGV[1]; ARGC=1 }
108 { if ((prog == $2) || (("(" prog ")") == $2) ||
109 (("[" prog "]") == $2) ||
110 ((prog ":") == $2)) { print $1 ; exit 0 } }' xfoo>/dev/null; then :;
112 AC_MSG_ERROR([!!!!!!!!! WARNING !!!!!!!!!!!!!!
113 The regex engine of $AWK is too broken to be used you
114 might want to install GNU AWK.
115 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!])
118 AC_PATH_PROG(AWK, $THE_AWK, $THE_AWK)
121 test -n "$ARFLAG" || ARFLAGS="cr"
128 AC_SUBST(LOCAL_CFLAGS)
129 AC_SUBST(LOCAL_LDFLAGS)
132 dnl --------------------------------------------------
134 dnl --------------------------------------------------
135 AC_ARG_ENABLE(libtool,
136 AC_HELP_STRING([--enable-libtool], [enable building using GNU libtool @<:@default=yes@:>@]),
138 if test x$enableval = xno; then
143 LT_INIT([shared disable-static])
146 if test x$use_libtool != xno; then
147 DEFAULT_OBJECT_TYPE=".lo"
148 DEFAULT_ARCHIVE_TYPE=".la"
149 DEFAULT_SHARED_OBJECT_TYPE=".la"
150 LIBTOOL="\$(LIBTOOL)"
151 LIBTOOL_INSTALL_TARGET="libtool-install"
152 LIBTOOL_UNINSTALL_TARGET="libtool-uninstall"
153 LIBTOOL_CLEAN_TARGET="libtool-clean"
154 QMAKE_LIBTOOL="${BUILD_DIR}/libtool"
156 DEFAULT_OBJECT_TYPE=".o"
157 DEFAULT_ARCHIVE_TYPE=".a"
158 DEFAULT_SHARED_OBJECT_TYPE=".so"
159 LIBTOOL="# \$(LIBTOOL)"
160 LIBTOOL_INSTALL_TARGET=""
161 LIBTOOL_UNINSTALL_TARGET=""
162 LIBTOOL_CLEAN_TARGET=""
163 QMAKE_LIBTOOL="# ${BUILD_DIR}/libtool"
166 AC_SUBST(DEFAULT_OBJECT_TYPE)
167 AC_SUBST(DEFAULT_ARCHIVE_TYPE)
168 AC_SUBST(DEFAULT_SHARED_OBJECT_TYPE)
170 AC_SUBST(LIBTOOL_INSTALL_TARGET)
171 AC_SUBST(LIBTOOL_UNINSTALL_TARGET)
172 AC_SUBST(LIBTOOL_CLEAN_TARGET)
173 AC_SUBST(QMAKE_LIBTOOL)
175 dnl --------------------------------------------------
176 dnl Include file handling
177 dnl --------------------------------------------------
178 AC_ARG_ENABLE(includes,
179 AC_HELP_STRING([--enable-includes], [enable installing of include files @<:@default=no@:>@]),
181 if test x$enableval = xyes; then
187 dnl It only makes sense to install include files when you install libraries which only happens when
188 dnl libtool is enabled
190 if test x$use_libtool != xno -a x$install_includes = xyes; then
191 INCLUDE_INSTALL_TARGET="install-includes"
192 INCLUDE_UNINSTALL_TARGET="uninstall-includes"
194 INCLUDE_INSTALL_TARGET=""
195 INCLUDE_UNINSTALL_TARGET=""
197 AC_SUBST(INCLUDE_INSTALL_TARGET)
198 AC_SUBST(INCLUDE_UNINSTALL_TARGET)
200 dnl --------------------------------------------------
201 dnl Bacula OP Sys determination (see aclocal.m4)
202 dnl --------------------------------------------------
205 dnl -----------------------------------------------------------
206 dnl Bacula OPSys Distribution determination (see aclocal.m4)
207 dnl ----------------------------------------------------------
208 BA_CHECK_OPSYS_DISTNAME
210 dnl --------------------------------------------------
211 dnl Suppport for gettext (translations)
212 dnl By default, $datarootdir is ${prefix}/share
213 dnl --------------------------------------------------
214 AM_GNU_GETTEXT([external])
215 if test x${prefix} = xNONE ; then
216 if test `eval echo ${datarootdir}` = NONE/share ; then
217 datarootdir=/usr/share
221 dnl ------------------------------------------------------------------
222 dnl If the user has not set --prefix, we set our default to nothing.
223 dnl In this case, if the user has not set --sysconfdir, we set it
224 dnl to the package default of /etc/bacula. If either --prefix or
225 dnl --sysconfdir is set, we leave sysconfdir alone except to eval it.
226 dnl If the user has not set --libdir, we set it to the package
227 dnl default of /usr/lib. If either --prefix or --libdir is set,
228 dnl we leave libdir alone except to eval it. If the user has not set
229 dnl --includedir, we set it to the package default of /usr/include.
230 dnl If either --prefix or --includedir is set, we leave includedir
231 dnl alone except to eval it
232 dnl ------------------------------------------------------------------
233 if test x${prefix} = xNONE ; then
234 if test `eval echo ${sysconfdir}` = NONE/etc ; then
235 sysconfdir=/etc/bacula
238 if test `eval echo ${libdir}` = NONE/lib ; then
242 if test `eval echo ${includedir}` = NONE/include ; then
243 includedir=/usr/include
249 dnl -------------------------------------------------------------------------
250 dnl If the user has not set --exec-prefix, we default to ${prefix}
251 dnl -------------------------------------------------------------------------
252 if test x${exec_prefix} = xNONE ; then
253 exec_prefix=${prefix}
256 sysconfdir=`eval echo ${sysconfdir}`
257 datarootdir=`eval echo ${datarootdir}`
258 libdir=`eval echo ${libdir}`
259 includedir=`eval echo ${includedir}`
260 localedir=`eval echo ${datarootdir}/locale`
261 AC_DEFINE_UNQUOTED(SYSCONFDIR, "$sysconfdir")
262 AC_DEFINE_UNQUOTED(LOCALEDIR, "$localedir")
264 dnl ------------------------------------------------------------------
265 dnl If the user has not set --sbindir, we set our default as /sbin
266 dnl ------------------------------------------------------------------
267 if test x$sbindir = x'${exec_prefix}/sbin' ; then
268 sbindir=${exec_prefix}/sbin
270 sbindir=`eval echo ${sbindir}`
272 dnl -------------------------------------------------------------------------
273 dnl If the user has not set --mandir, we default to /usr/share/man
274 dnl -------------------------------------------------------------------------
275 if test x$mandir = x'${prefix}/man' ; then
276 mandir=/usr/share/man
279 AC_PATH_PROGS(MSGFMT, msgfmt, no)
280 if test "$MSGFMT" = "no"
282 echo 'msgfmt program not found, disabling NLS !'
284 USE_INCLUDED_LIBINTL=no
292 support_postgresql=no
294 support_smartalloc=yes
299 support_wx_console=no
300 support_tray_monitor=no
305 support_static_tools=no
308 support_static_dir=no
309 support_static_cons=no
319 dnl --------------------------------------------------------------------------
320 dnl CHECKING COMMAND LINE OPTIONS
321 dnl --------------------------------------------------------------------------
323 dnl -------------------------------------------
324 dnl gnome (default off)
325 dnl -------------------------------------------
327 AC_HELP_STRING([--enable-gnome], [enable build of bgnome-console GUI @<:@default=no@:>@]),
329 if test x$enableval = xyes; then
336 if test x$support_gnome = xyes; then
337 abc=`$PKGCONFIG --exists libgnomeui-2.0`
339 if test $pkg = 0; then
340 GNOME_INCLUDEDIR=`$PKGCONFIG --cflags-only-I libgnomeui-2.0`
341 GNOMEUI_LIBS=`$PKGCONFIG --libs-only-l libgnomeui-2.0`
342 GNOME_LIBDIR=`$PKGCONFIG --libs libgnomeui-2.0`
343 GNOME_LIBS=`$PKGCONFIG --libs-only-l libgnomeui-2.0`
344 AC_SUBST(GNOME_INCLUDEDIR)
345 AC_SUBST(GNOMEUI_LIBS)
346 AC_SUBST(GNOME_LIBDIR)
348 GNOME_DIR=src/gnome2-console
349 gnome_version="Version 2.x"
351 AC_MSG_ERROR(Unable to find Gnome 2 installation)
356 dnl -------------------------------------------
357 dnl bat (default off)
358 dnl -------------------------------------------
360 AC_HELP_STRING([--enable-bat], [enable build of bat Qt4 GUI @<:@default=no@:>@]),
362 if test x$enableval = xyes; then
363 AC_DEFINE(HAVE_BAT, 1, [Set if Bacula bat Qt4 GUI support enabled])
370 if test x$support_bat = xyes; then
371 abc=`$PKGCONFIG --atleast-version=4.2 QtGui`
373 if test $pkg = 0; then
374 BAT_DIR=src/qt-console
376 AC_MSG_ERROR(Unable to find Qt4 installation needed by bat)
381 dnl If bat is enabled, we need the qwt library
389 if test x$support_bat = xyes; then
390 AC_MSG_CHECKING(for qwt support)
392 AC_HELP_STRING([--with-qwt@<:@=DIR@:>@], [specify qwt library directory]),
399 if test -f ${with_qwt}/include/qwt.h; then
400 QWT_INC="${with_qwt}/include"
401 QWT_LDFLAGS="-L${with_qwt}/lib"
411 dnl Search in standard places, or --with-qwt not specified
413 if test $no_qwt = no; then
414 if test x$QWT_INC = x; then
415 for root in /usr /usr/local; do
416 for ver in qwt qwt5 qwt-qt4; do
417 if test -f ${root}/include/${ver}/qwt.h; then
418 QWT_INC="${root}/include/${ver}"
419 if test -d ${root}/lib64/; then
420 QWT_LDFLAGS="-L${root}/lib64"
421 elif test -d ${root}/lib/64/; then
422 QWT_LDFLAGS="-L${root}/64"
424 QWT_LDFLAGS="-L${root}/lib"
435 if test x$QWT_INC = x; then
438 AC_DEFINE(HAVE_QWT, 1, [Set if bat QWT library found])
445 AC_SUBST(QWT_LDFLAGS)
449 dnl -------------------------------------------
450 dnl bwx-console (default off)
451 dnl -------------------------------------------
452 AC_ARG_ENABLE(bwx-console,
453 AC_HELP_STRING([--enable-bwx-console], [enable build of wxWidgets console @<:@default=no@:>@]),
455 if test x$enableval = xyes; then
456 support_wx_console=yes
462 if test x$support_wx_console = xyes; then
463 abc=`$WXCONFIG $WXFLAGS --cppflags`
465 if test $pkg = 0; then
466 wx_version="wxWidgets `$WXCONFIG $WXFLAGS --release`"
467 WXCONS_CPPFLAGS=`$WXCONFIG $WXFLAGS --cppflags`
468 WXCONS_LDFLAGS=`$WXCONFIG $WXFLAGS --libs`
470 AC_SUBST(WXCONS_CPPFLAGS)
471 AC_SUBST(WXCONS_LDFLAGS)
472 WX_DIR="src/wx-console"
475 echo "wx-config program not found. bwx-console disabled."
477 support_wx_console=no
482 dnl -------------------------------------------
483 dnl tray-monitor (default off)
484 dnl -------------------------------------------
485 AC_ARG_ENABLE(tray-monitor,
486 AC_HELP_STRING([--enable-tray-monitor], [enable build of Gnome tray monitor (compatible with KDE @<:@default=no@:>@]),
488 if test x$enableval = xyes; then
489 support_tray_monitor=yes
495 if test x$support_tray_monitor = xyes; then
496 abc=`$PKGCONFIG --exists gtk+-2.0`
498 if test $pkg = 0; then
499 TRAY_MONITOR_CPPFLAGS=`$PKGCONFIG --cflags gtk+-2.0`
500 TRAY_MONITOR_LDFLAGS=`$PKGCONFIG --libs gtk+-2.0`
501 AC_SUBST(TRAY_MONITOR_CPPFLAGS)
502 AC_SUBST(TRAY_MONITOR_LDFLAGS)
503 TRAY_MONITOR_DIR=src/tray-monitor
504 abc=`$PKGCONFIG --atleast-version=2.4 gtk+-2.0`
506 if test $pkg = 0; then
507 AC_DEFINE(HAVE_GTK_2_4, 1, [Set if you have GTK 4.2 or greater loaded])
511 AC_SUBST(TRAY_MONITOR_DIR)
513 dnl -------------------------------------------
514 dnl smartalloc (default off)
515 dnl -------------------------------------------
516 AC_ARG_ENABLE(smartalloc,
517 AC_HELP_STRING([--enable-smartalloc], [enable smartalloc debugging support @<:@default=no@:>@]),
519 if test x$enableval = xno; then
520 support_smartalloc=no
525 if test x$support_smartalloc = xyes; then
526 AC_DEFINE(SMARTALLOC, 1, [Set if you want Smartalloc enabled])
529 dnl -------------------------------------------
530 dnl Lock Manager (default off)
531 dnl -------------------------------------------
532 AC_ARG_ENABLE(lockmgr,
533 AC_HELP_STRING([--enable-lockmgr], [enable lock manager support @<:@default=no@:>@]),
535 if test x$enableval = xyes; then
541 if test x$support_lockmgr = xyes; then
542 AC_DEFINE(_USE_LOCKMGR, 1, [Set if you want Lock Manager enabled])
546 dnl -------------------------------------------
547 dnl static-tools (default off)
548 dnl -------------------------------------------
549 AC_ARG_ENABLE(static-tools,
550 AC_HELP_STRING([--enable-static-tools], [enable static tape tools @<:@default=no@:>@]),
552 if test x$enableval = xyes; then
553 support_static_tools=yes
559 if test x$support_static_tools = xyes; then
560 TTOOL_LDFLAGS="-static"
562 AC_SUBST(TTOOL_LDFLAGS)
564 dnl -------------------------------------------
565 dnl static-fd (default off)
566 dnl -------------------------------------------
567 AC_ARG_ENABLE(static-fd,
568 AC_HELP_STRING([--enable-static-fd], [enable static File daemon @<:@default=no@:>@]),
570 if test x$enableval = xyes; then
571 support_static_fd=yes
577 if test x$support_static_fd = xyes; then
578 STATIC_FD="static-bacula-fd"
582 dnl -------------------------------------------
583 dnl static-sd (default off)
584 dnl -------------------------------------------
585 AC_ARG_ENABLE(static-sd,
586 AC_HELP_STRING([--enable-static-sd], [enable static Storage daemon @<:@default=no@:>@]),
588 if test x$enableval = xyes; then
589 support_static_sd=yes
595 if test x$support_static_sd = xyes; then
596 STATIC_SD="static-bacula-sd"
600 dnl -------------------------------------------
601 dnl static-dir (default off)
602 dnl -------------------------------------------
603 AC_ARG_ENABLE(static-dir,
604 AC_HELP_STRING([--enable-static-dir], [enable static Director @<:@default=no@:>@]),
606 if test x$enableval = xyes; then
607 support_static_dir=yes
613 if test x$support_static_dir = xyes; then
614 STATIC_DIR="static-bacula-dir"
618 dnl -------------------------------------------
619 dnl static-cons (default off)
620 dnl -------------------------------------------
621 AC_ARG_ENABLE(static-cons,
622 AC_HELP_STRING([--enable-static-cons], [enable static Console @<:@default=no@:>@]),
624 if test x$enableval = xyes; then
625 support_static_cons=yes
633 if test x$support_static_cons = xyes; then
634 STATIC_CONS="static-bconsole"
635 STATIC_GNOME_CONS="static-bgnome-console"
636 STATIC_WX_CONS="static-bwx-console"
638 AC_SUBST(STATIC_CONS)
639 AC_SUBST(STATIC_GNOME_CONS)
640 AC_SUBST(STATIC_WX_CONS)
642 dnl -------------------------------------------
643 dnl client_only (default off)
644 dnl -------------------------------------------
645 AC_ARG_ENABLE(client-only,
646 AC_HELP_STRING([--enable-client-only], [build client (File daemon) only @<:@default=no@:>@]),
648 if test x$enableval = xyes; then
649 build_client_only=yes
655 if test x$build_client_only = xno; then
662 dnl -------------------------------------------
663 dnl director (default on)
664 dnl -------------------------------------------
665 AC_ARG_ENABLE(build-dird,
666 AC_HELP_STRING([--enable-build-dird], [enable building of dird (Director) @<:@default=yes@:>@]),
668 if test x$enableval = xno; then
673 if test x$build_dird = xyes; then
678 DIR_TOOLS="NODIRTOOLS"
683 dnl -------------------------------------------
684 dnl stored (default on)
685 dnl -------------------------------------------
686 AC_ARG_ENABLE(build-stored,
687 AC_HELP_STRING([--enable-build-stored], [enable building of stored (Storage daemon) @<:@default=yes@:>@]),
689 if test x$enableval = xno; then
694 if test x$build_stored = xyes; then
695 STORED_DIR="src/stored"
701 dnl ---------------------------------------------------
702 dnl Check for conio (Bacula readline substitute)(
703 dnl ---------------------------------------------------
704 dnl this allows you to turn it completely off
706 AC_HELP_STRING([--disable-conio], [disable conio support @<:@default=no@:>@]),
708 if test x$enableval = xno; then
715 dnl ---------------------------------------------------
716 dnl Check for IPv6 support
717 dnl ---------------------------------------------------
718 dnl this allows you to turn it completely off
721 AC_HELP_STRING([--enable-ipv6], [enable ipv6 support @<:@default=yes@:>@]),
723 if test x$enableval = xno; then
729 if test x$support_ipv6 = xyes; then
730 AC_TRY_LINK([ #include <sys/types.h>
731 #include <sys/socket.h>
732 #include <netinet/in.h>], [struct sockaddr_in6 s; struct in6_addr t=in6addr_any; int i=AF_INET6; s; t.s6_addr[0] = 0;],
733 [support_ipv6=yes], [support_ipv6=no])
736 if test x$support_ipv6 = xyes; then
737 AC_DEFINE(HAVE_IPV6,1,[Whether to enable IPv6 support])
741 if test x$support_conio = xyes; then
742 AC_CHECK_HEADER(termcap.h,
743 [ AC_CHECK_LIB(termcap, tgetent,
744 [ CONS_LIBS="-ltermcap"
749 AC_DEFINE(HAVE_CONIO, 1, [Set if Bacula conio support enabled])
751 [ AC_CHECK_LIB(ncurses, tgetent,
752 [ CONS_LIBS="-lncurses"
757 AC_DEFINE(HAVE_CONIO, 1, [Set if Bacula conio support enabled])
762 AC_CHECK_HEADERS(curses.h)
763 AC_CHECK_HEADER(term.h,
764 [ AC_CHECK_LIB(curses, tgetent,
765 [ CONS_LIBS="-lcurses"
770 AC_DEFINE(HAVE_CONIO, 1, [Set if Bacula conio support enabled])
773 [ echo " "; echo "Required libraries not found. CONIO turned off ..."; echo " "],
782 dnl ---------------------------------------------------
783 dnl Check for readline support/directory (default off)
784 dnl ---------------------------------------------------
785 dnl this allows you to turn it completely off
786 AC_ARG_ENABLE(readline,
787 AC_HELP_STRING([--disable-readline], [disable readline support @<:@default=yes@:>@]),
789 if test x$enableval = xno; then
797 if test x$support_readline = xyes; then
798 AC_ARG_WITH(readline,
799 AC_HELP_STRING([--with-readline@<:@=DIR@:>@], [specify readline library directory]),
801 case "$with_readline" in
806 if test -f ${with_readline}/readline.h; then
807 CONS_INC="-I${with_readline}"
808 CONS_LDFLAGS="-L$with_readline"
809 elif test -f ${with_readline}/include/readline/readline.h; then
810 CONS_INC="-I${with_readline}/include/readline"
811 CONS_LDFLAGS="-L${with_readline}/lib"
812 with_readline="${with_readline}/include/readline"
814 with_readline="/usr/include/readline"
817 AC_CHECK_HEADER(${with_readline}/readline.h,
819 AC_DEFINE(HAVE_READLINE, 1, [Set to enable readline support])
820 CONS_LIBS="-lreadline -lhistory -ltermcap"
824 echo "readline.h not found. readline turned off ..."
831 dnl check for standard readline library
832 AC_CHECK_HEADER(/usr/include/readline/readline.h,
834 AC_DEFINE(HAVE_READLINE, 1, [Set to enable readline support])
836 CONS_INC="-I/usr/include/readline"
837 CONS_LIBS="-lreadline -ltermcap"
839 dnl Did not find standard library, so try Bacula's default
840 AC_CHECK_HEADER(${TOP_DIR}/depkgs/readline/readline.h,
842 AC_DEFINE(HAVE_READLINE, 1, [Set to enable readline support])
844 CONS_INC="-I${TOP_DIR}/depkgs/readline"
845 CONS_LIBS="-lreadline -lhistory -ltermcap"
846 CONS_LDFLAGS="-L${TOP_DIR}/depkgs/readline"
847 PRTREADLINE_SRC="${TOP_DIR}/depkgs/readline"
850 echo "readline.h not found. readline turned off ..."
864 AC_SUBST(CONS_LDFLAGS)
865 AC_SUBST(READLINE_SRC)
867 dnl Minimal stuff for readline Makefile configuration
872 AC_CHECK_FUNCS(strcasecmp select setenv putenv tcgetattr lstat lchown)
873 AC_CHECK_FUNCS(nanosleep nl_langinfo)
874 AC_CHECK_HEADERS(varargs.h)
876 dnl End of readline/conio stuff
877 dnl -----------------------------------------------------------------------
879 dnl -----------------------------------------------------------------------
880 dnl Check for Python support
882 AC_MSG_CHECKING(for Python support)
884 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.]),
888 if test "$withval" != "no"; then
889 if test "$withval" = "yes"; then
890 for python_root in /usr /usr/local /usr/sfw; do
891 for ver in python2.2 python2.3 python2.4 python2.5 python2.6 python3; do
892 if test -f $python_root/include/${ver}/Python.h; then
893 PYTHON_INCDIR=-I$python_root/include/${ver}
894 if test -d $python_root/lib64/${ver}/config; then
895 PYTHON_LIBS="-L$python_root/lib64/${ver}/config -l${ver}"
897 PYTHON_LIBS="-L$python_root/lib/${ver}/config -l${ver}"
904 if test x$PYTHON_INCDIR = x; then
905 if test -f $prefix/include/Python.h; then
906 PYTHON_INCDIR=-I$prefix/include
907 if test -d $prefix/lib64/config; then
908 PYTHON_LIBS="-L$prefix/lib64/config -lpython"
910 PYTHON_LIBS="-L$prefix/lib/config -lpython"
914 AC_MSG_ERROR(Unable to find Python.h in standard locations)
918 if test -f $withval/Python.h; then
919 PYTHON_INCDIR=-I$withval
920 PYTHON_LIBS="-L$withval/config -lpython"
921 elif test -f $withval/include/Python.h; then
922 PYTHON_INCDIR=-I$withval/include
923 if test -d $withval/lib64/config; then
924 PYTHON_LIBS="-L$withval/lib64/config -lpython"
926 PYTHON_LIBS="-L$withval/lib/config -lpython"
928 elif test -f $withval/include/python/Python.h; then
929 PYTHON_INCDIR=-I$withval/include/python
930 if test -d $withval/lib64/python/config; then
931 PYTHON_LIBS="-L$withval/lib64/python/config -lpython"
933 PYTHON_LIBS="-L$withval/lib/python/config -lpython"
937 AC_MSG_ERROR(Invalid Python directory $withval - unable to find Python.h under $withval)
941 AC_DEFINE([HAVE_PYTHON], 1)
944 AC_MSG_NOTICE(checking for more Python libs)
945 saved_LIBS="$LIBS"; LIBS=
946 AC_SEARCH_LIBS(shm_open, [rt])
947 AC_CHECK_LIB(util, openpty)
948 PYTHON_LIBS="$PYTHON_LIBS $LIBS"
957 AC_SUBST(PYTHON_LIBS)
958 AC_SUBST(PYTHON_INCDIR)
961 dnl Find where sockets are (especially for Solaris)
962 dnl Do this before the TCP Wrappers test since tcp wrappers
963 dnl uses the socket library and some linkers are stupid.
965 AC_CHECK_FUNC(socket,
966 AC_MSG_RESULT(using libc's socket),
967 AC_CHECK_LIB(xnet,socket)
968 AC_CHECK_LIB(socket,socket)
969 AC_CHECK_LIB(inet,socket))
971 dnl -----------------------------------------------------------
972 dnl Check whether user wants TCP wrappers support (default off)
973 dnl -----------------------------------------------------------
976 AC_ARG_WITH(tcp-wrappers,
977 AC_HELP_STRING([--with-tcp-wrappers@<:@=DIR@:>@], [enable tcpwrappers support]),
979 if test "x$withval" != "xno" ; then
981 LIBS="$saved_LIBS -lwrap"
982 AC_MSG_CHECKING(for libwrap)
983 AC_SEARCH_LIBS(nanosleep, [rt])
986 #include <sys/types.h>
988 int deny_severity = 0;
989 int allow_severity = 0;
990 struct request_info *req;
995 AC_DEFINE(HAVE_LIBWRAP, 1, [Set to enable libwraper support])
1000 LIBS="$saved_LIBS -lwrap -lnsl"
1001 WRAPLIBS="$saved_LIBS -lwrap -lnsl"
1004 #include <sys/types.h>
1006 int deny_severity = 0;
1007 int allow_severity = 0;
1008 struct request_info *req;
1013 AC_DEFINE(HAVE_LIBWRAP, 1, [Set to enable libwraper support])
1018 AC_MSG_ERROR([*** libwrap missing])
1027 dnl -----------------------------------------------------------
1028 dnl Check whether OpenSSL is available
1029 dnl -----------------------------------------------------------
1030 AC_MSG_CHECKING([for OpenSSL])
1031 dnl The following uses quadrigraphs:
1034 AC_ARG_WITH(openssl,
1035 AC_HELP_STRING([--with-openssl@<:@=DIR@:>@], [Include OpenSSL support. DIR is the OpenSSL base]),
1037 with_openssl_directory=${withval}
1041 if test "x$with_openssl_directory" != "xno"; then
1042 OPENSSL_LIBS="-lssl -lcrypto"
1045 if test "x$with_openssl_directory" != "xyes" && test x"${with_openssl_directory}" != "x"; then
1047 # Make sure the $with_openssl_directory also makes sense
1049 if test -d "$with_openssl_directory/lib" -a -d "$with_openssl_directory/include"; then
1050 OPENSSL_LIBS="-L$with_openssl_directory/lib $OPENSSL_LIBS"
1051 OPENSSL_INC="-I$with_openssl_directory/include $OPENSSL_INC"
1055 saved_LIBS="${LIBS}"
1056 saved_CFLAGS="${CFLAGS}"
1057 LIBS="${saved_LIBS} ${OPENSSL_LIBS}"
1058 CFLAGS="${saved_CFLAGS} ${OPENSSL_INC}"
1062 #include <openssl/ssl.h>
1064 CRYPTO_set_id_callback(NULL);
1067 support_crypto="yes"
1075 #include <openssl/evp.h>
1079 ac_cv_openssl_sha2="yes"
1081 ac_cv_openssl_sha2="no"
1085 dnl Solaris disables greater than 128+ bit encryption in their OpenSSL
1086 dnl implementation, presumably for export reasons. If 192bit AES
1087 dnl is available, we assume that we're running with a 'non-export'
1088 dnl openssl library.
1091 #include <openssl/evp.h>
1095 ac_cv_openssl_export="no"
1097 ac_cv_openssl_export="yes"
1101 LIBS="${saved_LIBS}"
1102 CFLAGS="${saved_CFLAGS}"
1104 if test "$support_tls" = "yes"; then
1105 AC_DEFINE(HAVE_OPENSSL, 1, [Define if OpenSSL library is available])
1106 AC_DEFINE(HAVE_TLS, 1, [Define if TLS support should be enabled])
1107 AC_DEFINE(HAVE_CRYPTO, 1, [Define if encryption support should be enabled])
1110 if test "$ac_cv_openssl_sha2" = "yes"; then
1111 AC_DEFINE(HAVE_SHA2, 1, [Define if the SHA-2 family of digest algorithms is available])
1114 if test "$ac_cv_openssl_export" = "yes"; then
1115 AC_DEFINE(HAVE_OPENSSL_EXPORT_LIBRARY, 1, [Define if the OpenSSL library is export-contrained to 128bit ciphers])
1124 AC_MSG_RESULT([$support_tls])
1125 AC_SUBST(OPENSSL_LIBS)
1126 AC_SUBST(OPENSSL_INC)
1128 dnl -----------------------------------------------------------
1129 dnl dlopen is needed for plugins
1130 dnl -----------------------------------------------------------
1131 AC_SEARCH_LIBS(dlopen, [dl])
1133 dnl ------------------------------------------
1134 dnl Where to place working dir
1135 dnl ------------------------------------------
1136 working_dir=`eval echo ${prefix}/var/bacula/working`
1137 AC_ARG_WITH(working-dir,
1138 AC_HELP_STRING([--with-working-dir=PATH], [specify path of Bacula working directory]),
1140 if test "x$withval" != "xno" ; then
1141 working_dir=$withval
1146 AC_SUBST(working_dir)
1148 dnl ------------------------------------------------------------------
1149 dnl If the user has not set archivedir, we set our default as /tmp
1150 dnl ------------------------------------------------------------------
1152 AC_ARG_WITH(archivedir,
1153 AC_HELP_STRING([--with-archivedir=PATH], [specify path of SD archive directory]),
1155 if test "x$withval" != "xno" ; then
1161 AC_SUBST(archivedir)
1163 dnl ------------------------------------------
1164 dnl Where to place scriptdir (script files)
1165 dnl ------------------------------------------
1166 scriptdir=`eval echo ${sysconfdir}`
1167 AC_ARG_WITH(scriptdir,
1168 AC_HELP_STRING([--with-scriptdir=PATH], [specify path of Bacula scripts directory]),
1170 if test "x$withval" != "xno" ; then
1178 # ------------------------------------------
1179 # Where to place plugindir (plugin files)
1180 # ------------------------------------------
1181 plugindir=`eval echo ${sysconfdir}`
1182 AC_ARG_WITH(plugindir,
1183 AC_HELP_STRING([--with-plugindir=PATH], [specify path of Bacula plugins directory]),
1185 if test "x$withval" != "xno" ; then
1193 dnl ------------------------------------------
1194 dnl Where to send dump email
1195 dnl ------------------------------------------
1196 dump_email=root@localhost
1197 AC_ARG_WITH(dump-email,
1198 AC_HELP_STRING([--with-dump-email=EMAIL], [dump email address]),
1200 if test "x$withval" != "xno" ; then
1206 AC_SUBST(dump_email)
1208 dnl ------------------------------------------
1209 dnl Where to send job email
1210 dnl ------------------------------------------
1211 job_email=root@localhost
1212 AC_ARG_WITH(job-email,
1213 AC_HELP_STRING([--with-job-email=EMAIL], [job output email address]),
1215 if test "x$withval" != "xno" ; then
1223 dnl ------------------------------------------
1224 dnl Where to find smtp host
1225 dnl ------------------------------------------
1227 AC_ARG_WITH(smtp_host,
1228 AC_HELP_STRING([--with-smtp-host=HOST], [SMTP mail host address]),
1230 if test "x$withval" != "xno" ; then
1238 dnl ------------------------------------
1239 dnl Where to place pid files
1240 dnl ------------------------------------
1242 AC_ARG_WITH(pid-dir,
1243 AC_HELP_STRING([--with-pid-dir=PATH], [specify location of Bacula pid files]),
1245 if test "x$withval" != "xno" ; then
1251 AC_DEFINE_UNQUOTED(_PATH_BACULA_PIDDIR, "$piddir")
1254 dnl ------------------------------------
1255 dnl Where to place subsys "lock file"
1256 dnl ------------------------------------
1257 subsysdir=/var/run/subsys
1258 if test -d /var/run/subsys; then
1259 subsysdir=/var/run/subsys
1260 elif test -d /var/lock/subsys; then
1261 subsysdir=/var/lock/subsys
1263 subsysdir=/var/run/subsys
1265 AC_ARG_WITH(subsys-dir,
1266 AC_HELP_STRING([--with-subsys-dir=PATH], [specify location of Bacula subsys file]),
1268 if test "x$withval" != "xno" ; then
1276 dnl ------------------------------------
1277 dnl Where to start assigning ports
1278 dnl ------------------------------------
1280 AC_ARG_WITH(baseport,
1281 AC_HELP_STRING([--with-baseport=PORT], [specify base port address for daemons]),
1283 if test "x$withval" != "xno" ; then
1290 dir_port=`expr $baseport`
1291 fd_port=`expr $baseport + 1`
1292 sd_port=`expr $fd_port + 1`
1298 dnl ------------------------------------------
1299 dnl Generate passwords
1300 dnl ------------------------------------------
1302 AC_ARG_WITH(dir-password,
1303 AC_HELP_STRING([--with-dir-password=PASSWORD], [specify Director's password]),
1305 if test "x$withval" != "xno" ; then
1306 dir_password=$withval
1311 if test "x$dir_password" = "x" ; then
1312 if test "x$OPENSSL" = "xnone" ; then
1313 key=`autoconf/randpass 33`
1315 key=`openssl rand -base64 33`
1321 AC_ARG_WITH(fd-password,
1322 AC_HELP_STRING([--with-fd-password=PASSWORD], [specify Client's password]),
1324 if test "x$withval" != "xno" ; then
1325 fd_password=$withval
1330 if test "x$fd_password" = "x" ; then
1331 if test "x$OPENSSL" = "xnone" ; then
1332 key=`autoconf/randpass 37`
1334 key=`openssl rand -base64 33`
1340 AC_ARG_WITH(sd-password,
1341 AC_HELP_STRING([--with-sd-password=PASSWORD], [specify Storage daemon's password]),
1343 if test "x$withval" != "xno" ; then
1344 sd_password=$withval
1349 if test "x$sd_password" = "x" ; then
1350 if test "x$OPENSSL" = "xnone" ; then
1351 key=`autoconf/randpass 41`
1353 key=`openssl rand -base64 33`
1359 AC_ARG_WITH(mon-dir-password,
1360 AC_HELP_STRING([--with-mon-dir-password=PASSWORD], [specify Director's password used by the monitor]),
1362 if test "x$withval" != "xno" ; then
1363 mon_dir_password=$withval
1368 if test "x$mon_dir_password" = "x" ; then
1369 if test "x$OPENSSL" = "xnone" ; then
1370 key=`autoconf/randpass 33`
1372 key=`openssl rand -base64 33`
1374 mon_dir_password=$key
1378 AC_ARG_WITH(mon-fd-password,
1379 AC_HELP_STRING([--with-mon-fd-password=PASSWORD], [specify Client's password used by the monitor]),
1381 if test "x$withval" != "xno" ; then
1382 mon_fd_password=$withval
1387 if test "x$mon_fd_password" = "x" ; then
1388 if test "x$OPENSSL" = "xnone" ; then
1389 key=`autoconf/randpass 37`
1391 key=`openssl rand -base64 33`
1393 mon_fd_password=$key
1397 AC_ARG_WITH(mon-sd-password,
1398 AC_HELP_STRING([--with-mon-sd-password=PASSWORD], [specify Storage daemon's password used by the monitor]),
1400 if test "x$withval" != "xno" ; then
1401 mon_sd_password=$withval
1406 if test "x$mon_sd_password" = "x" ; then
1407 if test "x$OPENSSL" = "xnone" ; then
1408 key=`autoconf/randpass 41`
1410 key=`openssl rand -base64 33`
1412 mon_sd_password=$key
1415 AC_SUBST(dir_password)
1416 AC_SUBST(fd_password)
1417 AC_SUBST(sd_password)
1418 AC_SUBST(mon_dir_password)
1419 AC_SUBST(mon_fd_password)
1420 AC_SUBST(mon_sd_password)
1423 dnl Pickup any database name
1426 AC_ARG_WITH(db_name,
1427 AC_HELP_STRING([--with-db-name=DBNAME], [specify database name @<:@default=bacula@:>@]),
1429 if test "x$withval" != "x" ; then
1437 AC_ARG_WITH(db_user,
1438 AC_HELP_STRING([--with-db-user=UNAME], [specify database user @<:@default=bacula@:>@]),
1440 if test "x$withval" != "x" ; then
1448 AC_ARG_WITH(db_password,
1449 AC_HELP_STRING([--with-db-password=PWD], [specify database password @<:@default=*none*@:>@]),
1451 if test "x$withval" != "x" ; then
1452 db_password=$withval
1456 AC_SUBST(db_password)
1459 dnl Pickup a database port
1462 AC_ARG_WITH(db_port,
1463 AC_HELP_STRING([--with-db-port=DBPORT], [specify a database port @<:@default=null@:>@]),
1465 if test "x$withval" != "x" ; then
1473 # Handle users and groups for each daemon
1476 AC_ARG_WITH(dir_user,
1477 AC_HELP_STRING([--with-dir-user=USER], [specify user for Director daemon]),
1479 if test "x$withval" != "x" ; then
1486 AC_ARG_WITH(dir_group,
1487 AC_HELP_STRING([--with-dir-group=GROUP], [specify group for Director daemon]),
1489 if test "x$withval" != "x" ; then
1496 AC_ARG_WITH(sd_user,
1497 AC_HELP_STRING([--with-sd-user=USER], [specify user for Storage daemon]),
1499 if test "x$withval" != "x" ; then
1506 AC_ARG_WITH(sd_group,
1507 AC_HELP_STRING([--with-sd-group=GROUP], [specify group for Storage daemon]),
1509 if test "x$withval" != "x" ; then
1516 AC_ARG_WITH(fd_user,
1517 AC_HELP_STRING([--with-fd-user=USER], [specify user for File daemon]),
1519 if test "x$withval" != "x" ; then
1526 AC_ARG_WITH(fd_group,
1527 AC_HELP_STRING([--with-fd-group=GROUP], [specify group for File daemon]),
1529 if test "x$withval" != "x" ; then
1543 dnl allow setting default executable permissions
1546 AC_ARG_WITH(sbin-perm,
1547 AC_HELP_STRING([--with-sbin-perm=MODE], [specify permissions for sbin binaries @<:@default=0754@:>@]),
1549 if test "x$withval" != "x" ; then
1557 dnl ------------------------------------------------
1558 dnl Bacula check for various SQL database engines
1559 dnl ------------------------------------------------
1561 BA_CHECK_POSTGRESQL_DB
1576 dnl -------------------------------------------
1577 dnl enable batch attribute DB insert (default on)
1578 dnl -------------------------------------------
1579 support_batch_insert=no
1580 A=`test -f $SQL_LIB && nm $SQL_LIB | grep pthread_mutex_lock`
1582 if test $pkg = 0; then
1583 support_batch_insert=yes
1584 AC_ARG_ENABLE(batch-insert,
1585 AC_HELP_STRING([--enable-batch-insert], [enable the DB batch insert code @<:@default=no@:>@]),
1587 if test x$enableval = xno; then
1588 support_batch_insert=no
1590 support_batch_insert=yes
1596 dnl Check if postgresql support batch mode
1597 if test x$DB_TYPE = xpostgresql; then
1598 A=`test -f $SQL_LIB && nm $SQL_LIB | grep PQputCopyData`
1600 if test $pkg != 0; then
1601 support_batch_insert=no
1605 if test x$DB_TYPE = xdbi; then
1609 dnl Check for batch insert
1610 if test $DB_PROG = postgresql; then
1611 A=`test -f $SQL_LIB && nm $SQL_LIB | grep PQputCopyData`
1615 if test $DB_PROG = mysql; then
1616 A=`test -f $SQL_LIB && nm $DB_PROG_LIB | grep pthread_mutex_lock`
1620 if test $DB_PROG = sqlite3; then
1621 A=`test -f $SQL_LIB && nm $DB_PROG_LIB | grep pthread_mutex_lock`
1625 if test $pkg = 0; then
1626 AC_ARG_ENABLE(batch-insert,
1627 AC_HELP_STRING([--enable-batch-insert], [enable the DB batch insert code @<:@default=no@:>@]),
1629 if test x$enableval = xno; then
1630 support_batch_insert=no
1632 support_batch_insert=yes
1638 dnl If dbi was not chosen, let the comment in file
1642 AC_SUBST(uncomment_dbi)
1644 if test $support_batch_insert = yes ; then
1645 AC_DEFINE(HAVE_BATCH_FILE_INSERT, 1, [Set if DB batch insert code enabled])
1648 AC_DEFINE(PROTOTYPES)
1650 dnl --------------------------------------------------------------------------
1651 dnl Supply default CFLAGS, if not specified by `CFLAGS=flags ./configure'
1653 if test -z "$CFLAGS" -o "$CFLAGS" = "-g -O2"; then
1654 if test -z "$CCOPTS"; then
1655 CCOPTS='-g -O2 -Wall'
1663 dnl See if we can use 64 bit file addresses
1664 largefile_support="no"
1669 dnl --------------------------------------------------------------------------
1670 dnl CHECKING FOR HEADER FILES
1671 dnl --------------------------------------------------------------------------
1709 AC_STRUCT_ST_BLKSIZE
1713 dnl --------------------------------------------------------------------------
1714 dnl Check for utime.h structure
1715 dnl --------------------------------------------------------------------------
1716 AC_CACHE_CHECK(for utime.h, ba_cv_header_utime_h,
1720 #include <sys/types.h>
1725 ba_cv_header_utime_h=yes
1727 ba_cv_header_utime_h=no
1732 test $ba_cv_header_utime_h = yes && AC_DEFINE(HAVE_UTIME_H, 1, [Set if utime.h exists])
1734 dnl --------------------------------------------------------------------------
1735 dnl Check for socklen_t
1736 dnl --------------------------------------------------------------------------
1737 AC_CACHE_CHECK(for socklen_t, ba_cv_header_socklen_t,
1741 #include <sys/types.h>
1742 #include <sys/socket.h>
1746 ba_cv_header_socklen_t=yes
1748 ba_cv_header_socklen_t=no
1753 test $ba_cv_header_socklen_t = yes && AC_DEFINE(HAVE_SOCKLEN_T)
1755 dnl --------------------------------------------------------------------------
1756 dnl Check for bigendian
1757 dnl --------------------------------------------------------------------------
1758 AC_CACHE_CHECK([for bigendian], ba_cv_bigendian,
1762 main(){long a=1L; char *p=(char *)&a; exit(*p);}
1773 test $ba_cv_bigendian = yes && AC_DEFINE(HAVE_BIGENDIAN)
1775 dnl --------------------------------------------------------------------------
1776 dnl Check for typeof()
1777 dnl --------------------------------------------------------------------------
1779 AC_CACHE_CHECK(for typeof, ba_cv_have_typeof,
1783 main(){char *a = 0; a = (typeof a)a;}
1785 ba_cv_have_typeof=yes
1787 ba_cv_have_typeof=no
1789 ba_cv_have_typeof=no
1794 test $ba_cv_have_typeof = yes && AC_DEFINE([HAVE_TYPEOF], 1, [Defind to 1 if compiler has typeof])
1799 dnl --------------------------------------------------------------------------
1800 dnl CHECKING FOR FILESYSTEM TYPE
1801 dnl --------------------------------------------------------------------------
1802 AC_MSG_CHECKING(how to get filesystem type)
1804 # The order of these tests is important.
1807 #include <sys/statvfs.h>
1808 #include <sys/fstyp.h>
1810 AC_DEFINE(FSTYPE_STATVFS) fstype=SVR4
1812 if test $fstype = no; then
1815 #include <sys/statfs.h>
1816 #include <sys/fstyp.h>
1818 AC_DEFINE(FSTYPE_USG_STATFS) fstype=SVR3
1821 if test $fstype = no; then
1824 #include <sys/statfs.h>
1825 #include <sys/vmount.h>
1827 AC_DEFINE(FSTYPE_AIX_STATFS) fstype=AIX
1830 if test $fstype = no; then
1835 AC_DEFINE(FSTYPE_MNTENT) fstype=4.3BSD
1838 if test $fstype = no; then
1839 AC_EGREP_HEADER(f_type;, sys/mount.h, AC_DEFINE(FSTYPE_STATFS) fstype=4.4BSD/OSF1)
1841 if test $fstype = no; then
1844 #include <sys/mount.h>
1845 #include <sys/fs_types.h>
1847 AC_DEFINE(FSTYPE_GETMNT) fstype=Ultrix
1850 AC_MSG_RESULT($fstype)
1852 AC_CHECK_HEADER(sys/statvfs.h, [ AC_DEFINE(HAVE_SYS_STATVFS_H,1,[Defines if your system have the sys/statvfs.h header file])] , )
1854 dnl --------------------------------------------------------------------------
1855 dnl CHECKING FOR TYPEDEFS, STRUCTURES, AND COMPILER CHARACTERISTICS.
1856 dnl --------------------------------------------------------------------------
1866 AC_CHECK_TYPE(ino_t, unsigned long)
1867 AC_CHECK_TYPE(dev_t, unsigned long)
1868 AC_CHECK_TYPE(daddr_t, long)
1869 AC_CHECK_TYPE(major_t, int)
1870 AC_CHECK_TYPE(minor_t, int)
1871 AC_CHECK_TYPE(ssize_t, int)
1877 AC_CHECK_SIZEOF(char, 1)
1878 AC_CHECK_SIZEOF(short int, 2)
1879 AC_CHECK_SIZEOF(int, 4)
1880 AC_CHECK_SIZEOF(long int, 4)
1881 AC_CHECK_SIZEOF(long long int, 8)
1882 AC_CHECK_SIZEOF(int *, 4)
1884 dnl Check for sys/types.h types
1885 AC_CACHE_CHECK([for u_int type], ac_cv_have_u_int,
1889 #include <sys/types.h>
1893 ac_cv_have_u_int="yes"
1895 ac_cv_have_u_int="no"
1900 if test "x$ac_cv_have_u_int" = "xyes" ; then
1901 AC_DEFINE(HAVE_U_INT)
1905 AC_CACHE_CHECK([for intmax_t type], ac_cv_have_intmax_t,
1909 #include <sys/types.h>
1913 ac_cv_have_intmax_t="yes"
1921 ac_cv_have_intmax_t="yes"
1923 ac_cv_have_intmax_t="no"
1930 if test "x$ac_cv_have_intmax_t" = "xyes" ; then
1931 AC_DEFINE(HAVE_INTMAX_T)
1935 AC_CACHE_CHECK([for u_intmax_t type], ac_cv_have_u_intmax_t,
1939 #include <sys/types.h>
1941 u_intmax_t a; a = 1;
1943 ac_cv_have_u_intmax_t="yes"
1949 u_intmax_t a; a = 1;
1951 ac_cv_have_u_intmax_t="yes"
1953 ac_cv_have_u_intmax_t="no"
1960 if test "x$ac_cv_have_u_intmax_t" = "xyes" ; then
1961 AC_DEFINE(HAVE_U_INTMAX_T)
1965 AC_CACHE_CHECK([for intXX_t types], ac_cv_have_intxx_t,
1969 #include <sys/types.h>
1971 int8_t a; int16_t b; int32_t c; a = b = c = 1;
1973 ac_cv_have_intxx_t="yes"
1975 ac_cv_have_intxx_t="no"
1980 if test "x$ac_cv_have_intxx_t" = "xyes" ; then
1981 AC_DEFINE(HAVE_INTXX_T)
1985 AC_CACHE_CHECK([for int64_t type], ac_cv_have_int64_t,
1989 #include <sys/types.h>
1993 ac_cv_have_int64_t="yes"
1995 ac_cv_have_int64_t="no"
2000 if test "x$ac_cv_have_int64_t" = "xyes" ; then
2001 AC_DEFINE(HAVE_INT64_T)
2005 AC_CACHE_CHECK([for u_intXX_t types], ac_cv_have_u_intxx_t,
2009 #include <sys/types.h>
2011 u_int8_t a; u_int16_t b; u_int32_t c; a = b = c = 1;
2013 ac_cv_have_u_intxx_t="yes"
2015 ac_cv_have_u_intxx_t="no"
2020 if test "x$ac_cv_have_u_intxx_t" = "xyes" ; then
2021 AC_DEFINE(HAVE_U_INTXX_T)
2025 AC_CACHE_CHECK([for u_int64_t types], ac_cv_have_u_int64_t,
2029 #include <sys/types.h>
2033 ac_cv_have_u_int64_t="yes"
2035 ac_cv_have_u_int64_t="no"
2040 if test "x$ac_cv_have_u_int64_t" = "xyes" ; then
2041 AC_DEFINE(HAVE_U_INT64_T)
2045 if (test -z "$have_u_intxx_t" || test -z "$have_intxx_t" && \
2046 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2048 AC_MSG_CHECKING([for intXX_t and u_intXX_t types in sys/bitypes.h])
2051 #include <sys/bitypes.h>
2053 int8_t a; int16_t b; int32_t c;
2054 u_int8_t e; u_int16_t f; u_int32_t g;
2055 a = b = c = e = f = g = 1;
2057 AC_DEFINE(HAVE_U_INTXX_T)
2058 AC_DEFINE(HAVE_INTXX_T)
2059 AC_DEFINE(HAVE_SYS_BITYPES_H)
2067 if test -z "$have_u_intxx_t" ; then
2068 AC_CACHE_CHECK([for uintXX_t types], ac_cv_have_uintxx_t,
2072 #include <sys/types.h>
2074 uint8_t a; uint16_t b;
2075 uint32_t c; a = b = c = 1;
2077 ac_cv_have_uintxx_t="yes"
2079 ac_cv_have_uintxx_t="no"
2084 if test "x$ac_cv_have_uintxx_t" = "xyes" ; then
2085 AC_DEFINE(HAVE_UINTXX_T)
2089 if (test -z "$have_u_int64_t" || test -z "$have_int64_t" && \
2090 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2092 AC_MSG_CHECKING([for int64_t and u_int64_t types in sys/bitypes.h])
2095 #include <sys/bitypes.h>
2097 int64_t a; u_int64_t b;
2100 AC_DEFINE(HAVE_U_INT64_T)
2101 AC_DEFINE(HAVE_INT64_T)
2109 if (test -z "$have_uintxx_t" && \
2110 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
2112 AC_MSG_CHECKING([for uintXX_t types in sys/bitypes.h])
2115 #include <sys/bitypes.h>
2117 uint8_t a; uint16_t b;
2118 uint32_t c; a = b = c = 1;
2120 AC_DEFINE(HAVE_UINTXX_T)
2128 dnl --------------------------------------------------------------------------
2129 dnl CHECKING FOR REQUIRED LIBRARY FUNCTIONS
2130 dnl --------------------------------------------------------------------------
2146 [echo 'configure: cannot find needed function.'; exit 1]
2149 AC_CHECK_FUNCS(fchdir, [AC_DEFINE(HAVE_FCHDIR)])
2150 AC_CHECK_FUNCS(strtoll, [AC_DEFINE(HAVE_STRTOLL)])
2151 AC_CHECK_FUNCS(posix_fadvise)
2152 AC_CHECK_FUNCS(fdatasync)
2154 AC_CHECK_FUNCS(chflags)
2156 AC_CHECK_FUNCS(snprintf vsnprintf gethostid fseeko)
2158 AC_CACHE_CHECK(for va_copy, ba_cv_va_copy,
2163 void use_va_copy(va_list args){va_list args2; va_copy(args2,args); va_end(args2);}
2164 void call_use_va_copy(int junk,...){va_list args; va_start(args,junk); use_va_copy(args); va_end(args);}
2166 call_use_va_copy(1,2,3)
2175 test $ba_cv_va_copy = yes && AC_DEFINE(HAVE_VA_COPY, 1, [Set if va_copy exists])
2177 dnl --------------------------------------------------------------------------
2178 dnl CHECKING FOR THREAD SAFE FUNCTIONS
2179 dnl --------------------------------------------------------------------------
2180 AC_CHECK_FUNCS(localtime_r readdir_r strerror_r gethostbyname_r)
2182 # If resolver functions are not in libc check for -lnsl or -lresolv.
2183 AC_CHECK_FUNC(gethostbyname_r,
2184 AC_MSG_RESULT(using libc's resolver),
2185 AC_CHECK_LIB(nsl,gethostbyname_r)
2186 AC_CHECK_LIB(resolv,gethostbyname_r))
2188 AC_CHECK_FUNCS(inet_pton, [AC_DEFINE(HAVE_INET_PTON)])
2189 AC_CHECK_FUNCS(inet_ntop, [AC_DEFINE(HAVE_INET_NTOP)])
2190 AC_CHECK_FUNCS(gethostbyname2, [AC_DEFINE(HAVE_GETHOSTBYNAME2)])
2192 dnl ----------------------------
2193 dnl check sa_len of sockaddr
2194 dnl ----------------------------
2195 AC_CACHE_CHECK(for struct sockaddr has a sa_len field, ac_cv_struct_sockaddr_sa_len,
2199 #include <sys/socket.h>
2201 struct sockaddr s; s.sa_len;
2203 ac_cv_struct_sockaddr_sa_len=yes
2204 ], [ac_cv_struct_sockaddr_sa_len=no
2210 if test $ac_cv_struct_sockaddr_sa_len = yes; then
2211 AC_DEFINE(HAVE_SA_LEN, 1, [Define if sa_len field exists in struct sockaddr])
2218 AC_FUNC_CLOSEDIR_VOID
2219 AC_FUNC_SETPGRP dnl check for BSD setpgrp.
2220 # AC_FUNC_FNMATCH dnl use local version
2222 AC_CHECK_LIB(intl, gettext, [LIBS="$LIBS -lintl"])
2224 AC_CHECK_LIB(sun, getpwnam)
2226 AC_CHECK_HEADERS(zlib.h)
2227 AC_CHECK_LIB(z, deflate, [FDLIBS="-lz"])
2229 if test x$FDLIBS = x-lz; then
2230 AC_DEFINE(HAVE_LIBZ)
2235 dnl Check for ACL support and libraries
2239 AC_HELP_STRING([--disable-acl], [disable acl support @<:@default=auto@:>@]),
2241 if test x$enableval = xno; then
2248 have_extended_acl=no
2249 if test x$support_acl = xyes; then
2250 AC_CHECK_HEADER(sys/acl.h, [ AC_DEFINE(HAVE_SYS_ACL_H,1,[Defines if your system have the sys/acl.h header file])] , )
2251 AC_CHECK_FUNC(acl_get_file,
2255 AC_CHECK_LIB(acl, acl_get_file,
2258 FDLIBS="-lacl $FDLIBS"
2260 AC_CHECK_LIB(pacl, acl_get_file,
2263 FDLIBS="-lpacl $FDLIBS"
2265 AC_CHECK_LIB(sec, acltotext,
2268 FDLIBS="-lsec $FDLIBS"
2270 AC_CHECK_LIB(sec, acl_totext,
2272 have_extended_acl=yes
2283 if test $have_acl = yes; then
2284 AC_DEFINE([HAVE_ACL], [], [Normal attribute support])
2287 if test $have_extended_acl = yes; then
2288 AC_DEFINE([HAVE_EXTENDED_ACL], [], [Extended attribute support])
2293 dnl Check for XATTR support
2296 AC_ARG_ENABLE(xattr,
2297 AC_HELP_STRING([--disable-xattr], [disable xattr support @<:@default=auto@:>@]),
2299 if test x$enableval = xno; then
2306 if test x$support_xattr = xyes; then
2307 AC_CHECK_HEADER(sys/xattr.h, [ AC_DEFINE(HAVE_SYS_XATTR_H,1,[Defines if your system have the sys/xattr.h header file])] , )
2308 AC_CHECK_FUNCS(llistxattr lgetxattr lsetxattr,
2311 AC_DEFINE([HAVE_LLISTXATTR], [], [LLISTXATTR support])
2312 AC_DEFINE([HAVE_LGETXATTR], [], [LGETXATTR support])
2313 AC_DEFINE([HAVE_LSETXATTR], [], [LSETXATTR support])
2320 if test $have_xattr = no; then
2321 AC_CHECK_FUNCS(listxattr getxattr setxattr,
2324 AC_DEFINE([HAVE_LLISTXATTR], [], [LLISTXATTR support])
2325 AC_DEFINE([HAVE_LGETXATTR], [], [LGETXATTR support])
2326 AC_DEFINE([HAVE_LSETXATTR], [], [LSETXATTR support])
2334 if test $have_xattr = no; then
2335 AC_CHECK_HEADER(sys/attr.h, [ AC_DEFINE(HAVE_SYS_ATTR_H,1,[Defines if your system have the sys/attr.h header file])] , )
2336 AC_CHECK_HEADER(sys/nvpair.h, [ AC_DEFINE(HAVE_SYS_NVPAIR_H,1,[Defines if your system have the sys/nvpair.h header file])] , )
2337 AC_CHECK_HEADER(attr.h, [ AC_DEFINE(HAVE_ATTR_H,1,[Defines if your system have the attr.h header file])] , )
2339 AC_CHECK_FUNCS(openat fstatat unlinkat fchownat futimesat,
2342 AC_DEFINE([HAVE_OPENAT], [], [OPENAT support])
2343 AC_DEFINE([HAVE_FSTATAT], [], [FSTATAT support])
2344 AC_DEFINE([HAVE_UNLINKAT], [], [UNLINKAT support])
2345 AC_DEFINE([HAVE_FCHOWNAT], [], [FCHOWNAT support])
2346 AC_DEFINE([HAVE_FUTIMESAT], [], [FUTIMESAT support])
2350 if test $have_xattr = yes; then
2351 AC_CHECK_LIB(nvpair, nvlist_next_nvpair,
2353 FDLIBS="-lnvpair $FDLIBS"
2359 if test $have_xattr = yes; then
2360 AC_DEFINE([HAVE_XATTR], [], [XATTR support])
2365 dnl Check for pthread libraries
2368 AC_CHECK_LIB(pthread, pthread_create, PTHREAD_LIB="-lpthread",
2370 AC_CHECK_LIB(pthreads, pthread_create, PTHREAD_LIB="-lpthreads",
2372 AC_CHECK_LIB(c_r, pthread_create, PTHREAD_LIB="-lc_r",
2374 AC_CHECK_FUNC(pthread_create)
2387 if test x$have_gcc = xyes ; then
2388 CPPFLAGS="$CPPFLAGS -fno-strict-aliasing -fno-exceptions -fno-rtti"
2389 CFLAGS="$CFLAGS -fno-strict-aliasing -fno-exceptions -fno-rtti"
2391 LDFLAGS=${LDFLAGS--O}
2392 DB_LIBS="${SQL_LFLAGS}"
2393 CPPFLAGS="$CPPFLAGS"
2406 AC_SUBST(X_EXTRA_LIBS)
2411 dnl extra configurable objects
2422 dnl Finally we set appropriate distribution specific
2423 dnl variables and defaults
2425 dnl PFILES are platform specific files
2426 PFILES="platforms/Makefile"
2430 hostname=`uname -n | cut -d '.' -f 1`
2431 if test x${hostname} = x ; then
2432 hostname="localhost"
2437 PSCMD="ps -e -o pid,comm"
2439 platforms/aix/Makefile"
2440 TAPEDRIVE="/dev/rmt0.1"
2444 PTHREAD_LIB="-lpthread -lexc"
2445 if test "${CC}" = "gcc" ; then
2452 TAPEDRIVE="/dev/nrmt0"
2455 DISTVER=`uname -a |awk '{print $3}'`
2456 TAPEDRIVE="/dev/nrmt0"
2457 PTHREAD_LIB="-pthread"
2458 CFLAGS="${CFLAGS} -pthread"
2459 PSCMD="ps -ax -o pid,command"
2463 platforms/bsdi/Makefile \
2464 platforms/bsdi/bacula-fd \
2465 platforms/bsdi/bacula-sd \
2466 platforms/bsdi/bacula-dir"
2467 largefile_support="yes"
2470 DISTVER=`uname -a |awk '{print $3}'`
2471 TAPEDRIVE="/dev/nrst0"
2474 WLDFLAGS="-mwindows"
2478 TAPEDRIVE="/dev/nst0"
2479 PSCMD="ps -e -o pid,command"
2482 platforms/darwin/Makefile"
2485 dnl Make sure hostname is resolved
2486 ping -c 1 $hostname 2>&1 1>/dev/null
2487 if test ! $? = 0; then
2488 hostname="localhost"
2490 if `test -f /etc/apt/sources.list && grep -q ubuntu /etc/apt/sources.list`; then
2493 DISTVER=`cat /etc/debian_version`
2494 if test -f /etc/lsb-release ; then
2496 if test "x$DISTRIB_ID" != "x" ; then
2497 DISTNAME=$DISTRIB_ID
2499 if test "x$DISTRIB_RELEASE" != "x" ; then
2500 DISTVER=$DISTRIB_RELEASE
2503 if test "$DISTNAME" = "Ubuntu" ; then
2506 TAPEDRIVE="/dev/nst0"
2507 PSCMD="ps -e -o pid,command"
2508 if test "$DISTNAME" = "ubuntu" ; then
2510 platforms/ubuntu/Makefile \
2511 platforms/ubuntu/bacula-fd \
2512 platforms/ubuntu/bacula-sd \
2513 platforms/ubuntu/bacula-dir"
2516 platforms/debian/Makefile \
2517 platforms/debian/bacula-fd \
2518 platforms/debian/bacula-sd \
2519 platforms/debian/bacula-dir"
2523 dnl Make sure hostname is resolved
2524 ping -c 1 $hostname 2>&1 1>/dev/null
2525 if test ! $? = 0; then
2526 hostname="localhost"
2528 DISTVER=`uname -a |awk '{print $3}'`
2529 VER=`echo $DISTVER | cut -c 1`
2530 if test x$VER = x4 ; then
2531 PTHREAD_LIB="${PTHREAD_LIBS:--pthread}"
2532 CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS:--pthread}"
2536 TAPEDRIVE="/dev/nrsa0"
2537 PSCMD="ps -ax -o pid,command"
2539 platforms/freebsd/Makefile \
2540 platforms/freebsd/bacula-fd \
2541 platforms/freebsd/bacula-sd \
2542 platforms/freebsd/bacula-dir"
2543 largefile_support="yes"
2546 PSCMD="UNIX95=1; ps -e -o pid,comm"
2547 CFLAGS="${CFLAGS} -D_XOPEN_SOURCE_EXTENDED=1"
2549 TAPEDRIVE="/dev/rmt/0hnb"
2550 PTHREAD_LIB="-lpthread"
2551 AC_DEFINE([_INCLUDE_LONGLONG])
2555 TAPEDRIVE="/dev/rmt/0cbn"
2556 PSCMD="ps -e -o pid,comm"
2558 platforms/irix/Makefile \
2559 platforms/irix/bacula-fd \
2560 platforms/irix/bacula-sd \
2561 platforms/irix/bacula-dir"
2564 DISTVER=`uname -a |awk '{print $3}'`
2567 TAPEDRIVE="/dev/nrst0"
2568 PSCMD="ps -ax -o pid,command"
2569 PTHREAD_LIB="-pthread"
2570 CFLAGS="${CFLAGS} -pthread"
2573 DISTVER=`uname -a |awk '{print $3}'`
2576 TAPEDRIVE="/dev/nrst0"
2577 PSCMD="ps -ax -o pid,command"
2578 PTHREAD_LIB="-pthread"
2579 CFLAGS="${CFLAGS} -pthread"
2581 platforms/openbsd/Makefile \
2582 platforms/openbsd/bacula-fd \
2583 platforms/openbsd/bacula-sd \
2584 platforms/openbsd/bacula-dir"
2587 dnl Make sure hostname is resolved
2588 ping -c 1 $hostname 2>&1 1>/dev/null
2589 if test ! $? = 0; then
2590 hostname="localhost"
2592 if test -f /etc/whitebox-release ; then
2593 f=/etc/whitebox-release
2595 f=/etc/redhat-release
2597 if test `cat $f | grep release |\
2598 cut -f 3 -d ' '`x = "Enterprise"x ; then
2599 DISTVER="Enterprise "`cat $f | grep release |\
2602 DISTVER=`cat /etc/redhat-release | grep release |\
2605 TAPEDRIVE="/dev/nst0"
2606 PSCMD="ps -e -o pid,command"
2608 platforms/redhat/Makefile \
2609 platforms/redhat/bacula-fd \
2610 platforms/redhat/bacula-sd \
2611 platforms/redhat/bacula-dir \
2612 platforms/redhat/bacula.spec \
2616 dnl Make sure hostname is resolved
2617 ping -c 1 $hostname 2>&1 1>/dev/null
2618 if test ! $? = 0; then
2619 hostname="localhost"
2621 DISTVER=`cat /etc/mandrake-release | grep release |\
2623 TAPEDRIVE="/dev/nst0"
2624 PSCMD="ps -e -o pid,command"
2626 platforms/mandrake/Makefile \
2627 platforms/mandrake/bacula-fd \
2628 platforms/mandrake/bacula-sd \
2629 platforms/mandrake/bacula-dir \
2630 platforms/mandrake/bacula.spec \
2634 dnl Make sure hostname is resolved
2635 ping -c 1 $hostname 2>&1 1>/dev/null
2636 if test ! $? = 0; then
2637 hostname="localhost"
2639 DISTVER=`awk '/version / {print $5}' < /etc/gentoo-release`
2640 TAPEDRIVE="/dev/nst0"
2641 PSCMD="ps -e -o pid,command"
2643 platforms/gentoo/Makefile \
2644 platforms/gentoo/bacula-init \
2645 platforms/gentoo/bacula-fd \
2646 platforms/gentoo/bacula-sd \
2647 platforms/gentoo/bacula-dir"
2650 dnl Make sure hostname is resolved
2651 ping -c 1 $hostname 2>&1 1>/dev/null
2652 if test ! $? = 0; then
2653 hostname="localhost"
2655 DISTVER=`cat /etc/slackware-version`
2656 TAPEDRIVE="/dev/nst0"
2657 PSCMD="ps -e -o pid,command"
2659 platforms/slackware/Makefile \
2660 platforms/slackware/rc.bacula-fd \
2661 platforms/slackware/rc.bacula-sd \
2662 platforms/slackware/rc.bacula-dir\
2663 platforms/slackware/functions.bacula"
2667 TAPEDRIVE="/dev/rmt/0cbn"
2668 PSCMD="ps -e -o pid,comm"
2670 platforms/solaris/Makefile \
2671 platforms/solaris/bacula-fd \
2672 platforms/solaris/bacula-sd \
2673 platforms/solaris/bacula-dir"
2674 if test x$DISTVER = x5.6 ; then
2675 AC_DEFINE(HAVE_OLD_SOCKOPT)
2677 LIBS="$LIBS -lresolv"
2680 dnl Make sure hostname is resolved
2681 ping -c 1 $hostname 2>&1 1>/dev/null
2682 if test ! $? = 0; then
2683 hostname="localhost"
2685 DISTVER=`cat /etc/SuSE-release |grep VERSION|\
2687 TAPEDRIVE="/dev/nst0"
2688 PSCMD="ps -e -o pid,command"
2690 platforms/suse/Makefile \
2691 platforms/suse/bacula-fd \
2692 platforms/suse/bacula-sd \
2693 platforms/suse/bacula-dir \
2694 platforms/suse/bacula \
2695 platforms/suse/bacula.spec"
2698 dnl Make sure hostname is resolved
2699 ping -c 1 $hostname 2>&1 1>/dev/null
2700 if test ! $? = 0; then
2701 hostname="localhost"
2705 TAPEDRIVE="/dev/nst0"
2706 PSCMD="ps -e -o pid,command"
2708 platforms/suse/Makefile \
2709 platforms/suse/bacula-fd \
2710 platforms/suse/bacula-sd \
2711 platforms/suse/bacula-dir"
2715 TAPEDRIVE="/dev/nst0"
2718 echo " === Something went wrong. Unknown DISTNAME $DISTNAME ==="
2724 LIBS="$PTHREAD_LIB $LIBS"
2726 AC_DEFINE_UNQUOTED(lld, "$lld")
2727 AC_DEFINE_UNQUOTED(llu, "$llu")
2735 dnl common parts of the Makefile
2736 MCOMMON=./autoconf/Make.common
2737 AC_SUBST_FILE(MCOMMON)
2740 if test "x${subsysdir}" = "x${sbindir}" ; then
2743 echo "You have set both --sbindir and --with-subsys-dir"
2744 echo " equal to: ${subsysdir} "
2745 echo "This is not permitted. Please reconfigure."
2747 echo "Aborting configuration ..."
2753 AC_OUTPUT([autoconf/Make.common \
2756 scripts/startmysql \
2758 scripts/btraceback \
2764 scripts/bacula-ctl-dir \
2765 scripts/bacula-ctl-fd \
2766 scripts/bacula-ctl-sd \
2767 scripts/devel_bacula \
2770 scripts/bacula.desktop.gnome1 \
2771 scripts/bacula.desktop.gnome2 \
2772 scripts/bacula.desktop.gnome1.consolehelper \
2773 scripts/bacula.desktop.gnome2.consolehelper \
2774 scripts/bacula.desktop.gnome1.xsu \
2775 scripts/bacula.desktop.gnome2.xsu \
2776 scripts/bgnome-console.console_apps \
2777 scripts/mtx-changer \
2778 scripts/disk-changer \
2779 scripts/dvd-handler \
2780 scripts/dvd-simulator \
2781 scripts/bacula-tray-monitor.desktop \
2782 scripts/logwatch/Makefile \
2783 scripts/logwatch/logfile.bacula.conf \
2784 scripts/wxconsole.console_apps \
2785 scripts/wxconsole.desktop.consolehelper \
2786 scripts/wxconsole.desktop.xsu \
2787 scripts/bat.desktop \
2788 scripts/bat.desktop.xsu \
2789 scripts/bat.desktop.consolehelper \
2790 scripts/bat.console_apps \
2793 src/console/Makefile \
2794 src/console/bconsole.conf \
2795 src/gnome2-console/Makefile \
2796 src/gnome2-console/bgnome-console.conf \
2797 src/qt-console/bat.conf \
2798 src/qt-console/bat.pro \
2799 src/qt-console/bat.pro.mingw32 \
2800 src/qt-console/install_conf_file \
2801 src/wx-console/Makefile \
2802 src/wx-console/bwx-console.conf \
2803 src/tray-monitor/Makefile \
2804 src/tray-monitor/tray-monitor.conf \
2806 src/dird/bacula-dir.conf \
2808 src/stored/Makefile \
2809 src/stored/bacula-sd.conf \
2810 src/filed/Makefile \
2811 src/filed/bacula-fd.conf \
2813 src/cats/make_catalog_backup \
2814 src/cats/delete_catalog_backup \
2815 src/cats/create_postgresql_database \
2816 src/cats/update_postgresql_tables \
2817 src/cats/make_postgresql_tables \
2818 src/cats/grant_postgresql_privileges \
2819 src/cats/drop_postgresql_tables \
2820 src/cats/drop_postgresql_database \
2821 src/cats/create_mysql_database \
2822 src/cats/update_mysql_tables \
2823 src/cats/make_mysql_tables \
2824 src/cats/grant_mysql_privileges \
2825 src/cats/drop_mysql_tables \
2826 src/cats/drop_mysql_database \
2827 src/cats/create_sqlite_database \
2828 src/cats/update_sqlite_tables \
2829 src/cats/make_sqlite_tables \
2830 src/cats/grant_sqlite_privileges \
2831 src/cats/drop_sqlite_tables \
2832 src/cats/drop_sqlite_database \
2833 src/cats/create_sqlite3_database \
2834 src/cats/update_sqlite3_tables \
2835 src/cats/make_sqlite3_tables \
2836 src/cats/grant_sqlite3_privileges \
2837 src/cats/drop_sqlite3_tables \
2838 src/cats/drop_sqlite3_database \
2841 src/cats/create_bdb_database \
2842 src/cats/update_bdb_tables \
2843 src/cats/make_bdb_tables \
2844 src/cats/grant_bdb_privileges \
2845 src/cats/drop_bdb_tables \
2846 src/cats/drop_bdb_database \
2847 src/cats/create_bacula_database \
2848 src/cats/update_bacula_tables \
2849 src/cats/grant_bacula_privileges \
2850 src/cats/make_bacula_tables \
2851 src/cats/drop_bacula_tables \
2852 src/cats/drop_bacula_database \
2853 src/findlib/Makefile \
2854 src/tools/Makefile \
2855 src/plugins/fd/Makefile \
2856 src/plugins/sd/Makefile \
2857 src/plugins/dir/Makefile \
2858 src/win32/Makefile.inc \
2860 updatedb/update_mysql_tables_9_to_10 \
2861 updatedb/update_sqlite3_tables_9_to_10 \
2862 updatedb/update_postgresql_tables_9_to_10 \
2863 updatedb/update_sqlite_tables_9_to_10 \
2864 updatedb/update_mysql_tables_10_to_11 \
2865 updatedb/update_sqlite3_tables_10_to_11 \
2866 updatedb/update_postgresql_tables_10_to_11 \
2867 updatedb/update_sqlite_tables_10_to_11 \
2872 if test "${support_bat}" = "yes" ; then
2873 if test "x$QMAKE" = "xnone" && test "x$QMAKEQT4" = "xnone"; then
2874 echo "Could not find qmake or qmake-qt4 in $PATH. Check your Qt installation"
2880 if test "x$QMAKEQT4" != "xnone"; then
2885 chmod 755 install_conf_file build-depkgs-qt-console
2886 echo "Creating bat Makefile"
2893 dnl if CC is gcc, we can rebuild the dependencies (since the depend rule
2894 dnl requires gcc). If it's not, don't rebuild dependencies
2896 if test X"$GCC" = "Xyes" ; then
2897 echo "Doing make of dependencies"
2898 ${MAKE:-make} depend
2902 chmod 755 startmysql stopmysql bacula startit stopit btraceback mtx-changer
2903 chmod 755 dvd-handler dvd-simulator
2904 chmod 755 bconsole gconsole mtx-changer devel_bacula logrotate
2908 chmod 755 $c/update_mysql_tables_10_to_11 $c/update_sqlite3_tables_10_to_11
2909 chmod 755 $c/update_postgresql_tables_10_to_11 $c/update_sqlite_tables_10_to_11
2913 chmod 755 $c/create_bacula_database $c/update_bacula_tables $c/make_bacula_tables
2914 chmod 755 $c/grant_bacula_privileges $c/drop_bacula_tables $c/drop_bacula_database
2916 chmod 755 $c/create_bdb_database $c/update_bdb_tables $c/make_bdb_tables
2917 chmod 755 $c/grant_bdb_privileges $c/drop_bdb_tables $c/drop_bdb_database
2919 chmod 755 $c/create_mysql_database $c/update_mysql_tables $c/make_mysql_tables
2920 chmod 755 $c/grant_mysql_privileges $c/drop_mysql_tables $c/drop_mysql_database
2922 chmod 755 $c/create_sqlite_database $c/update_sqlite_tables $c/make_sqlite_tables
2923 chmod 755 $c/grant_sqlite_privileges $c/drop_sqlite_tables $c/drop_sqlite_database
2925 chmod 755 $c/create_sqlite3_database $c/update_sqlite3_tables $c/make_sqlite3_tables
2926 chmod 755 $c/grant_sqlite3_privileges $c/drop_sqlite3_tables $c/drop_sqlite3_database
2928 chmod 755 $c/create_postgresql_database $c/update_postgresql_tables $c/make_postgresql_tables
2929 chmod 755 $c/grant_postgresql_privileges $c/drop_postgresql_tables $c/drop_postgresql_database
2931 chmod 755 $c/make_catalog_backup $c/delete_catalog_backup
2935 chmod 755 src/win32/build-depkgs-mingw32
2937 if test "x$ac_cv_sys_largefile_CFLAGS" != "xno" ; then
2938 largefile_support="yes"
2941 dnl Only try to find out the version number of the compiler when we know its some kind of GCC compiler
2942 if test X"$GCC" = "Xyes" ; then
2944 dnl A whole lot of hand springs to get the compiler version.
2945 dnl This is because gcc changed the output in version 3.0
2947 CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 3 -d ' '`
2948 if test "x${CCVERSION}" = "x" ; then
2949 CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 1 -d ' '`
2951 CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 3 -d ' '`
2952 if test x"${CXXVERSION}" = x ; then
2953 CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 1 -d ' '`
2957 # clean up any old junk
2963 if test "x${db_type}" = "xInternal" ; then
2966 echo "You have not specified either --enable-client-only or one of the"
2967 echo " supported databases: MySQL, PostgreSQL, SQLite3, SQLite or DBI."
2968 echo " This is not permitted. Please reconfigure."
2970 echo "Aborting the configuration ..."
2977 Configuration on `date`:
2979 Host: ${host}${post_host} -- ${DISTNAME} ${DISTVER}
2980 Bacula version: ${BACULA} ${VERSION} (${DATE})
2981 Source code location: ${srcdir}
2982 Install binaries: ${sbindir}
2983 Install libraries: ${libdir}
2984 Install config files: ${sysconfdir}
2985 Scripts directory: ${scriptdir}
2986 Archive directory: ${archivedir}
2987 Working directory: ${working_dir}
2988 PID directory: ${piddir}
2989 Subsys directory: ${subsysdir}
2990 Man directory: ${mandir}
2991 Data directory: ${datarootdir}
2992 Plugin directory: ${plugindir}
2993 C Compiler: ${CC} ${CCVERSION}
2994 C++ Compiler: ${CXX} ${CXXVERSION}
2995 Compiler flags: ${WCFLAGS} ${CFLAGS}
2996 Linker flags: ${WLDFLAGS} ${LDFLAGS}
2998 Statically Linked Tools: ${support_static_tools}
2999 Statically Linked FD: ${support_static_fd}
3000 Statically Linked SD: ${support_static_sd}
3001 Statically Linked DIR: ${support_static_dir}
3002 Statically Linked CONS: ${support_static_cons}
3003 Database type: ${db_type}
3004 Database port: ${db_port}
3005 Database lib: ${DB_LIBS}
3006 Database name: ${db_name}
3007 Database user: ${db_user}
3009 Job Output Email: ${job_email}
3010 Traceback Email: ${dump_email}
3011 SMTP Host Address: ${smtp_host}
3013 Director Port: ${dir_port}
3014 File daemon Port: ${fd_port}
3015 Storage daemon Port: ${sd_port}
3017 Director User: ${dir_user}
3018 Director Group: ${dir_group}
3019 Storage Daemon User: ${sd_user}
3020 Storage DaemonGroup: ${sd_group}
3021 File Daemon User: ${fd_user}
3022 File Daemon Group: ${fd_group}
3024 SQL binaries Directory ${SQL_BINDIR}
3026 Large file support: $largefile_support
3027 Bacula conio support: ${got_conio} ${CONS_LIBS}
3028 readline support: ${got_readline} ${PRTREADLINE_SRC}
3029 TCP Wrappers support: ${TCPW_MSG} ${WRAPLIBS}
3030 TLS support: ${support_tls}
3031 Encryption support: ${support_crypto}
3032 ZLIB support: ${have_zlib}
3033 enable-smartalloc: ${support_smartalloc}
3034 enable-lockmgr: ${support_lockmgr}
3035 bat support: ${support_bat} ${QWT_LDFLAGS}
3036 enable-gnome: ${support_gnome} ${gnome_version}
3037 enable-bwx-console: ${support_wx_console} ${wx_version}
3038 enable-tray-monitor: ${support_tray_monitor}
3039 client-only: ${build_client_only}
3040 build-dird: ${build_dird}
3041 build-stored: ${build_stored}
3042 ACL support: ${have_acl}
3043 XATTR support: ${have_xattr}
3044 Python support: ${support_python} ${PYTHON_LIBS}
3045 Batch insert enabled: ${support_batch_insert}