Gentoo Archives: gentoo-commits

From: "Fabian Groffen (grobian)" <grobian@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in mail-mta/exim: exim-4.86_rc4.ebuild ChangeLog exim-4.86_rc2.ebuild
Date: Mon, 29 Jun 2015 09:37:39
Message-Id: 20150629093714.02A7F73F@oystercatcher.gentoo.org
1 grobian 15/06/29 09:37:13
2
3 Modified: ChangeLog
4 Added: exim-4.86_rc4.ebuild
5 Removed: exim-4.86_rc2.ebuild
6 Log:
7 Bump to Exim 4.86 RC4
8
9 (Portage version: 2.2.20-prefix/cvs/SunOS i386, signed Manifest commit with key 0x5F75F607C5C74E89)
10
11 Revision Changes Path
12 1.318 mail-mta/exim/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/exim/ChangeLog?rev=1.318&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/exim/ChangeLog?rev=1.318&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/exim/ChangeLog?r1=1.317&r2=1.318
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/mail-mta/exim/ChangeLog,v
21 retrieving revision 1.317
22 retrieving revision 1.318
23 diff -u -r1.317 -r1.318
24 --- ChangeLog 22 Jun 2015 10:51:45 -0000 1.317
25 +++ ChangeLog 29 Jun 2015 09:37:13 -0000 1.318
26 @@ -1,6 +1,12 @@
27 # ChangeLog for mail-mta/exim
28 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/mail-mta/exim/ChangeLog,v 1.317 2015/06/22 10:51:45 grobian Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/mail-mta/exim/ChangeLog,v 1.318 2015/06/29 09:37:13 grobian Exp $
31 +
32 +*exim-4.86_rc4 (29 Jun 2015)
33 +
34 + 29 Jun 2015; Fabian Groffen <grobian@g.o> +exim-4.86_rc4.ebuild,
35 + -exim-4.86_rc2.ebuild:
36 + Bump to Exim 4.86 RC4
37
38 *exim-4.86_rc3 (22 Jun 2015)
39
40
41
42
43 1.1 mail-mta/exim/exim-4.86_rc4.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/exim/exim-4.86_rc4.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/exim/exim-4.86_rc4.ebuild?rev=1.1&content-type=text/plain
47
48 Index: exim-4.86_rc4.ebuild
49 ===================================================================
50 # Copyright 1999-2015 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/mail-mta/exim/exim-4.86_rc4.ebuild,v 1.1 2015/06/29 09:37:13 grobian Exp $
53
54 EAPI="5"
55
56 inherit eutils toolchain-funcs multilib pam systemd
57
58 IUSE="dcc +dkim dlfunc dmarc +dnsdb doc dovecot-sasl dsn exiscan-acl gnutls ipv6 ldap lmtp maildir mbx mysql nis pam perl pkcs11 postgres +prdr proxy radius redis sasl selinux spf sqlite srs ssl syslog tcpd tpda X"
59 REQUIRED_USE="spf? ( exiscan-acl ) srs? ( exiscan-acl ) dmarc? ( spf dkim ) pkcs11? ( gnutls )"
60
61 COMM_URI="ftp://ftp.exim.org/pub/exim/exim4$([[ ${PV} == *_rc* ]] && echo /test)"
62
63 DESCRIPTION="A highly configurable, drop-in replacement for sendmail"
64 SRC_URI="${COMM_URI}/${P//rc/RC}.tar.bz2
65 mirror://gentoo/system_filter.exim.gz
66 doc? ( ${COMM_URI}/${PN}-html-${PV//rc/RC}.tar.bz2 )"
67 HOMEPAGE="http://www.exim.org/"
68
69 SLOT="0"
70 LICENSE="GPL-2"
71 KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-solaris"
72
73 COMMON_DEPEND=">=sys-apps/sed-4.0.5
74 >=sys-libs/db-3.2
75 dev-libs/libpcre
76 perl? ( dev-lang/perl:= )
77 pam? ( virtual/pam )
78 tcpd? ( sys-apps/tcp-wrappers )
79 ssl? ( dev-libs/openssl )
80 gnutls? ( net-libs/gnutls[pkcs11?]
81 dev-libs/libtasn1 )
82 ldap? ( >=net-nds/openldap-2.0.7 )
83 mysql? ( virtual/mysql )
84 postgres? ( dev-db/postgresql )
85 sasl? ( >=dev-libs/cyrus-sasl-2.1.26-r2 )
86 redis? ( dev-libs/hiredis )
87 spf? ( >=mail-filter/libspf2-1.2.5-r1 )
88 dmarc? ( mail-filter/opendmarc )
89 srs? ( mail-filter/libsrs_alt )
90 X? ( x11-proto/xproto
91 x11-libs/libX11
92 x11-libs/libXmu
93 x11-libs/libXt
94 x11-libs/libXaw
95 )
96 sqlite? ( dev-db/sqlite )
97 radius? ( net-dialup/radiusclient )
98 virtual/libiconv
99 "
100 # added X check for #57206
101 DEPEND="${COMMON_DEPEND}
102 virtual/pkgconfig"
103 RDEPEND="${COMMON_DEPEND}
104 !mail-mta/courier
105 !mail-mta/esmtp
106 !mail-mta/mini-qmail
107 !<mail-mta/msmtp-1.4.19-r1
108 !>=mail-mta/msmtp-1.4.19-r1[mta]
109 !mail-mta/netqmail
110 !mail-mta/nullmailer
111 !mail-mta/postfix
112 !mail-mta/qmail-ldap
113 !mail-mta/sendmail
114 !mail-mta/opensmtpd
115 !<mail-mta/ssmtp-2.64-r2
116 !>=mail-mta/ssmtp-2.64-r2[mta]
117 !net-mail/mailwrapper
118 >=net-mail/mailbase-0.00-r5
119 virtual/logger
120 dcc? ( mail-filter/dcc )
121 selinux? ( sec-policy/selinux-exim )
122 "
123
124 S=${WORKDIR}/${P//rc/RC}
125
126 src_prepare() {
127 epatch "${FILESDIR}"/exim-4.14-tail.patch
128 epatch "${FILESDIR}"/exim-4.74-localscan_dlopen.patch
129 epatch "${FILESDIR}"/exim-4.69-r1.27021.patch
130 epatch "${FILESDIR}"/exim-4.74-radius-db-ENV-clash.patch # 287426
131 epatch "${FILESDIR}"/exim-4.82-makefile-freebsd.patch # 235785
132 epatch "${FILESDIR}"/exim-4.77-as-needed-ldflags.patch # 352265, 391279
133 epatch "${FILESDIR}"/exim-4.76-crosscompile.patch # 266591
134
135 if use maildir ; then
136 epatch "${FILESDIR}"/exim-4.20-maildir.patch
137 else
138 epatch "${FILESDIR}"/exim-4.80-spool-mail-group.patch # 438606
139 fi
140
141 # user Exim believes it should be
142 MAILUSER=mail
143 MAILGROUP=mail
144 if use prefix && [[ ${EUID} != 0 ]] ; then
145 MAILUSER=$(id -un)
146 MAILGROUP=$(id -gn)
147 fi
148 }
149
150 src_configure() {
151 # general config and paths
152
153 sed -i.orig \
154 -e "/SYSTEM_ALIASES_FILE/s'SYSTEM_ALIASES_FILE'${EPREFIX}/etc/mail/aliases'" \
155 "${S}"/src/configure.default || die
156
157 sed -i -e 's/^buildname=.*/buildname=exim-gentoo/g' Makefile || die
158
159 sed -e "48i\CFLAGS=${CFLAGS}" \
160 -e "s:BIN_DIRECTORY=/usr/exim/bin:BIN_DIRECTORY=${EPREFIX}/usr/sbin:" \
161 -e "s:EXIM_USER=:EXIM_USER=${MAILUSER}:" \
162 -e "s:CONFIGURE_FILE=/usr/exim/configure:CONFIGURE_FILE=${EPREFIX}/etc/exim/exim.conf:" \
163 -e "s:ZCAT_COMMAND=.*$:ZCAT_COMMAND=${EPREFIX}/bin/zcat:" \
164 -e "s:COMPRESS_COMMAND=.*$:COMPRESS_COMMAND=${EPREFIX}/bin/gzip:" \
165 src/EDITME > Local/Makefile
166
167 cd Local
168
169 cat >> Makefile <<- EOC
170 INFO_DIRECTORY=${EPREFIX}/usr/share/info
171 PID_FILE_PATH=${EPREFIX}/run/exim.pid
172 SPOOL_DIRECTORY=${EPREFIX}/var/spool/exim
173 HAVE_ICONV=yes
174 EOC
175
176 # if we use libiconv, now is the time to tell so
177 use !elibc_glibc && echo "EXTRALIBS_EXIM=-liconv" >> Makefile
178
179 # support for IPv6
180 if use ipv6; then
181 cat >> Makefile <<- EOC
182 HAVE_IPV6=YES
183 EOC
184 fi
185
186 #
187 # mail storage formats
188
189 # mailstore is Exim's traditional storage format
190 cat >> Makefile <<- EOC
191 SUPPORT_MAILSTORE=yes
192 EOC
193
194 # mbox
195 if use mbx; then
196 cat >> Makefile <<- EOC
197 SUPPORT_MBX=yes
198 EOC
199 fi
200
201 # maildir
202 if use maildir; then
203 cat >> Makefile <<- EOC
204 SUPPORT_MAILDIR=yes
205 EOC
206 fi
207
208 #
209 # lookup methods
210
211 # use the "native" interfaces to the DBM and CDB libraries, support
212 # passwd and directory lookups by default
213 cat >> Makefile <<- EOC
214 USE_DB=yes
215 DBMLIB=-ldb
216 LOOKUP_CDB=yes
217 LOOKUP_PASSWD=yes
218 LOOKUP_DSEARCH=yes
219 EOC
220
221 if ! use dnsdb; then
222 # DNSDB lookup is enabled by default
223 sed -i "s:^LOOKUP_DNSDB=yes:# LOOKUP_DNSDB=yes:" Makefile
224 fi
225
226 if use ldap; then
227 cat >> Makefile <<- EOC
228 LOOKUP_LDAP=yes
229 LDAP_LIB_TYPE=OPENLDAP2
230 LOOKUP_INCLUDE += -I"${EROOT}"usr/include/ldap
231 LOOKUP_LIBS += -lldap -llber
232 EOC
233 fi
234
235 if use mysql; then
236 cat >> Makefile <<- EOC
237 LOOKUP_MYSQL=yes
238 LOOKUP_INCLUDE += $(mysql_config --include)
239 LOOKUP_LIBS += $(mysql_config --libs)
240 EOC
241 fi
242
243 if use nis; then
244 cat >> Makefile <<- EOC
245 LOOKUP_NIS=yes
246 LOOKUP_NISPLUS=yes
247 EOC
248 fi
249
250 if use postgres; then
251 cat >> Makefile <<- EOC
252 LOOKUP_PGSQL=yes
253 LOOKUP_INCLUDE += -I$(pg_config --includedir)
254 LOOKUP_LIBS += -L$(pg_config --libdir) -lpq
255 EOC
256 fi
257
258 if use sqlite; then
259 cat >> Makefile <<- EOC
260 LOOKUP_SQLITE=yes
261 LOOKUP_SQLITE_PC=sqlite3
262 EOC
263 fi
264
265 if use redis; then
266 cat >> Makefile <<- EOC
267 EXPERIMENTAL_REDIS=yes
268 LOOKUP_LIBS += -lhiredis
269 EOC
270 fi
271
272 #
273 # Exim monitor, enabled by default, controlled via X USE-flag,
274 # disable if not requested, bug #46778
275 if use X; then
276 cp ../exim_monitor/EDITME eximon.conf || die
277 else
278 sed -i -e '/^EXIM_MONITOR=/s/^/# /' Makefile
279 fi
280
281 #
282 # features
283
284 # content scanning support
285 if use exiscan-acl; then
286 cat >> Makefile <<- EOC
287 WITH_CONTENT_SCAN=yes
288 WITH_OLD_DEMIME=yes
289 EOC
290 fi
291
292 # DomainKeys Identified Mail, RFC4871
293 if ! use dkim; then
294 # DKIM is enabled by default
295 cat >> Makefile <<- EOC
296 DISABLE_DKIM=yes
297 EOC
298 fi
299
300 # Per-Recipient-Data-Response
301 if ! use prdr; then
302 # PRDR is enabled by default
303 cat >> Makefile <<- EOC
304 DISABLE_PRDR=yes
305 EOC
306 fi
307
308 # log to syslog
309 if use syslog; then
310 sed -i "s:LOG_FILE_PATH=/var/log/exim/exim_%s.log:LOG_FILE_PATH=syslog:" Makefile
311 cat >> Makefile <<- EOC
312 LOG_FILE_PATH=syslog
313 EOC
314 else
315 cat >> Makefile <<- EOC
316 LOG_FILE_PATH=${EPREFIX}/var/log/exim/exim_%s.log
317 EOC
318 fi
319
320 # starttls support (ssl)
321 if use ssl; then
322 echo "SUPPORT_TLS=yes" >> Makefile
323 if use gnutls; then
324 echo "USE_GNUTLS=yes" >> Makefile
325 echo "USE_GNUTLS_PC=gnutls" >> Makefile
326 use pkcs11 || echo "AVOID_GNUTLS_PKCS11=yes" >> Makefile
327 else
328 echo "USE_OPENSSL_PC=openssl" >> Makefile
329 fi
330 fi
331
332 # TCP wrappers
333 if use tcpd; then
334 cat >> Makefile <<- EOC
335 USE_TCP_WRAPPERS=yes
336 EXTRALIBS_EXIM += -lwrap
337 EOC
338 fi
339
340 # Light Mail Transport Protocol
341 if use lmtp; then
342 cat >> Makefile <<- EOC
343 TRANSPORT_LMTP=yes
344 EOC
345 fi
346
347 # embedded Perl
348 if use perl; then
349 cat >> Makefile <<- EOC
350 EXIM_PERL=perl.o
351 EOC
352 fi
353
354 # dlfunc
355 if use dlfunc; then
356 cat >> Makefile <<- EOC
357 EXPAND_DLFUNC=yes
358 EOC
359 fi
360
361 #
362 # experimental features
363
364 # Distributed Checksum Clearinghouse
365 if use dcc; then
366 echo "EXPERIMENTAL_DCC=yes">> Makefile
367 fi
368
369 # Sender Policy Framework
370 if use spf; then
371 cat >> Makefile <<- EOC
372 EXPERIMENTAL_SPF=yes
373 EXTRALIBS_EXIM += -lspf2
374 EOC
375 fi
376
377 # Sender Rewriting Scheme
378 if use srs; then
379 cat >> Makefile <<- EOC
380 EXPERIMENTAL_SRS=yes
381 EXTRALIBS_EXIM += -lsrs_alt
382 EOC
383 fi
384
385 # DMARC
386 if use dmarc; then
387 cat >> Makefile <<- EOC
388 EXPERIMENTAL_DMARC=yes
389 EXTRALIBS_EXIM += -lopendmarc
390 EOC
391 fi
392
393 # Transport post-delivery actions
394 if use tpda; then
395 cat >> Makefile <<- EOC
396 EXPERIMENTAL_EVENT=yes
397 EOC
398 fi
399
400 # Proxy Protocol
401 if use proxy; then
402 cat >> Makefile <<- EOC
403 EXPERIMENTAL_PROXY=yes
404 EOC
405 fi
406
407 # Delivery Sender Notifications
408 if use dsn; then
409 cat >> Makefile <<- EOC
410 EXPERIMENTAL_DSN=yes
411 EOC
412 fi
413
414 #
415 # authentication (SMTP AUTH)
416
417 # standard bits
418 cat >> Makefile <<- EOC
419 AUTH_SPA=yes
420 AUTH_CRAM_MD5=yes
421 AUTH_PLAINTEXT=yes
422 EOC
423
424 # Cyrus SASL
425 if use sasl; then
426 cat >> Makefile <<- EOC
427 CYRUS_SASLAUTHD_SOCKET=${EPREFIX}/run/saslauthd/mux
428 AUTH_CYRUS_SASL=yes
429 AUTH_LIBS += -lsasl2
430 EOC
431 fi
432
433 # Dovecot
434 if use dovecot-sasl; then
435 cat >> Makefile <<- EOC
436 AUTH_DOVECOT=yes
437 EOC
438 fi
439
440 # Pluggable Authentication Modules
441 if use pam; then
442 cat >> Makefile <<- EOC
443 SUPPORT_PAM=yes
444 AUTH_LIBS += -lpam
445 EOC
446 fi
447
448 # Radius
449 if use radius; then
450 cat >> Makefile <<- EOC
451 RADIUS_CONFIG_FILE=${EPREFIX}/etc/radiusclient/radiusclient.conf
452 RADIUS_LIB_TYPE=RADIUSCLIENT
453 AUTH_LIBS += -lradiusclient
454 EOC
455 fi
456 }
457
458 src_compile() {
459 emake -j1 CC="$(tc-getCC)" HOSTCC="$(tc-getCC $CBUILD)" \
460 AR="$(tc-getAR) cq" RANLIB="$(tc-getRANLIB)" FULLECHO='' \
461 || die "make failed"
462 }
463
464 src_install () {
465 cd "${S}"/build-exim-gentoo || die
466 dosbin exim
467 if use X; then
468 dosbin eximon.bin
469 dosbin eximon
470 fi
471 fperms 4755 /usr/sbin/exim
472
473 dosym exim /usr/sbin/sendmail
474 dosym exim /usr/sbin/rsmtp
475 dosym exim /usr/sbin/rmail
476 dosym /usr/sbin/exim /usr/bin/mailq
477 dosym /usr/sbin/exim /usr/bin/newaliases
478 dosym /usr/sbin/sendmail /usr/lib/sendmail
479
480 for i in exicyclog exim_dbmbuild exim_dumpdb exim_fixdb exim_lock \
481 exim_tidydb exinext exiwhat exigrep eximstats exiqsumm exiqgrep \
482 convert4r3 convert4r4 exipick
483 do
484 dosbin $i
485 done
486
487 dodoc "${S}"/doc/*
488 doman "${S}"/doc/exim.8
489 use dsn && dodoc "${S}"/README.DSN
490 use doc && dohtml -r "${WORKDIR}"/${PN}-html-${PV//rc/RC}/doc/html/spec_html/*
491
492 # conf files
493 insinto /etc/exim
494 newins "${S}"/src/configure.default exim.conf.dist
495 if use exiscan-acl; then
496 newins "${S}"/src/configure.default exim.conf.exiscan-acl
497 fi
498 doins "${WORKDIR}"/system_filter.exim
499 doins "${FILESDIR}"/auth_conf.sub
500
501 pamd_mimic system-auth exim auth account
502
503 # headers, #436406
504 if use dlfunc ; then
505 # fixup includes so they actually can be found when including
506 sed -i \
507 -e '/#include "\(config\|store\|mytypes\).h"/s:"\(.\+\)":<exim/\1>:' \
508 local_scan.h || die
509 insinto /usr/include/exim
510 doins {config,local_scan}.h ../src/{mytypes,store}.h
511 fi
512
513 insinto /etc/logrotate.d
514 newins "${FILESDIR}/exim.logrotate" exim
515
516 newinitd "${FILESDIR}"/exim.rc9 exim
517 newconfd "${FILESDIR}"/exim.confd exim
518
519 systemd_dounit "${FILESDIR}"/{exim.service,exim.socket,exim-submission.socket}
520 systemd_newunit "${FILESDIR}"/exim_at.service 'exim@.service'
521 systemd_newunit "${FILESDIR}"/exim-submission_at.service 'exim-submission@.service'
522
523 DIROPTIONS="-m 0750 -o ${MAILUSER} -g ${MAILGROUP}"
524 dodir /var/log/${PN}
525 }
526
527 pkg_postinst() {
528 if [[ ! -f ${EROOT}etc/exim/exim.conf ]] ; then
529 einfo "${EROOT}etc/exim/system_filter.exim is a sample system_filter."
530 einfo "${EROOT}etc/exim/auth_conf.sub contains the configuration sub for using smtp auth."
531 einfo "Please create ${EROOT}etc/exim/exim.conf from ${EROOT}etc/exim/exim.conf.dist."
532 fi
533 if use dcc ; then
534 einfo "DCC support is experimental, you can find some limited"
535 einfo "documentation at the bottom of this prerelease message:"
536 einfo "http://article.gmane.org/gmane.mail.exim.devel/3579"
537 fi
538 use spf && einfo "SPF support is experimental"
539 use srs && einfo "SRS support is experimental"
540 if use dmarc ; then
541 einfo "DMARC support is experimental. See global settings to"
542 einfo "configure DMARC, for usage see the documentation at "
543 einfo "experimental-spec.txt."
544 fi
545 use tpda && einfo "TPDA/EVENT support is experimental"
546 use proxy && einfo "proxy support is experimental"
547 if use dsn ; then
548 einfo "Starting from Exim 4.83, DSN support comes from upstream."
549 einfo "DSN support is an experimental feature. If you used DSN"
550 einfo "support prior to 4.83, make sure to remove all dsn_process"
551 einfo "switches from your routers, see http://bugs.gentoo.org/511818"
552 fi
553 einfo "Exim maintains some db files under its spool directory that need"
554 einfo "cleaning from time to time. (${EROOT}var/spool/exim/db)"
555 einfo "Please use the exim_tidydb tool as documented in the Exim manual:"
556 einfo "http://www.exim.org/exim-html-current/doc/html/spec_html/ch-exim_utilities.html#SECThindatmai"
557 }