summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Briesenick <sbriesen@gentoo.org>2013-10-18 18:43:02 +0000
committerStefan Briesenick <sbriesen@gentoo.org>2013-10-18 18:43:02 +0000
commitdcc470c8144cce8b6d93660aa6d5d828705e3bf4 (patch)
treec4b387c331f8e0f80b12408c754483f3e66d55e9 /net-mail/cyrus-imapd
parentVersion bump. (diff)
downloadhistorical-dcc470c8144cce8b6d93660aa6d5d828705e3bf4.tar.gz
historical-dcc470c8144cce8b6d93660aa6d5d828705e3bf4.tar.bz2
historical-dcc470c8144cce8b6d93660aa6d5d828705e3bf4.zip
fix configure-error with USE=mysql (bug #477782) and added patch for squatter segfaults.
Package-Manager: portage-2.2.7/cvs/Linux x86_64 Manifest-Sign-Key: 0xBB6C42C7
Diffstat (limited to 'net-mail/cyrus-imapd')
-rw-r--r--net-mail/cyrus-imapd/ChangeLog9
-rw-r--r--net-mail/cyrus-imapd/Manifest24
-rw-r--r--net-mail/cyrus-imapd/cyrus-imapd-2.4.17-r1.ebuild203
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.4.17-statuscache.diff11
4 files changed, 231 insertions, 16 deletions
diff --git a/net-mail/cyrus-imapd/ChangeLog b/net-mail/cyrus-imapd/ChangeLog
index cebed171a6cc..21448fe15b32 100644
--- a/net-mail/cyrus-imapd/ChangeLog
+++ b/net-mail/cyrus-imapd/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for net-mail/cyrus-imapd
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/ChangeLog,v 1.211 2013/02/25 12:09:57 eras Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/ChangeLog,v 1.212 2013/10/18 18:42:51 sbriesen Exp $
+
+*cyrus-imapd-2.4.17-r1 (18 Oct 2013)
+
+ 18 Oct 2013; Stefan Briesenick <sbriesen@gentoo.org>
+ +cyrus-imapd-2.4.17-r1.ebuild, +files/cyrus-imapd-2.4.17-statuscache.diff:
+ fix configure-error with USE=mysql (bug #477782) and added patch for squatter
+ segfaults.
25 Feb 2013; Eray Aslan <eras@gentoo.org> cyrus-imapd-2.4.17.ebuild:
Add cmulocal m4dir to eautoreconf - bug #458956
diff --git a/net-mail/cyrus-imapd/Manifest b/net-mail/cyrus-imapd/Manifest
index be9c3b213154..213bbf0df767 100644
--- a/net-mail/cyrus-imapd/Manifest
+++ b/net-mail/cyrus-imapd/Manifest
@@ -1,6 +1,7 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
+AUX cyrus-imapd-2.4.17-statuscache.diff 400 SHA256 7d3bf6d54a8ce0c26d8d09176ade4d3e3224693105dd16d53584e05ca090bfe7 SHA512 1c8b54a0fc1a98bf4ae0461f9015c8ed3cea1beaec5eab7a11357f4ac3ebdcaec148591cb90a786ad03b13b0c4554fccd4c44ca2a628dec9a03fad3b75b99747 WHIRLPOOL 54ad58d9801bdaa57232988c4ad9ee0bf17d2cebb159292062863bc79ed801a2e488249d81ddfc44180246ed33f05d4d2974ed59e0937bbe1f62f8e3c9e5ccaf
AUX cyrus.conf 1354 SHA256 23189674bb5c2f021f35027cfe22cfe56e022ce5e03da67f5c4913473bec1292 SHA512 898b12057a51bba54920ec61305ba19c3e8b90a86d1cb814acaec9bffccd63cccb04b9240aee4d933a8ebabbf41d8c38029db412796390c10f18ef2ee7e9e138 WHIRLPOOL 34d2884a02b9af705d322c6613cac44516dfd01f727d973c45bb2eaaa33334093a63dcdd39d2947a5a2a6c5dc792ed27b5d395e5b94d640c7ed26bf38daccdf5
AUX cyrus.confd 279 SHA256 3e786c28ffc44a222214b22d8849728360edc37f4b3f7d7c1473a23ab58c28a9 SHA512 a94d158726331479c2260e331c9de0650e881d1292f37c21ee930da793551cce1baca15d7ff555b29b220c32d4bdc7aca78899dfb6f8c61e48c48732a684846c WHIRLPOOL ac706a43a060cb18ad9dec0a92f7becd66d63277364c4844d2e1d735b28ced2a805e9c9dc449c1e55b963eb8884f08d4674a0578e6260d4a35c3154d5974759f
AUX cyrus.pam-include 109 SHA256 d4ef9ed9c7c9add97df75f0e19a833bee872d3863a2b3cb1d0674fefba54e3d8 SHA512 4c96d5b0a675ddb83f26200a8cbd18c7b663aec39eb78f8509751425fb062e39e6d13e4d06090c6765b32e1cce609db075d725a18cbd4638a7f8ce5c858c47a4 WHIRLPOOL 96661c7bfa33f47c15629ba1d4b7ff34a5a83a2334e2862706c6da4bf5c05092c987f6df81dda8f7427c209afe29bc566d81a92e1e79e3a054911969fd717b5b
@@ -9,23 +10,16 @@ AUX imapd.conf 1587 SHA256 69eacd9fffad55f20990fcf3b117fe4e2ac55233515ed70698c65
DIST cyrus-imapd-2.4.16.tar.gz 2484201 SHA256 beac9d6059680bbf65948db60a30c6e8f59786df4a7821c70dc27b2a225f32c4 SHA512 31931e94ebe869516f10886cee5ab152fb6d6376bf009250718077732c6172a6430f3502370e15e94f6165500e5b4108623bceea7c0dcfb3eb746e9ff0fcffab WHIRLPOOL 1e9916d03448e7f036aa6320af69a7ae57ae37205f98d4cfee8c335d9dcdc1c09ba243f4506036da4ca17f859f5c7eef0cb56443dfe51ad3075f0e4d62874fcb
DIST cyrus-imapd-2.4.17.tar.gz 2486355 SHA256 b3e30052c764ee7163947ffde27bdd58bd4dd2e5697ad144491941e46300a583 SHA512 86ffe1664ca3c3df164ed8fca21cc08ddae12380e1485deccec7da4ec263d8b953a806e05f0b10f6fb7717a0d40fc05669792b77cc66d7c5067061c8506e59ee WHIRLPOOL 22566578217a5901793b886ff020aa1deecbb81bf85f54a524b58de129029e51b0aa358db902a2139584d05f668404cb98ca2ff3fa33803ce986e07b95c69c45
EBUILD cyrus-imapd-2.4.16.ebuild 4923 SHA256 fbd6548ed714c81b53c11234ddf600709d93219cca930206fd211f312b6a224c SHA512 7d79935f392faa34bdd183928ed783dd7b94c02a9f6425a0ef9fcd494bd62d641513e4b2007e12e63337274131165c512a9309f29f8831464b0a10573b8bc7a4 WHIRLPOOL 25b5c9359fe874067842aa8d0188542a43cdba75dfe6f4b0d511ab76c8f5e0e18397e46640048ffa3e3460a819895c094a09eac59ec74e3af4c02f0aaa73f870
+EBUILD cyrus-imapd-2.4.17-r1.ebuild 5475 SHA256 4a1320f7cf52670b8b37186689063fb3e5db865b3d163acf7bf8104f4f980ecf SHA512 b216c297105d5aaed27d9a2585d068eec6f12627d5acfc98b577eb75cc32d561be615a946b46038a43ae66b427f08e4c3273d46444f70272501c80ef36222c87 WHIRLPOOL 71073a370e77036daaee8964b778cb9d48e5166b67456d1f7f868a1721018f20fd7dab703ce306c6e1a1aacc2f10028a783ec0139b33f799b311b1f64fbbf246
EBUILD cyrus-imapd-2.4.17.ebuild 5273 SHA256 6b20ee4fa97febec2fdd02830adb6a8d24ff3cb11100779477f029cba0e75f99 SHA512 6a41def455b915b623175a276d4632e9e2a6f2bfe18bbbf896a28865aa4089e59f38db1fda0ecd11f7e4ee4727bdf070874a61d23f09f34e863618165f970f77 WHIRLPOOL 196b724a919d8c4853a3f84429bfb2ca77d77bec1d601241505f6c3a59a2646c0e8689e3feb06b264ed9d014161b153166c62f1a726e7b25dbf3be96244471ba
-MISC ChangeLog 37564 SHA256 fdac0fb682ad61f0b0c242dbc4f25654bfcf070df908b6e059d6a8e6b5d6cb9d SHA512 5a710f7b2b78f3cc610c0183d89260cec5ed24372f3d950d04d58e8bdfcfefcce55e2daafcec44d5cbf62e4ac2e5316eec19dd0b9e6a3fd2a5da060157858d3a WHIRLPOOL 777bf06c70208b8762963e8953980e327479764453cbb601398b0095958b25a3098e189e1e5ee9f39688fc2d6476710e4db626e8a76090dc1c2e91b4bd3e2729
+MISC ChangeLog 37832 SHA256 fbfcba28c3a7bf3462c7867ac8f0078d71d1612c4c29cb34e9f3a219859800b0 SHA512 9b4507848781d568efaf885f39ab1d89170153b6f80c3f4d2476de6ca541adcb8b06b95aa78053280a9bc590dedda5f91ea8f4e4f739617ee17865d512f4a251 WHIRLPOOL 1d3647aa0a179e1b4a1feb009b5a96de2271fbb3307f04b1d9066ca449948718f7179b61f8f4624a151ae62ac0bf283792e71462c90ef15601932003854d323a
MISC metadata.xml 313 SHA256 4fc55c30d8af0d3b7555b4c0d5fa85ccc60232dc786d56a25c5482079a367ecd SHA512 cea96d1ce7e691487f4818d3bccd9fd7eb4794766be6b1a50d261cd78c49c8cca1a48f06f0efd0113bbe999da5341a5b42ba39083a36af6a278fc55e1b01a547 WHIRLPOOL 00267ff3d40dcbba12a8a07b3e34873b586280024a803cd151a6e9391214600320ea133a91e15f2cfdc8779914b5f6a6ff08712f83275183f94acb91fc772c59
-----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.19 (GNU/Linux)
+Version: GnuPG v2.0.22 (GNU/Linux)
-iQIcBAEBCAAGBQJRK1SXAAoJEHfx8XVYajsf2AoQAINQsGvieQp/NV9XkZSvBWMW
-P2H7BbL9JLsmTJL+1WykBFzGR+GrXbsaGaUFKQytY0jTnJbvCpWsVQX0Rn0aeHia
-ImL6dcSt0A75WDLaBFfnmgbnsAQnAIO8ID6l/jQjUaKKN6muuLfmpQOWSL8yj17v
-2J67JTvSdSqxIThKlj+9/qiqqNwHTUCRrDu+rUN6JSxVb1WXX0nlhOrIOOMMEGCe
-Mgm54BbuDPlfJ6rqkZd/uv6n+yXRESP/3V4k9xcRr5e/+WRthIPILYLsuMkFZkpP
-+uyJD7fO4II/gKjwFRfC9kwi7GaWs8g3u6PeCBEq5tPU8tMLK3MYfo2jqWmmtYsd
-mzsed+HdypCsc58n8Og+tIK4qVNFGUpfNNxvMY1u/TdrJxWKT2msJZjmCZCLgZ3I
-btg53oE5M12gNqQX0fwEf0iePnwkTMKX2zrkR0xl3hQZfhQtSMkYHeHcu7gpMrbj
-ag2XDfSsaR969sAVNo+nIO5ytrz/j7dAq5Zy4aAKBRfC6qLN1TShUXU9J+Xd5nW3
-C3zl79TcpmkpFCT7flO4eGqDcSzjlV2eGnCbNlvXT6iBoCD6torfGqiTGZ171Tzg
-UPYE1shMIcgbG2QGXoKO5cwLzIi1LALb3Hp0RCinwQuEB2qY6BYJoaCGrvWpaR3R
-9BE5fh4Ge2VMLLR3RQZE
-=jmju
+iJwEAQEIAAYFAlJhgTMACgkQIaLonLtsQsccrAP/R83B8qQGFnsxY+AO9RzHSkhP
+yer8yF8qnfOwyLxxuglE2wsUqubXQ3BmCPe5Raf3TcNvn/F93wDSJUsvxXEkGIEN
+EOo90D/blqwmhDuwgP8wov2+VjVihCQ3OndzwpSZ4lG1iBnIUTjTIpTto6T0crrE
+aCPfop3sxMdZiqgsMUU=
+=2iEj
-----END PGP SIGNATURE-----
diff --git a/net-mail/cyrus-imapd/cyrus-imapd-2.4.17-r1.ebuild b/net-mail/cyrus-imapd/cyrus-imapd-2.4.17-r1.ebuild
new file mode 100644
index 000000000000..419d2fb75bcc
--- /dev/null
+++ b/net-mail/cyrus-imapd/cyrus-imapd-2.4.17-r1.ebuild
@@ -0,0 +1,203 @@
+# Copyright 1999-2013 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.4.17-r1.ebuild,v 1.1 2013/10/18 18:42:51 sbriesen Exp $
+
+EAPI=4
+
+inherit autotools db-use eutils multilib pam ssl-cert user toolchain-funcs
+
+MY_P=${P/_/}
+
+DESCRIPTION="The Cyrus IMAP Server."
+HOMEPAGE="http://www.cyrusimap.org/"
+SRC_URI="ftp://ftp.cyrusimap.org/cyrus-imapd/${MY_P}.tar.gz"
+
+LICENSE="BSD-with-attribution"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="afs berkdb kerberos mysql nntp pam postgres replication sieve snmp sqlite ssl tcpd"
+
+RDEPEND="sys-libs/zlib
+ >=dev-libs/cyrus-sasl-2.1.13
+ afs? ( net-fs/openafs )
+ berkdb? ( >=sys-libs/db-3.2 )
+ kerberos? ( virtual/krb5 )
+ mysql? ( virtual/mysql )
+ nntp? ( !net-nntp/leafnode )
+ pam? (
+ virtual/pam
+ >=net-mail/mailbase-1
+ )
+ postgres? ( dev-db/postgresql-base )
+ snmp? ( >=net-analyzer/net-snmp-5.2.2-r1 )
+ sqlite? ( dev-db/sqlite )
+ ssl? ( >=dev-libs/openssl-0.9.6 )
+ tcpd? ( >=sys-apps/tcp-wrappers-7.6 snmp? ( net-analyzer/net-snmp[tcpd=] ) )"
+
+DEPEND="$RDEPEND"
+
+# get rid of old style virtual - bug 350792
+# all blockers really needed?
+RDEPEND="${RDEPEND}
+ !mail-mta/courier
+ !net-mail/bincimap
+ !net-mail/courier-imap
+ !net-mail/uw-imap"
+
+REQUIRED_USE="afs? ( kerberos )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ enewuser cyrus -1 -1 /usr/cyrus mail
+}
+
+src_prepare() {
+ # fix squatter segfaults, see:
+ # https://bugzilla.cyrusimap.org/show_bug.cgi?id=3757
+ epatch "${FILESDIR}/${P}-statuscache.diff"
+
+ # Fix master(8)->cyrusmaster(8) manpage.
+ for i in `grep -rl -e 'master\.8' -e 'master(8)' "${S}"` ; do
+ sed -i -e 's:master\.8:cyrusmaster.8:g' \
+ -e 's:master(8):cyrusmaster(8):g' \
+ "${i}" || die "sed failed" || die "sed failed"
+ done
+ mv man/master.8 man/cyrusmaster.8 || die "mv failed"
+ sed -i -e "s:MASTER:CYRUSMASTER:g" \
+ -e "s:Master:Cyrusmaster:g" \
+ -e "s:master:cyrusmaster:g" \
+ man/cyrusmaster.8 || die "sed failed"
+
+ # do not strip
+ sed -i -e '/(INSTALL/s/-s //' "${S}"/imtest/Makefile.in
+
+ # correct afs include and liblwp.a directory
+ sed -i -e '/I${with_afs_incdir/s/\/include//' \
+ -e '/liblwp/s/liblwp/afs\/liblwp/' \
+ "${S}"/configure{,.in} || die
+ # same with lock.h
+ sed -i -e '/lock.h/s:lock.h:afs/lock.h:' \
+ ptclient/afskrb.c || die
+ # libcom_err.a to libafscom_err.a
+ sed -i -e '/afs\/libcom_err.a/s:libcom_err.a:libafscom_err.a:' \
+ configure{,.in} || die
+
+ sed -i -e "s/ar cr/$(tc-getAR) cr/" \
+ perl/sieve/lib/Makefile.in \
+ imap/Makefile.in \
+ lib/Makefile.in \
+ installsieve/Makefile.in \
+ com_err/et/Makefile.in \
+ sieve/Makefile.in \
+ syslog/Makefile.in || die
+
+ AT_M4DIR="cmulocal" eautoreconf
+}
+
+src_configure() {
+ local myconf
+ if use mysql ; then
+ myconf=$(mysql_config --include)
+ myconf="--with-mysql-incdir=${myconf#-I}"
+ myconf+=" --with-mysql-libdir=/usr/$(get_libdir)/mysql"
+ fi
+ if use afs ; then
+ myconf+=" --with-afs-libdir=/usr/$(get_libdir)"
+ myconf+=" --with-afs-incdir=/usr/include/afs"
+ fi
+ if use berkdb ; then
+ myconf+=" --with-bdb-incdir=$(db_includedir)"
+ fi
+ econf \
+ --enable-murder \
+ --enable-netscapehack \
+ --enable-idled \
+ --with-service-path=/usr/$(get_libdir)/cyrus \
+ --with-cyrus-user=cyrus \
+ --with-cyrus-group=mail \
+ --with-com_err=yes \
+ --with-sasl \
+ --without-perl \
+ --without-krb \
+ --without-krbdes \
+ --with-zlib \
+ $(use_enable afs) \
+ $(use_enable afs krb5afspts) \
+ $(use_with berkdb bdb) \
+ $(use_enable nntp) \
+ $(use_enable replication) \
+ $(use_enable kerberos gssapi) \
+ $(use_with mysql) \
+ $(use_with postgres pgsql) \
+ $(use_with sqlite) \
+ $(use_with ssl openssl) \
+ $(use_enable sieve) \
+ $(use_with snmp) \
+ $(use_with tcpd libwrap) \
+ ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # file collision - bug #368245
+ if ! use nntp ; then
+ rm "${D}"/usr/share/man/man8/fetchnews.8*
+ fi
+
+ dodoc README*
+ dohtml doc/*.html doc/murder.png
+ docinto text
+ dodoc doc/text/*
+ cp doc/cyrusv2.mc "${D}/usr/share/doc/${PF}/html"
+ cp -r contrib tools "${D}/usr/share/doc/${PF}"
+ rm -f doc/text/Makefile*
+
+ insinto /etc
+ doins "${FILESDIR}/cyrus.conf" "${FILESDIR}/imapd.conf"
+
+ # turn off sieve if not installed
+ if ! use sieve; then
+ sed -i -e "/sieve/s/^/#/" "${D}/etc/cyrus.conf" || die
+ fi
+
+ newinitd "${FILESDIR}/cyrus.rc6" cyrus
+ newconfd "${FILESDIR}/cyrus.confd" cyrus
+ newpamd "${FILESDIR}/cyrus.pam-include" sieve
+
+ for subdir in imap/{,db,log,msg,proc,socket,sieve} spool/imap/{,stage.} ; do
+ keepdir "/var/${subdir}"
+ fowners cyrus:mail "/var/${subdir}"
+ fperms 0750 "/var/${subdir}"
+ done
+ for subdir in imap/{user,quota,sieve} spool/imap ; do
+ for i in a b c d e f g h i j k l m n o p q r s t v u w x y z ; do
+ keepdir "/var/${subdir}/${i}"
+ fowners cyrus:mail "/var/${subdir}/${i}"
+ fperms 0750 "/var/${subdir}/${i}"
+ done
+ done
+}
+
+pkg_preinst() {
+ if ! has_version ${CATEGORY}/${PN} ; then
+ elog "For correct logging add the following to /etc/syslog.conf:"
+ elog " local6.* /var/log/imapd.log"
+ elog " auth.debug /var/log/auth.log"
+ echo
+
+ elog "You have to add user cyrus to the sasldb2. Do this with:"
+ elog " saslpasswd2 cyrus"
+ fi
+}
+
+pkg_postinst() {
+ # do not install server.{key,pem) if they exist.
+ if use ssl ; then
+ if [ ! -f "${ROOT}"etc/ssl/cyrus/server.key ]; then
+ install_cert /etc/ssl/cyrus/server
+ chown cyrus:mail "${ROOT}"etc/ssl/cyrus/server.{key,pem}
+ fi
+ fi
+}
diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.4.17-statuscache.diff b/net-mail/cyrus-imapd/files/cyrus-imapd-2.4.17-statuscache.diff
new file mode 100644
index 000000000000..b939479e4a78
--- /dev/null
+++ b/net-mail/cyrus-imapd/files/cyrus-imapd-2.4.17-statuscache.diff
@@ -0,0 +1,11 @@
+--- imap/statuscache_db.c.orig 2012-12-01 20:57:54.000000000 +0100
++++ imap/statuscache_db.c 2013-10-18 17:09:42.110915989 +0200
+@@ -152,7 +152,7 @@
+ len = strlcpy(key, mailboxname, sizeof(key));
+ key[len++] = '%';
+ key[len++] = '%';
+- len += strlcpy(key + len, userid, sizeof(key) - len);
++ if (userid) len += strlcpy(key + len, userid, sizeof(key) - len);
+
+ *keylen = len;
+