summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Scherbaum <dertobi123@gentoo.org>2009-07-09 19:05:03 +0000
committerTobias Scherbaum <dertobi123@gentoo.org>2009-07-09 19:05:03 +0000
commit81453b05f41be485a5a4fa513a2022d291c59713 (patch)
treed17e5ac7df0177fdb551dd352a867f89d0a6e101 /net-mail
parentRefine lazy version bump prevention mechanism. Change license for Opera 10. (diff)
downloadgentoo-2-81453b05f41be485a5a4fa513a2022d291c59713.tar.gz
gentoo-2-81453b05f41be485a5a4fa513a2022d291c59713.tar.bz2
gentoo-2-81453b05f41be485a5a4fa513a2022d291c59713.zip
Fix build with db-4.7 and fix potential bdb-related rpath issue, thanks to Jorge Manuel B. S. Vicetto. #274595
(Portage version: 2.2_rc33/cvs/Linux i686)
Diffstat (limited to 'net-mail')
-rw-r--r--net-mail/cyrus-imapd/ChangeLog11
-rw-r--r--net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r2.ebuild (renamed from net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r1.ebuild)13
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.14-add-db47-support.patch12
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.14-fix-db-rpath.patch103
4 files changed, 136 insertions, 3 deletions
diff --git a/net-mail/cyrus-imapd/ChangeLog b/net-mail/cyrus-imapd/ChangeLog
index 154b86851687..0ef2bf9d0ce6 100644
--- a/net-mail/cyrus-imapd/ChangeLog
+++ b/net-mail/cyrus-imapd/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for net-mail/cyrus-imapd
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/ChangeLog,v 1.139 2009/06/12 20:38:50 dertobi123 Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/ChangeLog,v 1.140 2009/07/09 19:05:02 dertobi123 Exp $
+
+*cyrus-imapd-2.3.14-r2 (09 Jul 2009)
+
+ 09 Jul 2009; Tobias Scherbaum <dertobi123@gentoo.org>
+ -cyrus-imapd-2.3.14-r1.ebuild, +cyrus-imapd-2.3.14-r2.ebuild,
+ +files/cyrus-imapd-2.3.14-add-db47-support.patch,
+ +files/cyrus-imapd-2.3.14-fix-db-rpath.patch:
+ Fix build with db-4.7 and fix potential bdb-related rpath issue, thanks to
+ Jorge Manuel B. S. Vicetto. #274595
*cyrus-imapd-2.3.14-r1 (12 Jun 2009)
diff --git a/net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r1.ebuild b/net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r2.ebuild
index 99e9f47409e3..fc459b2836f3 100644
--- a/net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r1.ebuild
+++ b/net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r2.ebuild
@@ -1,10 +1,10 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r1.ebuild,v 1.2 2009/06/12 22:35:16 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r2.ebuild,v 1.1 2009/07/09 19:05:02 dertobi123 Exp $
EAPI=1
-inherit autotools eutils ssl-cert fixheadtails pam multilib
+inherit autotools db-use eutils flag-o-matic ssl-cert fixheadtails pam multilib
MY_P=${P/_/}
@@ -130,6 +130,14 @@ src_unpack() {
-e "s:master:cyrusmaster:g" \
man/cyrusmaster.8 || die "sed failed"
+ # Remove unwanted m4 files
+ rm "cmulocal/ax_path_bdb.m4" || die "Failed to remove cmulocal/ax_path_bdb.m4"
+
+ # Add db-4.7 support
+ epatch "${FILESDIR}/${P}-add-db47-support.patch"
+ # Fix RPATH issues
+ epatch "${FILESDIR}/${P}-fix-db-rpath.patch"
+
# Recreate configure.
WANT_AUTOCONF="2.5"
AT_M4DIR="cmulocal" eautoreconf
@@ -168,6 +176,7 @@ src_compile() {
--with-cyrus-group=mail \
--with-com_err=yes \
--without-perl \
+ --with-bdb=$(db_libname) \
${myconf} || die "econf failed"
# needed for parallel make. Bug #72352.
diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.14-add-db47-support.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.14-add-db47-support.patch
new file mode 100644
index 000000000000..ea31cda149f4
--- /dev/null
+++ b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.14-add-db47-support.patch
@@ -0,0 +1,12 @@
+diff -Naur cmulocal.orig/berkdb.m4 cmulocal/berkdb.m4
+--- cmulocal.orig/berkdb.m4 2007-08-15 19:18:01.000000000 +0200
++++ cmulocal/berkdb.m4 2009-07-07 19:34:55.000000000 +0200
+@@ -213,7 +213,7 @@
+ fi
+
+ saved_LIBS=$LIBS
+- for dbname in ${with_bdb} db-4.6 db4.6 db46 db-4.5 db4.5 db45 db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
++ for dbname in ${with_bdb} db-4.7 db4.7 db-4.6 db4.6 db46 db-4.5 db4.5 db45 db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
+ do
+ LIBS="$saved_LIBS -l$dbname"
+ AC_TRY_LINK([#include <stdio.h>
diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.14-fix-db-rpath.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.14-fix-db-rpath.patch
new file mode 100644
index 000000000000..b4ebbc68f07c
--- /dev/null
+++ b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.14-fix-db-rpath.patch
@@ -0,0 +1,103 @@
+diff -u -r cyrus-imapd-2.3.14-old/cmulocal/berkdb.m4 cyrus-imapd-2.3.14/cmulocal/berkdb.m4
+--- cyrus-imapd-2.3.14-old/cmulocal/berkdb.m4 2009-07-09 17:12:12.000000000 +0000
++++ cyrus-imapd-2.3.14/cmulocal/berkdb.m4 2009-07-09 16:54:53.000000000 +0000
+@@ -139,40 +139,6 @@
+ if test "X$RPATH" = "X"; then
+ RPATH=""
+ fi
+- case "${host}" in
+- *-*-linux*)
+- if test "X$RPATH" = "X"; then
+- RPATH="-Wl,-rpath,${DB_LIB_DIR}"
+- else
+- RPATH="${RPATH}:${DB_LIB_DIR}"
+- fi
+- ;;
+- *-*-hpux*)
+- if test "X$RPATH" = "X"; then
+- RPATH="-Wl,+b${DB_LIB_DIR}"
+- else
+- RPATH="${RPATH}:${DB_LIB_DIR}"
+- fi
+- ;;
+- *-*-irix*)
+- if test "X$RPATH" = "X"; then
+- RPATH="-Wl,-rpath,${DB_LIB_DIR}"
+- else
+- RPATH="${RPATH}:${DB_LIB_DIR}"
+- fi
+- ;;
+- *-*-solaris2*)
+- if test "$ac_cv_prog_gcc" = yes; then
+- if test "X$RPATH" = "X"; then
+- RPATH="-Wl,-R${DB_LIB_DIR}"
+- else
+- RPATH="${RPATH}:${DB_LIB_DIR}"
+- fi
+- else
+- RPATH="${RPATH} -R${DB_LIB_DIR}"
+- fi
+- ;;
+- esac
+ AC_SUBST(RPATH)
+ fi
+ ])
+@@ -205,12 +171,6 @@
+ [
+ BDB_SAVE_LDFLAGS=$LDFLAGS
+
+- if test -d $with_bdb_lib; then
+- CMU_ADD_LIBPATH_TO($with_bdb_lib, LDFLAGS)
+- CMU_ADD_LIBPATH_TO($with_bdb_lib, BDB_LIBADD)
+- else
+- BDB_LIBADD=""
+- fi
+
+ saved_LIBS=$LIBS
+ for dbname in ${with_bdb} db-4.7 db4.7 db47 db-4.6 db4.6 db46 db-4.5 db4.5 db45 db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
+diff -u -r cyrus-imapd-2.3.14-old/cmulocal/cyrus.m4 cyrus-imapd-2.3.14/cmulocal/cyrus.m4
+--- cyrus-imapd-2.3.14-old/cmulocal/cyrus.m4 2003-10-08 20:35:24.000000000 +0000
++++ cyrus-imapd-2.3.14/cmulocal/cyrus.m4 2009-07-09 16:54:53.000000000 +0000
+@@ -28,18 +28,3 @@
+ $2="-L$1 ${$2} $andrew_runpath_switch$1"
+ fi
+ ])
+-
+-dnl runpath initialization
+-AC_DEFUN([CMU_GUESS_RUNPATH_SWITCH], [
+- # CMU GUESS RUNPATH SWITCH
+- AC_CACHE_CHECK(for runpath switch, andrew_runpath_switch, [
+- # first, try -R
+- SAVE_LDFLAGS="${LDFLAGS}"
+- LDFLAGS="-R /usr/lib"
+- AC_TRY_LINK([],[],[andrew_runpath_switch="-R"], [
+- LDFLAGS="-Wl,-rpath,/usr/lib"
+- AC_TRY_LINK([],[],[andrew_runpath_switch="-Wl,-rpath,"],
+- [andrew_runpath_switch="none"])
+- ])
+- LDFLAGS="${SAVE_LDFLAGS}"
+- ])])
+diff -u -r cyrus-imapd-2.3.14-old/configure.in cyrus-imapd-2.3.14/configure.in
+--- cyrus-imapd-2.3.14-old/configure.in 2008-10-08 23:28:58.000000000 +0000
++++ cyrus-imapd-2.3.14/configure.in 2009-07-09 17:18:49.000000000 +0000
+@@ -118,9 +118,6 @@
+ CMU_C___ATTRIBUTE__
+ CMU_C_FPIC
+
+-dnl check for -R, etc. switch
+-CMU_GUESS_RUNPATH_SWITCH
+-
+ AC_CHECK_HEADERS(unistd.h sys/select.h sys/param.h stdarg.h)
+ AC_REPLACE_FUNCS(memmove strcasecmp ftruncate strerror)
+ AC_CHECK_FUNCS(strlcat strlcpy getgrouplist)
+@@ -205,10 +202,6 @@
+ supply the --with-bdb-libdir or --with-bdb-incdir configure options.])
+ fi
+
+- if test "$with_bdb_lib" != "none"; then
+- CMU_ADD_LIBPATH($with_bdb_lib)
+- fi
+-
+ BDB_INC=${BDB_INCADD}
+ BDB_LIB=${BDB_LIBADD}
+ AC_SUBST(BDB_INC)