X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=bacula%2Fautoconf%2Fconfigure.in;h=e72a34826b441b5a7aa0f630867256bfe549bd28;hb=4137d8ab47939bf6d83eb5153ec854c5da0f776d;hp=5f18bdc97741c336b3e869b9817d86e58e652556;hpb=53ea6a4ab2a6cd67de9aba1ccae291b0eae9ce78;p=bacula%2Fbacula diff --git a/bacula/autoconf/configure.in b/bacula/autoconf/configure.in index 5f18bdc977..e72a34826b 100644 --- a/bacula/autoconf/configure.in +++ b/bacula/autoconf/configure.in @@ -1,4 +1,4 @@ -dnl# +lal# dnl# dnl# Process this file with autoconf to produce a configure script. dnl# @@ -19,7 +19,7 @@ dnl search for true and false programs. 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` @@ -59,8 +59,11 @@ AC_PATH_PROG(ECHO, echo, echo) 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) @@ -138,9 +141,13 @@ fi 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 @@ -166,12 +173,81 @@ AC_ARG_ENABLE(gnome, 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) # ------------------------------------------- @@ -255,10 +331,16 @@ AC_ARG_ENABLE(static-cons, 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) @@ -267,6 +349,8 @@ 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 fi]) if test x$build_client_only = xno; then ALL_DIRS="subdirs" @@ -276,11 +360,47 @@ fi 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 @@ -296,18 +416,19 @@ if test x$support_readline = xyes; then 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 " " ] ) ;; @@ -315,25 +436,36 @@ if test x$support_readline = xyes; then ],[ # 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) @@ -341,25 +473,13 @@ 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 # ----------------------------------------------------------------------- @@ -494,7 +614,7 @@ AC_ARG_WITH(tcp-wrappers, [ 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 @@ -506,8 +626,21 @@ AC_ARG_WITH(tcp-wrappers, 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 + 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 ] @@ -516,7 +649,7 @@ AC_ARG_WITH(tcp-wrappers, # ------------------------------------------ # 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], [ @@ -604,14 +737,6 @@ AC_ARG_WITH(pid-dir, ] ) -# 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) @@ -629,14 +754,6 @@ AC_ARG_WITH(subsys-dir, ] ) -# 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) @@ -720,7 +837,7 @@ 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=`autocnf/randpass 41` + key=`autoconf/randpass 41` else key=`openssl rand -base64 33` fi @@ -733,17 +850,101 @@ AC_SUBST(fd_password) 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) @@ -754,14 +955,9 @@ AC_DEFINE(PROTOTYPES) 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 @@ -772,7 +968,7 @@ AC_EXEEXT dnl See if we can use 64 bit file addresses largefile_support="no" -AC_SYS_LARGEFILE +AC_BAC_LARGEFILE AC_PATH_XTRA @@ -792,7 +988,9 @@ AC_CHECK_HEADERS( \ stdint.h \ string.h \ termios.h \ + termcap.h \ unistd.h \ + sys/bitypes.h \ sys/byteorder.h \ sys/ioctl.h \ sys/select.h \ @@ -803,6 +1001,8 @@ AC_CHECK_HEADERS( \ resolv.h \ mtio.h \ sys/mtio.h \ + sys/tape.h \ + regex.h \ ) AC_HEADER_STDC AC_HEADER_MAJOR @@ -1048,9 +1248,41 @@ if test -z "$have_u_intxx_t" ; then 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 ], + [ 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 ], + [ 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 \ @@ -1071,6 +1303,9 @@ AC_CHECK_FUNCS( \ ) 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) @@ -1094,6 +1329,34 @@ AC_CHECK_FUNC(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)]) +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 ], [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 +#include +#include ], [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 @@ -1118,6 +1381,14 @@ 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"]) +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", @@ -1148,6 +1419,8 @@ AC_SUBST(DLIB) AC_SUBST(DB_LIBS) AC_SUBST(X_LIBS) AC_SUBST(X_EXTRA_LIBS) +AC_SUBST(WCFLAGS) +AC_SUBST(WLDFLAGS) dnl# extra configurable objects OBJLIST= @@ -1156,6 +1429,9 @@ AC_SUBST(OBJLIST) lld="lld" llu="llu" +WCFLAGS= +WLDFLAGS= + # # Finally we set appropriate distribution specific # variables and defaults @@ -1164,13 +1440,15 @@ llu="llu" PFILES="platforms/Makefile" PSCMD="ps -e" WIN32= -hostname=`uname -n` +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` @@ -1186,26 +1464,31 @@ alpha) ;; 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" ;; @@ -1213,25 +1496,28 @@ debian) 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" ;; @@ -1269,17 +1555,43 @@ openbsd) 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" @@ -1289,14 +1601,17 @@ gentoo) 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=`uname -r` @@ -1313,17 +1628,27 @@ solaris) ;; 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 @@ -1336,7 +1661,6 @@ esac AC_SUBST(hostname) - LIBS="$PTHREAD_LIB $LIBS" AC_DEFINE_UNQUOTED(lld, "$lld") @@ -1344,6 +1668,7 @@ AC_DEFINE_UNQUOTED(llu, "$llu") AC_SUBST(TAPEDRIVE) AC_SUBST(PSCMD) AC_SUBST(WIN32) +AC_SUBST(MACOSX) AC_SUBST(DISTNAME) AC_SUBST(DISTVER) @@ -1351,6 +1676,20 @@ 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 \ @@ -1362,75 +1701,155 @@ AC_OUTPUT([autoconf/Make.common \ 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`: @@ -1440,12 +1859,14 @@ 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} @@ -1458,18 +1879,31 @@ Configuration on `date`: 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 @@ -1477,4 +1911,4 @@ cat config.out # old stuff # cweb support: ${got_cweb} ${CWEB_SRC} -# gmp support: ${got_gmp} ${GMP_SRC} + # gmp support: ${got_gmp} ${GMP_SRC}