mirror of
https://git.yoctoproject.org/poky
synced 2026-05-31 12:49:46 +00:00
rpm: Fix support for db5 and db6
The previous attempt to let rpm configuration support both db5 and db6 has a flaw that when the building host provides db6 without its header the db_create test will false pass. This new patch addresses this issue by test against the DB_VERSION_MAJOR macro value, which is defined in both db5 and db6's header. (From OE-Core rev: 59934080f8311a810e7b5ce82a264d4b9de650ec) Signed-off-by: Yuanjie Huang <Yuanjie.Huang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
75cec07a03
commit
95a79a5035
@@ -1,13 +1,19 @@
|
|||||||
Support both db5 and db6.
|
From 7bad268de8b32281e2a12ccd88038b3ec5eb1be3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Yuanjie Huang <Yuanjie.Huang@windriver.com>
|
||||||
|
Date: Tue, 15 Dec 2015 18:50:21 +0800
|
||||||
|
Subject: [PATCH] Support both db5 and db6.
|
||||||
|
|
||||||
Upstream-Status: Inappropriate [configuration]
|
Upstream-Status: Inappropriate [configuration]
|
||||||
|
|
||||||
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
|
Signed-off-by: Yuanjie Huang <Yuanjie.Huang@windriver.com>
|
||||||
|
---
|
||||||
|
configure.ac | 103 ++++++++++++++++++++++++++++++++++++++++++++++-------------
|
||||||
|
1 file changed, 81 insertions(+), 22 deletions(-)
|
||||||
|
|
||||||
Index: rpm/configure.ac
|
diff --git a/configure.ac b/configure.ac
|
||||||
===================================================================
|
index 02716a0..889a425 100644
|
||||||
--- rpm.orig/configure.ac
|
--- a/configure.ac
|
||||||
+++ rpm/configure.ac
|
+++ b/configure.ac
|
||||||
@@ -547,8 +547,6 @@ else
|
@@ -547,8 +547,6 @@ else
|
||||||
MYPATH=$PATH
|
MYPATH=$PATH
|
||||||
fi
|
fi
|
||||||
@@ -17,7 +23,7 @@ Index: rpm/configure.ac
|
|||||||
AC_PATH_PROG(__BASH, bash, %{_bindir}/bash, $MYPATH)
|
AC_PATH_PROG(__BASH, bash, %{_bindir}/bash, $MYPATH)
|
||||||
AC_PATH_PROG(__BZIP2, bzip2, %{_bindir}/bzip2, $MYPATH)
|
AC_PATH_PROG(__BZIP2, bzip2, %{_bindir}/bzip2, $MYPATH)
|
||||||
AC_PATH_PROG(__CAT, cat, /bin/cat, $MYPATH)
|
AC_PATH_PROG(__CAT, cat, /bin/cat, $MYPATH)
|
||||||
@@ -560,22 +558,6 @@ AC_PATH_PROG(__CMAKE, cmake, %{_bindir}/
|
@@ -560,22 +558,6 @@ AC_PATH_PROG(__CMAKE, cmake, %{_bindir}/cmake, $MYPATH)
|
||||||
AC_PATH_PROG(__CPIO, cpio, /bin/cpio, $MYPATH)
|
AC_PATH_PROG(__CPIO, cpio, /bin/cpio, $MYPATH)
|
||||||
AC_PATH_PROG(__CURL, curl, %{_bindir}/curl, $MYPATH)
|
AC_PATH_PROG(__CURL, curl, %{_bindir}/curl, $MYPATH)
|
||||||
AC_PATH_PROG(__CVS, cvs, %{_bindir}/cvs, $MYPATH)
|
AC_PATH_PROG(__CVS, cvs, %{_bindir}/cvs, $MYPATH)
|
||||||
@@ -40,7 +46,7 @@ Index: rpm/configure.ac
|
|||||||
AC_PATH_PROG(__DIFF, diff, /bin/diff, $MYPATH)
|
AC_PATH_PROG(__DIFF, diff, /bin/diff, $MYPATH)
|
||||||
AC_PATH_PROG(__DITTO, ditto, %{_bindir}/ditto, $MYPATH)
|
AC_PATH_PROG(__DITTO, ditto, %{_bindir}/ditto, $MYPATH)
|
||||||
AC_PATH_PROG(__FILE, file, %{_bindir}/file, $MYPATH)
|
AC_PATH_PROG(__FILE, file, %{_bindir}/file, $MYPATH)
|
||||||
@@ -1604,13 +1586,18 @@ RPM_CHECK_LIB(
|
@@ -1598,13 +1580,46 @@ RPM_CHECK_LIB(
|
||||||
|
|
||||||
dnl # Berkeley-DB & SQLite
|
dnl # Berkeley-DB & SQLite
|
||||||
DBLIBSRCS=""
|
DBLIBSRCS=""
|
||||||
@@ -48,55 +54,61 @@ Index: rpm/configure.ac
|
|||||||
+
|
+
|
||||||
# XXX won't handle --includedir override
|
# XXX won't handle --includedir override
|
||||||
-CPPFLAGS="${CPPFLAGS} -I${prefix}/include/${DBXY}"
|
-CPPFLAGS="${CPPFLAGS} -I${prefix}/include/${DBXY}"
|
||||||
|
-RPM_CHECK_LIB(
|
||||||
+CPPFLAGS_save="${CPPFLAGS}"
|
+CPPFLAGS_save="${CPPFLAGS}"
|
||||||
+CPPFLAGS="${CPPFLAGS_save} -I${prefix}/include/db-6.0"
|
+CPPFLAGS="${CPPFLAGS_save} -I${prefix}/include/db-6.0"
|
||||||
+with_db_save="${with_db}"
|
+with_db_save="${with_db}"
|
||||||
RPM_CHECK_LIB(
|
+
|
||||||
|
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||||
|
+#include <db.h>
|
||||||
|
+]],
|
||||||
|
+[[
|
||||||
|
+#if DB_VERSION_MAJOR < 6
|
||||||
|
+#error DB_VERSION_MAJOR is below 6
|
||||||
|
+#endif
|
||||||
|
+]])],
|
||||||
|
+[RPM_CHECK_LIB(
|
||||||
[Berkeley-DB], [db],
|
[Berkeley-DB], [db],
|
||||||
[db-6.0], [db_create], [db.h],
|
[db-6.0], [db_create], [db.h],
|
||||||
- [yes,external], [db3],
|
- [yes,external], [db3],
|
||||||
+ [yes,external], [db6],
|
+ [yes,external], [db6],
|
||||||
[ DBLIBSRCS="$DBLIBSRCS db3.c"
|
[ DBLIBSRCS="$DBLIBSRCS db3.c"
|
||||||
+ DBXY=db60
|
+ 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
|
||||||
|
+ AC_DEFINE(HAVE_DB_H, 1, [Have <db.h> header])
|
||||||
|
+ else
|
||||||
|
+ WITH_DB_SUBDIR=""
|
||||||
|
+ fi
|
||||||
|
+ ],
|
||||||
|
+ [ AM_CONDITIONAL(WITH_DB, [ false ])
|
||||||
|
+ AM_CONDITIONAL(WITH_DB_INTERNAL, [ false ])
|
||||||
|
+ ])],
|
||||||
|
+[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, [ true ])
|
||||||
AM_CONDITIONAL(WITH_DB_INTERNAL, [ test ".$RPM_CHECK_LIB_LOCATION" = .internal ])
|
AM_CONDITIONAL(WITH_DB_INTERNAL, [ test ".$RPM_CHECK_LIB_LOCATION" = .internal ])
|
||||||
if test ".$RPM_CHECK_LIB_LOCATION" = .internal; then
|
if test ".$RPM_CHECK_LIB_LOCATION" = .internal; then
|
||||||
@@ -1619,10 +1606,32 @@ RPM_CHECK_LIB(
|
@@ -1616,6 +1631,11 @@ RPM_CHECK_LIB(
|
||||||
WITH_DB_SUBDIR=""
|
[ AM_CONDITIONAL(WITH_DB, [ false ])
|
||||||
fi
|
AM_CONDITIONAL(WITH_DB_INTERNAL, [ false ])
|
||||||
],
|
|
||||||
- [ 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 <db.h> 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
|
+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}"
|
+ CPPFLAGS="${CPPFLAGS_save}"
|
||||||
+fi
|
+fi
|
||||||
+
|
|
||||||
dnl # Sqlite external
|
dnl # Sqlite external
|
||||||
RPM_CHECK_LIB(
|
RPM_CHECK_LIB(
|
||||||
[SQLite], [sqlite],
|
@@ -1627,10 +1647,11 @@ RPM_CHECK_LIB(
|
||||||
@@ -1633,10 +1642,11 @@ RPM_CHECK_LIB(
|
|
||||||
|
|
||||||
dnl # Sqlite 3.7.0.1 from db-5.1.19
|
dnl # Sqlite 3.7.0.1 from db-5.1.19
|
||||||
dnl XXX error: `db3' is already registered with AC_CONFIG_SUBDIRS.
|
dnl XXX error: `db3' is already registered with AC_CONFIG_SUBDIRS.
|
||||||
@@ -109,7 +121,7 @@ Index: rpm/configure.ac
|
|||||||
[
|
[
|
||||||
AM_CONDITIONAL(WITH_DBSQL, [ true ])
|
AM_CONDITIONAL(WITH_DBSQL, [ true ])
|
||||||
AC_DEFINE(WITH_SQLITE, 1, [Define as 1 if building with SQLite library])
|
AC_DEFINE(WITH_SQLITE, 1, [Define as 1 if building with SQLite library])
|
||||||
@@ -1650,12 +1660,50 @@ RPM_CHECK_LIB(
|
@@ -1644,12 +1665,50 @@ RPM_CHECK_LIB(
|
||||||
], [
|
], [
|
||||||
AM_CONDITIONAL(WITH_DBSQL, [ false ])
|
AM_CONDITIONAL(WITH_DBSQL, [ false ])
|
||||||
])
|
])
|
||||||
@@ -160,3 +172,6 @@ Index: rpm/configure.ac
|
|||||||
AC_ARG_WITH(db-largefile, AS_HELP_STRING([--with-db-largefile], [build Berkeley-DB with LARGEFILE support]))
|
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]))
|
AC_ARG_WITH(db-mutex, AS_HELP_STRING([--with-db-mutex=ARG], [build Berkeley-DB with MUTEX type ARG]))
|
||||||
|
|
||||||
|
--
|
||||||
|
2.6.2
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user