Support both db5 and db6. Upstream-Status: Inappropriate [configuration] Signed-off-by: Mark Hatle Index: rpm/configure.ac =================================================================== --- rpm.orig/configure.ac +++ rpm/configure.ac @@ -547,8 +547,6 @@ else MYPATH=$PATH fi -DBXY=db60 - AC_PATH_PROG(__BASH, bash, %{_bindir}/bash, $MYPATH) AC_PATH_PROG(__BZIP2, bzip2, %{_bindir}/bzip2, $MYPATH) AC_PATH_PROG(__CAT, cat, /bin/cat, $MYPATH) @@ -560,22 +558,6 @@ AC_PATH_PROG(__CMAKE, cmake, %{_bindir}/ AC_PATH_PROG(__CPIO, cpio, /bin/cpio, $MYPATH) AC_PATH_PROG(__CURL, curl, %{_bindir}/curl, $MYPATH) AC_PATH_PROG(__CVS, cvs, %{_bindir}/cvs, $MYPATH) -AC_PATH_PROG(__DB_ARCHIVE, ${DBXY}_archive, %{_bindir}/${DBXY}_archive, $MYPATH) -AC_PATH_PROG(__DB_CHECKPOINT, ${DBXY}_checkpoint, %{_bindir}/${DBXY}_checkpoint, $MYPATH) -AC_PATH_PROG(__DB_DEADLOCK, ${DBXY}_deadlock, %{_bindir}/${DBXY}_deadlock, $MYPATH) -AC_PATH_PROG(__DB_DUMP, ${DBXY}_dump, %{_bindir}/${DBXY}_dump, $MYPATH) -AC_PATH_PROG(__DB_HOTBACKUP, ${DBXY}_hotbackup, %{_bindir}/${DBXY}_hotbackup, $MYPATH) -AC_PATH_PROG(__DB_LOAD, ${DBXY}_load, %{_bindir}/${DBXY}_load, $MYPATH) -AC_PATH_PROG(__DB_LOG_VERIFY, ${DBXY}_log_verify, %{_bindir}/${DBXY}_log_verify, $MYPATH) -AC_PATH_PROG(__DB_PRINTLOG, ${DBXY}_printlog, %{_bindir}/${DBXY}_printlog, $MYPATH) -AC_PATH_PROG(__DB_RECOVER, ${DBXY}_recover, %{_bindir}/${DBXY}_recover, $MYPATH) -AC_PATH_PROG(__DB_REPLICATE, ${DBXY}_replicate, %{_bindir}/${DBXY}_replicate, $MYPATH) -AC_PATH_PROG(__DBSQL, ${DBXY}sql, %{_bindir}/${DBXY}sql, $MYPATH) -AC_PATH_PROG(__DB_SQL_CODEGEN, ${DBXY}_sql_codegen, %{_bindir}/${DBXY}_sql_codegen, $MYPATH) -AC_PATH_PROG(__DB_STAT, ${DBXY}_stat, %{_bindir}/${DBXY}_stat, $MYPATH) -AC_PATH_PROG(__DB_TUNER, ${DBXY}_tuner, %{_bindir}/${DBXY}_tuner, $MYPATH) -AC_PATH_PROG(__DB_UPGRADE, ${DBXY}_upgrade, %{_bindir}/${DBXY}_upgrade, $MYPATH) -AC_PATH_PROG(__DB_VERIFY, ${DBXY}_verify, %{_bindir}/${DBXY}_verify, $MYPATH) AC_PATH_PROG(__DIFF, diff, /bin/diff, $MYPATH) AC_PATH_PROG(__DITTO, ditto, %{_bindir}/ditto, $MYPATH) AC_PATH_PROG(__FILE, file, %{_bindir}/file, $MYPATH) @@ -1604,13 +1586,18 @@ RPM_CHECK_LIB( dnl # Berkeley-DB & SQLite DBLIBSRCS="" +DBXY=db + # XXX won't handle --includedir override -CPPFLAGS="${CPPFLAGS} -I${prefix}/include/${DBXY}" +CPPFLAGS_save="${CPPFLAGS}" +CPPFLAGS="${CPPFLAGS_save} -I${prefix}/include/db-6.0" +with_db_save="${with_db}" RPM_CHECK_LIB( [Berkeley-DB], [db], [db-6.0], [db_create], [db.h], - [yes,external], [db3], + [yes,external], [db6], [ DBLIBSRCS="$DBLIBSRCS db3.c" + DBXY=db60 AM_CONDITIONAL(WITH_DB, [ true ]) AM_CONDITIONAL(WITH_DB_INTERNAL, [ test ".$RPM_CHECK_LIB_LOCATION" = .internal ]) if test ".$RPM_CHECK_LIB_LOCATION" = .internal; then @@ -1619,10 +1606,32 @@ RPM_CHECK_LIB( WITH_DB_SUBDIR="" fi ], - [ AM_CONDITIONAL(WITH_DB, [ false ]) - AM_CONDITIONAL(WITH_DB_INTERNAL, [ false ]) + [ # Reset a few variables to fresh + with_db="${with_db_save}" + CPPFLAGS="${CPPFLAGS_save} -I${prefix}/include/db-5.3" + RPM_CHECK_LIB( + [Berkeley-DB], [db], + [db-5.3], [db_create], [db.h], + [yes,external], [db53], + [ DBLIBSRCS="$DBLIBSRCS db3.c" + DBXY=db53 + AM_CONDITIONAL(WITH_DB, [ true ]) + AM_CONDITIONAL(WITH_DB_INTERNAL, [ test ".$RPM_CHECK_LIB_LOCATION" = .internal ]) + if test ".$RPM_CHECK_LIB_LOCATION" = .internal; then + AC_DEFINE(HAVE_DB_H, 1, [Have header]) + else + WITH_DB_SUBDIR="" + fi + ], + [ AM_CONDITIONAL(WITH_DB, [ false ]) + AM_CONDITIONAL(WITH_DB_INTERNAL, [ false ]) + ]) ]) +if test ".$ac_cv_lib_db_6_0_db_create" != .yes -a ".$ac_cv_lib_db_5_3_db_create" != .yes; then + CPPFLAGS="${CPPFLAGS_save}" +fi + dnl # Sqlite external RPM_CHECK_LIB( [SQLite], [sqlite], @@ -1633,10 +1642,11 @@ RPM_CHECK_LIB( dnl # Sqlite 3.7.0.1 from db-5.1.19 dnl XXX error: `db3' is already registered with AC_CONFIG_SUBDIRS. +if test ".$ac_cv_lib_db_6_0_db_create" = .yes; then RPM_CHECK_LIB( [Berkeley-DB (+SQLite3)], [dbsql], [db_sql-6.0], [sqlite3_open], [dbsql.h], - [yes,external], [db3/sql], + [yes,external], [db6/sql], [ AM_CONDITIONAL(WITH_DBSQL, [ true ]) AC_DEFINE(WITH_SQLITE, 1, [Define as 1 if building with SQLite library]) @@ -1650,12 +1660,50 @@ RPM_CHECK_LIB( ], [ AM_CONDITIONAL(WITH_DBSQL, [ false ]) ]) +elif test ".$ac_cv_lib_db_5_3_db_create" = .yes; then +RPM_CHECK_LIB( + [Berkeley-DB (+SQLite3)], [dbsql], + [db_sql-5.3], [sqlite3_open], [dbsql.h], + [yes,external], [db53/sql], + [ + AM_CONDITIONAL(WITH_DBSQL, [ true ]) + AC_DEFINE(WITH_SQLITE, 1, [Define as 1 if building with SQLite library]) + if test ".$RPM_CHECK_LIB_LOCATION" = .internal; then + WITH_DB_CPPFLAGS="${WITH_DB_CPPFLAGS} -I\$(top_srcdir)/db/sql/generated" + WITH_DB_LIBS="${WITH_DBSQL_LIBS}" + DBLIBSRCS="$DBLIBSRCS sqlite.c" + else + WITH_DBSQL_SUBDIR="" + fi + ], [ + AM_CONDITIONAL(WITH_DBSQL, [ false ]) + ]) +else +AM_CONDITIONAL(WITH_DBSQL, [ false ]) +fi DBLIBOBJS=`echo $DBLIBSRCS | sed -e "s/\.c/\.lo/g"` AC_SUBST(DBLIBSRCS) AC_SUBST(DBLIBOBJS) +AC_PATH_PROG(__DB_ARCHIVE, ${DBXY}_archive, %{_bindir}/${DBXY}_archive, $MYPATH) +AC_PATH_PROG(__DB_CHECKPOINT, ${DBXY}_checkpoint, %{_bindir}/${DBXY}_checkpoint, $MYPATH) +AC_PATH_PROG(__DB_DEADLOCK, ${DBXY}_deadlock, %{_bindir}/${DBXY}_deadlock, $MYPATH) +AC_PATH_PROG(__DB_DUMP, ${DBXY}_dump, %{_bindir}/${DBXY}_dump, $MYPATH) +AC_PATH_PROG(__DB_HOTBACKUP, ${DBXY}_hotbackup, %{_bindir}/${DBXY}_hotbackup, $MYPATH) +AC_PATH_PROG(__DB_LOAD, ${DBXY}_load, %{_bindir}/${DBXY}_load, $MYPATH) +AC_PATH_PROG(__DB_LOG_VERIFY, ${DBXY}_log_verify, %{_bindir}/${DBXY}_log_verify, $MYPATH) +AC_PATH_PROG(__DB_PRINTLOG, ${DBXY}_printlog, %{_bindir}/${DBXY}_printlog, $MYPATH) +AC_PATH_PROG(__DB_RECOVER, ${DBXY}_recover, %{_bindir}/${DBXY}_recover, $MYPATH) +AC_PATH_PROG(__DB_REPLICATE, ${DBXY}_replicate, %{_bindir}/${DBXY}_replicate, $MYPATH) +AC_PATH_PROG(__DBSQL, ${DBXY}sql, %{_bindir}/${DBXY}sql, $MYPATH) +AC_PATH_PROG(__DB_SQL_CODEGEN, ${DBXY}_sql_codegen, %{_bindir}/${DBXY}_sql_codegen, $MYPATH) +AC_PATH_PROG(__DB_STAT, ${DBXY}_stat, %{_bindir}/${DBXY}_stat, $MYPATH) +AC_PATH_PROG(__DB_TUNER, ${DBXY}_tuner, %{_bindir}/${DBXY}_tuner, $MYPATH) +AC_PATH_PROG(__DB_UPGRADE, ${DBXY}_upgrade, %{_bindir}/${DBXY}_upgrade, $MYPATH) +AC_PATH_PROG(__DB_VERIFY, ${DBXY}_verify, %{_bindir}/${DBXY}_verify, $MYPATH) + AC_ARG_WITH(db-largefile, AS_HELP_STRING([--with-db-largefile], [build Berkeley-DB with LARGEFILE support])) AC_ARG_WITH(db-mutex, AS_HELP_STRING([--with-db-mutex=ARG], [build Berkeley-DB with MUTEX type ARG]))