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.
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)
AC_PATH_PROG(GROWISOFS, growisofs, growisofs)
AC_PATH_PROG(DVDRWMEDIAINFO, dvd+rw-mediainfo, dvd+rw-mediainfo)
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)
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
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
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
AC_SUBST(PYTHON_INCDIR)
-# -------------------------------------------
-# check for cdrecord writer location
-# get scsibus,target,lun
-# -------------------------------------------
-CDSTL="3,0,0"
-if test ! x$CDRECORD = x ; then
- CDSTL=`${CDRECORD} -scanbus 2>/dev/null | grep CD-RW | ${AWK} '{print $1}'`
- if test x${CDSTL} = x ; then
- CDSTL=`${CDRECORD} -scanbus 2>/dev/null | grep CD+RW | ${AWK} '{print $1}'`
- fi
- if test x${CDSTL} = x ; then
- CDSTL=`${CDRECORD} -scanbus 2>/dev/null | grep DVD+RW | ${AWK} '{print $1}'`
- fi
- if test x${CDSTL} = x ; then
- CDSTL=`${CDRECORD} -scanbus 2>/dev/null | grep DVD-RW | ${AWK} '{print $1}'`
- fi
- if test x${CDSTL} = x ; then
- CDSTL="3,0,0"
- fi
-fi
-AC_SUBST(CDSTL)
-
-
-# ---------------------------------------------------
-# 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
-# -----------------------------------------------------------------------
-
#
# Find where sockets are (especially for Solaris)
# Do this before the TCP Wrappers test since 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)
+
+
+
# ------------------------------------------
# Where to place working dir
# ------------------------------------------
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
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} \
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 \
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`
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"
;;
if test x$DISTVER = x5.6 ; then
AC_DEFINE(HAVE_OLD_SOCKOPT)
fi
+ LIBS="$LIBS -lresolv"
;;
suse)
DISTVER=`cat /etc/SuSE-release |grep VERSION|\
AC_OUTPUT([autoconf/Make.common \
Makefile \
- rescue/Makefile \
- rescue/linux/Makefile \
- rescue/linux/floppy/Makefile \
- rescue/linux/cdrom/Makefile \
- rescue/linux/cdrom/bacula/Makefile \
- rescue/freebsd/Makefile \
- rescue/solaris/Makefile \
scripts/startmysql \
scripts/stopmysql \
scripts/btraceback \
scripts/bacula-tray-monitor.desktop \
scripts/logwatch/Makefile \
scripts/logwatch/logfile.bacula.conf \
- doc/Makefile \
src/Makefile \
src/host.h \
src/console/Makefile \
cd scripts
chmod 755 startmysql stopmysql bacula startit stopit btraceback mtx-changer
+chmod 755 dvd-writepart dvd-freespace
chmod 755 bconsole gconsole mtx-changer devel_bacula logrotate
cd ..
Working directory: ${working_dir}
PID directory: ${piddir}
Subsys directory: ${subsysdir}
+ Man directory: ${mandir}
C Compiler: ${CC} ${CCVERSION}
C++ Compiler: ${CXX} ${CXXVERSION}
Compiler flags: ${WCFLAGS} ${CFLAGS}
Bacula conio support: ${got_conio} ${CONS_LIBS}
readline support: ${got_readline} ${PRTREADLINE_SRC}
TCP Wrappers support: ${TCPW_MSG}
+ 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}
ACL support: ${have_acl}
" > config.out
cat config.out
-
-# old stuff
-# cweb support: ${got_cweb} ${CWEB_SRC}
-# gmp support: ${got_gmp} ${GMP_SRC}