]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/autoconf/configure.in
This commit was manufactured by cvs2svn to create tag
[bacula/bacula] / bacula / autoconf / configure.in
index e72a34826b441b5a7aa0f630867256bfe549bd28..1844cb79fe6254857e236b14a9fa98d0d94ceab8 100644 (file)
@@ -12,7 +12,7 @@ AC_CONFIG_AUX_DIR(${BUILD_DIR}/autoconf)
 AC_CONFIG_HEADER(src/config.h:autoconf/config.h.in)
 
 dnl require a recent autoconf
-AC_PREREQ(2.13)
+AC_PREREQ(2.59)
 
 
 dnl search for true and false programs.
@@ -40,10 +40,13 @@ AC_PROG_CXX
 AC_PROG_CC_C_O                 dnl Determine if C compiler support -c -o.
 AC_PROG_GCC_TRADITIONAL        dnl Determine if ioctl() need -traditional.
 
-if test x$CC = xgcc
-then
+if test "x$CC" = xgcc; then
    AC_DEFINE(HAVE_GCC)
 fi
+AC_PATH_PROG(CXX, $CXX, $CXX)
+if test ! -e $CXX; then
+   AC_MSG_ERROR(Unable to find C++ compiler)
+fi
 
 dnl -------------------------------------------------------
 dnl# Check for programs.
@@ -54,7 +57,6 @@ AC_PATH_PROG(MV, mv, mv)
 AC_PATH_PROG(RM, rm, rm)
 AC_PATH_PROG(CP, cp, cp)
 AC_PATH_PROG(SED, sed, sed)
-AC_PATH_PROG(AWK, awk, awk)
 AC_PATH_PROG(ECHO, echo, echo)
 AC_PATH_PROG(CMP, cmp, cmp)
 AC_PATH_PROG(TBL, tbl, tbl)
@@ -62,8 +64,35 @@ AC_PATH_PROG(AR, ar, ar)
 dnl AC_PATH_PROG(RANLIB, ranlib, ranlib)
 AC_PATH_PROG(OPENSSL, openssl, none)
 AC_PATH_PROG(MTX, mtx, mtx)
+AC_PATH_PROG(DD, dd, dd)
+AC_PATH_PROG(MKISOFS, mkisofs, mkisofs)
+AC_PATH_PROG(PYTHON, python, python)
+AC_PATH_PROG(GROWISOFS, growisofs, growisofs)
+AC_PATH_PROG(DVDRWMEDIAINFO, dvd+rw-mediainfo, dvd+rw-mediainfo)
+AC_PATH_PROG(DVDRWFORMAT, dvd+rw-format, dvd+rw-format)
 AC_PATH_PROG(PKGCONFIG, pkg-config, pkg-config)
-AC_PATH_PROG(WXCONFIG, wx-config, wx-config)
+AC_ARG_VAR(WXCONFIG, [wx-config command. On some systems, you must set it to wx-config-2.6 to use wxWidgets 2.6.])
+if test "x$WXCONFIG" = x; then
+  WXCONFIG=wx-config
+fi
+AC_PATH_PROG(WXCONFIG, ${WXCONFIG}, ${WXCONFIG})
+AC_ARG_VAR(WXFLAGS, [Parameters to pass to wx-config (e.g. --unicode=no).])
+AC_PATH_PROG(CDRECORD, cdrecord, cdrecord)
+AC_PATH_PROG(PIDOF, pidof, pidof)
+AC_PROG_AWK
+# Some AWK programs fail, so test it and warn the user
+if echo xfoo | $AWK 'BEGIN { prog=ARGV[1]; ARGC=1 } 
+      { if ((prog == $2) || (("(" prog ")") == $2) ||
+          (("[" prog "]") == $2) ||
+          ((prog ":") == $2)) { print $1 ; exit 0 } }' xfoo>/dev/null; then :;
+else
+  AC_MSG_ERROR([!!!!!!!!! WARNING !!!!!!!!!!!!!!
+   The regex engine of $AWK is too broken to be used you 
+   might want to install GNU AWK.
+   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!])
+fi
+THE_AWK=$AWK
+AC_PATH_PROG(AWK, $THE_AWK, $THE_AWK)
 
 test -n "$ARFLAG" || ARFLAGS="cr"
 AC_SUBST(ARFLAGS)
@@ -76,8 +105,6 @@ AC_SUBST(LOCAL_CFLAGS)
 AC_SUBST(LOCAL_LDFLAGS)
 AC_SUBST(LOCAL_DEFS)
 
-
-
 dnl --------------------------------------------------
 dnl Bacula OP Sys determination (see aclocal.m4)
 dnl --------------------------------------------------
@@ -88,10 +115,16 @@ dnl Bacula OPSys Distribution determination (see aclocal.m4)
 # ----------------------------------------------------------
 BA_CHECK_OPSYS_DISTNAME
 
-# -----------------------------------------------------------
-dnl Check for gnome stuff for gnome-console
-# ----------------------------------------------------------
-AM_ACLOCAL_INCLUDE(gnome-macros)
+# --------------------------------------------------
+# Suppport for gettext (translations)
+# By default, $datadir is ${prefix}/share
+# --------------------------------------------------
+AM_GNU_GETTEXT([external])
+if test x${prefix} = xNONE ; then
+   if test `eval echo ${datadir}` = NONE/share ; then
+      datadir=/usr/share
+   fi
+fi
 
 # ------------------------------------------------------------------
 #  If the user has not set --prefix, we set our default to nothing.
@@ -106,6 +139,9 @@ if test x${prefix} = xNONE ; then
     prefix=
 fi
 sysconfdir=`eval echo ${sysconfdir}`
+datadir=`eval echo ${datadir}`
+localedir=`eval echo ${datadir}/locale`
+AC_DEFINE_UNQUOTED(LOCALEDIR, "$localedir") 
 
 # -------------------------------------------------------------------------
 #  If the user has not set --exec-prefix, we default to ${prefix}
@@ -121,6 +157,14 @@ if test x$sbindir = x'${exec_prefix}/sbin' ; then
     sbindir=${exec_prefix}/sbin
 fi
 sbindir=`eval echo ${sbindir}`
+
+# -------------------------------------------------------------------------
+#  If the user has not set --mandir, we default to /usr/share/man
+# -------------------------------------------------------------------------
+if test x$mandir = x'${prefix}/man' ; then
+   mandir=/usr/share/man
+fi
+
                      
 # ------------------------------------------------------------------
 # All list of languages for which a translation exist. Each
@@ -135,25 +179,31 @@ then
    USE_NLS=no
    USE_INCLUDED_LIBINTL=no
 #else
-#   AM_GNU_GETTEXT
+    AM_GNU_GETTEXT
 fi
 
 
 support_mysql=no
 support_sqlite=no
+support_sqlite3=no
 support_postgresql=no
 support_smartalloc=yes
 support_readline=yes
 support_conio=yes
 support_gnome=no
 support_wx_console=no
+support_tls=no
 gnome_version=
+wx_version=
 support_static_tools=no
 support_static_fd=no
 support_static_sd=no
 support_static_dir=no
 support_static_cons=no
+support_python=no
 build_client_only=no
+build_dird=yes
+build_stored=yes
 cats=
 db_name=Internal
 DB_NAME=bdb
@@ -187,10 +237,7 @@ if test x$support_gnome = xyes; then
      GNOME_DIR=src/gnome2-console
      gnome_version="Version 2.x"
   else
-dnl do 1.4 stuff
-     GNOME_INIT
-     GNOME_DIR=src/gnome-console
-     gnome_version="Version 1.4"
+     AC_MSG_ERROR(Unable to find Gnome 2 installation)
   fi
 fi
 AC_SUBST(GNOME_DIR)
@@ -207,11 +254,13 @@ AC_ARG_ENABLE(wx-console,
 
 WX_DIR=
 if test x$support_wx_console = xyes; then
-  abc=`$WXCONFIG --cppflags`
+  abc=`$WXCONFIG $WXFLAGS --cppflags`
   pkg=$?
   if test $pkg = 0; then
-     WXCONS_CPPFLAGS=`$WXCONFIG --cppflags`
-     WXCONS_LDFLAGS=`$WXCONFIG --libs`
+     wx_version="wxWidgets `$WXCONFIG $WXFLAGS --release`"
+     WXCONS_CPPFLAGS=`$WXCONFIG $WXFLAGS --cppflags`
+     WXCONS_LDFLAGS=`$WXCONFIG $WXFLAGS --libs`
+
      AC_SUBST(WXCONS_CPPFLAGS)
      AC_SUBST(WXCONS_LDFLAGS)
      WX_DIR=src/wx-console
@@ -244,6 +293,11 @@ if test x$support_tray_monitor = xyes; then
      AC_SUBST(TRAY_MONITOR_CPPFLAGS)
      AC_SUBST(TRAY_MONITOR_LDFLAGS)
      TRAY_MONITOR_DIR=src/tray-monitor
+     abc=`$PKGCONFIG --atleast-version=2.4 gtk+-2.0`
+     pkg=$?
+     if test $pkg = 0; then
+       AC_DEFINE(HAVE_GTK_2_4)
+     fi
   fi
 fi
 AC_SUBST(TRAY_MONITOR_DIR)
@@ -348,9 +402,9 @@ AC_SUBST(STATIC_WX_CONS)
 AC_ARG_ENABLE(client-only,
    [  --enable-client-only    build client (File daemon) only [disabled]],
    [if test x$enableval = xyes; then
-     build_client_only=yes
-    db_name=None
-    DB_NAME=none
+      build_client_only=yes
+      db_name=None
+      DB_NAME=none
    fi])
 if test x$build_client_only = xno; then
    ALL_DIRS="subdirs"
@@ -359,6 +413,39 @@ else
 fi
 AC_SUBST(ALL_DIRS)
 
+# -------------------------------------------
+# director  (default on)
+# -------------------------------------------
+AC_ARG_ENABLE(build-dird,
+   [  --enable-build-dird     enable building of dird (Director) [enabled]],
+   [if test x$enableval = xno; then
+      build_dird=no
+   fi])
+if test x$build_dird = xyes; then
+   DIRD_DIR="src/dird"
+   DIR_TOOLS="DIRTOOLS"
+else
+   DIRD_DIR=""
+   DIR_TOOLS="NODIRTOOLS"
+fi
+AC_SUBST(DIRD_DIR)
+AC_SUBST(DIR_TOOLS)
+
+# -------------------------------------------
+# stored  (default on)
+# -------------------------------------------
+AC_ARG_ENABLE(build-stored,
+   [  --enable-build-stored   enable building of stored (Storage daemon) [enabled]],
+   [if test x$enableval = xno; then
+      build_stored=no
+   fi])
+if test x$build_stored = xyes; then
+   STORED_DIR="src/stored"
+else
+   STORED_DIR=""
+fi
+AC_SUBST(STORED_DIR)
+
 # ---------------------------------------------------
 # Check for conio (Bacula readline substitute)(
 # ---------------------------------------------------
@@ -388,10 +475,27 @@ if test x$support_conio = xyes; then
           got_conio="yes"
           support_readline=no
           AC_DEFINE(HAVE_CONIO, 1, [Set if Bacula conio support enabled]) 
-        ],   
-        [ echo " "; echo "Neither termcap nor ncurses library found. CONIO turned off ..."; echo " "])
+        ])
        ])
-    ],[echo " "; echo "termcap.h not found. CONIO turned off ..."; echo " "])
+     ],
+     [
+        AC_CHECK_HEADERS(curses.h)
+        AC_CHECK_HEADER(term.h,
+              [ AC_CHECK_LIB(curses, tgetent, 
+                [ CONS_LIBS="-lcurses"
+                  CONS_OBJ="conio.o"
+                  CONS_SRC="conio.c"
+                  got_conio="yes"
+                  support_readline=no
+                  AC_DEFINE(HAVE_CONIO, 1, [Set if Bacula conio support enabled]) 
+                ])
+              ],
+              [ echo " "; echo "Required libraries not found. CONIO turned off ..."; echo " "],
+[#if HAVE_CURSES_H
+#include <curses.h>
+#endif
+])
+     ])
 fi
 
 
@@ -415,15 +519,19 @@ if test x$support_readline = xyes; then
        case "$with_readline" in
        no) : ;;
        yes|*)
-         if test "$with_readline" != "yes"; then
-           CONS_INC="-I${with_readline}"
-           CONS_LDFLAGS="-L$with_readline"
+         if test -f ${with_readline}/readline.h; then
+            CONS_INC="-I${with_readline}"
+            CONS_LDFLAGS="-L$with_readline"
+         elif test -f ${with_readline}/include/readline/readline.h; then
+            CONS_INC="-I${with_readline}/include/readline"
+            CONS_LDFLAGS="-L${with_readline}/lib"
+            with_readline="${with_readline}/include/readline"
          else
             with_readline="/usr/include/readline" 
          fi
          AC_CHECK_HEADER(${with_readline}/readline.h, 
             [ AC_DEFINE(HAVE_READLINE) 
-              CONS_LIBS="-lreadline -ltermcap"
+              CONS_LIBS="-lreadline -lhistory -ltermcap"
               got_readline="yes"   
             ],
             [ echo " "
@@ -475,140 +583,102 @@ MAKE_SHELL=/bin/sh
 AC_SUBST(MAKE_SHELL)
 AC_HEADER_STAT
 AC_HEADER_DIRENT
-AC_CHECK_FUNCS(strcasecmp select setenv putenv tcgetattr setlocale lstat lchown)
+AC_CHECK_FUNCS(strcasecmp select setenv putenv tcgetattr lstat lchown)
 AC_CHECK_FUNCS(nanosleep nl_langinfo)
 AC_CHECK_HEADERS(varargs.h)
 
 # End of readline/conio stuff
 # -----------------------------------------------------------------------
 
-
-# ---------------------------------------------------
-# Check for GMP support/directory
-# ---------------------------------------------------
-#GMP_SRC=
-#local_gmp="no"
-#AC_ARG_WITH(gmp,
-#  [  --with-gmp[=DIR]  Specify gmp library directory],
-#  [
-#     case "$with_gmp" in
-#     no) : ;;
-#     yes|*)
-#      if test "$with_gmp" != "yes"; then
-#        GMP_INC="-I$with_gmp"
-#        GMP_LIBS="-lgmp"
-#        GMP_LDFLAGS="-L$with_gmp"
-#      else
-#         with_gmp="/usr/include" 
-#      fi
-#      AC_CHECK_HEADER($with_gmp/gmp.h, 
-#         [ AC_MSG_RESULT(yes)
-#           AC_DEFINE(HAVE_GMP) 
-#           GMP_LIBS="-lgmp"
-#           got_gmp="yes"   
-#         ],
-#         [ AC_MSG_ERROR([*** gmp library missing]) 
-#         ]
-#      )
-#      ;;
-#     esac
-#  ],[
-#    # check for standard gmp library
-#    AC_CHECK_HEADER(/usr/include/gmp.h,
-#    [ AC_MSG_RESULT(yes)
-#      AC_DEFINE(HAVE_GMP)
-#      got_gmp="yes"
-#      GMP_INC=
-#      GMP_LIBS="-lgmp"
-#    ], [
-#      # Did not find standard library, so use our own
-#      AC_MSG_RESULT(yes)
-#      AC_DEFINE(HAVE_GMP)
-#      got_gmp="yes"
-#      local_gmp="yes"
-#      GMP_INC="-I${TOP_DIR}/depkgs/gmp"
-#      GMP_LIBS="-lgmp"
-#      GMP_LDFLAGS="-L${TOP_DIR}/depkgs/gmp"
-#      GMP_SRC="${TOP_DIR}/depkgs/gmp"
-#    ])
-#  ]   
-#)
-#AC_SUBST(GMP_INC)
-#AC_SUBST(GMP_LIBS)
-#AC_SUBST(GMP_LDFLAGS)
-#AC_SUBST(GMP_SRC)
-
-# End of GMP stuff
-# -----------------------------------------------------------------------
-
-
-# ---------------------------------------------------
-# Check for CWEB support/directory
-# ---------------------------------------------------
-#CWEB_SRC=
-#CWEB=/bin
-#local_cweb="no"
-#AC_ARG_WITH(cweb,
-#  [  --with-cweb[=DIR]   Specify cweb library directory],
-#  [
-#     case "$with_cweb" in
-#     no) : ;;
-#     yes|*)
-#      if test "$with_cweb" != "yes"; then
-#        CWEB_INC="-I$with_cweb"
-#        CWEB_LIBS="-lcweb"
-#        CWEB_LDFLAGS="-L$with_cweb"
-#      else
-#         with_cweb="/usr/include" 
-#      fi
-#      AC_CHECK_HEADER($with_cweb/cweb.h, 
-#         [ AC_MSG_RESULT(yes)
-#           AC_DEFINE(HAVE_CWEB) 
-#           CWEB_LIBS="-lcweb"
-#           got_cweb="yes"   
-#         ],
-#         [ AC_MSG_ERROR([*** cweb library missing]) 
-#         ]
-#      )
-#      ;;
-#     esac
-#  ],[
-#    # check for standard cweb library
-#    AC_CHECK_HEADER(/usr/include/cweb.h,
-#    [ AC_MSG_RESULT(yes)
-#      AC_DEFINE(HAVE_CWEB)
-#      got_cweb="yes"
-#      CWEB_INC=
-#      CWEB_LIBS="-lcweb"
-#    ], [
-#      # Did not find starndard library, so use our own
-#      AC_MSG_RESULT(yes)
-#      AC_DEFINE(HAVE_CWEB)
-#      got_cweb="yes"
-#      local_cweb="yes"
-#      CWEB=${TOP_DIR}/depkgs/cweb
-#      CWEB_INC="-I${TOP_DIR}/depkgs/cweb"
-#      CWEB_LIBS="-lcweb"
-#      CWEB_LDFLAGS="-L${TOP_DIR}/depkgs/cweb"
-#      CWEB_SRC="${TOP_DIR}/depkgs/cweb"
-#    ])
-#  ]   
-#)
-#AC_SUBST(CWEB)
-#AC_SUBST(CWEB_INC)
-#AC_SUBST(CWEB_LIBS)
-#AC_SUBST(CWEB_LDFLAGS)
-#AC_SUBST(CWEB_SRC)
-
-# End of CWEB stuff
 # -----------------------------------------------------------------------
+#  Check for Python support
+#
+AC_MSG_CHECKING(for Python support)
+AC_ARG_WITH(python,
+[
+  --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.],
+[
+  PYTHON_INCDIR= 
+  PYTHON_LIBS=
+  if test "$withval" != "no"; then
+     if test "$withval" = "yes"; then
+       for python_root in /usr /usr/local /usr/sfw; do
+         if test -f $python_root/include/python2.2/Python.h; then
+            PYTHON_INCDIR=-I$python_root/include/python2.2
+            PYTHON_LIBS="-L$python_root/lib/python2.2/config -lpython2.2"
+            break
+         elif test -f $python_root/include/python2.3/Python.h; then
+            PYTHON_INCDIR=-I$python_root/include/python2.3
+            PYTHON_LIBS="-L$python_root/lib/python2.3/config -lpython2.3"
+            break
+         elif test -f $python_root/include/python2.4/Python.h; then
+            PYTHON_INCDIR=-I$python_root/include/python2.4
+            PYTHON_LIBS="-L$python_root/lib/python2.4/config -lpython2.4"
+            break
+         fi
+       done
+       if test x$PYTHON_INCDIR = x; then
+         if test -f $prefix/include/Python.h; then
+            PYTHON_INCDIR=-I$prefix/include
+            PYTHON_LIBS="-L$prefix/lib/config -lpython"
+         else
+          AC_MSG_RESULT(no)
+          AC_MSG_ERROR(Unable to find Python.h in standard locations)
+         fi
+       fi
+     else
+       if test -f $withval/Python.h; then
+          PYTHON_INCDIR=-I$withval
+          PYTHON_LIBS="-L$withval/config -lpython"
+       elif test -f $withval/include/Python.h; then
+          PYTHON_INCDIR=-I$withval/include
+          PYTHON_LIBS="-L$withval/lib/config -lpython"
+       elif test -f $withval/include/python/Python.h; then
+          PYTHON_INCDIR=-I$withval/include/python
+          PYTHON_LIBS="-L$withval/lib/python/config -lpython"
+       else
+          AC_MSG_RESULT(no)
+          AC_MSG_ERROR(Invalid Python directory $withval - unable to find Python.h under $withval)
+       fi
+     fi
+     AC_DEFINE([HAVE_PYTHON], 1)
+     AC_MSG_RESULT(yes)
+     support_python=yes
+     AC_MSG_NOTICE(checking for more Python libs)
+     saved_LIBS="$LIBS"; LIBS=
+     AC_SEARCH_LIBS(shm_open, [rt])
+     AC_CHECK_LIB(util, openpty)
+     PYTHON_LIBS="$PYTHON_LIBS $LIBS"
+     LIBS="$saved_LIBS"
+  else
+     AC_MSG_RESULT(no)
+  fi
+],[
+  AC_MSG_RESULT(no)
+])
+AC_SUBST(PYTHON_LIBS)
+AC_SUBST(PYTHON_INCDIR)
+  
 
+#
+# Find where sockets are (especially for Solaris)
+# Do this before the TCP Wrappers test since tcp wrappers
+# uses the socket library and some linkers are stupid.
+#
+AC_CHECK_FUNC(socket,
+    AC_MSG_RESULT(using libc's socket),
+    AC_CHECK_LIB(xnet,socket)
+    AC_CHECK_LIB(socket,socket)
+    AC_CHECK_LIB(inet,socket))
 
 
 # -----------------------------------------------------------
 # Check whether user wants TCP wrappers support (default off)
 # -----------------------------------------------------------
 TCPW_MSG="no" 
+WRAPLIBS=""
 AC_ARG_WITH(tcp-wrappers,
   [  --with-tcp-wrappers=DIR    enable tcpwrappers support],
   [
@@ -616,8 +686,10 @@ AC_ARG_WITH(tcp-wrappers,
        saved_LIBS="$LIBS"
        LIBS="$saved_LIBS -lwrap"
        AC_MSG_CHECKING(for libwrap)
+       AC_SEARCH_LIBS(nanosleep, [rt])
        AC_TRY_LINK(
-         [ #include <tcpd.h>
+         [ #include <sys/types.h>
+           #include <tcpd.h>
             int deny_severity = 0;
             int allow_severity = 0;
             struct request_info *req; ],
@@ -626,10 +698,14 @@ AC_ARG_WITH(tcp-wrappers,
            AC_MSG_RESULT(yes)
            AC_DEFINE(HAVE_LIBWRAP)
            TCPW_MSG="yes" 
+           LIBS="$saved_LIBS"
+           WRAPLIBS="-lwrap"
          ], [
            LIBS="$saved_LIBS -lwrap -lnsl"
+           WRAPLIBS="$saved_LIBS -lwrap -lnsl"
            AC_TRY_LINK(
-             [ #include <tcpd.h>
+             [ #include <sys/types.h>
+                #include <tcpd.h>
                 int deny_severity = 0;
                 int allow_severity = 0;
                 struct request_info *req; ],
@@ -638,6 +714,8 @@ AC_ARG_WITH(tcp-wrappers,
                 AC_MSG_RESULT(yes)
                 AC_DEFINE(HAVE_LIBWRAP)
                 TCPW_MSG="yes" 
+                LIBS="$saved_LIBS"
+                WRAPLIBS="-lwrap"
              ],
              [AC_MSG_ERROR([*** libwrap missing]) ] ]
            )
@@ -646,6 +724,63 @@ AC_ARG_WITH(tcp-wrappers,
   ]
 )
 
+# -----------------------------------------------------------
+# Check whether OpenSSL is available
+# -----------------------------------------------------------
+AC_MSG_CHECKING([for OpenSSL])
+dnl The following uses quadrigraphs:
+dnl '@<:@' = '['
+dnl '@:>@' = ']'
+AC_ARG_WITH(openssl,
+       AC_HELP_STRING([--with-openssl@<:@=DIR@:>@], [Include OpenSSL support. DIR is the OpenSSL base]),
+       [with_openssl_directory=${withval}])
+
+if test "x$with_openssl_directory" != "x"; then
+       OPENSSL_LIBS="-lssl -lcrypto"
+       OPENSSL_INC=""
+
+       if test "x$with_openssl_directory" != "xyes" && test x"${with_openssl_directory}" != "x"; then
+               OPENSSL_LIBS="-L$with_openssl_directory/lib $OPENSSL_LIBS"
+               OPENSSL_INC="-I$with_openssl_directory/include $OPENSSL_INC"
+       fi
+
+       saved_LIBS="$LIBS"
+       saved_CFLAGS="$CFLAGS"
+       LIBS="$saved_LIBS $OPENSSL_LIBS"
+       CFLAGS="$saved_CFLAGS $OPENSSL_INC"
+
+       AC_TRY_LINK([ #include <openssl/ssl.h> ],
+               [ CRYPTO_set_id_callback(NULL); ],
+               [ support_tls="yes" ],
+               [ support_tls="no" ]
+       )
+
+       LIBS="$saved_LIBS"
+       CFLAGS="$saved_CFLAGS"
+
+       if test "$support_tls" = "yes"; then
+               AC_DEFINE(HAVE_OPENSSL, 1, [Define if OpenSSL library is available])
+               AC_DEFINE(HAVE_TLS, 1, [Define if TLS support should be enabled])
+       fi
+else
+       support_tls="no"
+       OPENSSL_LIBS=""
+       OPENSSL_INC=""
+fi
+
+AC_MSG_RESULT([$support_tls])
+AC_SUBST(OPENSSL_LIBS)
+AC_SUBST(OPENSSL_INC)
+
+
+# -----------------------------------------------------------
+# Python and OpenSSL are using dlopen
+# -----------------------------------------------------------
+
+if test "$support_python" = "yes" -o "$support_tls" = "yes"; then
+   AC_SEARCH_LIBS(dlopen, [dl])
+fi
+
 # ------------------------------------------
 # Where to place working dir
 # ------------------------------------------
@@ -796,7 +931,6 @@ AC_ARG_WITH(dir-password,
 
 if test "x$dir_password" = "x" ; then
    if test "x$OPENSSL" = "xnone" ; then
-#     key=`date | uuencode /dev/stdout | tr "\"@\\\`\\ \\=\\,\\(\\)\\#\\.\\!\\-$'" abcdefghijklmnopqrst | awk '{getline} {print} {exit}'`
       key=`autoconf/randpass 33`
    else
       key=`openssl rand -base64 33`
@@ -816,7 +950,6 @@ AC_ARG_WITH(fd-password,
 
 if test "x$fd_password" = "x" ; then
    if test "x$OPENSSL" = "xnone" ; then
-#     key=`date | uuencode /dev/stdout | tr "\"@\\\`\\ \\=\\,\\(\\)\\#\\.\\!\\-$'" tsrqponmlkjihgfedcba | awk '{getline} {print} {exit}'`
       key=`autoconf/randpass 37`
    else
       key=`openssl rand -base64 33`
@@ -836,7 +969,6 @@ AC_ARG_WITH(sd-password,
 
 if test "x$sd_password" = "x" ; then
    if test "x$OPENSSL" = "xnone" ; then
-#     key=`date | uuencode /dev/stdout | tr "\"@\\\`\\ \\=\\,\\(\\)\\#\\.\\!\\-$'" 123456789uvwxyzabcdef | awk '{getline} {print} {exit}'`
       key=`autoconf/randpass 41`
    else
       key=`openssl rand -base64 33`
@@ -844,10 +976,69 @@ if test "x$sd_password" = "x" ; then
    sd_password=$key
 fi
 
+mon_dir_password=
+AC_ARG_WITH(mon-dir-password,
+   [  --with-mon-dir-password=PASSWORD  specify Director's password used by the monitor],
+   [
+       if test "x$withval" != "xno" ; then     
+          mon_dir_password=$withval
+       fi
+   ]
+)
+
+if test "x$mon_dir_password" = "x" ; then
+   if test "x$OPENSSL" = "xnone" ; then
+      key=`autoconf/randpass 33`
+   else
+      key=`openssl rand -base64 33`
+   fi
+   mon_dir_password=$key
+fi
+
+mon_fd_password=
+AC_ARG_WITH(mon-fd-password,
+   [  --with-mon-fd-password=PASSWORD   specify Client's password used by the monitor],
+   [
+       if test "x$withval" != "xno" ; then     
+          mon_fd_password=$withval
+       fi
+   ]
+)
+
+if test "x$mon_fd_password" = "x" ; then
+   if test "x$OPENSSL" = "xnone" ; then
+      key=`autoconf/randpass 37`
+   else
+      key=`openssl rand -base64 33`
+   fi
+   mon_fd_password=$key
+fi
+
+mon_sd_password=
+AC_ARG_WITH(mon-sd-password,
+   [  --with-mon-sd-password=PASSWORD   specify Storage daemon's password used by the monitor],
+   [
+       if test "x$withval" != "xno" ; then     
+          mon_sd_password=$withval
+       fi
+   ]
+)
+
+if test "x$mon_sd_password" = "x" ; then
+   if test "x$OPENSSL" = "xnone" ; then
+      key=`autoconf/randpass 41`
+   else
+      key=`openssl rand -base64 33`
+   fi
+   mon_sd_password=$key
+fi
 
 AC_SUBST(dir_password)
 AC_SUBST(fd_password)
 AC_SUBST(sd_password)
+AC_SUBST(mon_dir_password)
+AC_SUBST(mon_fd_password)
+AC_SUBST(mon_sd_password)
 
 
 #
@@ -945,6 +1136,8 @@ BA_CHECK_POSTGRESQL_DB
 
 BA_CHECK_MYSQL_DB
 
+BA_CHECK_SQLITE3_DB
+
 BA_CHECK_SQLITE_DB
 
 AC_SUBST(cats)
@@ -989,6 +1182,7 @@ AC_CHECK_HEADERS( \
        string.h \
        termios.h \
        termcap.h \
+       term.h \
        unistd.h \
        sys/bitypes.h \
        sys/byteorder.h \
@@ -1078,6 +1272,8 @@ AC_TRY_CPP([#include <sys/mount.h>
 fi
 AC_MSG_RESULT($fstype)
 
+AC_CHECK_HEADER(sys/statvfs.h, [ AC_DEFINE(HAVE_SYS_STATVFS_H,1,[Defines if your system have the sys/statvfs.h header file])] , )
+
 dnl# --------------------------------------------------------------------------
 dnl# CHECKING FOR TYPEDEFS, STRUCTURES, AND COMPILER CHARACTERISTICS.
 dnl# --------------------------------------------------------------------------
@@ -1307,7 +1503,7 @@ AC_CHECK_FUNCS(strtoll, [AC_DEFINE(HAVE_STRTOLL)])
 
 AC_CHECK_FUNCS(chflags) 
 
-AC_CHECK_FUNCS(snprintf vsnprintf gethostid getdomainname)
+AC_CHECK_FUNCS(snprintf vsnprintf gethostid fseeko)
 
 dnl# --------------------------------------------------------------------------
 dnl# CHECKING FOR THREAD SAFE FUNCTIONS
@@ -1321,12 +1517,6 @@ AC_CHECK_FUNC(gethostbyname_r,
     AC_CHECK_LIB(resolv,gethostbyname_r))
 
 
-# Find where sockets are (especially for Solaris)
-AC_CHECK_FUNC(socket,
-    AC_MSG_RESULT(using libc's socket),
-    AC_CHECK_LIB(xnet,socket)
-    AC_CHECK_LIB(socket,socket)
-    AC_CHECK_LIB(inet,socket))
 
 AC_CHECK_FUNCS(inet_pton, [AC_DEFINE(HAVE_INET_PTON)])
 AC_CHECK_FUNCS(inet_ntop, [AC_DEFINE(HAVE_INET_NTOP)])
@@ -1364,11 +1554,12 @@ AC_FUNC_ALLOCA
 AC_FUNC_GETMNTENT
 AC_FUNC_CLOSEDIR_VOID
 AC_FUNC_SETPGRP                      dnl check for BSD setpgrp.
-AC_FUNC_FNMATCH
+# AC_FUNC_FNMATCH    dnl use local version
 
 
 dnl# FreeBSD needs to link libxpg4
 AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"])
+AC_CHECK_LIB(intl, gettext, [LIBS="$LIBS -lintl"])
 
 
 AC_CHECK_LIB(sun, getpwnam)
@@ -1381,22 +1572,28 @@ if test x$FDLIBS = x-lz; then
   have_zlib=yes
 fi
 
-AC_CHECK_HEADER(sys/acl.h)
-AC_CHECK_LIB(acl, acl_get_file, [FDLIBS="-lacl $FDLIBS"])
+#
+# Check for ACL libraries
+#
 have_acl=no
-if test $ac_cv_lib_acl_acl_get_file = yes; then
+AC_CHECK_HEADER(sys/acl.h)
+AC_CHECK_FUNC(acl_get_file, [have_acl=yes],
+   [AC_CHECK_LIB(acl, acl_get_file, [have_acl=yes; FDLIBS="-lacl $FDLIBS"], 
+      [AC_CHECK_LIB(sec, acltotext, [have_acl=yes; FDLIBS="-lsec $FDLIBS"])]
+    )]
+)
+if test $have_acl = yes; then
    AC_DEFINE(HAVE_ACL)
-   have_acl=yes
 fi
 
 dnl Check for pthread libraries
 PTHREAD_LIB=""
 AC_CHECK_LIB(pthread, pthread_create, PTHREAD_LIB="-lpthread",
-       [AC_CHECK_LIB(pthreads, pthread_create, PTHREAD_LIB="-lpthreads",
-           [AC_CHECK_LIB(c_r, pthread_create, PTHREAD_LIB="-lc_r",
-               [AC_CHECK_FUNC(pthread_create)]
-           )]
-       )]
+   [AC_CHECK_LIB(pthreads, pthread_create, PTHREAD_LIB="-lpthreads",
+      [AC_CHECK_LIB(c_r, pthread_create, PTHREAD_LIB="-lc_r",
+           [AC_CHECK_FUNC(pthread_create)]
+       )]
+    )]
 )
 
 AC_SUBST(FDLIBS)
@@ -1414,6 +1611,7 @@ AC_SUBST(CFLAGS)
 AC_SUBST(CPPFLAGS)
 AC_SUBST(LDFLAGS)
 AC_SUBST(X_CFLAGS)
+AC_SUBST(DEFS)
 AC_SUBST(LIBS)
 AC_SUBST(DLIB)
 AC_SUBST(DB_LIBS)
@@ -1421,6 +1619,7 @@ AC_SUBST(X_LIBS)
 AC_SUBST(X_EXTRA_LIBS)
 AC_SUBST(WCFLAGS)
 AC_SUBST(WLDFLAGS)
+AC_SUBST(WRAPLIBS)
 
 dnl# extra configurable objects
 OBJLIST=
@@ -1467,7 +1666,7 @@ bsdi)
        TAPEDRIVE="/dev/nrmt0"
        PTHREAD_LIB="-pthread"
        CFLAGS="${CFLAGS} -pthread"
-       PSCMD="ps -x -o pid,command"
+       PSCMD="ps -ax -o pid,command"
        lld="qd"
        llu="qu"
        PFILES="${PFILES} \
@@ -1507,7 +1706,7 @@ freebsd)
        lld="qd"
        llu="qu"
        TAPEDRIVE="/dev/nrsa0"
-       PSCMD="ps -x -o pid,command"
+       PSCMD="ps -ax -o pid,command"
        PFILES="${PFILES} \
            platforms/freebsd/Makefile \
            platforms/freebsd/bacula-fd \
@@ -1520,6 +1719,8 @@ hpux)
        CFLAGS="$(CFLAGS) -D_XOPEN_SOURCE_EXTENDED=1"
        DISTVER=`uname -r`
        TAPEDRIVE="/dev/rmt/0hnb"
+       PTHREAD_LIB="-lpthread"
+       AC_DEFINE([_INCLUDE_LONGLONG])
   ;;
 irix)
        DISTVER=`uname -r`
@@ -1536,7 +1737,7 @@ netbsd)
        lld="qd"
        llu="qu"
        TAPEDRIVE="/dev/nrst0"
-       PSCMD="ps -a -o pid,command"
+       PSCMD="ps -ax -o pid,command"
        PTHREAD_LIB="-pthread"
        CFLAGS="${CFLAGS} -pthread"
   ;;
@@ -1545,7 +1746,7 @@ openbsd)
        lld="qd"
        llu="qu"
        TAPEDRIVE="/dev/nrst0"
-       PSCMD="ps -a -o pid,command"
+       PSCMD="ps -ax -o pid,command"
        PTHREAD_LIB="-pthread"
        CFLAGS="${CFLAGS} -pthread"
        PFILES="${PFILES} \
@@ -1598,6 +1799,7 @@ gentoo)
        PSCMD="ps -e -o pid,command"
        PFILES="${PFILES} \
            platforms/gentoo/Makefile \
+        platforms/gentoo/bacula-init \
            platforms/gentoo/bacula-fd \
            platforms/gentoo/bacula-sd \
            platforms/gentoo/bacula-dir"
@@ -1625,6 +1827,7 @@ solaris)
        if test x$DISTVER = x5.6 ; then
            AC_DEFINE(HAVE_OLD_SOCKOPT)
        fi
+       LIBS="$LIBS -lresolv"
   ;;
 suse)
        DISTVER=`cat /etc/SuSE-release |grep VERSION|\
@@ -1692,10 +1895,6 @@ fi
 
 AC_OUTPUT([autoconf/Make.common \
           Makefile \
-          rescue/Makefile \
-          rescue/linux/Makefile \
-          rescue/freebsd/Makefile \
-          rescue/solaris/Makefile \
           scripts/startmysql \
           scripts/stopmysql \
           scripts/btraceback \
@@ -1715,13 +1914,14 @@ AC_OUTPUT([autoconf/Make.common \
           scripts/bacula.desktop.gnome2.xsu \
           scripts/gnome-console.console_apps \
           scripts/mtx-changer \
-          doc/Makefile \
+          scripts/dvd-handler \
+          scripts/bacula-tray-monitor.desktop \
+          scripts/logwatch/Makefile \
+          scripts/logwatch/logfile.bacula.conf \
           src/Makefile \
           src/host.h \
           src/console/Makefile \
           src/console/bconsole.conf \
-          src/gnome-console/Makefile \
-          src/gnome-console/gnome-console.conf \
           src/gnome2-console/Makefile \
           src/gnome2-console/gnome-console.conf \
           src/wx-console/Makefile \
@@ -1757,6 +1957,12 @@ AC_OUTPUT([autoconf/Make.common \
           src/cats/grant_sqlite_privileges \
           src/cats/drop_sqlite_tables \
           src/cats/drop_sqlite_database \
+          src/cats/create_sqlite3_database \
+          src/cats/update_sqlite3_tables \
+          src/cats/make_sqlite3_tables \
+          src/cats/grant_sqlite3_privileges \
+          src/cats/drop_sqlite3_tables \
+          src/cats/drop_sqlite3_database \
           src/cats/sqlite \
           src/cats/mysql \
           src/cats/create_bdb_database \
@@ -1778,12 +1984,15 @@ AC_OUTPUT([autoconf/Make.common \
           src/win32/Makefile \
           src/win32/console/bconsole.conf \
           src/win32/wx-console/wx-console.conf \
+          src/win32/pebuilder/Makefile \
+          po/Makefile.in \
           $PFILES ],  
          [(echo "Doing make of dependencies"; ${MAKE:-make} depend;) ]
 )
 
 cd scripts
 chmod 755 startmysql stopmysql bacula startit stopit btraceback mtx-changer
+chmod 755 dvd-handler
 chmod 755 bconsole gconsole mtx-changer devel_bacula logrotate
 cd ..
 
@@ -1801,6 +2010,9 @@ chmod 755 $c/grant_mysql_privileges   $c/drop_mysql_tables     $c/drop_mysql_dat
 chmod 755 $c/create_sqlite_database   $c/update_sqlite_tables  $c/make_sqlite_tables
 chmod 755 $c/grant_sqlite_privileges  $c/drop_sqlite_tables    $c/drop_sqlite_database
 
+chmod 755 $c/create_sqlite3_database   $c/update_sqlite3_tables  $c/make_sqlite3_tables
+chmod 755 $c/grant_sqlite3_privileges  $c/drop_sqlite3_tables   $c/drop_sqlite3_database
+
 chmod 755 $c/create_postgresql_database  $c/update_postgresql_tables $c/make_postgresql_tables
 chmod 755 $c/grant_postgresql_privileges $c/drop_postgresql_tables   $c/drop_postgresql_database
 
@@ -1842,7 +2054,7 @@ if test "x${db_name}" = "xInternal" ; then
    echo " "
    echo " "
    echo "You have not specified either --enable-client-only or one of the"
-   echo "  supported databases: MySQL, PostgreSQL, or SQLite".
+   echo "  supported databases: MySQL, PostgreSQL, SQLite3 or SQLite."
    echo "  This is not permitted. Please reconfigure."
    echo " "
    echo "Aborting the configuration ..."
@@ -1863,6 +2075,8 @@ Configuration on `date`:
   Working directory:         ${working_dir}
   PID directory:             ${piddir}
   Subsys directory:          ${subsysdir}
+  Man directory:             ${mandir}
+  Data directory:            ${datadir}
   C Compiler:                ${CC} ${CCVERSION}
   C++ Compiler:              ${CXX} ${CXXVERSION}
   Compiler flags:            ${WCFLAGS} ${CFLAGS} 
@@ -1896,19 +2110,19 @@ Configuration on `date`:
   Large file support:        $largefile_support
   Bacula conio support:       ${got_conio} ${CONS_LIBS}
   readline support:          ${got_readline} ${PRTREADLINE_SRC}
-  TCP Wrappers support:       ${TCPW_MSG}
+  TCP Wrappers support:       ${TCPW_MSG} ${WRAPLIBS}
+  TLS support:               ${support_tls}
   ZLIB support:              ${have_zlib}
   enable-smartalloc:         ${support_smartalloc} 
   enable-gnome:              ${support_gnome} ${gnome_version}
-  enable-wx-console:         ${support_wx_console}
+  enable-wx-console:         ${support_wx_console} ${wx_version}
   enable-tray-monitor:       ${support_tray_monitor}
   client-only:               ${build_client_only}
+  build-dird:                ${build_dird}
+  build-stored:              ${build_stored}
   ACL support:               ${have_acl}
+  Python support:            ${support_python} ${PYTHON_LIBS}
 
   " > config.out
 
 cat config.out
-
-# old stuff
-# cweb support:              ${got_cweb} ${CWEB_SRC}
-  # gmp support:                     ${got_gmp} ${GMP_SRC}