Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 1 | From 7bad268de8b32281e2a12ccd88038b3ec5eb1be3 Mon Sep 17 00:00:00 2001 |
| 2 | From: Yuanjie Huang <Yuanjie.Huang@windriver.com> |
| 3 | Date: Tue, 15 Dec 2015 18:50:21 +0800 |
| 4 | Subject: [PATCH] Support both db5 and db6. |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 5 | |
| 6 | Upstream-Status: Inappropriate [configuration] |
| 7 | |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 8 | Signed-off-by: Yuanjie Huang <Yuanjie.Huang@windriver.com> |
| 9 | --- |
| 10 | configure.ac | 103 ++++++++++++++++++++++++++++++++++++++++++++++------------- |
| 11 | 1 file changed, 81 insertions(+), 22 deletions(-) |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 12 | |
| 13 | Index: rpm/configure.ac |
| 14 | =================================================================== |
| 15 | --- rpm.orig/configure.ac |
| 16 | +++ rpm/configure.ac |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 17 | @@ -871,8 +871,6 @@ else |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 18 | MYPATH=$PATH |
| 19 | fi |
| 20 | |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 21 | -DBXY=db61 |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 22 | - |
| 23 | AC_PATH_PROG(__BASH, bash, %{_bindir}/bash, $MYPATH) |
| 24 | AC_PATH_PROG(__BZIP2, bzip2, %{_bindir}/bzip2, $MYPATH) |
| 25 | AC_PATH_PROG(__CAT, cat, /bin/cat, $MYPATH) |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 26 | @@ -884,22 +882,6 @@ AC_PATH_PROG(__CMAKE, cmake, %{_bindir}/ |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 27 | AC_PATH_PROG(__CPIO, cpio, /bin/cpio, $MYPATH) |
| 28 | AC_PATH_PROG(__CURL, curl, %{_bindir}/curl, $MYPATH) |
| 29 | AC_PATH_PROG(__CVS, cvs, %{_bindir}/cvs, $MYPATH) |
| 30 | -AC_PATH_PROG(__DB_ARCHIVE, ${DBXY}_archive, %{_bindir}/${DBXY}_archive, $MYPATH) |
| 31 | -AC_PATH_PROG(__DB_CHECKPOINT, ${DBXY}_checkpoint, %{_bindir}/${DBXY}_checkpoint, $MYPATH) |
| 32 | -AC_PATH_PROG(__DB_DEADLOCK, ${DBXY}_deadlock, %{_bindir}/${DBXY}_deadlock, $MYPATH) |
| 33 | -AC_PATH_PROG(__DB_DUMP, ${DBXY}_dump, %{_bindir}/${DBXY}_dump, $MYPATH) |
| 34 | -AC_PATH_PROG(__DB_HOTBACKUP, ${DBXY}_hotbackup, %{_bindir}/${DBXY}_hotbackup, $MYPATH) |
| 35 | -AC_PATH_PROG(__DB_LOAD, ${DBXY}_load, %{_bindir}/${DBXY}_load, $MYPATH) |
| 36 | -AC_PATH_PROG(__DB_LOG_VERIFY, ${DBXY}_log_verify, %{_bindir}/${DBXY}_log_verify, $MYPATH) |
| 37 | -AC_PATH_PROG(__DB_PRINTLOG, ${DBXY}_printlog, %{_bindir}/${DBXY}_printlog, $MYPATH) |
| 38 | -AC_PATH_PROG(__DB_RECOVER, ${DBXY}_recover, %{_bindir}/${DBXY}_recover, $MYPATH) |
| 39 | -AC_PATH_PROG(__DB_REPLICATE, ${DBXY}_replicate, %{_bindir}/${DBXY}_replicate, $MYPATH) |
| 40 | -AC_PATH_PROG(__DBSQL, ${DBXY}sql, %{_bindir}/${DBXY}sql, $MYPATH) |
| 41 | -AC_PATH_PROG(__DB_SQL_CODEGEN, ${DBXY}_sql_codegen, %{_bindir}/${DBXY}_sql_codegen, $MYPATH) |
| 42 | -AC_PATH_PROG(__DB_STAT, ${DBXY}_stat, %{_bindir}/${DBXY}_stat, $MYPATH) |
| 43 | -AC_PATH_PROG(__DB_TUNER, ${DBXY}_tuner, %{_bindir}/${DBXY}_tuner, $MYPATH) |
| 44 | -AC_PATH_PROG(__DB_UPGRADE, ${DBXY}_upgrade, %{_bindir}/${DBXY}_upgrade, $MYPATH) |
| 45 | -AC_PATH_PROG(__DB_VERIFY, ${DBXY}_verify, %{_bindir}/${DBXY}_verify, $MYPATH) |
| 46 | AC_PATH_PROG(__DIFF, diff, /bin/diff, $MYPATH) |
| 47 | AC_PATH_PROG(__DITTO, ditto, %{_bindir}/ditto, $MYPATH) |
| 48 | AC_PATH_PROG(__FILE, file, %{_bindir}/file, $MYPATH) |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 49 | @@ -2050,13 +2032,46 @@ RPM_CHECK_LIB( |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 50 | |
| 51 | dnl # Berkeley-DB & SQLite |
| 52 | DBLIBSRCS="" |
| 53 | +DBXY=db |
| 54 | + |
| 55 | # XXX won't handle --includedir override |
| 56 | -CPPFLAGS="${CPPFLAGS} -I${prefix}/include/${DBXY}" |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 57 | -RPM_CHECK_LIB( |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 58 | +CPPFLAGS_save="${CPPFLAGS}" |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 59 | +CPPFLAGS="${CPPFLAGS_save}" |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 60 | +with_db_save="${with_db}" |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 61 | + |
| 62 | +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ |
| 63 | +#include <db.h> |
| 64 | +]], |
| 65 | +[[ |
| 66 | +#if DB_VERSION_MAJOR < 6 |
| 67 | +#error DB_VERSION_MAJOR is below 6 |
| 68 | +#endif |
| 69 | +]])], |
| 70 | +[RPM_CHECK_LIB( |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 71 | [Berkeley-DB], [db], |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 72 | [db-6.1], [db_create], [db.h], |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 73 | - [yes,external], [db3], |
| 74 | + [yes,external], [db6], |
| 75 | [ DBLIBSRCS="$DBLIBSRCS db3.c" |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 76 | + DBXY=db61 |
| 77 | + AM_CONDITIONAL(WITH_DB, [ true ]) |
| 78 | + AM_CONDITIONAL(WITH_DB_INTERNAL, [ test ".$RPM_CHECK_LIB_LOCATION" = .internal ]) |
| 79 | + if test ".$RPM_CHECK_LIB_LOCATION" = .internal; then |
| 80 | + AC_DEFINE(HAVE_DB_H, 1, [Have <db.h> header]) |
| 81 | + else |
| 82 | + WITH_DB_SUBDIR="" |
| 83 | + fi |
| 84 | + ], |
| 85 | + [ AM_CONDITIONAL(WITH_DB, [ false ]) |
| 86 | + AM_CONDITIONAL(WITH_DB_INTERNAL, [ false ]) |
| 87 | + ])], |
| 88 | +[with_db="${with_db_save}" |
| 89 | + CPPFLAGS="${CPPFLAGS_save}" |
| 90 | + RPM_CHECK_LIB( |
| 91 | + [Berkeley-DB], [db], |
| 92 | + [db-5.3], [db_create], [db.h], |
| 93 | + [yes,external], [db53], |
| 94 | + [ DBLIBSRCS="$DBLIBSRCS db3.c" |
| 95 | + DBXY=db53 |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 96 | AM_CONDITIONAL(WITH_DB, [ true ]) |
| 97 | AM_CONDITIONAL(WITH_DB_INTERNAL, [ test ".$RPM_CHECK_LIB_LOCATION" = .internal ]) |
| 98 | if test ".$RPM_CHECK_LIB_LOCATION" = .internal; then |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 99 | @@ -2068,6 +2083,11 @@ RPM_CHECK_LIB( |
| 100 | [ AM_CONDITIONAL(WITH_DB, [ false ]) |
| 101 | AM_CONDITIONAL(WITH_DB_INTERNAL, [ false ]) |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 102 | ]) |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 103 | +]) |
| 104 | + |
| 105 | +if test ".$ac_cv_lib_db_6_1_db_create" != .yes -a ".$ac_cv_lib_db_5_3_db_create" != .yes; then |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 106 | + CPPFLAGS="${CPPFLAGS_save}" |
| 107 | +fi |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 108 | |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 109 | dnl # Sqlite external |
| 110 | RPM_CHECK_LIB( |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 111 | @@ -2078,10 +2098,11 @@ RPM_CHECK_LIB( |
| 112 | []) |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 113 | |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 114 | dnl # Sqlite 3.8.3.1 from db-6.1.19 |
| 115 | +if test ".$ac_cv_lib_db_6_1_db_create" = .yes; then |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 116 | RPM_CHECK_LIB( |
| 117 | [Berkeley-DB (+SQLite3)], [dbsql], |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 118 | [db_sql-6.1], [sqlite3_open], [dbsql.h], |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 119 | - [yes,external], [db3/sql], |
| 120 | + [yes,external], [db6/sql], |
| 121 | [ |
| 122 | AM_CONDITIONAL(WITH_DBSQL, [ true ]) |
| 123 | AC_DEFINE(WITH_SQLITE, 1, [Define as 1 if building with SQLite library]) |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 124 | @@ -2095,12 +2116,50 @@ RPM_CHECK_LIB( |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 125 | ], [ |
| 126 | AM_CONDITIONAL(WITH_DBSQL, [ false ]) |
| 127 | ]) |
| 128 | +elif test ".$ac_cv_lib_db_5_3_db_create" = .yes; then |
| 129 | +RPM_CHECK_LIB( |
| 130 | + [Berkeley-DB (+SQLite3)], [dbsql], |
| 131 | + [db_sql-5.3], [sqlite3_open], [dbsql.h], |
| 132 | + [yes,external], [db53/sql], |
| 133 | + [ |
| 134 | + AM_CONDITIONAL(WITH_DBSQL, [ true ]) |
| 135 | + AC_DEFINE(WITH_SQLITE, 1, [Define as 1 if building with SQLite library]) |
| 136 | + if test ".$RPM_CHECK_LIB_LOCATION" = .internal; then |
| 137 | + WITH_DB_CPPFLAGS="${WITH_DB_CPPFLAGS} -I\$(top_srcdir)/db/sql/generated" |
| 138 | + WITH_DB_LIBS="${WITH_DBSQL_LIBS}" |
| 139 | + DBLIBSRCS="$DBLIBSRCS sqlite.c" |
| 140 | + else |
| 141 | + WITH_DBSQL_SUBDIR="" |
| 142 | + fi |
| 143 | + ], [ |
| 144 | + AM_CONDITIONAL(WITH_DBSQL, [ false ]) |
| 145 | + ]) |
| 146 | +else |
| 147 | +AM_CONDITIONAL(WITH_DBSQL, [ false ]) |
| 148 | +fi |
| 149 | |
| 150 | DBLIBOBJS=`echo $DBLIBSRCS | sed -e "s/\.c/\.lo/g"` |
| 151 | |
| 152 | AC_SUBST(DBLIBSRCS) |
| 153 | AC_SUBST(DBLIBOBJS) |
| 154 | |
| 155 | +AC_PATH_PROG(__DB_ARCHIVE, ${DBXY}_archive, %{_bindir}/${DBXY}_archive, $MYPATH) |
| 156 | +AC_PATH_PROG(__DB_CHECKPOINT, ${DBXY}_checkpoint, %{_bindir}/${DBXY}_checkpoint, $MYPATH) |
| 157 | +AC_PATH_PROG(__DB_DEADLOCK, ${DBXY}_deadlock, %{_bindir}/${DBXY}_deadlock, $MYPATH) |
| 158 | +AC_PATH_PROG(__DB_DUMP, ${DBXY}_dump, %{_bindir}/${DBXY}_dump, $MYPATH) |
| 159 | +AC_PATH_PROG(__DB_HOTBACKUP, ${DBXY}_hotbackup, %{_bindir}/${DBXY}_hotbackup, $MYPATH) |
| 160 | +AC_PATH_PROG(__DB_LOAD, ${DBXY}_load, %{_bindir}/${DBXY}_load, $MYPATH) |
| 161 | +AC_PATH_PROG(__DB_LOG_VERIFY, ${DBXY}_log_verify, %{_bindir}/${DBXY}_log_verify, $MYPATH) |
| 162 | +AC_PATH_PROG(__DB_PRINTLOG, ${DBXY}_printlog, %{_bindir}/${DBXY}_printlog, $MYPATH) |
| 163 | +AC_PATH_PROG(__DB_RECOVER, ${DBXY}_recover, %{_bindir}/${DBXY}_recover, $MYPATH) |
| 164 | +AC_PATH_PROG(__DB_REPLICATE, ${DBXY}_replicate, %{_bindir}/${DBXY}_replicate, $MYPATH) |
| 165 | +AC_PATH_PROG(__DBSQL, ${DBXY}sql, %{_bindir}/${DBXY}sql, $MYPATH) |
| 166 | +AC_PATH_PROG(__DB_SQL_CODEGEN, ${DBXY}_sql_codegen, %{_bindir}/${DBXY}_sql_codegen, $MYPATH) |
| 167 | +AC_PATH_PROG(__DB_STAT, ${DBXY}_stat, %{_bindir}/${DBXY}_stat, $MYPATH) |
| 168 | +AC_PATH_PROG(__DB_TUNER, ${DBXY}_tuner, %{_bindir}/${DBXY}_tuner, $MYPATH) |
| 169 | +AC_PATH_PROG(__DB_UPGRADE, ${DBXY}_upgrade, %{_bindir}/${DBXY}_upgrade, $MYPATH) |
| 170 | +AC_PATH_PROG(__DB_VERIFY, ${DBXY}_verify, %{_bindir}/${DBXY}_verify, $MYPATH) |
| 171 | + |
| 172 | AC_ARG_WITH(db-largefile, AS_HELP_STRING([--with-db-largefile], [build Berkeley-DB with LARGEFILE support])) |
| 173 | AC_ARG_WITH(db-mutex, AS_HELP_STRING([--with-db-mutex=ARG], [build Berkeley-DB with MUTEX type ARG])) |
| 174 | |