summaryrefslogtreecommitdiff
path: root/mail
diff options
context:
space:
mode:
authorobache <obache@pkgsrc.org>2010-06-03 06:55:54 +0000
committerobache <obache@pkgsrc.org>2010-06-03 06:55:54 +0000
commit11ff131fce1bcf558994f6f5031a1c9fdd3d07dd (patch)
tree854f36de65d521af87e18655ad2e7564343fd1a9 /mail
parent4284e848293b3ea965381a1ba55d4eab09eca0df (diff)
downloadpkgsrc-11ff131fce1bcf558994f6f5031a1c9fdd3d07dd.tar.gz
* Fix building with db5.
* Bump PKGREVISION for db4 ABI bump, because bdb option is enabled by default.
Diffstat (limited to 'mail')
-rw-r--r--mail/cyrus-imapd23/Makefile3
-rw-r--r--mail/cyrus-imapd23/distinfo3
-rw-r--r--mail/cyrus-imapd23/options.mk4
-rw-r--r--mail/cyrus-imapd23/patches/patch-ap51
4 files changed, 57 insertions, 4 deletions
diff --git a/mail/cyrus-imapd23/Makefile b/mail/cyrus-imapd23/Makefile
index 2a753cd01c4..69a2a6b9eed 100644
--- a/mail/cyrus-imapd23/Makefile
+++ b/mail/cyrus-imapd23/Makefile
@@ -1,6 +1,7 @@
-# $NetBSD: Makefile,v 1.3 2010/05/22 12:05:10 obache Exp $
+# $NetBSD: Makefile,v 1.4 2010/06/03 06:55:54 obache Exp $
DISTNAME= cyrus-imapd-2.3.16
+PKGREVISION= 1
CATEGORIES= mail
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/OLD-VERSIONS/imap/ \
diff --git a/mail/cyrus-imapd23/distinfo b/mail/cyrus-imapd23/distinfo
index 2580752a921..6e5f20ddca8 100644
--- a/mail/cyrus-imapd23/distinfo
+++ b/mail/cyrus-imapd23/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $
+$NetBSD: distinfo,v 1.2 2010/06/03 06:55:54 obache Exp $
SHA1 (cyrus-imapd-2.3.16.tar.gz) = decc87045bfedb449d0af3512aa228090e558036
RMD160 (cyrus-imapd-2.3.16.tar.gz) = fa9d1462a7d7e839da9a11f52cddfd2ab854f2be
@@ -18,3 +18,4 @@ SHA1 (patch-al) = 70b17f045298492978e3756d4a211f35e90b9bb9
SHA1 (patch-am) = d06b62f9ea153560d84ec013861839071e4ab700
SHA1 (patch-an) = b3ac809f2807a1766197958e807eb99cb42847f0
SHA1 (patch-ao) = 784363a1802cbaf08e62bbbd2020fe592be0a126
+SHA1 (patch-ap) = 4a794b806b20270e2b9b551bfae21352389e1352
diff --git a/mail/cyrus-imapd23/options.mk b/mail/cyrus-imapd23/options.mk
index e98b02e8da3..4bedc25ece6 100644
--- a/mail/cyrus-imapd23/options.mk
+++ b/mail/cyrus-imapd23/options.mk
@@ -1,4 +1,4 @@
-# $NetBSD: options.mk,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $
+# $NetBSD: options.mk,v 1.2 2010/06/03 06:55:54 obache Exp $
#
PKG_OPTIONS_VAR= PKG_OPTIONS.cyrus-imapd
@@ -58,7 +58,7 @@ CONFIGURE_ARGS+= --without-zephyr
.endif
.if !empty(PKG_OPTIONS:Mbdb)
-BDB_ACCEPTED= db4 db3
+BDB_ACCEPTED= db3 db4 db5
. include "../../mk/bdb.buildlink3.mk"
CONFIGURE_ARGS+= --with-bdb=${BDB_TYPE}
CONFIGURE_ARGS+= --with-bdb-incdir=${BDBBASE}/include/${BDB_TYPE}
diff --git a/mail/cyrus-imapd23/patches/patch-ap b/mail/cyrus-imapd23/patches/patch-ap
new file mode 100644
index 00000000000..199d84a277c
--- /dev/null
+++ b/mail/cyrus-imapd23/patches/patch-ap
@@ -0,0 +1,51 @@
+$NetBSD: patch-ap,v 1.1 2010/06/03 06:55:54 obache Exp $
+
+Fix building with db5.
+
+--- lib/cyrusdb_berkeley.c.orig 2009-03-10 02:56:22.000000000 +0000
++++ lib/cyrusdb_berkeley.c
+@@ -108,7 +108,7 @@ static void db_panic(DB_ENV *dbenv __att
+ exit(EC_TEMPFAIL);
+ }
+
+-#if (DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 3)
++#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 3))
+ static void db_err(const DB_ENV *dbenv __attribute__((unused)),
+ const char *db_prfx, const char *buffer)
+ #else
+@@ -164,7 +164,7 @@ static int init(const char *dbdir, int m
+ #endif
+ }
+
+-#if (DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 3)
++#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 3))
+ dbenv->set_msgcall(dbenv, db_msg);
+ #endif
+ dbenv->set_errcall(dbenv, db_err);
+@@ -282,7 +282,7 @@ static int mysync(void)
+
+ assert(dbinit);
+
+-#if !(DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1)
++#if !((DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1)))
+ do {
+ #endif
+ #if (DB_VERSION_MAJOR > 3) || ((DB_VERSION_MAJOR == 3) && (DB_VERSION_MINOR > 0))
+@@ -290,7 +290,7 @@ static int mysync(void)
+ #else
+ r = txn_checkpoint(dbenv, 0, 0);
+ #endif
+-#if !(DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1)
++#if !((DB_VERSION_MAJOR > 4) || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1))
+ } while (r == DB_INCOMPLETE); /* Never returned by BDB 4.1 */
+ #endif
+ if (r) {
+@@ -413,7 +413,7 @@ static int myopen(const char *fname, DBT
+ /* xxx set comparator! */
+ if (flags & CYRUSDB_MBOXSORT) db->set_bt_compare(db, mbox_compar);
+
+-#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1
++#if (DB_VERSION_MAJOR > 4) || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1)
+ r = (db->open)(db, NULL, fname, NULL, type, dbflags | DB_AUTO_COMMIT, 0664);
+ #else
+ r = (db->open)(db, fname, NULL, type, dbflags, 0664);