-dnl#
+lal#
dnl#
dnl# Process this file with autoconf to produce a configure script.
dnl#
AC_PATH_PROGS(TRUEPRG, true, :)
AC_PATH_PROGS(FALSEPRG, false, :)
-AC_CANONICAL_HOST
+#AC_CANONICAL_HOST
dnl bacula version
VERSION=`sed -n -e 's/^.*VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
AC_PATH_PROG(CMP, cmp, cmp)
AC_PATH_PROG(TBL, tbl, tbl)
AC_PATH_PROG(AR, ar, ar)
-AC_PATH_PROG(RANLIB, ranlib, ranlib)
+dnl AC_PATH_PROG(RANLIB, ranlib, ranlib)
AC_PATH_PROG(OPENSSL, openssl, none)
+AC_PATH_PROG(MTX, mtx, mtx)
+AC_PATH_PROG(PKGCONFIG, pkg-config, pkg-config)
+AC_PATH_PROG(WXCONFIG, wx-config, wx-config)
test -n "$ARFLAG" || ARFLAGS="cr"
AC_SUBST(ARFLAGS)
support_mysql=no
support_sqlite=no
+support_postgresql=no
support_smartalloc=yes
support_readline=yes
+support_conio=yes
support_gnome=no
+support_wx_console=no
+gnome_version=
support_static_tools=no
support_static_fd=no
support_static_sd=no
GNOME_DIR=
if test x$support_gnome = xyes; then
- GNOME_INIT
- GNOME_DIR=src/gnome-console
+ abc=`$PKGCONFIG --exists libgnomeui-2.0`
+ pkg=$?
+ if test $pkg = 0; then
+ GNOME_INCLUDEDIR=`$PKGCONFIG --cflags-only-I libgnomeui-2.0`
+ GNOMEUI_LIBS=`$PKGCONFIG --libs-only-l libgnomeui-2.0`
+ GNOME_LIBDIR=`$PKGCONFIG --libs libgnomeui-2.0`
+ GNOME_LIBS=`$PKGCONFIG --libs-only-l libgnomeui-2.0`
+ AC_SUBST(GNOME_INCLUDEDIR)
+ AC_SUBST(GNOMEUI_LIBS)
+ AC_SUBST(GNOME_LIBDIR)
+ AC_SUBST(GNOME_LIBS)
+ 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"
+ fi
fi
AC_SUBST(GNOME_DIR)
+# -------------------------------------------
+# wx-console (default off)
+# -------------------------------------------
+AC_ARG_ENABLE(wx-console,
+ [ --enable-wx-console enable build of wxWidgets console [disabled]],
+ [if test x$enableval = xyes; then
+ support_wx_console=yes
+ fi])
+
+WX_DIR=
+if test x$support_wx_console = xyes; then
+ abc=`$WXCONFIG --cppflags`
+ pkg=$?
+ if test $pkg = 0; then
+ WXCONS_CPPFLAGS=`$WXCONFIG --cppflags`
+ WXCONS_LDFLAGS=`$WXCONFIG --libs`
+ AC_SUBST(WXCONS_CPPFLAGS)
+ AC_SUBST(WXCONS_LDFLAGS)
+ WX_DIR=src/wx-console
+ else
+ echo " "
+ echo "wx-config program not found. wx-console disabled."
+ echo " "
+ support_wx_console=no
+ fi
+fi
+AC_SUBST(WX_DIR)
+
+
+# -------------------------------------------
+# tray-monitor (default off)
+# -------------------------------------------
+AC_ARG_ENABLE(tray-monitor,
+ [ --enable-tray-monitor enable build of Gnome tray monitor (compatible with KDE) [disabled]],
+ [if test x$enableval = xyes; then
+ support_tray_monitor=yes
+ fi])
+
+TRAY_MONITOR_DIR=
+if test x$support_tray_monitor = xyes; then
+ abc=`$PKGCONFIG --exists gtk+-2.0`
+ pkg=$?
+ if test $pkg = 0; then
+ TRAY_MONITOR_CPPFLAGS=`$PKGCONFIG --cflags gtk+-2.0`
+ TRAY_MONITOR_LDFLAGS=`$PKGCONFIG --libs gtk+-2.0`
+ AC_SUBST(TRAY_MONITOR_CPPFLAGS)
+ AC_SUBST(TRAY_MONITOR_LDFLAGS)
+ TRAY_MONITOR_DIR=src/tray-monitor
+ fi
+fi
+AC_SUBST(TRAY_MONITOR_DIR)
+
# -------------------------------------------
# smartalloc (default off)
# -------------------------------------------
fi])
STATIC_CONS=
+STATIC_GNOME_CONS=
+STATIC_WX_CONS=
if test x$support_static_cons = xyes; then
- STATIC_CONS="static-console"
+ STATIC_CONS="static-bconsole"
+ STATIC_GNOME_CONS="static-gnome-console"
+ STATIC_WX_CONS="static-wx-console"
fi
AC_SUBST(STATIC_CONS)
+AC_SUBST(STATIC_GNOME_CONS)
+AC_SUBST(STATIC_WX_CONS)
# -------------------------------------------
# client_only (default off)
[ --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
fi])
if test x$build_client_only = xno; then
ALL_DIRS="subdirs"
AC_SUBST(ALL_DIRS)
# ---------------------------------------------------
-# Check for readline support/directory (default on)
+# Check for conio (Bacula readline substitute)(
+# ---------------------------------------------------
+# this allows you to turn it completely off
+AC_ARG_ENABLE(conio,
+ [ --disable-conio disable conio support [enabled]
+ ],
+ [if test x$enableval = xno; then
+ support_conio=no
+ fi])
+
+got_conio="no"
+if test x$support_conio = xyes; then
+ AC_CHECK_HEADER(termcap.h,
+ [ AC_CHECK_LIB(termcap, tgetent,
+ [ CONS_LIBS="-ltermcap"
+ 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])
+ ],
+ [ AC_CHECK_LIB(ncurses, tgetent,
+ [ CONS_LIBS="-lncurses"
+ 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 "Neither termcap nor ncurses library found. CONIO turned off ..."; echo " "])
+ ])
+ ],[echo " "; echo "termcap.h not found. CONIO turned off ..."; echo " "])
+fi
+
+
+# ---------------------------------------------------
+# Check for readline support/directory (default off)
# ---------------------------------------------------
# this allows you to turn it completely off
AC_ARG_ENABLE(readline,
- [ --disable-readline disable readline support [enabled]
+ [ --disable-readline disable readline support [disable]
],
[if test x$enableval = xno; then
support_readline=no
no) : ;;
yes|*)
if test "$with_readline" != "yes"; then
- CONS_INC="-I$with_readline"
+ CONS_INC="-I${with_readline}"
CONS_LDFLAGS="-L$with_readline"
else
with_readline="/usr/include/readline"
fi
- AC_CHECK_HEADER($with_readline/readline.h,
- [ AC_MSG_RESULT(yes)
- AC_DEFINE(HAVE_READLINE)
+ AC_CHECK_HEADER(${with_readline}/readline.h,
+ [ AC_DEFINE(HAVE_READLINE)
CONS_LIBS="-lreadline -ltermcap"
got_readline="yes"
],
- [ AC_MSG_ERROR([*** readline library missing])
+ [ echo " "
+ echo "readline.h not found. readline turned off ..."
+ echo " "
]
)
;;
],[
# check for standard readline library
AC_CHECK_HEADER(/usr/include/readline/readline.h,
- [ AC_MSG_RESULT(yes)
- AC_DEFINE(HAVE_READLINE)
- got_readline="yes"
- CONS_INC="-I/usr/include/readline"
- CONS_LIBS="-lreadline -ltermcap"
- ], [
- # Did not find starndard library, so user our own
- AC_MSG_RESULT(yes)
- AC_DEFINE(HAVE_READLINE)
- got_readline="yes"
- CONS_INC="-I${TOP_DIR}/depkgs"
- CONS_LIBS="-lreadline -lhistory -ltermcap"
- CONS_LDFLAGS="-L${TOP_DIR}/depkgs/readline"
- PRTREADLINE_SRC="${TOP_DIR}/depkgs/readline"
- ])
+ [ AC_DEFINE(HAVE_READLINE)
+ got_readline="yes"
+ CONS_INC="-I/usr/include/readline"
+ CONS_LIBS="-lreadline -ltermcap"
+ ], [
+ # Did not find standard library, so try Bacula's default
+ AC_CHECK_HEADER(${TOP_DIR}/depkgs/readline/readline.h,
+ [ AC_DEFINE(HAVE_READLINE)
+ got_readline="yes"
+ CONS_INC="-I${TOP_DIR}/depkgs/readline"
+ CONS_LIBS="-lreadline -lhistory -ltermcap"
+ CONS_LDFLAGS="-L${TOP_DIR}/depkgs/readline"
+ PRTREADLINE_SRC="${TOP_DIR}/depkgs/readline"
+ ],
+ [ echo " "
+ echo "readline.h not found. readline turned off ..."
+ echo " "
+ ]
+ )
+ ]
+ )
]
)
fi
+
+
+
AC_SUBST(CONS_INC)
+AC_SUBST(CONS_OBJ)
+AC_SUBST(CONS_SRC)
AC_SUBST(CONS_LIBS)
AC_SUBST(CONS_LDFLAGS)
AC_SUBST(READLINE_SRC)
# Minimal stuff for readline Makefile configuration
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(nanosleep nl_langinfo)
+AC_CHECK_HEADERS(varargs.h)
-#AC_CHECK_FUNC(getopt_long, AC_DEFINE(HAVE_GETOPT_LONG),
-# [LIBEXTRAOBJ="$LIBEXTRAOBJ getopt.o getopt1.o"
-# EXTRAOBJ="$EXTRAOBJ lib/getopt.o lib/getopt1.o"])
-
-AC_CHECK_FUNC(getopt_long, AC_DEFINE(HAVE_GETOPT_LONG))
-
-
-AC_FUNC_STRCOLL
-
-AC_CHECK_HEADERS(varargs.h \
- sys/ptem.h sys/pte.h sys/stream.h)
-
-# End of readline stuff
+# End of readline/conio stuff
# -----------------------------------------------------------------------
[
if test "x$withval" != "xno" ; then
saved_LIBS="$LIBS"
- LIBS="$LIBS -lwrap -lnsl"
+ LIBS="$saved_LIBS -lwrap"
AC_MSG_CHECKING(for libwrap)
AC_TRY_LINK(
[ #include <tcpd.h>
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_LIBWRAP)
TCPW_MSG="yes"
- ],
- [AC_MSG_ERROR([*** libwrap missing]) ]
+ ], [
+ LIBS="$saved_LIBS -lwrap -lnsl"
+ AC_TRY_LINK(
+ [ #include <tcpd.h>
+ int deny_severity = 0;
+ int allow_severity = 0;
+ struct request_info *req; ],
+ [ hosts_access(req); ],
+ [
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_LIBWRAP)
+ TCPW_MSG="yes"
+ ],
+ [AC_MSG_ERROR([*** libwrap missing]) ] ]
+ )
)
fi
]
# ------------------------------------------
# Where to place working dir
# ------------------------------------------
-working_dir=`eval echo ${sysconfdir}/working`
+working_dir=`eval echo ${prefix}/var/bacula/working`
AC_ARG_WITH(working-dir,
[ --with-working-dir=PATH specify path of Bacula working directory],
[
]
)
-# make sure the pid directory exists
-if test ! -d $piddir ; then
- piddir=`eval echo ${sysconfdir}`
- case $piddir in
- NONE/*) piddir=`echo $piddir | sed "s~NONE~$ac_default_prefix~"` ;;
- esac
-fi
-
AC_DEFINE_UNQUOTED(_PATH_BACULA_PIDDIR, "$piddir")
AC_SUBST(piddir)
]
)
-# make sure the pid directory exists
-if test ! -d $subsysdir ; then
- subsysdir=`eval echo ${sysconfdir}`
- case $subsysdir in
- NONE/*) subsysdir=`echo $subsysdir | sed "s~NONE~$ac_default_prefix~"` ;;
- esac
-fi
-
AC_SUBST(subsysdir)
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=`autocnf/randpass 41`
+ key=`autoconf/randpass 41`
else
key=`openssl rand -base64 33`
fi
AC_SUBST(sd_password)
+#
+# Handle users and groups for each daemon
+#
+dir_user=
+AC_ARG_WITH(dir_user,
+ [ --with-dir-user=USER specify user for Director daemon],
+ [
+ if test "x$withval" != "x" ; then
+ dir_user=$withval
+ fi
+ ]
+)
+dir_group=
+AC_ARG_WITH(dir_group,
+ [ --with-dir-group=GROUP specify group for Director daemon],
+ [
+ if test "x$withval" != "x" ; then
+ dir_group=$withval
+ fi
+ ]
+)
-# ------------------------------------------------
-# Bacula check for various SQL database engines
-# ------------------------------------------------
-BA_CHECK_MYSQL_DB
+sd_user=
+AC_ARG_WITH(sd_user,
+ [ --with-sd-user=USER specify user for Storage daemon],
+ [
+ if test "x$withval" != "x" ; then
+ sd_user=$withval
+ fi
+ ]
+)
+
+sd_group=
+AC_ARG_WITH(sd_group,
+ [ --with-sd-group=GROUP specify group for Storage daemon],
+ [
+ if test "x$withval" != "x" ; then
+ sd_group=$withval
+ fi
+ ]
+)
+
+fd_user=
+AC_ARG_WITH(fd_user,
+ [ --with-fd-user=USER specify user for File daemon],
+ [
+ if test "x$withval" != "x" ; then
+ fd_user=$withval
+ fi
+ ]
+)
+
+fd_group=
+AC_ARG_WITH(fd_group,
+ [ --with-fd-group=GROUP specify group for File daemon],
+ [
+ if test "x$withval" != "x" ; then
+ fd_group=$withval
+ fi
+ ]
+)
+
+
+AC_SUBST(dir_user)
+AC_SUBST(dir_group)
+AC_SUBST(sd_user)
+AC_SUBST(sd_group)
+AC_SUBST(fd_user)
+AC_SUBST(fd_group)
+
+#
+# allow setting default executable permissions
+#
+SBINPERM=0754
+AC_ARG_WITH(sbin-perm,
+ [ --with-sbin-perm=MODE specify permissions for sbin binaries (0754)],
+ [
+ if test "x$withval" != "x" ; then
+ SBINPERM=$withval
+ fi
+ ]
+)
+
+AC_SUBST(SBINPERM)
+
# ------------------------------------------------
# Bacula check for various SQL database engines
# ------------------------------------------------
+BA_CHECK_POSTGRESQL_DB
+
+BA_CHECK_MYSQL_DB
+
BA_CHECK_SQLITE_DB
AC_SUBST(cats)
dnl# --------------------------------------------------------------------------
dnl# Supply default CFLAGS, if not specified by `CFLAGS=flags ./configure'
dnl#
-if test -z "$CFLAGS"; then
+if test -z "$CFLAGS" -o "$CFLAGS" = "-g -O2"; then
if test -z "$CCOPTS"; then
- CCOPTS='-g -O2'
-dnl> if test "x$GCC" = xyes; then
-dnl> if test x$system = xLinux; then
-dnl> CCOPTS="$CCOPTS "'-O2 -fno-strength-reduce'
-dnl> fi
-dnl> fi
+ CCOPTS='-g -O2 -Wall'
fi
CFLAGS="$CCOPTS"
fi
dnl See if we can use 64 bit file addresses
largefile_support="no"
-AC_SYS_LARGEFILE
+AC_BAC_LARGEFILE
AC_PATH_XTRA
assert.h \
fcntl.h \
grp.h \
+ pwd.h \
libc.h \
limits.h \
stdarg.h \
stdint.h \
string.h \
termios.h \
+ termcap.h \
unistd.h \
+ sys/bitypes.h \
sys/byteorder.h \
sys/ioctl.h \
sys/select.h \
sys/sockio.h \
sys/time.h \
+ sys/socket.h \
+ arpa/nameser.h \
+ resolv.h \
+ mtio.h \
+ sys/mtio.h \
+ sys/tape.h \
+ regex.h \
)
AC_HEADER_STDC
AC_HEADER_MAJOR
dnl# --------------------------------------------------------------------------
dnl# Check for utime.h structure
dnl# --------------------------------------------------------------------------
-AC_CACHE_CHECK(for utime.h, tar_cv_header_utime_h,
+AC_CACHE_CHECK(for utime.h, ba_cv_header_utime_h,
[AC_TRY_COMPILE([
#include <sys/types.h>
#include <utime.h>], [struct utimbuf foo],
- tar_cv_header_utime_h=yes, tar_cv_header_utime_h=no)])
-test $tar_cv_header_utime_h = yes && AC_DEFINE(HAVE_UTIME_H)
+ ba_cv_header_utime_h=yes, ba_cv_header_utime_h=no)])
+test $ba_cv_header_utime_h = yes && AC_DEFINE(HAVE_UTIME_H)
+
+dnl# --------------------------------------------------------------------------
+dnl# Check for socklen_t
+dnl# --------------------------------------------------------------------------
+AC_CACHE_CHECK(for socklen_t, ba_cv_header_socklen_t,
+ [AC_TRY_COMPILE([
+#include <sys/types.h>
+#include <sys/socket.h>],
+ [socklen_t x],
+ ba_cv_header_socklen_t=yes, ba_cv_header_socklen_t=no)])
+test $ba_cv_header_socklen_t = yes && AC_DEFINE(HAVE_SOCKLEN_T)
dnl# --------------------------------------------------------------------------
dnl# Check for bigendian
fi
fi
+if (test -z "$have_u_int64_t" || test -z "$have_int64_t" && \
+ test "x$ac_cv_header_sys_bitypes_h" = "xyes")
+then
+ AC_MSG_CHECKING([for int64_t and u_int64_t types in sys/bitypes.h])
+ AC_TRY_COMPILE(
+ [ #include <sys/bitypes.h> ],
+ [ int64_t a; u_int64_t b;
+ a = b = 1; ],
+ [ AC_DEFINE(HAVE_U_INT64_T)
+ AC_DEFINE(HAVE_INT64_T)
+ AC_MSG_RESULT(yes) ],
+ [ AC_MSG_RESULT(no)]
+ )
+fi
+
+if (test -z "$have_uintxx_t" && \
+ test "x$ac_cv_header_sys_bitypes_h" = "xyes")
+then
+ AC_MSG_CHECKING([for uintXX_t types in sys/bitypes.h])
+ AC_TRY_COMPILE(
+ [ #include <sys/bitypes.h> ],
+ [ uint8_t a; uint16_t b;
+ uint32_t c; a = b = c = 1; ],
+ [ AC_DEFINE(HAVE_UINTXX_T)
+ AC_MSG_RESULT(yes) ],
+ [ AC_MSG_RESULT(no)]
+ )
+
+fi
+
+
+
dnl# --------------------------------------------------------------------------
-dnl# CHECKING FOR LIBRARY FUNCTIONS
+dnl# CHECKING FOR REQUIRED LIBRARY FUNCTIONS
dnl# --------------------------------------------------------------------------
AC_CHECK_FUNCS( \
fork \
)
AC_CHECK_FUNCS(fchdir, [AC_DEFINE(HAVE_FCHDIR)])
+AC_CHECK_FUNCS(strtoll, [AC_DEFINE(HAVE_STRTOLL)])
+
+AC_CHECK_FUNCS(chflags)
AC_CHECK_FUNCS(snprintf vsnprintf gethostid getdomainname)
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)])
+AC_CHECK_FUNCS(gethostbyname2, [AC_DEFINE(HAVE_GETHOSTBYNAME2)])
+
+dnl ----------------------------
+dnl check sa_len of sockaddr
+dnl ----------------------------
+AC_CACHE_CHECK(for struct sockaddr has a sa_len field, ac_cv_struct_sockaddr_sa_len,
+ [AC_TRY_COMPILE([#include <sys/socket.h>], [struct sockaddr s; s.sa_len;],
+ ac_cv_struct_sockaddr_sa_len=yes, ac_cv_struct_sockaddr_sa_len=no)])
+
+ if test $ac_cv_struct_sockaddr_sa_len = yes; then
+ AC_DEFINE(HAVE_SA_LEN, 1, [Define if sa_len field exists in struct sockaddr])
+ fi
+
+
+dnl Check for IPv6 support
+AC_CACHE_CHECK([for IPv6 support], ac_cv_ipv6_support,
+[AC_TRY_LINK([ #include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>], [struct sockaddr_in6 s; struct in6_addr t=in6addr_any; int i=AF_INET6; s; t.s6_addr[0] =
+ 0;],
+ [ac_cv_ipv6_support=yes], [ac_cv_ipv6_support=no])])
+
+if test "$ac_cv_ipv6_support" = yes; then
+ AC_DEFINE(HAVE_IPV6,1,[Whether to enable IPv6 support])
+fi
+
+
AC_FUNC_STRFTIME
AC_FUNC_VPRINTF
have_zlib=yes
fi
+AC_CHECK_HEADER(sys/acl.h)
+AC_CHECK_LIB(acl, acl_get_file, [FDLIBS="-lacl $FDLIBS"])
+have_acl=no
+if test $ac_cv_lib_acl_acl_get_file = 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_SUBST(DB_LIBS)
AC_SUBST(X_LIBS)
AC_SUBST(X_EXTRA_LIBS)
+AC_SUBST(WCFLAGS)
+AC_SUBST(WLDFLAGS)
dnl# extra configurable objects
OBJLIST=
lld="lld"
llu="llu"
+WCFLAGS=
+WLDFLAGS=
+
#
# Finally we set appropriate distribution specific
# variables and defaults
PFILES="platforms/Makefile"
PSCMD="ps -e"
WIN32=
-hostname=`hostname`
+MACOSX=
+hostname=`uname -n | cut -d '.' -f 1`
case "$DISTNAME" in
+aix)
+ DISTVER=`uname -r`
+ PSCMD="ps -e -o pid,comm"
+ PFILES="${PFILES} \
+ platforms/aix/Makefile"
+ TAPEDRIVE="/dev/rmt0.1"
+ ;;
alpha)
DISTVER=`uname -r`
PTHREAD_LIB="-lpthread -lexc"
;;
bsdi)
DISTVER=`uname -a |awk '{print $3}'`
- TAPEDRIVE="/dev/nrst0"
- ;;
-caldera)
- DISTVER=`cat /etc/.issue | grep Version | cut -f 2 -d ' '`
- TAPEDRIVE="/dev/nrst0"
- PSCMD="ps -e -o pid,command"
- hostname=`hostname -s`
+ TAPEDRIVE="/dev/nrmt0"
+ PTHREAD_LIB="-pthread"
+ CFLAGS="${CFLAGS} -pthread"
+ PSCMD="ps -x -o pid,command"
+ lld="qd"
+ llu="qu"
+ PFILES="${PFILES} \
+ platforms/bsdi/Makefile \
+ platforms/bsdi/bacula-fd \
+ platforms/bsdi/bacula-sd \
+ platforms/bsdi/bacula-dir"
+ largefile_support="yes"
;;
cygwin)
DISTVER=`uname -a |awk '{print $3}'`
TAPEDRIVE="/dev/nrst0"
WIN32=win32
- CFLAGS="${CFLAGS} -mwindows"
- LDFLAGS="${LDFLAGS} -mwindows"
+ WCFLAGS="-mwindows"
+ WLDFLAGS="-mwindows"
;;
darwin)
DISTVER=`uname -r`
TAPEDRIVE="/dev/nst0"
PSCMD="ps -e -o pid,command"
- hostname=`hostname -s`
+ MACOSX=macosx
PFILES="${PFILES} \
platforms/darwin/Makefile"
;;
DISTVER=`cat /etc/debian_version`
TAPEDRIVE="/dev/nrst0"
PSCMD="ps -e -o pid,command"
- hostname=`hostname -s`
;;
freebsd)
DISTVER=`uname -a |awk '{print $3}'`
- PTHREAD_LIB="-pthread"
- CFLAGS="${CFLAGS} -pthread"
+ VER=`echo $DISTVER | cut -c 1`
+ if test x$VER = x4 ; then
+ PTHREAD_LIB="-pthread"
+ CFLAGS="${CFLAGS} -pthread"
+ fi
lld="qd"
llu="qu"
- TAPEDRIVE="/dev/nrst0"
+ TAPEDRIVE="/dev/nrsa0"
PSCMD="ps -x -o pid,command"
PFILES="${PFILES} \
platforms/freebsd/Makefile \
platforms/freebsd/bacula-fd \
platforms/freebsd/bacula-sd \
platforms/freebsd/bacula-dir"
- hostname=`hostname -s`
largefile_support="yes"
;;
hpux)
+ PSCMD="UNIX95=1 ps -e -o pid,comm"
+ CFLAGS="$(CFLAGS) -D_XOPEN_SOURCE_EXTENDED=1"
DISTVER=`uname -r`
TAPEDRIVE="/dev/rmt/0hnb"
;;
DISTVER=`uname -r`
TAPEDRIVE="/dev/rmt/0cbn"
PSCMD="ps -e -o pid,comm"
- hostname=`/usr/bsd/hostname -s`
PFILES="${PFILES} \
platforms/irix/Makefile \
platforms/irix/bacula-fd \
platforms/openbsd/bacula-dir"
;;
redhat)
- DISTVER=`cat /etc/redhat-release | grep release |\
- cut -f 5 -d ' '`
+ if test -f /etc/whitebox-release ; then
+ f=/etc/whitebox-release
+ else
+ f=/etc/redhat-release
+ fi
+ if test `cat $f | grep release |\
+ cut -f 3 -d ' '`x = "Enterprise"x ; then
+ DISTVER="Enterprise "`cat $f | grep release |\
+ cut -f 6 -d ' '`
+ else
+ DISTVER=`cat /etc/redhat-release | grep release |\
+ cut -f 5 -d ' '`
+ fi
TAPEDRIVE="/dev/nst0"
PSCMD="ps -e -o pid,command"
PFILES="${PFILES} \
platforms/redhat/Makefile \
platforms/redhat/bacula-fd \
platforms/redhat/bacula-sd \
- platforms/redhat/bacula-dir"
+ platforms/redhat/bacula-dir \
+ platforms/redhat/bacula.spec \
+ "
hostname=`hostname -s`
;;
+mandrake)
+ DISTVER=`cat /etc/mandrake-release | grep release |\
+ cut -f 5 -d ' '`
+ TAPEDRIVE="/dev/nst0"
+ PSCMD="ps -e -o pid,command"
+ PFILES="${PFILES} \
+ platforms/mandrake/Makefile \
+ platforms/mandrake/bacula-fd \
+ platforms/mandrake/bacula-sd \
+ platforms/mandrake/bacula-dir \
+ platforms/mandrake/bacula.spec \
+ "
+ ;;
gentoo)
DISTVER=`awk '/version / {print $5}' < /etc/gentoo-release`
TAPEDRIVE="/dev/nst0"
platforms/gentoo/bacula-fd \
platforms/gentoo/bacula-sd \
platforms/gentoo/bacula-dir"
- hostname=`hostname -s`
;;
-
slackware)
DISTVER=`cat /etc/slackware-version`
TAPEDRIVE="/dev/nst0"
PSCMD="ps -e -o pid,command"
- hostname=`hostname -s`
+ PFILES="${PFILES} \
+ platforms/slackware/Makefile \
+ platforms/slackware/rc.bacula-fd \
+ platforms/slackware/rc.bacula-sd \
+ platforms/slackware/rc.bacula-dir\
+ platforms/slackware/functions.bacula"
;;
solaris)
- DISTVER=Solaris
+ DISTVER=`uname -r`
TAPEDRIVE="/dev/rmt/0cbn"
PSCMD="ps -e -o pid,comm"
PFILES="${PFILES} \
platforms/solaris/bacula-fd \
platforms/solaris/bacula-sd \
platforms/solaris/bacula-dir"
+ if test x$DISTVER = x5.6 ; then
+ AC_DEFINE(HAVE_OLD_SOCKOPT)
+ fi
;;
suse)
DISTVER=`cat /etc/SuSE-release |grep VERSION|\
- cut -f 3 -d ' '`
+ cut -f 3 -d ' '`
TAPEDRIVE="/dev/nst0"
PSCMD="ps -e -o pid,command"
- hostname=`hostname -s`
+ PFILES="${PFILES} \
+ platforms/suse/Makefile \
+ platforms/suse/bacula-fd \
+ platforms/suse/bacula-sd \
+ platforms/suse/bacula-dir \
+ platforms/suse/bacula \
+ platforms/suse/bacula.spec"
;;
suse5)
DISTNAME=suse
DISTVER=5.x
TAPEDRIVE="/dev/nst0"
PSCMD="ps -e -o pid,command"
- hostname=`hostname -s`
+ PFILES="${PFILES} \
+ platforms/suse/Makefile \
+ platforms/suse/bacula-fd \
+ platforms/suse/bacula-sd \
+ platforms/suse/bacula-dir"
;;
unknown)
DISTVER=unknown
AC_SUBST(hostname)
-
LIBS="$PTHREAD_LIB $LIBS"
AC_DEFINE_UNQUOTED(lld, "$lld")
AC_SUBST(TAPEDRIVE)
AC_SUBST(PSCMD)
AC_SUBST(WIN32)
+AC_SUBST(MACOSX)
AC_SUBST(DISTNAME)
AC_SUBST(DISTVER)
-
dnl# common parts of the Makefile
MCOMMON=./autoconf/Make.common
AC_SUBST_FILE(MCOMMON)
+dnl# Insanity check
+if test "x${subsysdir}" = "x${sbindir}" ; then
+ echo " "
+ echo " "
+ echo "You have set both --sbindir and --with-subsys-dir"
+ echo " equal to: ${subsysdir} "
+ echo "This is not permitted. Please reconfigure."
+ echo " "
+ echo "Aborting configuration ..."
+ echo " "
+ echo " "
+ exit 1
+fi
+
AC_OUTPUT([autoconf/Make.common \
Makefile \
rescue/Makefile \
scripts/btraceback \
scripts/startit \
scripts/stopit \
- scripts/console \
+ scripts/bconsole \
scripts/gconsole \
scripts/bacula \
- scripts/fd \
+ scripts/devel_bacula \
scripts/Makefile \
scripts/logrotate \
+ scripts/bacula.desktop.gnome1 \
+ scripts/bacula.desktop.gnome2 \
+ scripts/bacula.desktop.gnome1.consolehelper \
+ scripts/bacula.desktop.gnome2.consolehelper \
+ scripts/bacula.desktop.gnome1.xsu \
+ scripts/bacula.desktop.gnome2.xsu \
+ scripts/gnome-console.console_apps \
+ scripts/mtx-changer \
doc/Makefile \
src/Makefile \
+ src/host.h \
src/console/Makefile \
- src/console/console.conf \
+ src/console/bconsole.conf \
src/gnome-console/Makefile \
src/gnome-console/gnome-console.conf \
- src/tconsole/Makefile \
+ src/gnome2-console/Makefile \
+ src/gnome2-console/gnome-console.conf \
+ src/wx-console/Makefile \
+ src/wx-console/wx-console.conf \
+ src/tray-monitor/Makefile \
+ src/tray-monitor/tray-monitor.conf \
src/dird/Makefile \
src/dird/bacula-dir.conf \
src/lib/Makefile \
src/stored/Makefile \
src/stored/bacula-sd.conf \
src/filed/Makefile \
- src/filed/host.h \
src/filed/bacula-fd.conf \
src/filed/win32/Makefile \
src/cats/Makefile \
src/cats/make_catalog_backup \
src/cats/delete_catalog_backup \
- src/cats/alter_mysql_tables \
- src/cats/make_mysql_tables \
- src/cats/drop_mysql_tables \
+ src/cats/create_postgresql_database \
+ src/cats/update_postgresql_tables \
+ src/cats/make_postgresql_tables \
+ src/cats/grant_postgresql_privileges \
+ src/cats/drop_postgresql_tables \
+ src/cats/drop_postgresql_database \
src/cats/create_mysql_database \
+ src/cats/update_mysql_tables \
+ src/cats/make_mysql_tables \
src/cats/grant_mysql_privileges \
- src/cats/alter_sqlite_tables \
+ src/cats/drop_mysql_tables \
+ src/cats/drop_mysql_database \
+ src/cats/create_sqlite_database \
+ src/cats/update_sqlite_tables \
src/cats/make_sqlite_tables \
+ src/cats/grant_sqlite_privileges \
src/cats/drop_sqlite_tables \
- src/cats/create_sqlite_database \
+ src/cats/drop_sqlite_database \
src/cats/sqlite \
src/cats/mysql \
src/cats/create_bdb_database \
+ src/cats/update_bdb_tables \
src/cats/make_bdb_tables \
+ src/cats/grant_bdb_privileges \
src/cats/drop_bdb_tables \
+ src/cats/drop_bdb_database \
+ src/cats/create_bacula_database \
+ src/cats/update_bacula_tables \
+ src/cats/grant_bacula_privileges \
src/cats/make_bacula_tables \
src/cats/drop_bacula_tables \
+ src/cats/drop_bacula_database \
src/findlib/Makefile \
src/tools/Makefile \
+ src/win32/winbacula.nsi \
+ src/win32/baculafd/bacula-fd.conf \
+ src/win32/Makefile \
+ src/win32/console/bconsole.conf \
+ src/win32/wx-console/wx-console.conf \
$PFILES ],
- [(echo "Doing make of dependencies"; make depend;) ]
+ [(echo "Doing make of dependencies"; ${MAKE:-make} depend;) ]
)
cd scripts
chmod 755 startmysql stopmysql bacula startit stopit btraceback mtx-changer
-chmod 755 console gconsole
+chmod 755 bconsole gconsole mtx-changer devel_bacula logrotate
cd ..
-chmod 755 src/cats/make_mysql_tables src/cats/drop_mysql_tables
-chmod 755 src/cats/make_test_tables src/cats/drop_test_tables
-chmod 755 src/cats/create_mysql_database
-chmod 755 src/cats/make_catalog_backup src/cats/delete_catalog_backup
-chmod 755 src/cats/alter_mysql_tables
-chmod 755 src/cats/grant_mysql_privileges
-chmod 755 src/cats/make_sqlite_tables src/cats/drop_sqlite_tables
-chmod 755 src/cats/make_bacula_tables src/cats/drop_bacula_tables
-chmod 755 src/cats/create_sqlite_database
-chmod 755 src/cats/alter_sqlite_tables
-chmod 755 src/cats/sqlite
-chmod 755 src/cats/make_bdb_tables src/cats/drop_bdb_tables
-chmod 755 src/cats/create_bdb_database
+
+c=src/cats
+
+chmod 755 $c/create_bacula_database $c/update_bacula_tables $c/make_bacula_tables
+chmod 755 $c/grant_bacula_privileges $c/drop_bacula_tables $c/drop_bacula_database
+
+chmod 755 $c/create_bdb_database $c/update_bdb_tables $c/make_bdb_tables
+chmod 755 $c/grant_bdb_privileges $c/drop_bdb_tables $c/drop_bdb_database
+
+chmod 755 $c/create_mysql_database $c/update_mysql_tables $c/make_mysql_tables
+chmod 755 $c/grant_mysql_privileges $c/drop_mysql_tables $c/drop_mysql_database
+
+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_postgresql_database $c/update_postgresql_tables $c/make_postgresql_tables
+chmod 755 $c/grant_postgresql_privileges $c/drop_postgresql_tables $c/drop_postgresql_database
+
+chmod 755 $c/make_catalog_backup $c/delete_catalog_backup
+chmod 755 $c/sqlite
+chmod 755 $c/mysql
if test "x$ac_cv_sys_largefile_CFLAGS" != "xno" ; then
largefile_support="yes"
fi
+#
+# A whole lot of hand springs to get the compiler version.
+# This is because gcc changed the output in version 3.0
+#
+CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 3 -d ' '`
+if test "x${CCVERSION}" = "x" ; then
+ CCVERSION=`${CC} --version | tr '\n' ' ' | cut -f 1 -d ' '`
+fi
+CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 3 -d ' '`
+if test x"${CXXVERSION}" = x ; then
+ CXXVERSION=`${CXX} --version | tr '\n' ' ' | cut -f 1 -d ' '`
+fi
+
+if test "x${subsysdir}" = "x${sbindir}" ; then
+ echo " "
+ echo " "
+ echo "You have set --sbindir and --with-subsys-dir"
+ echo " both equal to: ${subsysdir} "
+ echo " This is not permitted. Please reconfigure."
+ echo " "
+ echo "Aborting configuration ..."
+ echo " "
+ echo " "
+ exit 1
+fi
+
+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 " This is not permitted. Please reconfigure."
+ echo " "
+ echo "Aborting the configuration ..."
+ echo " "
+ echo " "
+ exit 1
+fi
echo "
Configuration on `date`:
Source code location: ${srcdir}
Install binaries: ${sbindir}
Install config files: ${sysconfdir}
- Scripts directory ${scriptdir}
- Working directory ${working_dir}
- C Compiler: ${CC}
- C++ Compiler: ${CXX}
- Compiler flags: ${CFLAGS}
- Linker flags: ${LDFLAGS}
+ Scripts directory: ${scriptdir}
+ Working directory: ${working_dir}
+ PID directory: ${piddir}
+ Subsys directory: ${subsysdir}
+ C Compiler: ${CC} ${CCVERSION}
+ C++ Compiler: ${CXX} ${CXXVERSION}
+ Compiler flags: ${WCFLAGS} ${CFLAGS}
+ Linker flags: ${WLDFLAGS} ${LDFLAGS}
Libraries: ${LIBS}
Statically Linked Tools: ${support_static_tools}
Statically Linked FD: ${support_static_fd}
Job Output Email: ${job_email}
Traceback Email: ${dump_email}
SMTP Host Address: ${smtp_host}
- Director Port ${dir_port}
- File daemon Port ${fd_port}
- Storage daemon Port ${sd_port}
+
+ Director Port: ${dir_port}
+ File daemon Port: ${fd_port}
+ Storage daemon Port: ${sd_port}
+
+ Director User: ${dir_user}
+ Director Group: ${dir_group}
+ Storage Daemon User: ${sd_user}
+ Storage DaemonGroup: ${sd_group}
+ File Daemon User: ${fd_user}
+ File Daemon Group: ${fd_group}
+
SQL binaries Directory ${SQL_BINDIR}
Large file support: $largefile_support
+ Bacula conio support: ${got_conio} ${CONS_LIBS}
readline support: ${got_readline} ${PRTREADLINE_SRC}
TCP Wrappers support: ${TCPW_MSG}
ZLIB support: ${have_zlib}
enable-smartalloc: ${support_smartalloc}
- enable-gnome: ${support_gnome}
+ enable-gnome: ${support_gnome} ${gnome_version}
+ enable-wx-console: ${support_wx_console}
+ enable-tray-monitor: ${support_tray_monitor}
client-only: ${build_client_only}
+ ACL support: ${have_acl}
" > config.out
# old stuff
# cweb support: ${got_cweb} ${CWEB_SRC}
-# gmp support: ${got_gmp} ${GMP_SRC}
+ # gmp support: ${got_gmp} ${GMP_SRC}