diff options
author | Michael Adam <obnox@samba.org> | 2009-06-19 19:02:04 +0200 |
---|---|---|
committer | Michael Adam <obnox@samba.org> | 2009-06-19 21:13:37 +0200 |
commit | 5ceda58b8dc27bef915128c23f3e9e4a2886b998 (patch) | |
tree | 0bbbead40fea54959efd44cb3cc06793dba0ed67 /source3 | |
parent | ec154a1d81dd2e71ec9fec7ed8abd1329153048e (diff) | |
download | samba-5ceda58b8dc27bef915128c23f3e9e4a2886b998.tar.gz samba-5ceda58b8dc27bef915128c23f3e9e4a2886b998.tar.bz2 samba-5ceda58b8dc27bef915128c23f3e9e4a2886b998.zip |
s3:build: check for availability of external libtdb and use it if available
Link internal libtalloc statiaclly if extenal libtalloc is not found
or does not have appropriate version.
Michael
Diffstat (limited to 'source3')
-rw-r--r-- | source3/configure.in | 52 |
1 files changed, 34 insertions, 18 deletions
diff --git a/source3/configure.in b/source3/configure.in index bed7184ab7..24276f5806 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -33,26 +33,9 @@ done AC_SUBST(LIBTEVENT_OBJ0) LIBS="${LIBS} ${TEVENT_LIBS}" -# TODO: These should come from m4_include(lib/tdb/libtdb.m4) -# but currently this fails: things have to get merged from s4. -tdbdir="../lib/tdb" -AC_SUBST(tdbdir) -TDB_CFLAGS="-I${srcdir-.}/$tdbdir/include" -AC_SUBST(TDB_CFLAGS) - -LIBTDB_OBJ0="" -for o in common/tdb.o common/dump.o common/transaction.o common/error.o \ - common/traverse.o common/freelist.o common/freelistcheck.o \ - common/io.o common/lock.o common/open.o; -do - LIBTDB_OBJ0="$LIBTDB_OBJ0 $tdbdir/$o" -done - -AC_SUBST(LIBTDB_OBJ0) SAMBA_CPPFLAGS="-Iinclude -I${srcdir-.}/include -I. -I${srcdir-.}" SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} -I${srcdir-.}/../lib/replace" SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} ${TEVENT_CFLAGS}" -SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} ${TDB_CFLAGS}" SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} -I${srcdir-.}/libaddns" SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} -I${srcdir-.}/librpc" SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} -I${srcdir-.}/.." @@ -4746,7 +4729,40 @@ then AC_SUBST(LIBTALLOC_OBJ0) fi -SMB_LIBRARY(tdb, 1) + +AC_ARG_ENABLE(external_libtdb, + [AS_HELP_STRING([--enable-external-libtdb], + [Enable external tdb [default=auto]])], + [ enable_external_libtalloc=$enableval ], + [ enable_external_libtalloc=auto ]) + +if test "x$enable_external_libtdb" != xno +then + PKG_CHECK_MODULES(LIBTDB, tdb >= 1.1.4, + [ enable_external_libtdb=yes ], + [ + if test x$enable_external_libtdb = xyes; then + AC_MSG_ERROR([Unable to find libtdb]) + else + enable_external_libtdb=no + fi + ]) +fi + +AC_SUBST(LIBTDB_OBJ0) +if test "x$enable_external_libtdb" = xno +then + m4_include(../lib/tdb/libtdb.m4) + LINK_LIBTDB=STATIC + SMB_LIBRARY(tdb, 1) + LIBTDB_OBJ0="" + for obj in ${TDB_OBJ}; do + LIBTDB_OBJ0="${LIBTDB_OBJ0} ${tdbdir}/${obj}" + done + AC_SUBST(LIBTDB_OBJ0) + SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} ${TDB_CFLAGS}" +fi + SMB_LIBRARY(netapi, 0) SMB_LIBRARY(smbclient, 0) SMB_LIBRARY(smbsharemodes, 0) |