summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-mail/courier-imap')
-rw-r--r--net-mail/courier-imap/Manifest1
-rw-r--r--net-mail/courier-imap/courier-imap-4.17.3.ebuild231
-rw-r--r--net-mail/courier-imap/files/courier-imap-4.17-aclocal-fix.patch12
-rw-r--r--net-mail/courier-imap/files/courier-imap-4.17-db4-bdbobj_configure.ac.patch33
-rw-r--r--net-mail/courier-imap/files/courier-imap-4.17-db4-configure.ac.patch33
-rw-r--r--net-mail/courier-imap/files/courier-imap-4.17-disable-fam-configure.ac.patch27
6 files changed, 337 insertions, 0 deletions
diff --git a/net-mail/courier-imap/Manifest b/net-mail/courier-imap/Manifest
index 19a6b5b20ed7..55a35f8242a4 100644
--- a/net-mail/courier-imap/Manifest
+++ b/net-mail/courier-imap/Manifest
@@ -1,2 +1,3 @@
DIST courier-imap-4.15.tar.bz2 3266353 SHA256 6c34107e7ba9e5396d50b58fb414a495806335cab7135c96ad85a3816785b109 SHA512 7829662282db5e6f414a1d34f06a94c2dd028e263510f01b49ebd3a1a4994055ecc08604568f5a44a30f6411e3a34e0d6c38807c29eaf255752191e885f82e1a WHIRLPOOL 1b5e42bd1f72e3205030b54e9564ce45c4eccb394b31c64a616f225def5a5df05f74ef62c59fbea63b18ce336d77cc2368170a982abb7a6e94d309d0c6ee4dd2
DIST courier-imap-4.16.2.tar.bz2 3028445 SHA256 3be244b3c4d3d5c5e33efb37e4cf712ae83cbe21e43c31725e0d996ab4acc387 SHA512 42a685324b630835fe0c8735a67879e099f96eadf091c803368a9dd478a80b4ab47225fda6142942569c96b21355b5dac5e174ff434bcdc78784a810d2088609 WHIRLPOOL d1d8af441a8c6f13f81705489deded11fdd8f66bf79a66f9076ed4e7b6e0644d9f9034887a043d8c9c9a55031db9c2c9a2ca0ac53cbbef96c5ed25275c50e9e3
+DIST courier-imap-4.17.3.tar.bz2 3202534 SHA256 6dcbd913344634c8d7bde573c5fd55c86307181798df1192b7d777ec567898fc SHA512 3166cc703cdc09a71d33257671a662d95cfdb8977bc3b19e0218a4d25eb99a1a108d2868a6eb593106e6538aadf684f11ff0426cd58d522e3ca4b2988f0a88f1 WHIRLPOOL edc8249f2eb923121978bde8f2895add4d74e3e54839bbf63f4b2e8506d162796f91550d63e7491afbc6e589fe034aa9b91ce8789ec5bd64b0e48a6472243a8c
diff --git a/net-mail/courier-imap/courier-imap-4.17.3.ebuild b/net-mail/courier-imap/courier-imap-4.17.3.ebuild
new file mode 100644
index 000000000000..8bdfa5a4f4bc
--- /dev/null
+++ b/net-mail/courier-imap/courier-imap-4.17.3.ebuild
@@ -0,0 +1,231 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools libtool systemd
+
+DESCRIPTION="An IMAP daemon designed specifically for maildirs"
+HOMEPAGE="http://www.courier-mta.org/"
+SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="berkdb debug fam +gdbm gnutls ipv6 libressl selinux trashquota"
+
+REQUIRED_USE="|| ( berkdb gdbm )"
+
+CDEPEND="
+ gnutls? ( net-libs/gnutls )
+ !gnutls? (
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ )
+ >=net-libs/courier-authlib-0.61
+ >=net-libs/courier-unicode-1.3
+ >=net-mail/mailbase-0.00-r8
+ berkdb? ( sys-libs/db:= )
+ fam? ( virtual/fam )
+ gdbm? ( >=sys-libs/gdbm-1.8.0 )"
+DEPEND="${CDEPEND}
+ dev-lang/perl
+ !mail-mta/courier
+ userland_GNU? ( sys-process/procps )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-courier )"
+
+# get rid of old style virtual - bug 350792
+# all blockers really needed?
+RDEPEND="${RDEPEND}
+ !mail-mta/courier
+ !net-mail/bincimap
+ !net-mail/cyrus-imapd
+ !net-mail/uw-imap"
+
+RC_VER="4.0.6-r1"
+INITD_VER="4.0.6-r1"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.17-disable-fam-configure.ac.patch"
+ "${FILESDIR}/${PN}-4.17-aclocal-fix.patch"
+)
+
+src_prepare() {
+ default
+
+ # These patches should fix problems detecting BerkeleyDB.
+ # We now can compile with db4 support.
+ if use berkdb ; then
+ eapply "${FILESDIR}/${PN}-4.17-db4-bdbobj_configure.ac.patch"
+ eapply "${FILESDIR}/${PN}-4.17-db4-configure.ac.patch"
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=""
+
+ # Default to gdbm if both berkdb and gdbm are present.
+ if use gdbm ; then
+ einfo "Building with GDBM support"
+ myconf="${myconf} --with-db=gdbm"
+ elif use berkdb ; then
+ einfo "Building with BerkeleyDB support"
+ myconf="${myconf} --with-db=db"
+ fi
+
+ if use trashquota ; then
+ einfo "Building with Trash Quota Support"
+ myconf="${myconf} --with-trashquota"
+ fi
+
+ use debug && myconf="${myconf} debug=true"
+
+ econf \
+ --disable-root-check \
+ --bindir=/usr/sbin \
+ --sysconfdir="/etc/${PN}" \
+ --libexecdir="/usr/$(get_libdir)/${PN}" \
+ --localstatedir="/var/lib/${PN}" \
+ --with-authdaemonvar="/var/lib/${PN}/authdaemon" \
+ --enable-workarounds-for-imap-client-bugs \
+ --with-mailuser=mail \
+ --with-mailgroup=mail \
+ $(use_with fam) \
+ $(use_with ipv6) \
+ $(use_with gnutls) \
+ ${myconf}
+
+ # Change the pem file location.
+ sed -i -e "s:^\(TLS_CERTFILE=\).*:\1/etc/courier-imap/imapd.pem:" \
+ libs/imap/imapd-ssl.dist || \
+ die "sed failed"
+
+ sed -i -e "s:^\(TLS_CERTFILE=\).*:\1/etc/courier-imap/pop3d.pem:" \
+ libs/imap/pop3d-ssl.dist || \
+ die "sed failed"
+}
+
+src_compile() {
+ # spurious failures with parallel compiles
+ emake -j1
+}
+
+src_install() {
+ dodir "/var/lib/${PN}" /etc/pam.d
+ default
+ rm -r "${D}/etc/pam.d" || die
+
+ # Avoid name collisions in /usr/sbin wrt imapd and pop3d
+ for name in imapd pop3d ; do
+ mv "${D}/usr/sbin/"{,courier-}${name} \
+ || die "failed to rename ${name} to courier-${name}"
+ done
+
+ # Hack /usr/lib/courier-imap/foo.rc to use ${MAILDIR} instead of
+ # 'Maildir', and to use /usr/sbin/courier-foo names.
+ for service in {imapd,pop3d}{,-ssl} ; do
+ sed -e 's/Maildir/${MAILDIR}/' \
+ -i "${D}/usr/$(get_libdir)/${PN}/${service}.rc" \
+ || die "sed failed"
+ sed -e "s/\/usr\/sbin\/${service}/\/usr\/sbin\/courier-${service}/" \
+ -i "${D}/usr/$(get_libdir)/${PN}/${service}.rc" \
+ || die "sed failed"
+ done
+
+ # Rename the config files correctly and add a value for ${MAILDIR}
+ # to them.
+ for service in {imapd,pop3d}{,-ssl} ; do
+ mv "${D}/etc/${PN}/${service}"{.dist,} \
+ || die "failed to rename ${service}.dist to ${service}"
+ echo -e '\n# Hardwire a value for ${MAILDIR}' \
+ >> "${D}/etc/${PN}/${service}"
+ echo 'MAILDIR=.maildir' >> "${D}/etc/${PN}/${service}"
+ echo 'MAILDIRPATH=.maildir' >> "${D}/etc/${PN}/${service}"
+ done
+
+ for service in imapd pop3d ; do
+ echo -e '# Put any program for ${PRERUN} here' \
+ >> "${D}/etc/${PN}/${service}"
+ echo 'PRERUN=' >> "${D}/etc/${PN}/${service}"
+ echo -e '# Put any program for ${LOGINRUN} here' \
+ >> "${D}/etc/${PN}/${service}"
+ echo -e '# this is for relay-ctrl-allow in 4*' \
+ >> "${D}/etc/${PN}/${service}"
+ echo 'LOGINRUN=' >> "${D}/etc/${PN}/${service}"
+ done
+
+ for x in "${D}/usr/sbin"/* ; do
+ if [[ -L "${x}" ]] ; then
+ rm "${x}" || die "failed to remove ${x}"
+ fi
+ done
+
+ mv "${D}/usr/share"/* "${D}/usr/sbin/" || die
+ mv "${D}/usr/sbin/man" "${D}/usr/share/" || die
+
+ rm "${D}/usr/sbin/"{mkimapdcert,mkpop3dcert} || die
+
+ dosbin "${FILESDIR}/mkimapdcert" "${FILESDIR}/mkpop3dcert"
+
+ dosym /usr/sbin/courierlogger "/usr/$(get_libdir)/${PN}/courierlogger"
+
+ for initd in courier-{imapd,pop3d}{,-ssl} ; do
+ sed -e "s:GENTOO_LIBDIR:$(get_libdir):g" \
+ "${FILESDIR}/${PN}-${INITD_VER}-${initd}.rc6" \
+ > "${T}/${initd}" \
+ || die "initd libdir-sed failed"
+ doinitd "${T}/${initd}"
+ done
+
+ systemd_newunit "${FILESDIR}"/courier-authdaemond-r1.service \
+ courier-authdaemond.service
+ systemd_newunit "${FILESDIR}"/courier-imapd-ssl-r1.service \
+ courier-imapd-ssl.service
+ systemd_newunit "${FILESDIR}"/courier-imapd-r1.service \
+ courier-imapd.service
+
+ exeinto "/usr/$(get_libdir)/${PN}"
+ for exe in gentoo-{imapd,pop3d}{,-ssl}.rc courier-{imapd,pop3d}.indirect ; do
+ sed -e "s:GENTOO_LIBDIR:$(get_libdir):g" \
+ "${FILESDIR}/${PN}-${RC_VER}-${exe}" \
+ > "${T}/${exe}" \
+ || die "exe libdir-sed failed"
+ doexe "${T}/${exe}"
+ done
+
+ # Avoid a collision with mail-mta/netqmail, bug 482098.
+ mv "${D}/usr/sbin/"{,courier-}maildirmake \
+ || die "failed to rename maildirmake to courier-maildirmake"
+ mv "${D}/usr/share/man/man1/"{,courier-}maildirmake.1 \
+ || die "failed to rename maildirmake.1 to courier-maildirmake.1"
+
+ dodoc AUTHORS INSTALL NEWS README ChangeLog
+ dodoc "${FILESDIR}/${PN}-gentoo.readme"
+ docinto imap
+ dodoc libs/imap/ChangeLog libs/imap/BUGS* libs/imap/README*
+ docinto maildir
+ dodoc libs/maildir/AUTHORS libs/maildir/*.html libs/maildir/README*
+ docinto rfc2045
+ dodoc libs/rfc2045/*.html
+ docinto tcpd
+ dodoc libs/tcpd/README* libs/tcpd/*.html
+}
+
+pkg_postinst() {
+ elog "Please read http://www.courier-mta.org/imap/INSTALL.html#upgrading"
+ elog "and remove TLS_DHPARAMS from configuration files or run mkdhparams"
+
+ elog "For a quick-start howto please refer to"
+ elog "${PN}-gentoo.readme in /usr/share/doc/${PF}"
+ # Some users have been reporting that permissions on this directory were
+ # getting scrambled, so let's ensure that they are sane.
+ fperms 0755 "${ROOT}/usr/$(get_libdir)/${PN}"
+}
+
+src_test() {
+ ewarn "make check is not supported by this package due to the"
+ ewarn "--enable-workarounds-for-imap-client-bugs option."
+}
diff --git a/net-mail/courier-imap/files/courier-imap-4.17-aclocal-fix.patch b/net-mail/courier-imap/files/courier-imap-4.17-aclocal-fix.patch
new file mode 100644
index 000000000000..9f88646b223a
--- /dev/null
+++ b/net-mail/courier-imap/files/courier-imap-4.17-aclocal-fix.patch
@@ -0,0 +1,12 @@
+Kill unneeded call to AC_PROG_SYSCONFTOOL (bug #168206).
+
+--- a/configure.ac.orig 2006-12-30 09:28:52.000000000 -0500
++++ b/configure.ac 2007-02-27 12:13:38.000000000 -0500
+@@ -15,7 +15,6 @@
+ AC_PROG_INSTALL
+ AC_PROG_LN_S
+ AC_PROG_MAKE_SET
+-AC_PROG_SYSCONFTOOL
+ AC_LIBTOOL_DLOPEN
+ AM_PROG_LIBTOOL
+
diff --git a/net-mail/courier-imap/files/courier-imap-4.17-db4-bdbobj_configure.ac.patch b/net-mail/courier-imap/files/courier-imap-4.17-db4-bdbobj_configure.ac.patch
new file mode 100644
index 000000000000..1f9b7747a7f8
--- /dev/null
+++ b/net-mail/courier-imap/files/courier-imap-4.17-db4-bdbobj_configure.ac.patch
@@ -0,0 +1,33 @@
+--- a/libs/bdbobj/configure.ac.orig 2013-08-25 20:52:10.000000000 +0200
++++ b/libs/bdbobj/configure.ac 2013-11-22 10:39:25.787861774 +0100
+@@ -23,15 +23,22 @@
+ dnl Checks for libraries.
+
+ saveLIBS="$LIBS"
+-AC_CHECK_LIB(db, dbopen, [ LIBDB=-ldb ; LIBS="-ldb $LIBS" ],
+- AC_CHECK_LIB(db, db_open, [ LIBDB=-ldb ; LIBS="-ldb $LIBS"],
+- AC_CHECK_LIB(db, db_env_create, [ LIBDB=-ldb; LIBS="-ldb $LIBS"])
+- ))
+-
++for dbname in 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
++ do
++ AC_CHECK_LIB($dbname, db_create_4004, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ],
++ AC_CHECK_LIB($dbname, db_create_4003, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ],
++ AC_CHECK_LIB($dbname, db_create_4002, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ],
++ AC_CHECK_LIB($dbname, db_create_4001, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ],
++ AC_CHECK_LIB($dbname, db_create_4000, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ],
++ AC_CHECK_LIB($dbname, db_create, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ]))))))
++ done
+ FOUND_DB=0
+-AC_CHECK_FUNC(dbopen, FOUND_DB=1)
+-AC_CHECK_FUNC(db_open, FOUND_DB=1)
+-AC_CHECK_FUNC(db_env_create, FOUND_DB=1)
++AC_CHECK_FUNC(db_create_4004, FOUND_DB=1)
++AC_CHECK_FUNC(db_create_4003, FOUND_DB=1)
++AC_CHECK_FUNC(db_create_4002, FOUND_DB=1)
++AC_CHECK_FUNC(db_create_4001, FOUND_DB=1)
++AC_CHECK_FUNC(db_create_4000, FOUND_DB=1)
++AC_CHECK_FUNC(db_create, FOUND_DB=1)
+
+ LIBS="$saveLIBS"
+
diff --git a/net-mail/courier-imap/files/courier-imap-4.17-db4-configure.ac.patch b/net-mail/courier-imap/files/courier-imap-4.17-db4-configure.ac.patch
new file mode 100644
index 000000000000..e89c5618f842
--- /dev/null
+++ b/net-mail/courier-imap/files/courier-imap-4.17-db4-configure.ac.patch
@@ -0,0 +1,33 @@
+--- a/configure.ac.orig 2013-09-28 19:44:24.000000000 +0200
++++ b/configure.ac 2013-11-22 10:46:34.910990069 +0100
+@@ -180,15 +180,21 @@
+ if test "$db" != "gdbm"
+ then
+
+- AC_CHECK_LIB(db, dbopen, [ LIBDB=-ldb ; LIBS="-ldb $LIBS" ],
+- AC_CHECK_LIB(db, db_open, [ LIBDB=-ldb ; LIBS="-ldb $LIBS"],
+- AC_CHECK_LIB(db, db_env_create,
+- [ LIBDB=-ldb; LIBS="-ldb $LIBS"])
+- ))
+-
+- AC_CHECK_FUNC(dbopen, HAVE_BDB=1)
+- AC_CHECK_FUNC(db_open, HAVE_BDB=1)
+- AC_CHECK_FUNC(db_env_create, HAVE_BDB=1)
++for dbname in 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
++ do
++ AC_CHECK_LIB($dbname, db_create_4004, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ],
++ AC_CHECK_LIB($dbname, db_create_4003, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ],
++ AC_CHECK_LIB($dbname, db_create_4002, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ],
++ AC_CHECK_LIB($dbname, db_create_4001, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ],
++ AC_CHECK_LIB($dbname, db_create_4000, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ],
++ AC_CHECK_LIB($dbname, db_create, [ LIBDB=-l$dbname ; LIBS="-l$dbname $LIBS"; break ]))))))
++ done
++AC_CHECK_FUNC(db_create_4004, HAVE_BDB=1)
++AC_CHECK_FUNC(db_create_4003, HAVE_BDB=1)
++AC_CHECK_FUNC(db_create_4002, HAVE_BDB=1)
++AC_CHECK_FUNC(db_create_4001, HAVE_BDB=1)
++AC_CHECK_FUNC(db_create_4000, HAVE_BDB=1)
++AC_CHECK_FUNC(db_create, HAVE_BDB=1)
+ fi
+
+ LIBS="$saveLIBS"
diff --git a/net-mail/courier-imap/files/courier-imap-4.17-disable-fam-configure.ac.patch b/net-mail/courier-imap/files/courier-imap-4.17-disable-fam-configure.ac.patch
new file mode 100644
index 000000000000..6d26895c0d7b
--- /dev/null
+++ b/net-mail/courier-imap/files/courier-imap-4.17-disable-fam-configure.ac.patch
@@ -0,0 +1,27 @@
+Bug #48838. Patch to enable/disable FAM support (20 Aug 2004
+langthang@gentoo.org). This patch should fix bug #51540. The fam USE
+flag is not needed for shared folder support.
+
+--- a/libs/maildir/configure.ac.orig 2004-06-08 15:44:23.000000000 -0700
++++ b/libs/maildir/configure.ac 2004-08-14 15:28:20.525714876 -0700
+@@ -73,6 +73,12 @@
+ dnl Checks for library functions.
+ AC_CHECK_HEADER(fam.h, :, :)
+ AC_CHECK_FUNCS(symlink readlink strcasecmp utime utimes)
++AC_ARG_WITH(fam, [ --with-fam Compile with FAM support],
++ fam="$withval",
++ fam="no")
++
++if test "$fam" != "no"
++then
+ AC_CHECK_LIB(fam, FAMOpen, [
+ LIBFAM=-lfam
+ AC_DEFINE_UNQUOTED(HAVE_FAM,1,
+@@ -87,6 +93,7 @@
+ AC_MSG_ERROR([[FAM development libraries not found.]]) ]
+ )
+ ])
++fi
+
+ AC_SUBST(LIBFAM)
+