VERSION=`sed -n -e 's/^.*VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
DATE=`sed -n -e 's/^.*[ \t]*BDATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
LSMDATE=`sed -n -e 's/^.*LSMDATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
+BDB_VERSION=`sed -n -e 's/^.*BDB_VERSION \(.*\)$/\1/p' ${srcdir}/src/cats/cats.h`
AC_SUBST(VERSION)dnl
AC_SUBST(DATE)dnl
AC_SUBST(LSMDATE)dnl
AC_SUBST(BACULA)dnl
AC_SUBST(post_host)dnl
+AC_SUBST(BDB_VERSION)dnl
dnl src/lib
-LIBBAC_LT_CURRENT=`sed -n -e 's/^.*LIBBAC_LT_CURRENT *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBAC_LT_REVISION=`sed -n -e 's/^.*LIBBAC_LT_REVISION *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBAC_LT_AGE=`sed -n -e 's/^.*LIBBAC_LT_AGE *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBACCFG_LT_CURRENT=`sed -n -e 's/^.*LIBBACCFG_LT_CURRENT *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBACCFG_LT_REVISION=`sed -n -e 's/^.*LIBBACCFG_LT_REVISION *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBACCFG_LT_AGE=`sed -n -e 's/^.*LIBBACCFG_LT_AGE *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBACPY_LT_CURRENT=`sed -n -e 's/^.*LIBBACPY_LT_CURRENT *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBACPY_LT_REVISION=`sed -n -e 's/^.*LIBBACPY_LT_REVISION *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBACPY_LT_AGE=`sed -n -e 's/^.*LIBBACPY_LT_AGE *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-
-AC_SUBST(LIBBAC_LT_CURRENT)dnl
-AC_SUBST(LIBBAC_LT_REVISION)dnl
-AC_SUBST(LIBBAC_LT_AGE)dnl
-AC_SUBST(LIBBACCFG_LT_CURRENT)dnl
-AC_SUBST(LIBBACCFG_LT_REVISION)dnl
-AC_SUBST(LIBBACCFG_LT_AGE)dnl
-AC_SUBST(LIBBACPY_LT_CURRENT)dnl
-AC_SUBST(LIBBACPY_LT_REVISION)dnl
-AC_SUBST(LIBBACPY_LT_AGE)dnl
+dnl can be overwritten by specific values from version.h
+LIBBAC_LT_RELEASE=`sed -n -e 's/^#.*LIBBAC_LT_RELEASE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
+LIBBACCFG_LT_RELEASE=`sed -n -e 's/^#.*LIBBACCFG_LT_RELEASE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
+LIBBACPY_LT_RELEASE=`sed -n -e 's/^#.*LIBBACPY_LT_RELEASE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
+
+LIBBAC_LT_RELEASE=${LIBBAC_LT_RELEASE:-$VERSION}
+LIBBACCFG_LT_RELEASE=${LIBBACCFG_LT_RELEASE:-$VERSION}
+LIBBACPY_LT_RELEASE=${LIBBACPY_LT_RELEASE:-$VERSION}
+
+AC_SUBST(LIBBAC_LT_RELEASE)dnl
+AC_SUBST(LIBBACCFG_LT_RELEASE)dnl
+AC_SUBST(LIBBACPY_LT_RELEASE)dnl
dnl src/cats
-LIBBACSQL_LT_CURRENT=`sed -n -e 's/^.*LIBBACSQL_LT_CURRENT *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBACSQL_LT_REVISION=`sed -n -e 's/^.*LIBBACSQL_LT_REVISION *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBACSQL_LT_AGE=`sed -n -e 's/^.*LIBBACSQL_LT_AGE *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-AC_SUBST(LIBBACSQL_LT_CURRENT)dnl
-AC_SUBST(LIBBACSQL_LT_REVISION)dnl
-AC_SUBST(LIBBACSQL_LT_AGE)dnl
+dnl can be overwritten by specific values from version.h
+LIBBACSQL_LT_RELEASE=`sed -n -e 's/^#.*LIBBACSQL_LT_RELEASE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
+
+LIBBACSQL_LT_RELEASE=${LIBBACSQL_LT_RELEASE:-$VERSION}
+
+AC_SUBST(LIBBACSQL_LT_RELEASE)dnl
dnl src/findlib
-LIBBACFIND_LT_CURRENT=`sed -n -e 's/^.*LIBBACFIND_LT_CURRENT *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBACFIND_LT_REVISION=`sed -n -e 's/^.*LIBBACFIND_LT_REVISION *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-LIBBACFIND_LT_AGE=`sed -n -e 's/^.*LIBBACFIND_LT_AGE *\(.*\)$/\1/p' ${srcdir}/src/version.h`
-AC_SUBST(LIBBACFIND_LT_CURRENT)dnl
-AC_SUBST(LIBBACFIND_LT_REVISION)dnl
-AC_SUBST(LIBBACFIND_LT_AGE)dnl
+dnl can be overwritten by specific values from version.h
+LIBBACFIND_LT_RELEASE=`sed -n -e 's/^#.*LIBBACFIND_LT_RELEASE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
+
+LIBBACFIND_LT_RELEASE=${LIBBACFIND_LT_RELEASE:-$VERSION}
+
+AC_SUBST(LIBBACFIND_LT_RELEASE)dnl
echo "configuring for ${BACULA} $VERSION ($DATE)"
fi
TERM_LIB=""
-AC_CHECK_HEADER(termcap.h,
- [ AC_CHECK_LIB(termcap, tgetent,
- [ TERM_LIB="-ltermcap" ],
- [ AC_CHECK_LIB(ncurses, tgetent, [ TERM_LIB="-lncurses" ])
+AC_CHECK_HEADER(curses.h,
+ [ AC_CHECK_LIB(ncurses, tgetent,
+ [ TERM_LIB="-lncurses" ],
+ [ AC_CHECK_LIB(termcap, tgetent, [ TERM_LIB="-ltermcap" ])
])
],
[ AC_CHECK_HEADERS(curses.h)
]
)
- 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])
if test "$ac_cv_openssl_export" = "yes"; then
AC_DEFINE(HAVE_OPENSSL_EXPORT_LIBRARY, 1, [Define if the OpenSSL library is export-contrained to 128bit ciphers])
fi
+
+ if test "$support_crypto" = "yes"; then
+ AC_CHECK_LIB(ssl, EVP_PKEY_encrypt_old, AC_DEFINE(HAVE_OPENSSLv1, 1, [Set if have OpenSSL version 1.x]))
+ fi
+
+ LIBS="${saved_LIBS}"
+ CFLAGS="${saved_CFLAGS}"
else
support_tls="no"
support_crypto="no"
OPENSSL_LIBS=""
OPENSSL_INC=""
fi
+AC_MSG_RESULT([$support_tls])
if test "$support_tls" = "no"; then
OPENSSL_LIBS=""
if test "$support_crypto" = "no"; then
OPENSSL_LIBS=""
OPENSSL_INC=""
-else
- AC_CHECK_LIB(ssl, EVP_PKEY_encrypt_old, AC_DEFINE(HAVE_OPENSSLv1, 1, [Set if have OpenSSL version 1.x]))
fi
-AC_MSG_RESULT([$support_tls])
AC_SUBST(OPENSSL_LIBS)
AC_SUBST(OPENSSL_INC)
dnl
dnl allow setting default executable permissions
dnl
-SBINPERM=0754
+SBINPERM=0750
AC_ARG_WITH(sbin-perm,
- AC_HELP_STRING([--with-sbin-perm=MODE], [specify permissions for sbin binaries @<:@default=0754@:>@]),
+ AC_HELP_STRING([--with-sbin-perm=MODE], [specify permissions for sbin binaries @<:@default=0750@:>@]),
[
if test "x$withval" != "x" ; then
SBINPERM=$withval
]
)
fi
+
+if test x$support_batch_insert = xno; then
+ if test x$DB_TYPE = xmysql; then
+ A=`test -f $MYSQL_LIBDIR/libmysqlclient_r.so && nm -D $MYSQL_LIBDIR/libmysqlclient_r.so | grep pthread_mutex_lock`
+ pkg=$?
+ if test $pkg = 0; then
+ support_batch_insert=yes
+ AC_ARG_ENABLE(batch-insert,
+ AC_HELP_STRING([--enable-batch-insert], [enable the DB batch insert code @<:@default=no@:>@]),
+ [
+ if test x$enableval = xno; then
+ support_batch_insert=no
+ else
+ support_batch_insert=yes
+ fi
+ ]
+ )
+ fi
+ fi
+fi
+
+dnl For postgresql checking
+saved_LIBS="${LIBS}"
+LIBS="${saved_LIBS} ${SQL_LFLAGS}"
-dnl Check if postgresql can support batch mode
+dnl Check if postgresql can support batch mode
if test x$DB_TYPE = xpostgresql; then
+ support_batch_insert=yes
AC_CHECK_LIB(pq, PQisthreadsafe, AC_DEFINE(HAVE_PQISTHREADSAFE, 1, [Set if have PQisthreadsafe]))
AC_CHECK_LIB(pq, PQputCopyData, AC_DEFINE(HAVE_PQ_COPY, 1, [Set if have PQputCopyData]))
- if test "x$ac_cv_lib_pq_PQputCopyData" != "xyes"
- then
- support_batch_insert=no
+ test "x$ac_cv_lib_pq_PQputCopyData" = "xyes"
+ pkg=$?
+ if test $pkg = 0; then
+ AC_ARG_ENABLE(batch-insert,
+ AC_HELP_STRING([--enable-batch-insert], [enable the DB batch insert code @<:@default=no@:>@]),
+ [
+ if test x$enableval = xno; then
+ support_batch_insert=no
+ fi
+ ]
+ )
+ else
+ support_batch_insert=no
fi
fi
if test $DB_PROG = postgresql; then
AC_CHECK_LIB(pq, PQisthreadsafe, AC_DEFINE(HAVE_PQISTHREADSAFE))
AC_CHECK_LIB(pq, PQputCopyData, AC_DEFINE(HAVE_PQ_COPY))
- test "x$ac_cv_lib_pq_PQputCopyData" != "xyes"
+ test "x$ac_cv_lib_pq_PQputCopyData" = "xyes"
pkg=$?
fi
uncomment_dbi="#"
fi
+dnl revert after postgresql checks
+LIBS="${saved_LIBS}"
+
AC_SUBST(uncomment_dbi)
+dnl For Ingres always enable batch inserts.
+if test x$DB_TYPE = xingres; then
+ support_batch_insert=yes
+fi
+
if test $support_batch_insert = yes ; then
AC_DEFINE(HAVE_BATCH_FILE_INSERT, 1, [Set if DB batch insert code enabled])
fi
AC_FUNC_VPRINTF
AC_FUNC_ALLOCA
AC_FUNC_GETMNTENT
+AC_CHECK_FUNCS(getmntinfo, [AC_DEFINE(HAVE_GETMNTINFO)])
AC_FUNC_CLOSEDIR_VOID
AC_FUNC_SETPGRP dnl check for BSD setpgrp.
# AC_FUNC_FNMATCH dnl use local version
AC_CHECK_LIB(sun, getpwnam)
AC_CHECK_HEADERS(zlib.h)
-AC_CHECK_LIB(z, deflate, [FDLIBS="-lz"])
+AC_CHECK_LIB(z, deflate, [ZLIBS="-lz"])
have_zlib=no
-if test x$FDLIBS = x-lz; then
+if test x$ZLIBS = x-lz; then
AC_DEFINE(HAVE_LIBZ)
have_zlib=yes
fi
+AC_SUBST(ZLIBS)
dnl
dnl Check for ACL support and libraries
AC_CHECK_LIB(acl, acl_get_file,
[
have_acl=yes;
- FDLIBS="-lacl $FDLIBS"
+ if test $have_afs = yes; then
+ dnl
+ dnl Because of possible naming conflict with AFS libacl make sure we use the one in /usr/lib64 or /usr/lib !!!
+ dnl
+ if test -d /usr/lib64/; then
+ FDLIBS="-L/usr/lib64 -lacl $FDLIBS"
+ else
+ FDLIBS="-L/usr/lib -lacl $FDLIBS"
+ fi
+ else
+ FDLIBS="-lacl $FDLIBS"
+ fi
], [
AC_CHECK_LIB(pacl, acl_get_file,
[
]
)
+ dnl
+ dnl On OSF1 check for availability of ACL_TYPE_DEFAULT_DIR
+ dnl
+ if test $have_acl = no -a \
+ x${HAVE_OSF1_OS_TRUE} = x; then
+ AC_MSG_CHECKING(for ACL_TYPE_DEFAULT_DIR in acl.h include file)
+ grep ACL_TYPE_DEFAULT_DIR /usr/include/sys/acl.h > /dev/null 2>&1
+ if test $? = 0; then
+ AC_DEFINE(HAVE_ACL_TYPE_DEFAULT_DIR,1,[Defines if your system have the ACL_TYPE_DEFAULT_DIR acl type])
+ AC_MSG_RESULT(yes)
+ else
+ AC_MSG_RESULT(no)
+ fi
+ fi
+
+ dnl
+ dnl On OSX check for availability of ACL_TYPE_EXTENDED
+ dnl
+ if test $have_acl = yes -a \
+ x${HAVE_DARWIN_OS_TRUE} = x; then
+ AC_MSG_CHECKING(for ACL_TYPE_EXTENDED in acl.h include file)
+ grep ACL_TYPE_EXTENDED /usr/include/sys/acl.h > /dev/null 2>&1
+ if test $? = 0; then
+ AC_DEFINE(HAVE_ACL_TYPE_EXTENDED,1,[Defines if your system have the ACL_TYPE_EXTENDED acl type])
+ AC_MSG_RESULT(yes)
+ else
+ AC_MSG_RESULT(no)
+ fi
+ fi
+
if test x$support_acl = xyes -a $have_acl != yes; then
AC_MSG_ERROR([acl support explicitly enabled but no supported acl implementation found,
please either load the acl libraries or rerun configure without --enable-acl])
if test x$DISTVER = x5.6 ; then
AC_DEFINE(HAVE_OLD_SOCKOPT)
fi
- LIBS="$LIBS -lresolv"
+ LIBS="$LIBS -lresolv -lrt"
;;
suse)
DISTVER=`cat /etc/SuSE-release |grep VERSION|\
platforms/suse/Makefile \
platforms/suse/bacula-fd \
platforms/suse/bacula-sd \
- platforms/suse/bacula-dir"
+ platforms/suse/bacula-dir \
+ platforms/suse/bacula"
;;
suse5)
DISTNAME=suse
src/cats/drop_ingres_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 \
chmod 755 $c/update_mysql_tables_10_to_11 $c/update_sqlite3_tables_10_to_11
chmod 755 $c/update_postgresql_tables_10_to_11
+
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
build-dird: ${build_dird}
build-stored: ${build_stored}
Plugin support: ${have_plugins}
+ AFS support: ${have_afs}
ACL support: ${have_acl}
XATTR support: ${have_xattr}
Python support: ${support_python} ${PYTHON_LIBS}