1 |
commit: 090c2b8964bdab171450acfbe10a585c23064118 |
2 |
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Oct 26 18:15:52 2019 +0000 |
4 |
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Oct 26 18:15:52 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=090c2b89 |
7 |
|
8 |
mail-mta/exim: security cleanup (#693494) |
9 |
|
10 |
Bug: https://bugs.gentoo.org/693494 |
11 |
Package-Manager: Portage-2.3.78, Repoman-2.3.17 |
12 |
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org> |
13 |
|
14 |
mail-mta/exim/Manifest | 4 - |
15 |
mail-mta/exim/exim-4.92-r3.ebuild | 563 ----------------------------------- |
16 |
mail-mta/exim/exim-4.92-r4.ebuild | 578 ------------------------------------ |
17 |
mail-mta/exim/exim-4.92.1-r1.ebuild | 578 ------------------------------------ |
18 |
4 files changed, 1723 deletions(-) |
19 |
|
20 |
diff --git a/mail-mta/exim/Manifest b/mail-mta/exim/Manifest |
21 |
index 569ecebc2f5..ff4a789bc71 100644 |
22 |
--- a/mail-mta/exim/Manifest |
23 |
+++ b/mail-mta/exim/Manifest |
24 |
@@ -1,9 +1,5 @@ |
25 |
-DIST exim-4.92.1.tar.xz 1767976 BLAKE2B fb5bdb8762f16e30c43c7899e5fb5b459bb5e910458f970d20a5cb26cdde842d87a1f8150e4c0f9e931fa277e2f33a0fb8a6d478b5bf871d03a12ebd06c36d67 SHA512 fd43448db0aa5139f8b459322b95e258f232ac8a4bf21a19099c7768329ec20c344c4e0d8dd2e98c33a192a5f97d7666a746de2c87bdfb8da42c625c985d7e05 |
26 |
DIST exim-4.92.2.tar.xz 1772688 BLAKE2B 618c70e26811d0e6d453a4b88ab1cdb9e337a9ca8ceec50aee665b1493c75157001483cf9721e3d57313a90910d2605717b2c4be4174c2897b3f992af01c1c26 SHA512 d27aca4d4e9df267b0afcbe7b3f74c9ca6e96e7e6eb4d2f86ff00b0e2234eaec90271405eb387a36a2e0d4ec5597b2920753f85318a5618ddbc8af475a7d81cd |
27 |
DIST exim-4.92.3.tar.xz 1773156 BLAKE2B 7866c23c862f5b5aadac709279f9ed376e526e90e8ca09d41c1789041ec0a3ecd48f8d2237e4d462e547efa2178babd5942d3142fef7419e16d1707fe23fa226 SHA512 ca6d6f50653502345511b683859b33aa02faa48454fb2100ff89fed3dcb8af8933e7bce68939365fdee42f96eec0c3b135cf748f4581e92a62be0f0ab093868a |
28 |
-DIST exim-4.92.tar.xz 1767136 BLAKE2B 6c97578807073a782112218c65de460cc94f046d807eddc7330f2f67266c0ef341ded61050a16aca13c88e606a923a9e08033c8bfb618a7ef34b3d2ea6db32ca SHA512 62c327e6184a358ba7f0dbc38b44d2537234be91727a5bfac97e74af64a8d77e376b3221dcfdd8f6eca7d812f9233595503dc6e50e2972bed40a1b74eb209c31 |
29 |
-DIST exim-pdf-4.92.1.tar.xz 2038948 BLAKE2B 6624fb8930944f79e0c7e52a001727cfcff508ac69cb4107247201b8598d6e223cac7c7eda14c3102d0eabc151a547b6cc5ef11a6c4a830f31dfd88e24907c1d SHA512 437b868cd7dedae59e32b9245c8c1ca3375605eb4911846bc3508b627acf32c99bda644b3c3e84eb539a39b3c2cc4f83314eebe55160b3da617ccaec2f1623a2 |
30 |
DIST exim-pdf-4.92.2.tar.xz 2039468 BLAKE2B 3542bb5d38267bb06728ada72cfa89f06027b917799e743a1764cb7568cf0ba4cdbc5b40738c3ae41c9540d348810b388d74ad315a201f2740a5a0b79e83f904 SHA512 da90354cd8133103f08b978dd0422fd1a00e5866cd3f40e523d06875fb8b31163d7fe9791f1cf81d15bc63b16fc7f6bb98cf28c3036d054464336c07245b3c91 |
31 |
DIST exim-pdf-4.92.3.tar.xz 2039436 BLAKE2B 8d20e7f0ebfcb573d08b490737923afc2cd2d5837f5c91bd2f3e6b5e637d86a5d5a59123c57ba9219ead675c72bfc46351d5b705d9533fab80bedeeca8bdd580 SHA512 3245a627a924db92e5a50e842e096731d08284f757274b5083ea234707c493abd6f27a3b34a2025e3acff167260df0f4ebe68b9f5832920c5f22c258143ab43f |
32 |
-DIST exim-pdf-4.92.tar.xz 2038812 BLAKE2B d5966a27f980a2ceb31293d92049a6691a08262bd20ae7315f41929f0d7a45b5d66c7000f9596b193e74d0c17f91c56a3262602047673c49649f1cad6b216547 SHA512 3a40818025fceaa7ac17f8e7ce06a61e3cf65267c821aea93e1a1a659782b047ab177b88a38c9b2271c0a296e1dc7939e23fe0f89415a11cd45693cb8af10c15 |
33 |
DIST system_filter.exim.gz 3075 BLAKE2B d05e872b5cef377d29126cda03fc0a74c8777b2119b76ff43da6e8de808035eb9bfcb034a85d81824f135d484e864bfc0629fc1af2c228a7277d5ee7cf9cde79 SHA512 cb358d3ce2499a0bb5920d962a06f2af8486e55ec90c8c928bd8e3aefb279aa57f5f960d5adfcef68bd94110b405eaa144e9629cfe6014a529c79c544600bbf3 |
34 |
|
35 |
diff --git a/mail-mta/exim/exim-4.92-r3.ebuild b/mail-mta/exim/exim-4.92-r3.ebuild |
36 |
deleted file mode 100644 |
37 |
index b47fb4d177e..00000000000 |
38 |
--- a/mail-mta/exim/exim-4.92-r3.ebuild |
39 |
+++ /dev/null |
40 |
@@ -1,563 +0,0 @@ |
41 |
-# Copyright 1999-2019 Gentoo Authors |
42 |
-# Distributed under the terms of the GNU General Public License v2 |
43 |
- |
44 |
-EAPI="6" |
45 |
- |
46 |
-inherit db-use eutils toolchain-funcs multilib pam systemd |
47 |
- |
48 |
-IUSE="arc dane dcc +dkim dlfunc dmarc +dnsdb doc dovecot-sasl dsn elibc_glibc exiscan-acl gnutls idn ipv6 ldap libressl lmtp maildir mbx mysql nis pam perl pkcs11 postgres +prdr proxy radius redis sasl selinux spf sqlite srs ssl syslog tcpd +tpda X" |
49 |
-REQUIRED_USE=" |
50 |
- arc? ( dkim spf ) |
51 |
- dane? ( ssl !gnutls ) |
52 |
- dmarc? ( dkim spf ) |
53 |
- gnutls? ( ssl ) |
54 |
- pkcs11? ( ssl ) |
55 |
- spf? ( exiscan-acl ) |
56 |
- srs? ( exiscan-acl ) |
57 |
-" |
58 |
-# NOTE on USE="gnutls dane", gnutls[dane] is masked in base, unmasked |
59 |
-# for x86 and amd64 only, due to this, repoman won't allow depending on |
60 |
-# gnutls[dane] for all else. Because we cannot express USE=dane when |
61 |
-# USE=gnutls is in effect only in package.use.mask, the only option we |
62 |
-# have left is to a) ignore the dependency (but that results in bug |
63 |
-# #661164) or b) mask the usage of USE=dane with USE=gnutls. Both are |
64 |
-# incorrect, but b) is the only "correct" view from repoman. |
65 |
- |
66 |
-COMM_URI="https://downloads.exim.org/exim4$([[ ${PV} == *_rc* ]] && echo /test)" |
67 |
- |
68 |
-DESCRIPTION="A highly configurable, drop-in replacement for sendmail" |
69 |
-SRC_URI="${COMM_URI}/${P//rc/RC}.tar.xz |
70 |
- mirror://gentoo/system_filter.exim.gz |
71 |
- doc? ( ${COMM_URI}/${PN}-pdf-${PV//rc/RC}.tar.xz )" |
72 |
-HOMEPAGE="http://www.exim.org/" |
73 |
- |
74 |
-SLOT="0" |
75 |
-LICENSE="GPL-2" |
76 |
-KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86 ~x86-solaris" |
77 |
- |
78 |
-COMMON_DEPEND=">=sys-apps/sed-4.0.5 |
79 |
- ( >=sys-libs/db-3.2:= <sys-libs/db-6:= ) |
80 |
- dev-libs/libpcre |
81 |
- idn? ( net-dns/libidn:= net-dns/libidn2:= ) |
82 |
- perl? ( dev-lang/perl:= ) |
83 |
- pam? ( sys-libs/pam ) |
84 |
- tcpd? ( sys-apps/tcp-wrappers ) |
85 |
- ssl? ( |
86 |
- !libressl? ( dev-libs/openssl:0= ) |
87 |
- libressl? ( dev-libs/libressl:= ) |
88 |
- ) |
89 |
- gnutls? ( |
90 |
- net-libs/gnutls:0=[pkcs11?] |
91 |
- dev-libs/libtasn1 |
92 |
- ) |
93 |
- ldap? ( >=net-nds/openldap-2.0.7 ) |
94 |
- nis? ( |
95 |
- elibc_glibc? ( |
96 |
- net-libs/libtirpc |
97 |
- >=net-libs/libnsl-1:= |
98 |
- ) |
99 |
- ) |
100 |
- mysql? ( dev-db/mysql-connector-c:= ) |
101 |
- postgres? ( dev-db/postgresql:= ) |
102 |
- sasl? ( >=dev-libs/cyrus-sasl-2.1.26-r2 ) |
103 |
- redis? ( dev-libs/hiredis ) |
104 |
- spf? ( >=mail-filter/libspf2-1.2.5-r1 ) |
105 |
- dmarc? ( mail-filter/opendmarc ) |
106 |
- srs? ( mail-filter/libsrs_alt ) |
107 |
- X? ( |
108 |
- x11-libs/libX11 |
109 |
- x11-libs/libXmu |
110 |
- x11-libs/libXt |
111 |
- x11-libs/libXaw |
112 |
- ) |
113 |
- sqlite? ( dev-db/sqlite ) |
114 |
- radius? ( net-dialup/freeradius-client ) |
115 |
- virtual/libiconv |
116 |
- elibc_glibc? ( net-libs/libnsl ) |
117 |
- " |
118 |
- # added X check for #57206 |
119 |
-DEPEND="${COMMON_DEPEND} |
120 |
- virtual/pkgconfig" |
121 |
-RDEPEND="${COMMON_DEPEND} |
122 |
- !mail-mta/courier |
123 |
- !mail-mta/esmtp |
124 |
- !mail-mta/mini-qmail |
125 |
- !<mail-mta/msmtp-1.4.19-r1 |
126 |
- !>=mail-mta/msmtp-1.4.19-r1[mta] |
127 |
- !mail-mta/netqmail |
128 |
- !mail-mta/nullmailer |
129 |
- !mail-mta/postfix |
130 |
- !mail-mta/qmail-ldap |
131 |
- !mail-mta/sendmail |
132 |
- !mail-mta/opensmtpd |
133 |
- !<mail-mta/ssmtp-2.64-r2 |
134 |
- !>=mail-mta/ssmtp-2.64-r2[mta] |
135 |
- !net-mail/mailwrapper |
136 |
- >=net-mail/mailbase-0.00-r5 |
137 |
- virtual/logger |
138 |
- dcc? ( mail-filter/dcc ) |
139 |
- selinux? ( sec-policy/selinux-exim ) |
140 |
- " |
141 |
- |
142 |
-S=${WORKDIR}/${P//rc/RC} |
143 |
- |
144 |
-src_prepare() { |
145 |
- epatch "${FILESDIR}"/exim-4.14-tail.patch |
146 |
- epatch "${FILESDIR}"/exim-4.92-localscan_dlopen.patch |
147 |
- epatch "${FILESDIR}"/exim-4.69-r1.27021.patch |
148 |
- epatch "${FILESDIR}"/exim-4.74-radius-db-ENV-clash.patch # 287426 |
149 |
- epatch "${FILESDIR}"/exim-4.82-makefile-freebsd.patch # 235785 |
150 |
- epatch "${FILESDIR}"/exim-4.89-as-needed-ldflags.patch # 352265, 391279 |
151 |
- epatch "${FILESDIR}"/exim-4.76-crosscompile.patch # 266591 |
152 |
- |
153 |
- if use maildir ; then |
154 |
- epatch "${FILESDIR}"/exim-4.20-maildir.patch |
155 |
- else |
156 |
- epatch "${FILESDIR}"/exim-4.80-spool-mail-group.patch # 438606 |
157 |
- fi |
158 |
- |
159 |
- eapply_user |
160 |
- |
161 |
- # user Exim believes it should be |
162 |
- MAILUSER=mail |
163 |
- MAILGROUP=mail |
164 |
- if use prefix && [[ ${EUID} != 0 ]] ; then |
165 |
- MAILUSER=$(id -un) |
166 |
- MAILGROUP=$(id -gn) |
167 |
- fi |
168 |
-} |
169 |
- |
170 |
-src_configure() { |
171 |
- # general config and paths |
172 |
- |
173 |
- sed -i.orig \ |
174 |
- -e "/SYSTEM_ALIASES_FILE/s'SYSTEM_ALIASES_FILE'${EPREFIX}/etc/mail/aliases'" \ |
175 |
- "${S}"/src/configure.default || die |
176 |
- |
177 |
- sed -i -e 's/^buildname=.*/buildname=exim-gentoo/g' Makefile || die |
178 |
- |
179 |
- sed -e "48i\CFLAGS=${CFLAGS}" \ |
180 |
- -e "s:BIN_DIRECTORY=/usr/exim/bin:BIN_DIRECTORY=${EPREFIX}/usr/sbin:" \ |
181 |
- -e "s:EXIM_USER=:EXIM_USER=${MAILUSER}:" \ |
182 |
- -e "s:CONFIGURE_FILE=/usr/exim/configure:CONFIGURE_FILE=${EPREFIX}/etc/exim/exim.conf:" \ |
183 |
- -e "s:ZCAT_COMMAND=.*$:ZCAT_COMMAND=${EPREFIX}/bin/zcat:" \ |
184 |
- -e "s:COMPRESS_COMMAND=.*$:COMPRESS_COMMAND=${EPREFIX}/bin/gzip:" \ |
185 |
- src/EDITME > Local/Makefile |
186 |
- |
187 |
- if use elibc_musl; then |
188 |
- sed -e 's/^LIBS = -lnsl/LIBS =/g' \ |
189 |
- -i OS/Makefile-Linux |
190 |
- fi |
191 |
- |
192 |
- cd Local |
193 |
- |
194 |
- cat >> Makefile <<- EOC |
195 |
- INFO_DIRECTORY=${EPREFIX}/usr/share/info |
196 |
- PID_FILE_PATH=${EPREFIX}/run/exim.pid |
197 |
- SPOOL_DIRECTORY=${EPREFIX}/var/spool/exim |
198 |
- HAVE_ICONV=yes |
199 |
- EOC |
200 |
- |
201 |
- # if we use libiconv, now is the time to tell so |
202 |
- use !elibc_glibc && use !elibc_musl && \ |
203 |
- echo "EXTRALIBS_EXIM=-liconv" >> Makefile |
204 |
- |
205 |
- # support for IPv6 |
206 |
- if use ipv6; then |
207 |
- cat >> Makefile <<- EOC |
208 |
- HAVE_IPV6=YES |
209 |
- EOC |
210 |
- fi |
211 |
- |
212 |
- # support i18n/IDNA |
213 |
- if use idn; then |
214 |
- cat >> Makefile <<- EOC |
215 |
- SUPPORT_I18N=yes |
216 |
- SUPPORT_I18N_2008=yes |
217 |
- EXTRALIBS_EXIM += -lidn -lidn2 |
218 |
- EOC |
219 |
- fi |
220 |
- |
221 |
- # |
222 |
- # mail storage formats |
223 |
- |
224 |
- # mailstore is Exim's traditional storage format |
225 |
- cat >> Makefile <<- EOC |
226 |
- SUPPORT_MAILSTORE=yes |
227 |
- EOC |
228 |
- |
229 |
- # mbox |
230 |
- if use mbx; then |
231 |
- cat >> Makefile <<- EOC |
232 |
- SUPPORT_MBX=yes |
233 |
- EOC |
234 |
- fi |
235 |
- |
236 |
- # maildir |
237 |
- if use maildir; then |
238 |
- cat >> Makefile <<- EOC |
239 |
- SUPPORT_MAILDIR=yes |
240 |
- EOC |
241 |
- fi |
242 |
- |
243 |
- # |
244 |
- # lookup methods |
245 |
- |
246 |
- # use the "native" interfaces to the DBM and CDB libraries, support |
247 |
- # passwd and directory lookups by default |
248 |
- local DB_VERS="5.3 5.1 4.8 4.7 4.6 4.5 4.4 4.3 4.2 3.2" |
249 |
- cat >> Makefile <<- EOC |
250 |
- USE_DB=yes |
251 |
- CFLAGS+=-I$(db_includedir ${DB_VERS}) |
252 |
- DBMLIB=-l$(db_libname ${DB_VERS}) |
253 |
- LOOKUP_CDB=yes |
254 |
- LOOKUP_PASSWD=yes |
255 |
- LOOKUP_DSEARCH=yes |
256 |
- EOC |
257 |
- |
258 |
- if ! use dnsdb; then |
259 |
- # DNSDB lookup is enabled by default |
260 |
- sed -i "s:^LOOKUP_DNSDB=yes:# LOOKUP_DNSDB=yes:" Makefile |
261 |
- fi |
262 |
- |
263 |
- if use ldap; then |
264 |
- cat >> Makefile <<- EOC |
265 |
- LOOKUP_LDAP=yes |
266 |
- LDAP_LIB_TYPE=OPENLDAP2 |
267 |
- LOOKUP_INCLUDE += -I"${EROOT}"usr/include/ldap |
268 |
- LOOKUP_LIBS += -lldap -llber |
269 |
- EOC |
270 |
- fi |
271 |
- |
272 |
- if use mysql; then |
273 |
- cat >> Makefile <<- EOC |
274 |
- LOOKUP_MYSQL=yes |
275 |
- LOOKUP_INCLUDE += $(mysql_config --include) |
276 |
- LOOKUP_LIBS += $(mysql_config --libs) |
277 |
- EOC |
278 |
- fi |
279 |
- |
280 |
- if use nis; then |
281 |
- cat >> Makefile <<- EOC |
282 |
- LOOKUP_NIS=yes |
283 |
- LOOKUP_NISPLUS=yes |
284 |
- EOC |
285 |
- if use elibc_glibc ; then |
286 |
- cat >> Makefile <<- EOC |
287 |
- CFLAGS += -I/usr/include/tirpc |
288 |
- EOC |
289 |
- fi |
290 |
- fi |
291 |
- |
292 |
- if use postgres; then |
293 |
- cat >> Makefile <<- EOC |
294 |
- LOOKUP_PGSQL=yes |
295 |
- LOOKUP_INCLUDE += -I$(pg_config --includedir) |
296 |
- LOOKUP_LIBS += -L$(pg_config --libdir) -lpq |
297 |
- EOC |
298 |
- fi |
299 |
- |
300 |
- if use sqlite; then |
301 |
- cat >> Makefile <<- EOC |
302 |
- LOOKUP_SQLITE=yes |
303 |
- LOOKUP_SQLITE_PC=sqlite3 |
304 |
- EOC |
305 |
- fi |
306 |
- |
307 |
- if use redis; then |
308 |
- cat >> Makefile <<- EOC |
309 |
- LOOKUP_REDIS=yes |
310 |
- LOOKUP_LIBS += -lhiredis |
311 |
- EOC |
312 |
- fi |
313 |
- |
314 |
- # |
315 |
- # Exim monitor, enabled by default, controlled via X USE-flag, |
316 |
- # disable if not requested, bug #46778 |
317 |
- if use X; then |
318 |
- cp ../exim_monitor/EDITME eximon.conf || die |
319 |
- else |
320 |
- sed -i -e '/^EXIM_MONITOR=/s/^/# /' Makefile |
321 |
- fi |
322 |
- |
323 |
- # |
324 |
- # features |
325 |
- |
326 |
- # content scanning support |
327 |
- if use exiscan-acl; then |
328 |
- cat >> Makefile <<- EOC |
329 |
- WITH_CONTENT_SCAN=yes |
330 |
- EOC |
331 |
- fi |
332 |
- |
333 |
- # DomainKeys Identified Mail, RFC4871 |
334 |
- if ! use dkim; then |
335 |
- # DKIM is enabled by default |
336 |
- cat >> Makefile <<- EOC |
337 |
- DISABLE_DKIM=yes |
338 |
- EOC |
339 |
- fi |
340 |
- |
341 |
- # Per-Recipient-Data-Response |
342 |
- if ! use prdr; then |
343 |
- # PRDR is enabled by default |
344 |
- cat >> Makefile <<- EOC |
345 |
- DISABLE_PRDR=yes |
346 |
- EOC |
347 |
- fi |
348 |
- |
349 |
- # Transport post-delivery actions |
350 |
- if use !tpda && use !dane; then |
351 |
- # EVENT is enabled by default |
352 |
- cat >> Makefile <<- EOC |
353 |
- DISABLE_EVENT=yes |
354 |
- EOC |
355 |
- fi |
356 |
- |
357 |
- # log to syslog |
358 |
- if use syslog; then |
359 |
- sed -i "s:LOG_FILE_PATH=/var/log/exim/exim_%s.log:LOG_FILE_PATH=syslog:" Makefile |
360 |
- cat >> Makefile <<- EOC |
361 |
- LOG_FILE_PATH=syslog |
362 |
- EOC |
363 |
- else |
364 |
- cat >> Makefile <<- EOC |
365 |
- LOG_FILE_PATH=${EPREFIX}/var/log/exim/exim_%s.log |
366 |
- EOC |
367 |
- fi |
368 |
- |
369 |
- # starttls support (ssl) |
370 |
- if use ssl; then |
371 |
- echo "SUPPORT_TLS=yes" >> Makefile |
372 |
- if use gnutls; then |
373 |
- echo "USE_GNUTLS=yes" >> Makefile |
374 |
- echo "USE_GNUTLS_PC=gnutls" >> Makefile |
375 |
- use pkcs11 || echo "AVOID_GNUTLS_PKCS11=yes" >> Makefile |
376 |
- else |
377 |
- echo "USE_OPENSSL_PC=openssl" >> Makefile |
378 |
- fi |
379 |
- fi |
380 |
- |
381 |
- # TCP wrappers |
382 |
- if use tcpd; then |
383 |
- cat >> Makefile <<- EOC |
384 |
- USE_TCP_WRAPPERS=yes |
385 |
- EXTRALIBS_EXIM += -lwrap |
386 |
- EOC |
387 |
- fi |
388 |
- |
389 |
- # Light Mail Transport Protocol |
390 |
- if use lmtp; then |
391 |
- cat >> Makefile <<- EOC |
392 |
- TRANSPORT_LMTP=yes |
393 |
- EOC |
394 |
- fi |
395 |
- |
396 |
- # embedded Perl |
397 |
- if use perl; then |
398 |
- cat >> Makefile <<- EOC |
399 |
- EXIM_PERL=perl.o |
400 |
- EOC |
401 |
- fi |
402 |
- |
403 |
- # dlfunc |
404 |
- if use dlfunc; then |
405 |
- cat >> Makefile <<- EOC |
406 |
- EXPAND_DLFUNC=yes |
407 |
- HAVE_LOCAL_SCAN=yes |
408 |
- DLOPEN_LOCAL_SCAN=yes |
409 |
- EOC |
410 |
- fi |
411 |
- |
412 |
- # Proxy Protocol |
413 |
- if use proxy; then |
414 |
- cat >> Makefile <<- EOC |
415 |
- SUPPORT_PROXY=yes |
416 |
- EOC |
417 |
- fi |
418 |
- |
419 |
- # DANE |
420 |
- if use dane; then |
421 |
- cat >> Makefile <<- EOC |
422 |
- SUPPORT_DANE=yes |
423 |
- EOC |
424 |
- fi |
425 |
- |
426 |
- # Sender Policy Framework |
427 |
- if use spf; then |
428 |
- cat >> Makefile <<- EOC |
429 |
- SUPPORT_SPF=yes |
430 |
- EXTRALIBS_EXIM += -lspf2 |
431 |
- EOC |
432 |
- fi |
433 |
- |
434 |
- # |
435 |
- # experimental features |
436 |
- |
437 |
- # Authenticated Receive Chain |
438 |
- if use arc; then |
439 |
- echo "EXPERIMENTAL_ARC=yes">> Makefile |
440 |
- fi |
441 |
- |
442 |
- # Distributed Checksum Clearinghouse |
443 |
- if use dcc; then |
444 |
- echo "EXPERIMENTAL_DCC=yes">> Makefile |
445 |
- fi |
446 |
- |
447 |
- # Sender Rewriting Scheme |
448 |
- if use srs; then |
449 |
- cat >> Makefile <<- EOC |
450 |
- EXPERIMENTAL_SRS=yes |
451 |
- EXTRALIBS_EXIM += -lsrs_alt |
452 |
- EOC |
453 |
- fi |
454 |
- |
455 |
- # DMARC |
456 |
- if use dmarc; then |
457 |
- cat >> Makefile <<- EOC |
458 |
- EXPERIMENTAL_DMARC=yes |
459 |
- EXTRALIBS_EXIM += -lopendmarc |
460 |
- EOC |
461 |
- fi |
462 |
- |
463 |
- # Delivery Sender Notifications extra information in fail message |
464 |
- if use dsn; then |
465 |
- cat >> Makefile <<- EOC |
466 |
- EXPERIMENTAL_DSN_INFO=yes |
467 |
- EOC |
468 |
- fi |
469 |
- |
470 |
- # |
471 |
- # authentication (SMTP AUTH) |
472 |
- |
473 |
- # standard bits |
474 |
- cat >> Makefile <<- EOC |
475 |
- AUTH_SPA=yes |
476 |
- AUTH_CRAM_MD5=yes |
477 |
- AUTH_PLAINTEXT=yes |
478 |
- EOC |
479 |
- |
480 |
- # Cyrus SASL |
481 |
- if use sasl; then |
482 |
- cat >> Makefile <<- EOC |
483 |
- CYRUS_SASLAUTHD_SOCKET=${EPREFIX}/run/saslauthd/mux |
484 |
- AUTH_CYRUS_SASL=yes |
485 |
- AUTH_LIBS += -lsasl2 |
486 |
- EOC |
487 |
- fi |
488 |
- |
489 |
- # Dovecot |
490 |
- if use dovecot-sasl; then |
491 |
- cat >> Makefile <<- EOC |
492 |
- AUTH_DOVECOT=yes |
493 |
- EOC |
494 |
- fi |
495 |
- |
496 |
- # Pluggable Authentication Modules |
497 |
- if use pam; then |
498 |
- cat >> Makefile <<- EOC |
499 |
- SUPPORT_PAM=yes |
500 |
- AUTH_LIBS += -lpam |
501 |
- EOC |
502 |
- fi |
503 |
- |
504 |
- # Radius |
505 |
- if use radius; then |
506 |
- cat >> Makefile <<- EOC |
507 |
- RADIUS_CONFIG_FILE=${EPREFIX}/etc/radiusclient/radiusclient.conf |
508 |
- RADIUS_LIB_TYPE=RADIUSCLIENTNEW |
509 |
- AUTH_LIBS += -lfreeradius-client |
510 |
- EOC |
511 |
- fi |
512 |
-} |
513 |
- |
514 |
-src_compile() { |
515 |
- emake CC="$(tc-getCC)" HOSTCC="$(tc-getCC $CBUILD)" \ |
516 |
- AR="$(tc-getAR) cq" RANLIB="$(tc-getRANLIB)" FULLECHO='' \ |
517 |
- || die "make failed" |
518 |
-} |
519 |
- |
520 |
-src_install () { |
521 |
- cd "${S}"/build-exim-gentoo || die |
522 |
- dosbin exim |
523 |
- if use X; then |
524 |
- dosbin eximon.bin |
525 |
- dosbin eximon |
526 |
- fi |
527 |
- fperms 4755 /usr/sbin/exim |
528 |
- |
529 |
- dosym exim /usr/sbin/sendmail |
530 |
- dosym exim /usr/sbin/rsmtp |
531 |
- dosym exim /usr/sbin/rmail |
532 |
- dosym ../sbin/exim /usr/bin/mailq |
533 |
- dosym ../sbin/exim /usr/bin/newaliases |
534 |
- dosym ../sbin/sendmail /usr/lib/sendmail |
535 |
- |
536 |
- for i in exicyclog exim_dbmbuild exim_dumpdb exim_fixdb exim_lock \ |
537 |
- exim_tidydb exinext exiwhat exigrep eximstats exiqsumm exiqgrep \ |
538 |
- convert4r3 convert4r4 exipick |
539 |
- do |
540 |
- dosbin $i |
541 |
- done |
542 |
- |
543 |
- dodoc "${S}"/doc/* |
544 |
- doman "${S}"/doc/exim.8 |
545 |
- use dsn && dodoc "${S}"/README.DSN |
546 |
- use doc && dodoc "${WORKDIR}"/${PN}-pdf-${PV//rc/RC}/doc/*.pdf |
547 |
- |
548 |
- # conf files |
549 |
- insinto /etc/exim |
550 |
- newins "${S}"/src/configure.default exim.conf.dist |
551 |
- if use exiscan-acl; then |
552 |
- newins "${S}"/src/configure.default exim.conf.exiscan-acl |
553 |
- fi |
554 |
- doins "${WORKDIR}"/system_filter.exim |
555 |
- doins "${FILESDIR}"/auth_conf.sub |
556 |
- |
557 |
- pamd_mimic system-auth exim auth account |
558 |
- |
559 |
- # headers, #436406 |
560 |
- if use dlfunc ; then |
561 |
- # fixup includes so they actually can be found when including |
562 |
- sed -i \ |
563 |
- -e '/#include "\(config\|store\|mytypes\).h"/s:"\(.\+\)":<exim/\1>:' \ |
564 |
- local_scan.h || die |
565 |
- insinto /usr/include/exim |
566 |
- doins {config,local_scan}.h ../src/{mytypes,store}.h |
567 |
- fi |
568 |
- |
569 |
- insinto /etc/logrotate.d |
570 |
- newins "${FILESDIR}/exim.logrotate" exim |
571 |
- |
572 |
- newinitd "${FILESDIR}"/exim.rc10 exim |
573 |
- newconfd "${FILESDIR}"/exim.confd exim |
574 |
- |
575 |
- systemd_dounit "${FILESDIR}"/{exim.service,exim.socket,exim-submission.socket} |
576 |
- systemd_newunit "${FILESDIR}"/exim_at.service 'exim@.service' |
577 |
- systemd_newunit "${FILESDIR}"/exim-submission_at.service 'exim-submission@.service' |
578 |
- |
579 |
- diropts -m 0750 -o ${MAILUSER} -g ${MAILGROUP} |
580 |
- keepdir /var/log/${PN} |
581 |
-} |
582 |
- |
583 |
-pkg_postinst() { |
584 |
- if [[ ! -f ${EROOT}etc/exim/exim.conf ]] ; then |
585 |
- einfo "${EROOT}etc/exim/system_filter.exim is a sample system_filter." |
586 |
- einfo "${EROOT}etc/exim/auth_conf.sub contains the configuration sub for using smtp auth." |
587 |
- einfo "Please create ${EROOT}etc/exim/exim.conf from ${EROOT}etc/exim/exim.conf.dist." |
588 |
- fi |
589 |
- if use dcc ; then |
590 |
- einfo "DCC support is experimental, you can find some limited" |
591 |
- einfo "documentation at the bottom of this prerelease message:" |
592 |
- einfo "http://article.gmane.org/gmane.mail.exim.devel/3579" |
593 |
- fi |
594 |
- use srs && einfo "SRS support is experimental" |
595 |
- if use dmarc ; then |
596 |
- einfo "DMARC support is experimental. See global settings to" |
597 |
- einfo "configure DMARC, for usage see the documentation at " |
598 |
- einfo "experimental-spec.txt." |
599 |
- fi |
600 |
- use dsn && einfo "extra information in fail DSN message is experimental" |
601 |
- elog "The obsolete acl condition 'demime' is removed, the replacements" |
602 |
- elog "are the ACLs acl_smtp_mime and acl_not_smtp_mime" |
603 |
-} |
604 |
|
605 |
diff --git a/mail-mta/exim/exim-4.92-r4.ebuild b/mail-mta/exim/exim-4.92-r4.ebuild |
606 |
deleted file mode 100644 |
607 |
index 0cd959d5439..00000000000 |
608 |
--- a/mail-mta/exim/exim-4.92-r4.ebuild |
609 |
+++ /dev/null |
610 |
@@ -1,578 +0,0 @@ |
611 |
-# Copyright 1999-2019 Gentoo Authors |
612 |
-# Distributed under the terms of the GNU General Public License v2 |
613 |
- |
614 |
-EAPI="6" |
615 |
- |
616 |
-inherit db-use eutils toolchain-funcs multilib pam systemd |
617 |
- |
618 |
-IUSE="arc dane dcc +dkim dlfunc dmarc +dnsdb doc dovecot-sasl dsn elibc_glibc exiscan-acl gnutls idn ipv6 ldap libressl lmtp maildir mbx mysql nis pam perl pkcs11 postgres +prdr proxy radius redis sasl selinux spf sqlite srs ssl syslog tcpd +tpda X" |
619 |
-REQUIRED_USE=" |
620 |
- arc? ( dkim spf ) |
621 |
- dane? ( ssl !gnutls ) |
622 |
- dmarc? ( dkim spf ) |
623 |
- gnutls? ( ssl ) |
624 |
- pkcs11? ( ssl ) |
625 |
- spf? ( exiscan-acl ) |
626 |
- srs? ( exiscan-acl ) |
627 |
- !ssl? ( !dkim ) |
628 |
-" |
629 |
-# NOTE on USE="gnutls dane", gnutls[dane] is masked in base, unmasked |
630 |
-# for x86 and amd64 only, due to this, repoman won't allow depending on |
631 |
-# gnutls[dane] for all else. Because we cannot express USE=dane when |
632 |
-# USE=gnutls is in effect only in package.use.mask, the only option we |
633 |
-# have left is to a) ignore the dependency (but that results in bug |
634 |
-# #661164) or b) mask the usage of USE=dane with USE=gnutls. Both are |
635 |
-# incorrect, but b) is the only "correct" view from repoman. |
636 |
- |
637 |
-COMM_URI="https://downloads.exim.org/exim4$([[ ${PV} == *_rc* ]] && echo /test)" |
638 |
- |
639 |
-DESCRIPTION="A highly configurable, drop-in replacement for sendmail" |
640 |
-SRC_URI="${COMM_URI}/${P//rc/RC}.tar.xz |
641 |
- mirror://gentoo/system_filter.exim.gz |
642 |
- doc? ( ${COMM_URI}/${PN}-pdf-${PV//rc/RC}.tar.xz )" |
643 |
-HOMEPAGE="http://www.exim.org/" |
644 |
- |
645 |
-SLOT="0" |
646 |
-LICENSE="GPL-2" |
647 |
-KEYWORDS="alpha amd64 arm ~hppa ia64 ppc ppc64 sparc x86 ~x86-solaris" |
648 |
- |
649 |
-COMMON_DEPEND=">=sys-apps/sed-4.0.5 |
650 |
- ( >=sys-libs/db-3.2:= <sys-libs/db-6:= ) |
651 |
- dev-libs/libpcre |
652 |
- idn? ( net-dns/libidn:= net-dns/libidn2:= ) |
653 |
- perl? ( dev-lang/perl:= ) |
654 |
- pam? ( sys-libs/pam ) |
655 |
- tcpd? ( sys-apps/tcp-wrappers ) |
656 |
- ssl? ( |
657 |
- !libressl? ( dev-libs/openssl:0= ) |
658 |
- libressl? ( dev-libs/libressl:= ) |
659 |
- ) |
660 |
- gnutls? ( |
661 |
- net-libs/gnutls:0=[pkcs11?] |
662 |
- dev-libs/libtasn1 |
663 |
- ) |
664 |
- ldap? ( >=net-nds/openldap-2.0.7 ) |
665 |
- nis? ( |
666 |
- elibc_glibc? ( |
667 |
- net-libs/libtirpc |
668 |
- >=net-libs/libnsl-1:= |
669 |
- ) |
670 |
- ) |
671 |
- mysql? ( dev-db/mysql-connector-c:= ) |
672 |
- postgres? ( dev-db/postgresql:= ) |
673 |
- sasl? ( >=dev-libs/cyrus-sasl-2.1.26-r2 ) |
674 |
- redis? ( dev-libs/hiredis ) |
675 |
- spf? ( >=mail-filter/libspf2-1.2.5-r1 ) |
676 |
- dmarc? ( mail-filter/opendmarc ) |
677 |
- srs? ( mail-filter/libsrs_alt ) |
678 |
- X? ( |
679 |
- x11-libs/libX11 |
680 |
- x11-libs/libXmu |
681 |
- x11-libs/libXt |
682 |
- x11-libs/libXaw |
683 |
- ) |
684 |
- sqlite? ( dev-db/sqlite ) |
685 |
- radius? ( net-dialup/freeradius-client ) |
686 |
- virtual/libiconv |
687 |
- elibc_glibc? ( net-libs/libnsl ) |
688 |
- " |
689 |
- # added X check for #57206 |
690 |
-DEPEND="${COMMON_DEPEND} |
691 |
- virtual/pkgconfig" |
692 |
-RDEPEND="${COMMON_DEPEND} |
693 |
- !mail-mta/courier |
694 |
- !mail-mta/esmtp |
695 |
- !mail-mta/mini-qmail |
696 |
- !<mail-mta/msmtp-1.4.19-r1 |
697 |
- !>=mail-mta/msmtp-1.4.19-r1[mta] |
698 |
- !mail-mta/netqmail |
699 |
- !mail-mta/nullmailer |
700 |
- !mail-mta/postfix |
701 |
- !mail-mta/qmail-ldap |
702 |
- !mail-mta/sendmail |
703 |
- !mail-mta/opensmtpd |
704 |
- !<mail-mta/ssmtp-2.64-r2 |
705 |
- !>=mail-mta/ssmtp-2.64-r2[mta] |
706 |
- !net-mail/mailwrapper |
707 |
- >=net-mail/mailbase-0.00-r5 |
708 |
- virtual/logger |
709 |
- dcc? ( mail-filter/dcc ) |
710 |
- selinux? ( sec-policy/selinux-exim ) |
711 |
- " |
712 |
- |
713 |
-S=${WORKDIR}/${P//rc/RC} |
714 |
- |
715 |
-src_prepare() { |
716 |
- epatch "${FILESDIR}"/exim-4.14-tail.patch |
717 |
- epatch "${FILESDIR}"/exim-4.92-localscan_dlopen.patch |
718 |
- epatch "${FILESDIR}"/exim-4.69-r1.27021.patch |
719 |
- epatch "${FILESDIR}"/exim-4.74-radius-db-ENV-clash.patch # 287426 |
720 |
- epatch "${FILESDIR}"/exim-4.82-makefile-freebsd.patch # 235785 |
721 |
- epatch "${FILESDIR}"/exim-4.89-as-needed-ldflags.patch # 352265, 391279 |
722 |
- epatch "${FILESDIR}"/exim-4.76-crosscompile.patch # 266591 |
723 |
- epatch "${FILESDIR}"/exim-4.92-fix-eval-expansion-32bit.patch #687554 |
724 |
- |
725 |
- if use maildir ; then |
726 |
- epatch "${FILESDIR}"/exim-4.20-maildir.patch |
727 |
- else |
728 |
- epatch "${FILESDIR}"/exim-4.80-spool-mail-group.patch # 438606 |
729 |
- fi |
730 |
- |
731 |
- eapply_user |
732 |
- |
733 |
- # user Exim believes it should be |
734 |
- MAILUSER=mail |
735 |
- MAILGROUP=mail |
736 |
- if use prefix && [[ ${EUID} != 0 ]] ; then |
737 |
- MAILUSER=$(id -un) |
738 |
- MAILGROUP=$(id -gn) |
739 |
- fi |
740 |
-} |
741 |
- |
742 |
-src_configure() { |
743 |
- # general config and paths |
744 |
- |
745 |
- local aliases="${EPREFIX}/etc/mail/aliases" |
746 |
- sed -i \ |
747 |
- -e "/SYSTEM_ALIASES_FILE/s'SYSTEM_ALIASES_FILE'${aliases}'" \ |
748 |
- src/configure.default || die |
749 |
- |
750 |
- sed -i -e 's/^buildname=.*/buildname=exim-gentoo/' Makefile || die |
751 |
- |
752 |
- if use elibc_musl; then |
753 |
- sed -i -e 's/^LIBS = -lnsl/LIBS =/g' OS/Makefile-Linux || die |
754 |
- fi |
755 |
- |
756 |
- local conffile="${EPREFIX}/etc/exim/exim.conf" |
757 |
- sed -e "48i\CFLAGS=${CFLAGS}" \ |
758 |
- -e "s:BIN_DIRECTORY=/usr/exim/bin:BIN_DIRECTORY=${EPREFIX}/usr/sbin:" \ |
759 |
- -e "s:EXIM_USER=:EXIM_USER=${MAILUSER}:" \ |
760 |
- -e "s:CONFIGURE_FILE=.*$:CONFIGURE_FILE=${conffile}:" \ |
761 |
- -e "s:ZCAT_COMMAND=.*$:ZCAT_COMMAND=${EPREFIX}/bin/zcat:" \ |
762 |
- -e "s:COMPRESS_COMMAND=.*$:COMPRESS_COMMAND=${EPREFIX}/bin/gzip:" \ |
763 |
- src/EDITME > Local/Makefile || die |
764 |
- |
765 |
- # work on Local/Makefile from now on |
766 |
- cd Local |
767 |
- |
768 |
- cat >> Makefile <<- EOC |
769 |
- INFO_DIRECTORY=${EPREFIX}/usr/share/info |
770 |
- PID_FILE_PATH=${EPREFIX}/run/exim.pid |
771 |
- SPOOL_DIRECTORY=${EPREFIX}/var/spool/exim |
772 |
- HAVE_ICONV=yes |
773 |
- EOC |
774 |
- |
775 |
- # if we use libiconv, now is the time to tell so |
776 |
- use !elibc_glibc && use !elibc_musl && \ |
777 |
- echo "EXTRALIBS_EXIM=-liconv" >> Makefile |
778 |
- |
779 |
- # support for IPv6 |
780 |
- if use ipv6; then |
781 |
- cat >> Makefile <<- EOC |
782 |
- HAVE_IPV6=YES |
783 |
- EOC |
784 |
- fi |
785 |
- |
786 |
- # support i18n/IDNA |
787 |
- if use idn; then |
788 |
- cat >> Makefile <<- EOC |
789 |
- SUPPORT_I18N=yes |
790 |
- SUPPORT_I18N_2008=yes |
791 |
- EXTRALIBS_EXIM += -lidn -lidn2 |
792 |
- EOC |
793 |
- fi |
794 |
- |
795 |
- # |
796 |
- # mail storage formats |
797 |
- # |
798 |
- |
799 |
- # mailstore is Exim's traditional storage format |
800 |
- cat >> Makefile <<- EOC |
801 |
- SUPPORT_MAILSTORE=yes |
802 |
- EOC |
803 |
- |
804 |
- # mbox |
805 |
- if use mbx; then |
806 |
- cat >> Makefile <<- EOC |
807 |
- SUPPORT_MBX=yes |
808 |
- EOC |
809 |
- fi |
810 |
- |
811 |
- # maildir |
812 |
- if use maildir; then |
813 |
- cat >> Makefile <<- EOC |
814 |
- SUPPORT_MAILDIR=yes |
815 |
- EOC |
816 |
- fi |
817 |
- |
818 |
- # |
819 |
- # lookup methods |
820 |
- |
821 |
- # use the "native" interfaces to the DBM and CDB libraries, support |
822 |
- # passwd and directory lookups by default |
823 |
- local DB_VERS="5.3 5.1 4.8 4.7 4.6 4.5 4.4 4.3 4.2 3.2" |
824 |
- cat >> Makefile <<- EOC |
825 |
- USE_DB=yes |
826 |
- CFLAGS+=-I$(db_includedir ${DB_VERS}) |
827 |
- DBMLIB=-l$(db_libname ${DB_VERS}) |
828 |
- LOOKUP_CDB=yes |
829 |
- LOOKUP_PASSWD=yes |
830 |
- LOOKUP_DSEARCH=yes |
831 |
- EOC |
832 |
- |
833 |
- if ! use dnsdb; then |
834 |
- # DNSDB lookup is enabled by default |
835 |
- sed -i -e 's:^LOOKUP_DNSDB=yes:# LOOKUP_DNSDB=yes:' Makefile || die |
836 |
- fi |
837 |
- |
838 |
- if use ldap; then |
839 |
- cat >> Makefile <<- EOC |
840 |
- LOOKUP_LDAP=yes |
841 |
- LDAP_LIB_TYPE=OPENLDAP2 |
842 |
- LOOKUP_INCLUDE += -I"${EPREFIX}"/usr/include/ldap |
843 |
- LOOKUP_LIBS += -lldap -llber |
844 |
- EOC |
845 |
- fi |
846 |
- |
847 |
- if use mysql; then |
848 |
- cat >> Makefile <<- EOC |
849 |
- LOOKUP_MYSQL=yes |
850 |
- LOOKUP_INCLUDE += $(mysql_config --include) |
851 |
- LOOKUP_LIBS += $(mysql_config --libs) |
852 |
- EOC |
853 |
- fi |
854 |
- |
855 |
- if use nis; then |
856 |
- cat >> Makefile <<- EOC |
857 |
- LOOKUP_NIS=yes |
858 |
- LOOKUP_NISPLUS=yes |
859 |
- EOC |
860 |
- if use elibc_glibc ; then |
861 |
- cat >> Makefile <<- EOC |
862 |
- CFLAGS += -I"${EPREFIX}"/usr/include/tirpc |
863 |
- EOC |
864 |
- fi |
865 |
- fi |
866 |
- |
867 |
- if use postgres; then |
868 |
- cat >> Makefile <<- EOC |
869 |
- LOOKUP_PGSQL=yes |
870 |
- LOOKUP_INCLUDE += -I$(pg_config --includedir) |
871 |
- LOOKUP_LIBS += -L$(pg_config --libdir) -lpq |
872 |
- EOC |
873 |
- fi |
874 |
- |
875 |
- if use sqlite; then |
876 |
- cat >> Makefile <<- EOC |
877 |
- LOOKUP_SQLITE=yes |
878 |
- LOOKUP_SQLITE_PC=sqlite3 |
879 |
- EOC |
880 |
- fi |
881 |
- |
882 |
- if use redis; then |
883 |
- cat >> Makefile <<- EOC |
884 |
- LOOKUP_REDIS=yes |
885 |
- LOOKUP_LIBS += -lhiredis |
886 |
- EOC |
887 |
- fi |
888 |
- |
889 |
- # Exim monitor, enabled by default, controlled via X USE-flag, |
890 |
- # disable if not requested, bug #46778 |
891 |
- if use X; then |
892 |
- cp ../exim_monitor/EDITME eximon.conf || die |
893 |
- else |
894 |
- sed -i -e '/^EXIM_MONITOR=/s/^/# /' Makefile || die |
895 |
- fi |
896 |
- |
897 |
- # |
898 |
- # features |
899 |
- # |
900 |
- |
901 |
- # content scanning support |
902 |
- if use exiscan-acl; then |
903 |
- cat >> Makefile <<- EOC |
904 |
- WITH_CONTENT_SCAN=yes |
905 |
- EOC |
906 |
- fi |
907 |
- |
908 |
- # DomainKeys Identified Mail, RFC4871 |
909 |
- if ! use dkim; then |
910 |
- # DKIM is enabled by default |
911 |
- cat >> Makefile <<- EOC |
912 |
- DISABLE_DKIM=yes |
913 |
- EOC |
914 |
- fi |
915 |
- |
916 |
- # Per-Recipient-Data-Response |
917 |
- if ! use prdr; then |
918 |
- # PRDR is enabled by default |
919 |
- cat >> Makefile <<- EOC |
920 |
- DISABLE_PRDR=yes |
921 |
- EOC |
922 |
- fi |
923 |
- |
924 |
- # Transport post-delivery actions |
925 |
- if use !tpda && use !dane; then |
926 |
- # EVENT is enabled by default |
927 |
- cat >> Makefile <<- EOC |
928 |
- DISABLE_EVENT=yes |
929 |
- EOC |
930 |
- fi |
931 |
- |
932 |
- # log to syslog |
933 |
- if use syslog; then |
934 |
- local eximlog="${EPREFIX}/var/log/exim/exim_%s.log" |
935 |
- sed -i \ |
936 |
- -e "s:LOG_FILE_PATH=${eximlog}:LOG_FILE_PATH=syslog:" \ |
937 |
- Makefile || die |
938 |
- cat >> Makefile <<- EOC |
939 |
- LOG_FILE_PATH=syslog |
940 |
- EOC |
941 |
- else |
942 |
- cat >> Makefile <<- EOC |
943 |
- LOG_FILE_PATH=${EPREFIX}/var/log/exim/exim_%s.log |
944 |
- EOC |
945 |
- fi |
946 |
- |
947 |
- # starttls support (ssl) |
948 |
- if use ssl; then |
949 |
- echo "SUPPORT_TLS=yes" >> Makefile |
950 |
- if use gnutls; then |
951 |
- echo "USE_GNUTLS=yes" >> Makefile |
952 |
- echo "USE_GNUTLS_PC=gnutls" >> Makefile |
953 |
- use pkcs11 || echo "AVOID_GNUTLS_PKCS11=yes" >> Makefile |
954 |
- else |
955 |
- echo "USE_OPENSSL_PC=openssl" >> Makefile |
956 |
- fi |
957 |
- fi |
958 |
- |
959 |
- # TCP wrappers |
960 |
- if use tcpd; then |
961 |
- cat >> Makefile <<- EOC |
962 |
- USE_TCP_WRAPPERS=yes |
963 |
- EXTRALIBS_EXIM += -lwrap |
964 |
- EOC |
965 |
- fi |
966 |
- |
967 |
- # Light Mail Transport Protocol |
968 |
- if use lmtp; then |
969 |
- cat >> Makefile <<- EOC |
970 |
- TRANSPORT_LMTP=yes |
971 |
- EOC |
972 |
- fi |
973 |
- |
974 |
- # embedded Perl |
975 |
- if use perl; then |
976 |
- cat >> Makefile <<- EOC |
977 |
- EXIM_PERL=perl.o |
978 |
- EOC |
979 |
- fi |
980 |
- |
981 |
- # dlfunc |
982 |
- if use dlfunc; then |
983 |
- cat >> Makefile <<- EOC |
984 |
- EXPAND_DLFUNC=yes |
985 |
- HAVE_LOCAL_SCAN=yes |
986 |
- DLOPEN_LOCAL_SCAN=yes |
987 |
- EOC |
988 |
- fi |
989 |
- |
990 |
- # Proxy Protocol |
991 |
- if use proxy; then |
992 |
- cat >> Makefile <<- EOC |
993 |
- SUPPORT_PROXY=yes |
994 |
- EOC |
995 |
- fi |
996 |
- |
997 |
- # DANE |
998 |
- if use dane; then |
999 |
- cat >> Makefile <<- EOC |
1000 |
- SUPPORT_DANE=yes |
1001 |
- EOC |
1002 |
- fi |
1003 |
- |
1004 |
- # Sender Policy Framework |
1005 |
- if use spf; then |
1006 |
- cat >> Makefile <<- EOC |
1007 |
- SUPPORT_SPF=yes |
1008 |
- EXTRALIBS_EXIM += -lspf2 |
1009 |
- EOC |
1010 |
- fi |
1011 |
- |
1012 |
- # |
1013 |
- # experimental features |
1014 |
- # |
1015 |
- |
1016 |
- # Authenticated Receive Chain |
1017 |
- if use arc; then |
1018 |
- echo "EXPERIMENTAL_ARC=yes">> Makefile |
1019 |
- fi |
1020 |
- |
1021 |
- # Distributed Checksum Clearinghouse |
1022 |
- if use dcc; then |
1023 |
- echo "EXPERIMENTAL_DCC=yes">> Makefile |
1024 |
- fi |
1025 |
- |
1026 |
- # Sender Rewriting Scheme |
1027 |
- if use srs; then |
1028 |
- cat >> Makefile <<- EOC |
1029 |
- EXPERIMENTAL_SRS=yes |
1030 |
- EXTRALIBS_EXIM += -lsrs_alt |
1031 |
- EOC |
1032 |
- fi |
1033 |
- |
1034 |
- # DMARC |
1035 |
- if use dmarc; then |
1036 |
- cat >> Makefile <<- EOC |
1037 |
- EXPERIMENTAL_DMARC=yes |
1038 |
- EXTRALIBS_EXIM += -lopendmarc |
1039 |
- EOC |
1040 |
- fi |
1041 |
- |
1042 |
- # Delivery Sender Notifications extra information in fail message |
1043 |
- if use dsn; then |
1044 |
- cat >> Makefile <<- EOC |
1045 |
- EXPERIMENTAL_DSN_INFO=yes |
1046 |
- EOC |
1047 |
- fi |
1048 |
- |
1049 |
- # |
1050 |
- # authentication (SMTP AUTH) |
1051 |
- # |
1052 |
- |
1053 |
- # standard bits |
1054 |
- cat >> Makefile <<- EOC |
1055 |
- AUTH_SPA=yes |
1056 |
- AUTH_CRAM_MD5=yes |
1057 |
- AUTH_PLAINTEXT=yes |
1058 |
- EOC |
1059 |
- |
1060 |
- # Cyrus SASL |
1061 |
- if use sasl; then |
1062 |
- cat >> Makefile <<- EOC |
1063 |
- CYRUS_SASLAUTHD_SOCKET=${EPREFIX}/run/saslauthd/mux |
1064 |
- AUTH_CYRUS_SASL=yes |
1065 |
- AUTH_LIBS += -lsasl2 |
1066 |
- EOC |
1067 |
- fi |
1068 |
- |
1069 |
- # Dovecot |
1070 |
- if use dovecot-sasl; then |
1071 |
- cat >> Makefile <<- EOC |
1072 |
- AUTH_DOVECOT=yes |
1073 |
- EOC |
1074 |
- fi |
1075 |
- |
1076 |
- # Pluggable Authentication Modules |
1077 |
- if use pam; then |
1078 |
- cat >> Makefile <<- EOC |
1079 |
- SUPPORT_PAM=yes |
1080 |
- AUTH_LIBS += -lpam |
1081 |
- EOC |
1082 |
- fi |
1083 |
- |
1084 |
- # Radius |
1085 |
- if use radius; then |
1086 |
- cat >> Makefile <<- EOC |
1087 |
- RADIUS_CONFIG_FILE=${EPREFIX}/etc/radiusclient/radiusclient.conf |
1088 |
- RADIUS_LIB_TYPE=RADIUSCLIENTNEW |
1089 |
- AUTH_LIBS += -lfreeradius-client |
1090 |
- EOC |
1091 |
- fi |
1092 |
-} |
1093 |
- |
1094 |
-src_compile() { |
1095 |
- emake CC="$(tc-getCC)" HOSTCC="$(tc-getCC $CBUILD)" \ |
1096 |
- AR="$(tc-getAR) cq" RANLIB="$(tc-getRANLIB)" FULLECHO='' \ |
1097 |
- || die "make failed" |
1098 |
-} |
1099 |
- |
1100 |
-src_install () { |
1101 |
- cd "${S}"/build-exim-gentoo || die |
1102 |
- dosbin exim |
1103 |
- if use X; then |
1104 |
- dosbin eximon.bin |
1105 |
- dosbin eximon |
1106 |
- fi |
1107 |
- fperms 4755 /usr/sbin/exim |
1108 |
- |
1109 |
- dosym exim /usr/sbin/sendmail |
1110 |
- dosym exim /usr/sbin/rsmtp |
1111 |
- dosym exim /usr/sbin/rmail |
1112 |
- dosym ../sbin/exim /usr/bin/mailq |
1113 |
- dosym ../sbin/exim /usr/bin/newaliases |
1114 |
- dosym ../sbin/sendmail /usr/lib/sendmail |
1115 |
- |
1116 |
- for i in exicyclog exim_dbmbuild exim_dumpdb exim_fixdb exim_lock \ |
1117 |
- exim_tidydb exinext exiwhat exigrep eximstats exiqsumm exiqgrep \ |
1118 |
- convert4r3 convert4r4 exipick |
1119 |
- do |
1120 |
- dosbin $i |
1121 |
- done |
1122 |
- |
1123 |
- dodoc "${S}"/doc/* |
1124 |
- doman "${S}"/doc/exim.8 |
1125 |
- use dsn && dodoc "${S}"/README.DSN |
1126 |
- use doc && dodoc "${WORKDIR}"/${PN}-pdf-${PV//rc/RC}/doc/*.pdf |
1127 |
- |
1128 |
- # conf files |
1129 |
- insinto /etc/exim |
1130 |
- newins "${S}"/src/configure.default exim.conf.dist |
1131 |
- if use exiscan-acl; then |
1132 |
- newins "${S}"/src/configure.default exim.conf.exiscan-acl |
1133 |
- fi |
1134 |
- doins "${WORKDIR}"/system_filter.exim |
1135 |
- doins "${FILESDIR}"/auth_conf.sub |
1136 |
- |
1137 |
- pamd_mimic system-auth exim auth account |
1138 |
- |
1139 |
- # headers, #436406 |
1140 |
- if use dlfunc ; then |
1141 |
- # fixup includes so they actually can be found when including |
1142 |
- sed -i \ |
1143 |
- -e '/#include "\(config\|store\|mytypes\).h"/s:"\(.\+\)":<exim/\1>:' \ |
1144 |
- local_scan.h || die |
1145 |
- insinto /usr/include/exim |
1146 |
- doins {config,local_scan}.h ../src/{mytypes,store}.h |
1147 |
- fi |
1148 |
- |
1149 |
- insinto /etc/logrotate.d |
1150 |
- newins "${FILESDIR}/exim.logrotate" exim |
1151 |
- |
1152 |
- newinitd "${FILESDIR}"/exim.rc10 exim |
1153 |
- newconfd "${FILESDIR}"/exim.confd exim |
1154 |
- |
1155 |
- systemd_dounit \ |
1156 |
- "${FILESDIR}"/{exim.service,exim.socket,exim-submission.socket} |
1157 |
- systemd_newunit \ |
1158 |
- "${FILESDIR}"/exim_at.service 'exim@.service' |
1159 |
- systemd_newunit \ |
1160 |
- "${FILESDIR}"/exim-submission_at.service 'exim-submission@.service' |
1161 |
- |
1162 |
- diropts -m 0750 -o ${MAILUSER} -g ${MAILGROUP} |
1163 |
- keepdir /var/log/${PN} |
1164 |
-} |
1165 |
- |
1166 |
-pkg_postinst() { |
1167 |
- if [[ ! -f ${EROOT}etc/exim/exim.conf ]] ; then |
1168 |
- einfo "${EROOT}etc/exim/system_filter.exim is a sample system_filter." |
1169 |
- einfo "${EROOT}etc/exim/auth_conf.sub contains the configuration sub" |
1170 |
- einfo "for using smtp auth." |
1171 |
- einfo "Please create ${EROOT}etc/exim/exim.conf from" |
1172 |
- einfo " ${EROOT}etc/exim/exim.conf.dist." |
1173 |
- fi |
1174 |
- if use dcc ; then |
1175 |
- einfo "DCC support is experimental, you can find some limited" |
1176 |
- einfo "documentation at the bottom of this prerelease message:" |
1177 |
- einfo "http://article.gmane.org/gmane.mail.exim.devel/3579" |
1178 |
- fi |
1179 |
- use srs && einfo "SRS support is experimental" |
1180 |
- if use dmarc ; then |
1181 |
- einfo "DMARC support is experimental. See global settings to" |
1182 |
- einfo "configure DMARC, for usage see the documentation at " |
1183 |
- einfo "experimental-spec.txt." |
1184 |
- fi |
1185 |
- use dsn && einfo "extra information in fail DSN message is experimental" |
1186 |
- elog "The obsolete acl condition 'demime' is removed, the replacements" |
1187 |
- elog "are the ACLs acl_smtp_mime and acl_not_smtp_mime" |
1188 |
-} |
1189 |
|
1190 |
diff --git a/mail-mta/exim/exim-4.92.1-r1.ebuild b/mail-mta/exim/exim-4.92.1-r1.ebuild |
1191 |
deleted file mode 100644 |
1192 |
index e2f8fdc93a8..00000000000 |
1193 |
--- a/mail-mta/exim/exim-4.92.1-r1.ebuild |
1194 |
+++ /dev/null |
1195 |
@@ -1,578 +0,0 @@ |
1196 |
-# Copyright 1999-2019 Gentoo Authors |
1197 |
-# Distributed under the terms of the GNU General Public License v2 |
1198 |
- |
1199 |
-EAPI="6" |
1200 |
- |
1201 |
-inherit db-use eutils toolchain-funcs multilib pam systemd |
1202 |
- |
1203 |
-IUSE="arc dane dcc +dkim dlfunc dmarc +dnsdb doc dovecot-sasl dsn elibc_glibc exiscan-acl gnutls idn ipv6 ldap libressl lmtp maildir mbx mysql nis pam perl pkcs11 postgres +prdr proxy radius redis sasl selinux spf sqlite srs ssl syslog tcpd +tpda X" |
1204 |
-REQUIRED_USE=" |
1205 |
- arc? ( dkim spf ) |
1206 |
- dane? ( ssl !gnutls ) |
1207 |
- dmarc? ( dkim spf ) |
1208 |
- gnutls? ( ssl ) |
1209 |
- pkcs11? ( ssl ) |
1210 |
- spf? ( exiscan-acl ) |
1211 |
- srs? ( exiscan-acl ) |
1212 |
- !ssl? ( !dkim ) |
1213 |
-" |
1214 |
-# NOTE on USE="gnutls dane", gnutls[dane] is masked in base, unmasked |
1215 |
-# for x86 and amd64 only, due to this, repoman won't allow depending on |
1216 |
-# gnutls[dane] for all else. Because we cannot express USE=dane when |
1217 |
-# USE=gnutls is in effect only in package.use.mask, the only option we |
1218 |
-# have left is to a) ignore the dependency (but that results in bug |
1219 |
-# #661164) or b) mask the usage of USE=dane with USE=gnutls. Both are |
1220 |
-# incorrect, but b) is the only "correct" view from repoman. |
1221 |
- |
1222 |
-COMM_URI="https://downloads.exim.org/exim4$([[ ${PV} == *_rc* ]] && echo /test)" |
1223 |
- |
1224 |
-DESCRIPTION="A highly configurable, drop-in replacement for sendmail" |
1225 |
-SRC_URI="${COMM_URI}/${P//rc/RC}.tar.xz |
1226 |
- mirror://gentoo/system_filter.exim.gz |
1227 |
- doc? ( ${COMM_URI}/${PN}-pdf-${PV//rc/RC}.tar.xz )" |
1228 |
-HOMEPAGE="http://www.exim.org/" |
1229 |
- |
1230 |
-SLOT="0" |
1231 |
-LICENSE="GPL-2" |
1232 |
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-solaris" |
1233 |
- |
1234 |
-COMMON_DEPEND=">=sys-apps/sed-4.0.5 |
1235 |
- ( >=sys-libs/db-3.2:= <sys-libs/db-6:= ) |
1236 |
- dev-libs/libpcre |
1237 |
- idn? ( net-dns/libidn:= net-dns/libidn2:= ) |
1238 |
- perl? ( dev-lang/perl:= ) |
1239 |
- pam? ( sys-libs/pam ) |
1240 |
- tcpd? ( sys-apps/tcp-wrappers ) |
1241 |
- ssl? ( |
1242 |
- !libressl? ( dev-libs/openssl:0= ) |
1243 |
- libressl? ( dev-libs/libressl:= ) |
1244 |
- ) |
1245 |
- gnutls? ( |
1246 |
- net-libs/gnutls:0=[pkcs11?] |
1247 |
- dev-libs/libtasn1 |
1248 |
- ) |
1249 |
- ldap? ( >=net-nds/openldap-2.0.7 ) |
1250 |
- nis? ( |
1251 |
- elibc_glibc? ( |
1252 |
- net-libs/libtirpc |
1253 |
- >=net-libs/libnsl-1:= |
1254 |
- ) |
1255 |
- ) |
1256 |
- mysql? ( dev-db/mysql-connector-c:= ) |
1257 |
- postgres? ( dev-db/postgresql:= ) |
1258 |
- sasl? ( >=dev-libs/cyrus-sasl-2.1.26-r2 ) |
1259 |
- redis? ( dev-libs/hiredis ) |
1260 |
- spf? ( >=mail-filter/libspf2-1.2.5-r1 ) |
1261 |
- dmarc? ( mail-filter/opendmarc ) |
1262 |
- srs? ( mail-filter/libsrs_alt ) |
1263 |
- X? ( |
1264 |
- x11-libs/libX11 |
1265 |
- x11-libs/libXmu |
1266 |
- x11-libs/libXt |
1267 |
- x11-libs/libXaw |
1268 |
- ) |
1269 |
- sqlite? ( dev-db/sqlite ) |
1270 |
- radius? ( net-dialup/freeradius-client ) |
1271 |
- virtual/libiconv |
1272 |
- elibc_glibc? ( net-libs/libnsl ) |
1273 |
- " |
1274 |
- # added X check for #57206 |
1275 |
-DEPEND="${COMMON_DEPEND} |
1276 |
- virtual/pkgconfig" |
1277 |
-RDEPEND="${COMMON_DEPEND} |
1278 |
- !mail-mta/courier |
1279 |
- !mail-mta/esmtp |
1280 |
- !mail-mta/mini-qmail |
1281 |
- !<mail-mta/msmtp-1.4.19-r1 |
1282 |
- !>=mail-mta/msmtp-1.4.19-r1[mta] |
1283 |
- !mail-mta/netqmail |
1284 |
- !mail-mta/nullmailer |
1285 |
- !mail-mta/postfix |
1286 |
- !mail-mta/qmail-ldap |
1287 |
- !mail-mta/sendmail |
1288 |
- !mail-mta/opensmtpd |
1289 |
- !<mail-mta/ssmtp-2.64-r2 |
1290 |
- !>=mail-mta/ssmtp-2.64-r2[mta] |
1291 |
- !net-mail/mailwrapper |
1292 |
- >=net-mail/mailbase-0.00-r5 |
1293 |
- virtual/logger |
1294 |
- dcc? ( mail-filter/dcc ) |
1295 |
- selinux? ( sec-policy/selinux-exim ) |
1296 |
- " |
1297 |
- |
1298 |
-S=${WORKDIR}/${P//rc/RC} |
1299 |
- |
1300 |
-src_prepare() { |
1301 |
- epatch "${FILESDIR}"/exim-4.14-tail.patch |
1302 |
- epatch "${FILESDIR}"/exim-4.92-localscan_dlopen.patch |
1303 |
- epatch "${FILESDIR}"/exim-4.69-r1.27021.patch |
1304 |
- epatch "${FILESDIR}"/exim-4.74-radius-db-ENV-clash.patch # 287426 |
1305 |
- epatch "${FILESDIR}"/exim-4.82-makefile-freebsd.patch # 235785 |
1306 |
- epatch "${FILESDIR}"/exim-4.89-as-needed-ldflags.patch # 352265, 391279 |
1307 |
- epatch "${FILESDIR}"/exim-4.76-crosscompile.patch # 266591 |
1308 |
- epatch "${FILESDIR}"/exim-4.92-fix-eval-expansion-32bit.patch #687554 |
1309 |
- |
1310 |
- if use maildir ; then |
1311 |
- epatch "${FILESDIR}"/exim-4.20-maildir.patch |
1312 |
- else |
1313 |
- epatch "${FILESDIR}"/exim-4.80-spool-mail-group.patch # 438606 |
1314 |
- fi |
1315 |
- |
1316 |
- eapply_user |
1317 |
- |
1318 |
- # user Exim believes it should be |
1319 |
- MAILUSER=mail |
1320 |
- MAILGROUP=mail |
1321 |
- if use prefix && [[ ${EUID} != 0 ]] ; then |
1322 |
- MAILUSER=$(id -un) |
1323 |
- MAILGROUP=$(id -gn) |
1324 |
- fi |
1325 |
-} |
1326 |
- |
1327 |
-src_configure() { |
1328 |
- # general config and paths |
1329 |
- |
1330 |
- local aliases="${EPREFIX}/etc/mail/aliases" |
1331 |
- sed -i \ |
1332 |
- -e "/SYSTEM_ALIASES_FILE/s'SYSTEM_ALIASES_FILE'${aliases}'" \ |
1333 |
- src/configure.default || die |
1334 |
- |
1335 |
- sed -i -e 's/^buildname=.*/buildname=exim-gentoo/' Makefile || die |
1336 |
- |
1337 |
- if use elibc_musl; then |
1338 |
- sed -i -e 's/^LIBS = -lnsl/LIBS =/g' OS/Makefile-Linux || die |
1339 |
- fi |
1340 |
- |
1341 |
- local conffile="${EPREFIX}/etc/exim/exim.conf" |
1342 |
- sed -e "48i\CFLAGS=${CFLAGS}" \ |
1343 |
- -e "s:BIN_DIRECTORY=/usr/exim/bin:BIN_DIRECTORY=${EPREFIX}/usr/sbin:" \ |
1344 |
- -e "s:EXIM_USER=:EXIM_USER=${MAILUSER}:" \ |
1345 |
- -e "s:CONFIGURE_FILE=.*$:CONFIGURE_FILE=${conffile}:" \ |
1346 |
- -e "s:ZCAT_COMMAND=.*$:ZCAT_COMMAND=${EPREFIX}/bin/zcat:" \ |
1347 |
- -e "s:COMPRESS_COMMAND=.*$:COMPRESS_COMMAND=${EPREFIX}/bin/gzip:" \ |
1348 |
- src/EDITME > Local/Makefile || die |
1349 |
- |
1350 |
- # work on Local/Makefile from now on |
1351 |
- cd Local |
1352 |
- |
1353 |
- cat >> Makefile <<- EOC |
1354 |
- INFO_DIRECTORY=${EPREFIX}/usr/share/info |
1355 |
- PID_FILE_PATH=${EPREFIX}/run/exim.pid |
1356 |
- SPOOL_DIRECTORY=${EPREFIX}/var/spool/exim |
1357 |
- HAVE_ICONV=yes |
1358 |
- EOC |
1359 |
- |
1360 |
- # if we use libiconv, now is the time to tell so |
1361 |
- use !elibc_glibc && use !elibc_musl && \ |
1362 |
- echo "EXTRALIBS_EXIM=-liconv" >> Makefile |
1363 |
- |
1364 |
- # support for IPv6 |
1365 |
- if use ipv6; then |
1366 |
- cat >> Makefile <<- EOC |
1367 |
- HAVE_IPV6=YES |
1368 |
- EOC |
1369 |
- fi |
1370 |
- |
1371 |
- # support i18n/IDNA |
1372 |
- if use idn; then |
1373 |
- cat >> Makefile <<- EOC |
1374 |
- SUPPORT_I18N=yes |
1375 |
- SUPPORT_I18N_2008=yes |
1376 |
- EXTRALIBS_EXIM += -lidn -lidn2 |
1377 |
- EOC |
1378 |
- fi |
1379 |
- |
1380 |
- # |
1381 |
- # mail storage formats |
1382 |
- # |
1383 |
- |
1384 |
- # mailstore is Exim's traditional storage format |
1385 |
- cat >> Makefile <<- EOC |
1386 |
- SUPPORT_MAILSTORE=yes |
1387 |
- EOC |
1388 |
- |
1389 |
- # mbox |
1390 |
- if use mbx; then |
1391 |
- cat >> Makefile <<- EOC |
1392 |
- SUPPORT_MBX=yes |
1393 |
- EOC |
1394 |
- fi |
1395 |
- |
1396 |
- # maildir |
1397 |
- if use maildir; then |
1398 |
- cat >> Makefile <<- EOC |
1399 |
- SUPPORT_MAILDIR=yes |
1400 |
- EOC |
1401 |
- fi |
1402 |
- |
1403 |
- # |
1404 |
- # lookup methods |
1405 |
- |
1406 |
- # use the "native" interfaces to the DBM and CDB libraries, support |
1407 |
- # passwd and directory lookups by default |
1408 |
- local DB_VERS="5.3 5.1 4.8 4.7 4.6 4.5 4.4 4.3 4.2 3.2" |
1409 |
- cat >> Makefile <<- EOC |
1410 |
- USE_DB=yes |
1411 |
- CFLAGS+=-I$(db_includedir ${DB_VERS}) |
1412 |
- DBMLIB=-l$(db_libname ${DB_VERS}) |
1413 |
- LOOKUP_CDB=yes |
1414 |
- LOOKUP_PASSWD=yes |
1415 |
- LOOKUP_DSEARCH=yes |
1416 |
- EOC |
1417 |
- |
1418 |
- if ! use dnsdb; then |
1419 |
- # DNSDB lookup is enabled by default |
1420 |
- sed -i -e 's:^LOOKUP_DNSDB=yes:# LOOKUP_DNSDB=yes:' Makefile || die |
1421 |
- fi |
1422 |
- |
1423 |
- if use ldap; then |
1424 |
- cat >> Makefile <<- EOC |
1425 |
- LOOKUP_LDAP=yes |
1426 |
- LDAP_LIB_TYPE=OPENLDAP2 |
1427 |
- LOOKUP_INCLUDE += -I"${EPREFIX}"/usr/include/ldap |
1428 |
- LOOKUP_LIBS += -lldap -llber |
1429 |
- EOC |
1430 |
- fi |
1431 |
- |
1432 |
- if use mysql; then |
1433 |
- cat >> Makefile <<- EOC |
1434 |
- LOOKUP_MYSQL=yes |
1435 |
- LOOKUP_INCLUDE += $(mysql_config --include) |
1436 |
- LOOKUP_LIBS += $(mysql_config --libs) |
1437 |
- EOC |
1438 |
- fi |
1439 |
- |
1440 |
- if use nis; then |
1441 |
- cat >> Makefile <<- EOC |
1442 |
- LOOKUP_NIS=yes |
1443 |
- LOOKUP_NISPLUS=yes |
1444 |
- EOC |
1445 |
- if use elibc_glibc ; then |
1446 |
- cat >> Makefile <<- EOC |
1447 |
- CFLAGS += -I"${EPREFIX}"/usr/include/tirpc |
1448 |
- EOC |
1449 |
- fi |
1450 |
- fi |
1451 |
- |
1452 |
- if use postgres; then |
1453 |
- cat >> Makefile <<- EOC |
1454 |
- LOOKUP_PGSQL=yes |
1455 |
- LOOKUP_INCLUDE += -I$(pg_config --includedir) |
1456 |
- LOOKUP_LIBS += -L$(pg_config --libdir) -lpq |
1457 |
- EOC |
1458 |
- fi |
1459 |
- |
1460 |
- if use sqlite; then |
1461 |
- cat >> Makefile <<- EOC |
1462 |
- LOOKUP_SQLITE=yes |
1463 |
- LOOKUP_SQLITE_PC=sqlite3 |
1464 |
- EOC |
1465 |
- fi |
1466 |
- |
1467 |
- if use redis; then |
1468 |
- cat >> Makefile <<- EOC |
1469 |
- LOOKUP_REDIS=yes |
1470 |
- LOOKUP_LIBS += -lhiredis |
1471 |
- EOC |
1472 |
- fi |
1473 |
- |
1474 |
- # Exim monitor, enabled by default, controlled via X USE-flag, |
1475 |
- # disable if not requested, bug #46778 |
1476 |
- if use X; then |
1477 |
- cp ../exim_monitor/EDITME eximon.conf || die |
1478 |
- else |
1479 |
- sed -i -e '/^EXIM_MONITOR=/s/^/# /' Makefile || die |
1480 |
- fi |
1481 |
- |
1482 |
- # |
1483 |
- # features |
1484 |
- # |
1485 |
- |
1486 |
- # content scanning support |
1487 |
- if use exiscan-acl; then |
1488 |
- cat >> Makefile <<- EOC |
1489 |
- WITH_CONTENT_SCAN=yes |
1490 |
- EOC |
1491 |
- fi |
1492 |
- |
1493 |
- # DomainKeys Identified Mail, RFC4871 |
1494 |
- if ! use dkim; then |
1495 |
- # DKIM is enabled by default |
1496 |
- cat >> Makefile <<- EOC |
1497 |
- DISABLE_DKIM=yes |
1498 |
- EOC |
1499 |
- fi |
1500 |
- |
1501 |
- # Per-Recipient-Data-Response |
1502 |
- if ! use prdr; then |
1503 |
- # PRDR is enabled by default |
1504 |
- cat >> Makefile <<- EOC |
1505 |
- DISABLE_PRDR=yes |
1506 |
- EOC |
1507 |
- fi |
1508 |
- |
1509 |
- # Transport post-delivery actions |
1510 |
- if use !tpda && use !dane; then |
1511 |
- # EVENT is enabled by default |
1512 |
- cat >> Makefile <<- EOC |
1513 |
- DISABLE_EVENT=yes |
1514 |
- EOC |
1515 |
- fi |
1516 |
- |
1517 |
- # log to syslog |
1518 |
- if use syslog; then |
1519 |
- local eximlog="${EPREFIX}/var/log/exim/exim_%s.log" |
1520 |
- sed -i \ |
1521 |
- -e "s:LOG_FILE_PATH=${eximlog}:LOG_FILE_PATH=syslog:" \ |
1522 |
- Makefile || die |
1523 |
- cat >> Makefile <<- EOC |
1524 |
- LOG_FILE_PATH=syslog |
1525 |
- EOC |
1526 |
- else |
1527 |
- cat >> Makefile <<- EOC |
1528 |
- LOG_FILE_PATH=${EPREFIX}/var/log/exim/exim_%s.log |
1529 |
- EOC |
1530 |
- fi |
1531 |
- |
1532 |
- # starttls support (ssl) |
1533 |
- if use ssl; then |
1534 |
- echo "SUPPORT_TLS=yes" >> Makefile |
1535 |
- if use gnutls; then |
1536 |
- echo "USE_GNUTLS=yes" >> Makefile |
1537 |
- echo "USE_GNUTLS_PC=gnutls" >> Makefile |
1538 |
- use pkcs11 || echo "AVOID_GNUTLS_PKCS11=yes" >> Makefile |
1539 |
- else |
1540 |
- echo "USE_OPENSSL_PC=openssl" >> Makefile |
1541 |
- fi |
1542 |
- fi |
1543 |
- |
1544 |
- # TCP wrappers |
1545 |
- if use tcpd; then |
1546 |
- cat >> Makefile <<- EOC |
1547 |
- USE_TCP_WRAPPERS=yes |
1548 |
- EXTRALIBS_EXIM += -lwrap |
1549 |
- EOC |
1550 |
- fi |
1551 |
- |
1552 |
- # Light Mail Transport Protocol |
1553 |
- if use lmtp; then |
1554 |
- cat >> Makefile <<- EOC |
1555 |
- TRANSPORT_LMTP=yes |
1556 |
- EOC |
1557 |
- fi |
1558 |
- |
1559 |
- # embedded Perl |
1560 |
- if use perl; then |
1561 |
- cat >> Makefile <<- EOC |
1562 |
- EXIM_PERL=perl.o |
1563 |
- EOC |
1564 |
- fi |
1565 |
- |
1566 |
- # dlfunc |
1567 |
- if use dlfunc; then |
1568 |
- cat >> Makefile <<- EOC |
1569 |
- EXPAND_DLFUNC=yes |
1570 |
- HAVE_LOCAL_SCAN=yes |
1571 |
- DLOPEN_LOCAL_SCAN=yes |
1572 |
- EOC |
1573 |
- fi |
1574 |
- |
1575 |
- # Proxy Protocol |
1576 |
- if use proxy; then |
1577 |
- cat >> Makefile <<- EOC |
1578 |
- SUPPORT_PROXY=yes |
1579 |
- EOC |
1580 |
- fi |
1581 |
- |
1582 |
- # DANE |
1583 |
- if use dane; then |
1584 |
- cat >> Makefile <<- EOC |
1585 |
- SUPPORT_DANE=yes |
1586 |
- EOC |
1587 |
- fi |
1588 |
- |
1589 |
- # Sender Policy Framework |
1590 |
- if use spf; then |
1591 |
- cat >> Makefile <<- EOC |
1592 |
- SUPPORT_SPF=yes |
1593 |
- EXTRALIBS_EXIM += -lspf2 |
1594 |
- EOC |
1595 |
- fi |
1596 |
- |
1597 |
- # |
1598 |
- # experimental features |
1599 |
- # |
1600 |
- |
1601 |
- # Authenticated Receive Chain |
1602 |
- if use arc; then |
1603 |
- echo "EXPERIMENTAL_ARC=yes">> Makefile |
1604 |
- fi |
1605 |
- |
1606 |
- # Distributed Checksum Clearinghouse |
1607 |
- if use dcc; then |
1608 |
- echo "EXPERIMENTAL_DCC=yes">> Makefile |
1609 |
- fi |
1610 |
- |
1611 |
- # Sender Rewriting Scheme |
1612 |
- if use srs; then |
1613 |
- cat >> Makefile <<- EOC |
1614 |
- EXPERIMENTAL_SRS=yes |
1615 |
- EXTRALIBS_EXIM += -lsrs_alt |
1616 |
- EOC |
1617 |
- fi |
1618 |
- |
1619 |
- # DMARC |
1620 |
- if use dmarc; then |
1621 |
- cat >> Makefile <<- EOC |
1622 |
- EXPERIMENTAL_DMARC=yes |
1623 |
- EXTRALIBS_EXIM += -lopendmarc |
1624 |
- EOC |
1625 |
- fi |
1626 |
- |
1627 |
- # Delivery Sender Notifications extra information in fail message |
1628 |
- if use dsn; then |
1629 |
- cat >> Makefile <<- EOC |
1630 |
- EXPERIMENTAL_DSN_INFO=yes |
1631 |
- EOC |
1632 |
- fi |
1633 |
- |
1634 |
- # |
1635 |
- # authentication (SMTP AUTH) |
1636 |
- # |
1637 |
- |
1638 |
- # standard bits |
1639 |
- cat >> Makefile <<- EOC |
1640 |
- AUTH_SPA=yes |
1641 |
- AUTH_CRAM_MD5=yes |
1642 |
- AUTH_PLAINTEXT=yes |
1643 |
- EOC |
1644 |
- |
1645 |
- # Cyrus SASL |
1646 |
- if use sasl; then |
1647 |
- cat >> Makefile <<- EOC |
1648 |
- CYRUS_SASLAUTHD_SOCKET=${EPREFIX}/run/saslauthd/mux |
1649 |
- AUTH_CYRUS_SASL=yes |
1650 |
- AUTH_LIBS += -lsasl2 |
1651 |
- EOC |
1652 |
- fi |
1653 |
- |
1654 |
- # Dovecot |
1655 |
- if use dovecot-sasl; then |
1656 |
- cat >> Makefile <<- EOC |
1657 |
- AUTH_DOVECOT=yes |
1658 |
- EOC |
1659 |
- fi |
1660 |
- |
1661 |
- # Pluggable Authentication Modules |
1662 |
- if use pam; then |
1663 |
- cat >> Makefile <<- EOC |
1664 |
- SUPPORT_PAM=yes |
1665 |
- AUTH_LIBS += -lpam |
1666 |
- EOC |
1667 |
- fi |
1668 |
- |
1669 |
- # Radius |
1670 |
- if use radius; then |
1671 |
- cat >> Makefile <<- EOC |
1672 |
- RADIUS_CONFIG_FILE=${EPREFIX}/etc/radiusclient/radiusclient.conf |
1673 |
- RADIUS_LIB_TYPE=RADIUSCLIENTNEW |
1674 |
- AUTH_LIBS += -lfreeradius-client |
1675 |
- EOC |
1676 |
- fi |
1677 |
-} |
1678 |
- |
1679 |
-src_compile() { |
1680 |
- emake CC="$(tc-getCC)" HOSTCC="$(tc-getCC $CBUILD)" \ |
1681 |
- AR="$(tc-getAR) cq" RANLIB="$(tc-getRANLIB)" FULLECHO='' \ |
1682 |
- || die "make failed" |
1683 |
-} |
1684 |
- |
1685 |
-src_install () { |
1686 |
- cd "${S}"/build-exim-gentoo || die |
1687 |
- dosbin exim |
1688 |
- if use X; then |
1689 |
- dosbin eximon.bin |
1690 |
- dosbin eximon |
1691 |
- fi |
1692 |
- fperms 4755 /usr/sbin/exim |
1693 |
- |
1694 |
- dosym exim /usr/sbin/sendmail |
1695 |
- dosym exim /usr/sbin/rsmtp |
1696 |
- dosym exim /usr/sbin/rmail |
1697 |
- dosym ../sbin/exim /usr/bin/mailq |
1698 |
- dosym ../sbin/exim /usr/bin/newaliases |
1699 |
- dosym ../sbin/sendmail /usr/lib/sendmail |
1700 |
- |
1701 |
- for i in exicyclog exim_dbmbuild exim_dumpdb exim_fixdb exim_lock \ |
1702 |
- exim_tidydb exinext exiwhat exigrep eximstats exiqsumm exiqgrep \ |
1703 |
- convert4r3 convert4r4 exipick |
1704 |
- do |
1705 |
- dosbin $i |
1706 |
- done |
1707 |
- |
1708 |
- dodoc "${S}"/doc/* |
1709 |
- doman "${S}"/doc/exim.8 |
1710 |
- use dsn && dodoc "${S}"/README.DSN |
1711 |
- use doc && dodoc "${WORKDIR}"/${PN}-pdf-${PV//rc/RC}/doc/*.pdf |
1712 |
- |
1713 |
- # conf files |
1714 |
- insinto /etc/exim |
1715 |
- newins "${S}"/src/configure.default exim.conf.dist |
1716 |
- if use exiscan-acl; then |
1717 |
- newins "${S}"/src/configure.default exim.conf.exiscan-acl |
1718 |
- fi |
1719 |
- doins "${WORKDIR}"/system_filter.exim |
1720 |
- doins "${FILESDIR}"/auth_conf.sub |
1721 |
- |
1722 |
- pamd_mimic system-auth exim auth account |
1723 |
- |
1724 |
- # headers, #436406 |
1725 |
- if use dlfunc ; then |
1726 |
- # fixup includes so they actually can be found when including |
1727 |
- sed -i \ |
1728 |
- -e '/#include "\(config\|store\|mytypes\).h"/s:"\(.\+\)":<exim/\1>:' \ |
1729 |
- local_scan.h || die |
1730 |
- insinto /usr/include/exim |
1731 |
- doins {config,local_scan}.h ../src/{mytypes,store}.h |
1732 |
- fi |
1733 |
- |
1734 |
- insinto /etc/logrotate.d |
1735 |
- newins "${FILESDIR}/exim.logrotate" exim |
1736 |
- |
1737 |
- newinitd "${FILESDIR}"/exim.rc10 exim |
1738 |
- newconfd "${FILESDIR}"/exim.confd exim |
1739 |
- |
1740 |
- systemd_dounit \ |
1741 |
- "${FILESDIR}"/{exim.service,exim.socket,exim-submission.socket} |
1742 |
- systemd_newunit \ |
1743 |
- "${FILESDIR}"/exim_at.service 'exim@.service' |
1744 |
- systemd_newunit \ |
1745 |
- "${FILESDIR}"/exim-submission_at.service 'exim-submission@.service' |
1746 |
- |
1747 |
- diropts -m 0750 -o ${MAILUSER} -g ${MAILGROUP} |
1748 |
- keepdir /var/log/${PN} |
1749 |
-} |
1750 |
- |
1751 |
-pkg_postinst() { |
1752 |
- if [[ ! -f ${EROOT}etc/exim/exim.conf ]] ; then |
1753 |
- einfo "${EROOT}etc/exim/system_filter.exim is a sample system_filter." |
1754 |
- einfo "${EROOT}etc/exim/auth_conf.sub contains the configuration sub" |
1755 |
- einfo "for using smtp auth." |
1756 |
- einfo "Please create ${EROOT}etc/exim/exim.conf from" |
1757 |
- einfo " ${EROOT}etc/exim/exim.conf.dist." |
1758 |
- fi |
1759 |
- if use dcc ; then |
1760 |
- einfo "DCC support is experimental, you can find some limited" |
1761 |
- einfo "documentation at the bottom of this prerelease message:" |
1762 |
- einfo "http://article.gmane.org/gmane.mail.exim.devel/3579" |
1763 |
- fi |
1764 |
- use srs && einfo "SRS support is experimental" |
1765 |
- if use dmarc ; then |
1766 |
- einfo "DMARC support is experimental. See global settings to" |
1767 |
- einfo "configure DMARC, for usage see the documentation at " |
1768 |
- einfo "experimental-spec.txt." |
1769 |
- fi |
1770 |
- use dsn && einfo "extra information in fail DSN message is experimental" |
1771 |
- elog "The obsolete acl condition 'demime' is removed, the replacements" |
1772 |
- elog "are the ACLs acl_smtp_mime and acl_not_smtp_mime" |
1773 |
-} |