db: Bring in 5.1.19 from poky
authorTom Rini <tom_rini@mentor.com>
Wed, 16 Feb 2011 21:18:53 +0000 (14:18 -0700)
committerTom Rini <tom_rini@mentor.com>
Thu, 17 Feb 2011 16:52:31 +0000 (09:52 -0700)
Based on e77207ccdf15f34651a086099ed4816712e3656b in poky, bring in
5.1.19 (no RPATH issues when using libtool 2.2) and drop un-pinned
4.3.29 and 5.0.21 as this is backwards compatible.

Acked-by: Marco Cavallini <m.cavallini@koansoftware.com>
Signed-off-by: Tom Rini <tom_rini@mentor.com>
recipes/db/db-5.0.21/cp.patch [deleted file]
recipes/db/db-5.1.19/arm-thumb-mutex_db5.patch [new file with mode: 0644]
recipes/db/db-native_4.3.29.bb [deleted file]
recipes/db/db-native_5.0.21.bb [deleted file]
recipes/db/db4-native.inc [deleted file]
recipes/db/db4.inc [deleted file]
recipes/db/db_4.3.29.bb [deleted file]
recipes/db/db_5.0.21.bb [deleted file]
recipes/db/db_5.1.19.bb [moved from recipes/db/db5.inc with 60% similarity]
recipes/db/files/arm-thumb-mutex.patch [deleted file]
recipes/db/files/db5-arm-thumb-mutex.patch [deleted file]

diff --git a/recipes/db/db-5.0.21/cp.patch b/recipes/db/db-5.0.21/cp.patch
deleted file mode 100644 (file)
index b916b06..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
----
- Makefile.in |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- dist.orig/Makefile.in
-+++ dist/Makefile.in
-@@ -1116,7 +1116,7 @@ install_docs:
-           ($(MKDIR) -p $(DESTDIR)$(docdir) && \
-           $(CHMOD) $(dmode) $(DESTDIR)$(docdir))
-       @cd $(DESTDIR)$(docdir) && $(RM) -r $(DOCLIST)
--      @cd $(srcdir)/docs && $(CP) -pr $(DOCLIST) $(DESTDIR)$(docdir)/
-+      @cd $(srcdir)/docs && $(CP) -pR $(DOCLIST) $(DESTDIR)$(docdir)/
-
- uninstall_docs:
-       @cd $(DESTDIR)$(docdir) && $(RM) -r $(DOCLIST)
diff --git a/recipes/db/db-5.1.19/arm-thumb-mutex_db5.patch b/recipes/db/db-5.1.19/arm-thumb-mutex_db5.patch
new file mode 100644 (file)
index 0000000..37d0d93
--- /dev/null
@@ -0,0 +1,36 @@
+--- db-5.1.19/../src/dbinc/mutex_int.h.orig    2011-01-05 19:21:42.181805366 -0600
++++ db-5.1.19/../src/dbinc/mutex_int.h 2011-01-05 19:24:53.141853117 -0600
+@@ -474,6 +474,25 @@
+ #ifdef LOAD_ACTUAL_MUTEX_CODE
+ /* gcc/arm: 0 is clear, 1 is set. */
++#if defined __thumb__
++#define       MUTEX_SET(tsl) ({                                               \
++      int __r, __p;                                                   \
++      __asm__ volatile(                                               \
++              ".align 2\n\t"                                          \
++              "bx     pc\n\t"                                         \
++              "nop\n\t"                                               \
++              ".arm\n\t"                                              \
++              "swpb   %0, %2, [%3]\n\t"                               \
++              "eor    %0, %0, #1\n\t"                                 \
++              "orr    %1, pc, #1\n\t"                                 \
++              "bx     %1\n\t"                                         \
++              ".force_thumb"                                          \
++          : "=&r" (__r), "=r" (__p)                                   \
++          : "r" (1), "r" (tsl)                                        \
++          );                                                          \
++      __r & 1;                                                        \
++})
++#else
+ #define       MUTEX_SET(tsl) ({                                               \
+       int __r;                                                        \
+       __asm__ volatile(                                               \
+@@ -484,6 +503,7 @@
+           );                                                          \
+       __r & 1;                                                        \
+ })
++#endif
+ #define       MUTEX_UNSET(tsl)        (*(volatile tsl_t *)(tsl) = 0)
+ #define       MUTEX_INIT(tsl)         (MUTEX_UNSET(tsl), 0)
diff --git a/recipes/db/db-native_4.3.29.bb b/recipes/db/db-native_4.3.29.bb
deleted file mode 100644 (file)
index 07ac448..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-require db_${PV}.bb
-require db4-native.inc
-
-SRC_URI[md5sum] = "200b9f5d74175875fcb3ee54adbf0007"
-SRC_URI[sha256sum] = "a1fa714482f25a67a19490303a0164326ac63bd7653ae3f4664c2536b14f3337"
diff --git a/recipes/db/db-native_5.0.21.bb b/recipes/db/db-native_5.0.21.bb
deleted file mode 100644 (file)
index 0e6381b..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-require db_${PV}.bb
-require db4-native.inc
diff --git a/recipes/db/db4-native.inc b/recipes/db/db4-native.inc
deleted file mode 100644 (file)
index 7fd753d..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-# This wrapper builds a native version of the Oracal
-# Berkeley DB for those packages which need it (e.g.
-# perl).
-
-VIRTUAL_NAME = "virtual/db-native"
-CONFLICTS = "db3-native"
-#PR tracks the non-native package
-
-inherit native
-
-do_package() {
-:
-}
-
-PACKAGES = ""
diff --git a/recipes/db/db4.inc b/recipes/db/db4.inc
deleted file mode 100644 (file)
index 2595d81..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-# Version 4 of the Berkeley DB from Oracle
-#
-# At present this package only installs the DB code
-# itself (shared libraries, .a in the dev package),
-# documentation and headers.
-#
-# The headers have the same names as those as v3
-# of the DB, only one version can be used *for dev*
-# at once - DB3 and DB4 can both be installed on the
-# same system at the same time if really necessary.
-
-
-DESCRIPTION = "Berkeley DB v4."
-HOMEPAGE = "http://www.oracle.com/technology/products/berkeley-db/db/index.html"
-SECTION = "libs"
-LICENSE = "BSD"
-VIRTUAL_NAME ?= "virtual/db"
-CONFLICTS = "db3"
-
-SRC_URI = "ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/bdb/db-${PV}.tar.gz"
-
-inherit autotools
-
-# Put virtual/db in any appropriate provider of a
-# relational database, use it as a dependency in
-# place of a specific db and use:
-#
-# PREFERRED_PROVIDER_virtual/db
-#
-# to select the correct db in the build (distro) .conf
-PROVIDES += "${VIRTUAL_NAME}"
-
-# bitbake isn't quite clever enough to deal with db,
-# the distribution sits in the expected directory, but all
-# the builds must occur from a sub-directory.  The following
-# persuades bitbake to go to the right place
-S = "${WORKDIR}/db-${PV}/dist"
-B = "${WORKDIR}/db-${PV}/build_unix"
-
-# The executables go in a separate package - typically there
-# is no need to install these unless doing real database
-# management on the system.
-PACKAGES += " ${PN}-bin"
-
-# Package contents
-FILES_${PN} = "${libdir}/libdb-${PVM}${SOLIBSDEV}"
-FILES_${PN}-bin = "${bindir}/*"
-# The dev package has the .so link (as in db3) and the .a's -
-# it is therefore incompatible (cannot be installed at the
-# same time) as the db3 package
-
-EXTRA_OECONF = "${DB4_CONFIG}"
-
-# Override the MUTEX setting here, the POSIX library is
-# the default - "POSIX/pthreads/library".
-# Don't ignore the nice SWP instruction on the ARM:
-# These enable the ARM assembler mutex code, this won't
-# work with thumb compilation...
-ARM_MUTEX = "--with-mutex=ARM/gcc-assembly"
-MUTEX = ""
-MUTEX_arm = "${ARM_MUTEX}"
-MUTEX_armeb = "${ARM_MUTEX}"
-EXTRA_OECONF += "${MUTEX}"
-
-# Cancel the site stuff - it's set for db3 and destroys the
-# configure.
-CONFIG_SITE = ""
-do_configure() {
-       ( cd ${WORKDIR}/db-${PV}/dist ; gnu-configize ) 
-       oe_runconf
-}
-
-
-do_install_append() {
-       # The docs end up in /usr/docs - not right.
-       if test -d "${D}/${prefix}/docs"
-       then
-               mkdir -p "${D}/${datadir}"
-               test ! -d "${D}/${docdir}" || rm -rf "${D}/${docdir}"
-               mv "${D}/${prefix}/docs" "${D}/${docdir}"
-       fi
-}
diff --git a/recipes/db/db_4.3.29.bb b/recipes/db/db_4.3.29.bb
deleted file mode 100644 (file)
index 08ca12d..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-PR = "r12"
-
-# major version number
-PVM = "4.3"
-
-require db4.inc
-
-SRC_URI += "file://arm-thumb-mutex.patch"
-
-#configuration - set in local.conf to override
-# All the --disable-* options replace --enable-smallbuild, which breaks a bunch of stuff (eg. postfix)
-DB4_CONFIG ?= "--enable-o_direct --disable-cryptography --disable-queue --disable-replication --disable-statistics --disable-verify --enable-compat185"
-
-SRC_URI[md5sum] = "200b9f5d74175875fcb3ee54adbf0007"
-SRC_URI[sha256sum] = "a1fa714482f25a67a19490303a0164326ac63bd7653ae3f4664c2536b14f3337"
diff --git a/recipes/db/db_5.0.21.bb b/recipes/db/db_5.0.21.bb
deleted file mode 100644 (file)
index 1a4907f..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-PR = "r3"
-
-# major version number
-PVM = "5.0"
-
-#configuration - set in local.conf to override
-# All the --disable-* options replace --enable-smallbuild, which breaks a bunch of stuff (eg. postfix)
-DB5_CONFIG ?= "--enable-o_direct --disable-cryptography --disable-queue --disable-replication --disable-statistics --disable-verify --enable-compat185"
-
-require db5.inc
-
-SRC_URI += "file://db5-arm-thumb-mutex.patch \
-            file://cp.patch"
-
-SRC_URI[md5sum] = "9a749fd2e98fe15840493ddc34cc66d8"
-SRC_URI[sha256sum] = "061a31a962e992dd1eae5f1e3193241d497a18968e750707526d104b53ab3cc4"
similarity index 60%
rename from recipes/db/db5.inc
rename to recipes/db/db_5.1.19.bb
index 390dfac..c44b958 100644 (file)
@@ -1,4 +1,4 @@
-# Version 5 of the Berkeley DB from Oracle
+# Version 5 of the Berkeley DB from Sleepycat
 #
 # At present this package only installs the DB code
 # itself (shared libraries, .a in the dev package),
@@ -6,18 +6,21 @@
 #
 # The headers have the same names as those as v3
 # of the DB, only one version can be used *for dev*
-# at once - DB3 and DB5 both be installed on the
+# at once - DB3 and DB5 can both be installed on the
 # same system at the same time if really necessary.
-
-
+SECTION = "libs"
 DESCRIPTION = "Berkeley DB v5."
 HOMEPAGE = "http://www.oracle.com/technology/products/berkeley-db/db/index.html"
-SECTION = "libs"
-LICENSE = "BSD"
+LICENSE = "BSD Sleepycat"
 VIRTUAL_NAME ?= "virtual/db"
-CONFLICTS = "db3 db4"
+CONFLICTS = "db3"
+PR = "r1"
+
+SRC_URI = "http://download.oracle.com/berkeley-db/db-${PV}.tar.gz"
+SRC_URI += "file://arm-thumb-mutex_db5.patch"
 
-SRC_URI = "ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/bdb/db-${PV}.tar.gz"
+SRC_URI[md5sum] = "76fcbfeebfcd09ba0b4d96bfdf8d884d"
+SRC_URI[sha256sum] = "0194d4ca9266ba1a1c0bfbc233b18bfd05f63163453c81ebcdfdc7112d5ac850"
 
 inherit autotools
 
@@ -30,7 +33,7 @@ inherit autotools
 # to select the correct db in the build (distro) .conf
 PROVIDES += "${VIRTUAL_NAME}"
 
-# bitbake isn't quite clever enough to deal with db,
+# bitbake isn't quite clever enough to deal with sleepycat,
 # the distribution sits in the expected directory, but all
 # the builds must occur from a sub-directory.  The following
 # persuades bitbake to go to the right place
@@ -43,11 +46,16 @@ B = "${WORKDIR}/db-${PV}/build_unix"
 PACKAGES += " ${PN}-bin"
 
 # Package contents
-FILES_${PN} = "${libdir}/libdb-${PVM}${SOLIBSDEV}"
+FILES_${PN} = "${libdir}/libdb-5*so*"
 FILES_${PN}-bin = "${bindir}/*"
 # The dev package has the .so link (as in db3) and the .a's -
 # it is therefore incompatible (cannot be installed at the
 # same time) as the db3 package
+FILES_${PN}-dev = "${includedir} ${libdir}/*"
+
+#configuration - set in local.conf to override
+# All the --disable-* options replace --enable-smallbuild, which breaks a bunch of stuff (eg. postfix)
+DB5_CONFIG ?= "--enable-o_direct --disable-cryptography --disable-queue --disable-replication --disable-statistics --disable-verify --disable-compat185 --disable-sql"
 
 EXTRA_OECONF = "${DB5_CONFIG}"
 
@@ -62,19 +70,24 @@ MUTEX_arm = "${ARM_MUTEX}"
 MUTEX_armeb = "${ARM_MUTEX}"
 EXTRA_OECONF += "${MUTEX}"
 
-LIBTOOL = "${HOST_SYS}-libtool --tag=CXX"
-EXTRA_OEMAKE = "'LIBTOOL=${LIBTOOL}'"
-
 # Cancel the site stuff - it's set for db3 and destroys the
 # configure.
 CONFIG_SITE = ""
 do_configure() {
-       ( cd ${WORKDIR}/db-${PV}/dist ; gnu-configize ) 
        oe_runconf
 }
 
-
 do_install_append() {
+       mkdir -p ${D}/${includedir}/db51
+       #mv ${D}/${includedir}/db_185.h ${D}/${includedir}/db51/.
+       mv ${D}/${includedir}/db.h ${D}/${includedir}/db51/.
+       mv ${D}/${includedir}/db_cxx.h ${D}/${includedir}/db51/.
+       #mv ${D}/${includedir}/dbsql.h ${D}/${includedir}/db51/.
+       #ln -s db51/db_185.h ${D}/${includedir}/db_185.h
+       ln -s db51/db.h ${D}/${includedir}/db.h
+       ln -s db51/db_cxx.h ${D}/${includedir}/db_cxx.h
+       #ln -s db51/dbsql.h ${D}/${includedir}/dbsql.h
+
        # The docs end up in /usr/docs - not right.
        if test -d "${D}/${prefix}/docs"
        then
@@ -83,3 +96,5 @@ do_install_append() {
                mv "${D}/${prefix}/docs" "${D}/${docdir}"
        fi
 }
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/recipes/db/files/arm-thumb-mutex.patch b/recipes/db/files/arm-thumb-mutex.patch
deleted file mode 100644 (file)
index acd446f..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
---- db-4.3.29-dist/../dbinc/mutex.h    2005-11-15 07:33:27.761042518 -0800
-+++ db-4.3.29-dist/../dbinc/mutex.h    2005-11-15 07:55:24.823920060 -0800
-@@ -470,6 +470,25 @@
- #ifdef LOAD_ACTUAL_MUTEX_CODE
- #define       MUTEX_SET_TEST  1               /* gcc/arm: 0 is clear, 1 is set. */
-+#if defined __thumb__
-+#define       MUTEX_SET(tsl) ({                                               \
-+      int __r, __p;                                                   \
-+      asm volatile(                                                   \
-+              ".align 2\n\t"                                          \
-+              "bx     pc\n\t"                                         \
-+              "nop\n\t"                                               \
-+              ".arm\n\t"                                              \
-+              "swpb   %0, %2, [%3]\n\t"                               \
-+              "eor    %0, %0, #1\n\t"                                 \
-+              "orr    %1, pc, #1\n\t"                                 \
-+              "bx     %1\n\t"                                         \
-+              ".force_thumb"                                          \
-+          : "=&r" (__r), "=r" (__p)                                   \
-+          : "r" (1), "r" (tsl)                                        \
-+          );                                                          \
-+      __r & 1;                                                        \
-+})
-+#else
- #define       MUTEX_SET(tsl) ({                                               \
-       int __r;                                                        \
-       asm volatile(                                                   \
-@@ -480,6 +499,7 @@
-           );                                                          \
-       __r & 1;                                                        \
- })
-+#endif
- #define       MUTEX_UNSET(tsl)        (*(volatile tsl_t *)(tsl) = 0)
- #define       MUTEX_INIT(tsl)         MUTEX_UNSET(tsl)
diff --git a/recipes/db/files/db5-arm-thumb-mutex.patch b/recipes/db/files/db5-arm-thumb-mutex.patch
deleted file mode 100644 (file)
index 51b8882..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-Index: db-5.0.21/../dbinc/mutex_int.h
-===================================================================
---- db-5.0.21.orig/../dbinc/mutex_int.h        2010-03-30 10:36:09.000000000 -0700
-+++ db-5.0.21/../dbinc/mutex_int.h     2010-05-22 12:07:38.281286337 -0700
-@@ -474,6 +474,25 @@ typedef unsigned char tsl_t;
- #ifdef LOAD_ACTUAL_MUTEX_CODE
- /* gcc/arm: 0 is clear, 1 is set. */
-+#if defined __thumb__
-+#define       MUTEX_SET(tsl) ({                                               \
-+      int __r, __p;                                                   \
-+      asm volatile(                                                   \
-+              ".align 2\n\t"                                          \
-+              "bx     pc\n\t"                                         \
-+              "nop\n\t"                                               \
-+              ".arm\n\t"                                              \
-+              "swpb   %0, %2, [%3]\n\t"                               \
-+              "eor    %0, %0, #1\n\t"                                 \
-+              "orr    %1, pc, #1\n\t"                                 \
-+              "bx     %1\n\t"                                         \
-+              ".force_thumb"                                          \
-+          : "=&r" (__r), "=r" (__p)                                   \
-+          : "r" (1), "r" (tsl)                                        \
-+          );                                                          \
-+      __r & 1;                                                        \
-+})
-+#else
- #define       MUTEX_SET(tsl) ({                                               \
-       int __r;                                                        \
-       __asm__ volatile(                                               \
-@@ -484,6 +503,7 @@ typedef unsigned char tsl_t;
-           );                                                          \
-       __r & 1;                                                        \
- })
-+#endif
- #define       MUTEX_UNSET(tsl)        (*(volatile tsl_t *)(tsl) = 0)
- #define       MUTEX_INIT(tsl)         (MUTEX_UNSET(tsl), 0)