Gentoo Archives: gentoo-commits

From: "Tobias Scherbaum (dertobi123)" <dertobi123@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in net-mail/cyrus-imapd: cyrus-imapd-2.3.14-r3.ebuild ChangeLog cyrus-imapd-2.3.13.ebuild cyrus-imapd-2.3.14-r2.ebuild
Date: Thu, 03 Sep 2009 12:45:12
Message-Id: E1MjGVG-00027z-J8@stork.gentoo.org
1 dertobi123 09/09/03 17:53:46
2
3 Modified: ChangeLog
4 Added: cyrus-imapd-2.3.14-r3.ebuild
5 Removed: cyrus-imapd-2.3.13.ebuild
6 cyrus-imapd-2.3.14-r2.ebuild
7 Log:
8 Revbump, #283596
9 (Portage version: 2.2_rc40/cvs/Linux x86_64)
10
11 Revision Changes Path
12 1.142 net-mail/cyrus-imapd/ChangeLog
13
14 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-mail/cyrus-imapd/ChangeLog?rev=1.142&view=markup
15 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-mail/cyrus-imapd/ChangeLog?rev=1.142&content-type=text/plain
16 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-mail/cyrus-imapd/ChangeLog?r1=1.141&r2=1.142
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/ChangeLog,v
21 retrieving revision 1.141
22 retrieving revision 1.142
23 diff -u -r1.141 -r1.142
24 --- ChangeLog 19 Jul 2009 18:16:20 -0000 1.141
25 +++ ChangeLog 3 Sep 2009 17:53:46 -0000 1.142
26 @@ -1,6 +1,13 @@
27 # ChangeLog for net-mail/cyrus-imapd
28 # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/ChangeLog,v 1.141 2009/07/19 18:16:20 nixnut Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/ChangeLog,v 1.142 2009/09/03 17:53:46 dertobi123 Exp $
31 +
32 +*cyrus-imapd-2.3.14-r3 (03 Sep 2009)
33 +
34 + 03 Sep 2009; Tobias Scherbaum <dertobi123@g.o>
35 + -cyrus-imapd-2.3.13.ebuild, -cyrus-imapd-2.3.14-r2.ebuild,
36 + +cyrus-imapd-2.3.14-r3.ebuild, +files/cyrus-imapd-2.3.14-bug283596.patch:
37 + Revbump, #283596
38
39 19 Jul 2009; nixnut <nixnut@g.o> cyrus-imapd-2.3.14.ebuild:
40 ppc stable #271800
41
42
43
44 1.1 net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r3.ebuild
45
46 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r3.ebuild?rev=1.1&view=markup
47 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r3.ebuild?rev=1.1&content-type=text/plain
48
49 Index: cyrus-imapd-2.3.14-r3.ebuild
50 ===================================================================
51 # Copyright 1999-2009 Gentoo Foundation
52 # Distributed under the terms of the GNU General Public License v2
53 # $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/cyrus-imapd-2.3.14-r3.ebuild,v 1.1 2009/09/03 17:53:46 dertobi123 Exp $
54
55 EAPI=1
56
57 inherit autotools db-use eutils flag-o-matic ssl-cert fixheadtails pam multilib
58
59 MY_P=${P/_/}
60
61 DESCRIPTION="The Cyrus IMAP Server."
62 HOMEPAGE="http://asg.web.cmu.edu/cyrus/imapd/"
63 SRC_URI="ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/${MY_P}.tar.gz"
64 LIBWRAP_PATCH_VER="2.2"
65
66 LICENSE="as-is"
67 SLOT="0"
68 KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
69 IUSE="idled kerberos kolab nntp pam replication +sieve snmp ssl tcpd"
70
71 PROVIDE="virtual/imapd"
72 RDEPEND=">=sys-libs/db-3.2
73 >=dev-libs/cyrus-sasl-2.1.13
74 pam? (
75 virtual/pam
76 >=net-mail/mailbase-1
77 )
78 kerberos? ( virtual/krb5 )
79 snmp? ( >=net-analyzer/net-snmp-5.2.2-r1 )
80 ssl? ( >=dev-libs/openssl-0.9.6 )
81 tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
82 kolab? ( net-nds/openldap )
83 nntp? ( !net-nntp/leafnode )"
84
85 DEPEND="$RDEPEND
86 sys-devel/libtool
87 >=sys-devel/autoconf-2.58
88 sys-devel/automake"
89
90 RDEPEND="$RDEPEND
91 !virtual/imapd"
92
93 new_net-snmp_check() {
94 # tcpd USE flag check. Bug #68254.
95 if use tcpd ; then
96 if has_version net-analyzer/net-snmp && ! built_with_use net-analyzer/net-snmp tcpd ; then
97 eerror "You are emerging this package with USE=\"tcpd\""
98 eerror "but \"net-analyzer/net-snmp\" has been emerged with USE=\"-tcpd\""
99 fail_msg
100 fi
101 else
102 if has_version net-analyzer/net-snmp && built_with_use net-analyzer/net-snmp tcpd ; then
103 eerror "You are emerging this package with USE=\"-tcpd\""
104 eerror "but \"net-analyzer/net-snmp\" has been emerged with USE=\"tcpd\""
105 fail_msg
106 fi
107 fi
108 # DynaLoader check. Bug #67411
109
110 if [ -x "$(type -p net-snmp-config)" ]; then
111 einfo "$(type -p net-snmp-config) is found and executable."
112 NSC_AGENTLIBS="$(net-snmp-config --agent-libs)"
113 einfo "NSC_AGENTLIBS=\""${NSC_AGENTLIBS}"\""
114 if [ -z "$NSC_AGENTLIBS" ]; then
115 eerror "NSC_AGENTLIBS is null"
116 einfo "please report this to bugs.gentoo.org"
117 fi
118 for i in ${NSC_AGENTLIBS}; do
119 # check for the DynaLoader path.
120 if [ "$(expr "$i" : '.*\(DynaLoader\)')" == "DynaLoader" ] ; then
121 DYNALOADER_PATH="$i"
122 einfo "DYNALOADER_PATH=\""${DYNALOADER_PATH}"\""
123 if [[ ! -f "${DYNALOADER_PATH}" ]]; then
124 eerror "\""${DYNALOADER_PATH}"\" is not found."
125 einfo "Have you upgraded \"perl\" after"
126 einfo "you emerged \"net-snmp\". Please re-emerge"
127 einfo "\"net-snmp\" then try again. Bug #67411."
128 die "\""${DYNALOADER_PATH}"\" is not found."
129 fi
130 fi
131 done
132 else
133 eerror "\"net-snmp-config\" not found or not executable!"
134 die "You have \"net-snmp\" installed but \"net-snmp-config\" is not found or not executable. Please re-emerge \"net-snmp\" and try again!"
135 fi
136 }
137
138 fail_msg() {
139 eerror "enable "snmp" USE flag for this package requires"
140 eerror "that net-analyzer/net-snmp and this package both build with"
141 eerror "\"tcpd\" or \"-tcpd\". Bug #68254"
142 die "sanity check failed."
143 }
144
145 pkg_setup() {
146 use snmp && new_net-snmp_check
147 enewuser cyrus -1 -1 /usr/cyrus mail
148 }
149
150 S=${WORKDIR}/${MY_P}
151
152 src_unpack() {
153 unpack ${A} && cd "${S}"
154
155 ht_fix_file "${S}"/imap/xversion.sh
156
157 # Fix prestripped binaries
158 epatch "${FILESDIR}/${PN}-strip.patch"
159
160 epatch "${FILESDIR}/${P}-bug283596.patch"
161
162 if use kolab ; then
163 EPATCH_SOURCE="${FILESDIR}/kolab/${PV}" EPATCH_SUFFIX="patch" \
164 EPATCH_FORCE="yes" epatch
165 # These files are being created automatically and need to be updated
166 # # after the patches used above
167 rm -f lib/imapopts.h lib/imapopts.c
168 fi
169
170 # Add libwrap defines as we don't have a dynamicly linked library.
171 use tcpd && epatch "${FILESDIR}/${PN}-${LIBWRAP_PATCH_VER}-libwrap.patch"
172
173 # Fix master(8)->cyrusmaster(8) manpage.
174 for i in `grep -rl -e 'master\.8' -e 'master(8)' "${S}"` ; do
175 sed -i -e 's:master\.8:cyrusmaster.8:g' \
176 -e 's:master(8):cyrusmaster(8):g' \
177 "${i}" || die "sed failed" || die "sed failed"
178 done
179 mv man/master.8 man/cyrusmaster.8 || die "mv failed"
180 sed -i -e "s:MASTER:CYRUSMASTER:g" \
181 -e "s:Master:Cyrusmaster:g" \
182 -e "s:master:cyrusmaster:g" \
183 man/cyrusmaster.8 || die "sed failed"
184
185 # Remove unwanted m4 files
186 rm "cmulocal/ax_path_bdb.m4" || die "Failed to remove cmulocal/ax_path_bdb.m4"
187
188 # Add db-4.7 support
189 epatch "${FILESDIR}/${P}-add-db47-support.patch"
190 # Fix RPATH issues
191 epatch "${FILESDIR}/${P}-fix-db-rpath.patch"
192
193 # Recreate configure.
194 WANT_AUTOCONF="2.5"
195 AT_M4DIR="cmulocal" eautoreconf
196
197 # When linking with rpm, you need to link with more libraries.
198 sed -i -e "s:lrpm:lrpm -lrpmio -lrpmdb:" configure || die "sed failed"
199
200 if use kolab ; then
201 sed -i -e "s/{LIB_SASL}/{LIB_SASL} -lldap -llber /" configure || die
202 "sed failed"
203 fi
204 }
205
206 src_compile() {
207 local myconf
208 myconf="${myconf} $(use_with ssl openssl)"
209 myconf="${myconf} $(use_with snmp ucdsnmp)"
210 myconf="${myconf} $(use_with tcpd libwrap)"
211 myconf="${myconf} $(use_enable kerberos gssapi) $(use_enable kerberos krb5afspts)"
212 myconf="${myconf} $(use_enable idled)"
213 myconf="${myconf} $(use_enable nntp)"
214 myconf="${myconf} $(use_enable replication)"
215
216 if use kerberos; then
217 myconf="${myconf} --with-krb=$(krb5-config --prefix) --with-krbdes=no"
218 else
219 myconf="${myconf} --with-krb=no"
220 fi
221
222 econf \
223 --enable-murder \
224 --enable-listext \
225 --enable-netscapehack \
226 --with-service-path=/usr/$(get_libdir)/cyrus \
227 --with-cyrus-user=cyrus \
228 --with-cyrus-group=mail \
229 --with-com_err=yes \
230 --without-perl \
231 --with-bdb=$(db_libname) \
232 ${myconf} || die "econf failed"
233
234 # needed for parallel make. Bug #72352.
235 cd "${S}"/imap
236 emake xversion.h || die "emake xversion.h failed"
237
238 # -j1 for #222529
239 cd "${S}"
240 emake -j1 || die "compile problem"
241 }
242
243 src_install() {
244 local SUBDIRS
245
246 if use sieve; then
247 SUBDIRS="master imap imtest timsieved notifyd sieve"
248 else
249 SUBDIRS="master imap imtest"
250 fi
251
252 dodir /usr/bin /usr/lib
253 for subdir in ${SUBDIRS}; do
254 make -C "${subdir}" DESTDIR="${D}" install || die "make install failed"
255 done
256
257 # Link master to cyrusmaster (postfix has a master too)
258 dosym /usr/lib/cyrus/master /usr/lib/cyrus/cyrusmaster
259
260 if ! use nntp ; then
261 rm man/fetchnews.8 man/syncnews.8 man/nntpd.8 man/nntptest.1
262 rm "${D}"/usr/bin/nntptest
263 fi
264
265 doman man/*.[0-8]
266 dodoc COPYRIGHT README*
267 dohtml doc/*.html doc/murder.png
268 cp doc/cyrusv2.mc "${D}/usr/share/doc/${PF}/html"
269 cp -r contrib tools "${D}/usr/share/doc/${PF}"
270 find "${D}/usr/share/doc" -name CVS -print0 | xargs -0 rm -rf
271
272 insinto /etc
273 doins "${FILESDIR}/cyrus.conf" "${FILESDIR}/imapd.conf"
274
275 newinitd "${FILESDIR}/cyrus.rc6" cyrus
276 newconfd "${FILESDIR}/cyrus.confd" cyrus
277 newpamd "${FILESDIR}/cyrus.pam-include" sieve
278
279 for subdir in imap/{,db,log,msg,proc,socket,sieve} spool/imap/{,stage.} ; do
280 keepdir "/var/${subdir}"
281 fowners cyrus:mail "/var/${subdir}"
282 fperms 0750 "/var/${subdir}"
283 done
284 for subdir in imap/{user,quota,sieve} spool/imap ; do
285 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
286 keepdir "/var/${subdir}/${i}"
287 fowners cyrus:mail "/var/${subdir}/${i}"
288 fperms 0750 "/var/${subdir}/${i}"
289 done
290 done
291 }
292
293 pkg_postinst() {
294 # do not install server.{key,pem) if they are exist.
295 use ssl && {
296 if [ ! -f "${ROOT}"etc/ssl/cyrus/server.key ]; then
297 install_cert /etc/ssl/cyrus/server
298 chown cyrus:mail "${ROOT}"etc/ssl/cyrus/server.{key,pem}
299 fi
300 }
301
302 if df -T /var/imap | grep -q ' ext2 ' ; then
303 ebegin "Making /var/imap/user/* and /var/imap/quota/* synchronous."
304 chattr +S /var/imap/{user,quota}{,/*}
305 eend $?
306 fi
307
308 if df -T /var/spool/imap | grep -q ' ext2 ' ; then
309 ebegin "Making /var/spool/imap/* synchronous."
310 chattr +S /var/spool/imap{,/*}
311 eend $?
312 fi
313
314 ewarn "If the queue directory of the mail daemon resides on an ext2"
315 ewarn "filesystem you need to set it manually to update"
316 ewarn "synchronously. E.g. 'chattr +S /var/spool/mqueue'."
317 echo
318
319 elog "For correct logging add the following to /etc/syslog.conf:"
320 elog " local6.* /var/log/imapd.log"
321 elog " auth.debug /var/log/auth.log"
322 echo
323
324 elog "You have to add user cyrus to the sasldb2. Do this with:"
325 elog " saslpasswd2 cyrus"
326 }