Gentoo Archives: gentoo-commits

From: Fabian Groffen <grobian@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: mail-mta/exim/files/, mail-mta/exim/
Date: Mon, 30 Jan 2017 07:46:31
Message-Id: 1485762380.ce94c0e4ae8e56ec240906c2ed97b7e69e1ea013.grobian@gentoo
1 commit: ce94c0e4ae8e56ec240906c2ed97b7e69e1ea013
2 Author: Fabian Groffen <grobian <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jan 30 07:46:20 2017 +0000
4 Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org>
5 CommitDate: Mon Jan 30 07:46:20 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ce94c0e4
7
8 mail-mta/exim: drop vulnerable versions, bug #602814
9
10 Package-Manager: portage-2.3.3
11
12 mail-mta/exim/Manifest | 2 -
13 mail-mta/exim/exim-4.87-r1.ebuild | 537 ---------------------
14 mail-mta/exim/exim-4.87.ebuild | 532 --------------------
15 .../exim/files/exim-4.87-as-needed-ldflags.patch | 145 ------
16 4 files changed, 1216 deletions(-)
17
18 diff --git a/mail-mta/exim/Manifest b/mail-mta/exim/Manifest
19 index 3d50ff2..fe5d02e 100644
20 --- a/mail-mta/exim/Manifest
21 +++ b/mail-mta/exim/Manifest
22 @@ -1,5 +1,3 @@
23 -DIST exim-4.87.tar.bz2 1801422 SHA256 74691e0dff4d1b5d387e9c33c86f96a8f6d2adbc781c0dec9d2061a847b07dc9 SHA512 2b0d5c82133315c444e29abd182e0866482c904db1abe5ffe9a3008c2174f52eca850a433c069b4102874dc32bbe4af112beac94ffa154f1c06615c24deb47a4 WHIRLPOOL 3aede6629fbf41a71f6907e636458165258b523a3080d0b59ba6b295c1a258d8ce205a3295d4c49c2e6e88ef597b64895684fd47a3f5c3fba360d8e56be5f7f9
24 DIST exim-4.88.tar.bz2 1824610 SHA256 119d5fd7e31fc224e84dfa458fe182f200856bae7adf852a8287c242161f8a2d SHA512 ea094bf703628c201de119fc5f09539475e52158e935f8f2a9e4138c4a1bfe885017145c3cc5e22aa9087b195091955c69385ebf1ea0baec64ed5c1b8e3b1caf WHIRLPOOL d2d8c404217fcc5bbc7bc18500456f2709a099b0a31d4930343b836c35c62e3914fa1c686ea7d9ba5eea95f0caab13c3b76c1508eda74cb75dabb0d61472428e
25 -DIST exim-html-4.87.tar.bz2 478953 SHA256 8f87876d4a392f59d1009ba64ac461862951a3f4eed9c0b14a49be7bcbdc1f12 SHA512 224884abfd7ab9a2410dbdd24bb65545faf427f1b83a942c6c72309e7d85771f78bf7dc5ec1439de95e1038959cdfc4ab549abb98852c8b17c8310b51ad0385c WHIRLPOOL 0444f0b8d8f2e6fab66e9ec7b169eb1d175247e31c323f0a2817b60e2ce6b75057c8d38477697472b009f73fd4b285595b8ca09bac845763767e8146d6c87491
26 DIST exim-pdf-4.88.tar.bz2 1922494 SHA256 33736fafb45c5922fcbc0def7626f46cb74927987b78943aa26949ef30789574 SHA512 8c4f580fa319c0285bcb49056ecd72b056cbbfa287a15a4d856965b4218469c85607ec7321ae0f2ba3be868f05a70a7fb8a77d5836a574417e6bffc64720bee5 WHIRLPOOL 7e3e65c58cc9a313d3440de6b79ed4f113ea265e39201aa2d36c091037c2b20718bd49f04e99f2aa029a20d238cd21178762e2ba6b470596309e83fb3ffc542b
27 DIST system_filter.exim.gz 3075 SHA256 3a3471b486a09e0a0153f7b520e1eaf26d21b97d73ea8348bdc593c00eb1e437 SHA512 cb358d3ce2499a0bb5920d962a06f2af8486e55ec90c8c928bd8e3aefb279aa57f5f960d5adfcef68bd94110b405eaa144e9629cfe6014a529c79c544600bbf3 WHIRLPOOL ce68d9c18b24eca3ef97ea810964cc1ada5f85b795a7c432ad39b5788188a16419101c92fb52b418738d760e1d658f7a41485e5561079a667d84d276c71be5a4
28
29 diff --git a/mail-mta/exim/exim-4.87-r1.ebuild b/mail-mta/exim/exim-4.87-r1.ebuild
30 deleted file mode 100644
31 index d41831e..00000000
32 --- a/mail-mta/exim/exim-4.87-r1.ebuild
33 +++ /dev/null
34 @@ -1,537 +0,0 @@
35 -# Copyright 1999-2016 Gentoo Foundation
36 -# Distributed under the terms of the GNU General Public License v2
37 -# $Id$
38 -
39 -EAPI="5"
40 -
41 -inherit eutils toolchain-funcs multilib pam systemd
42 -
43 -IUSE="dane dcc +dkim dlfunc dmarc +dnsdb doc dovecot-sasl dsn exiscan-acl gnutls 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 elibc_glibc"
44 -REQUIRED_USE="
45 - dane? ( !gnutls )
46 - dmarc? ( spf dkim )
47 - pkcs11? ( gnutls )
48 - spf? ( exiscan-acl )
49 - srs? ( exiscan-acl )
50 -"
51 -
52 -COMM_URI="ftp://ftp.exim.org/pub/exim/exim4$([[ ${PV} == *_rc* ]] && echo /test)"
53 -
54 -DESCRIPTION="A highly configurable, drop-in replacement for sendmail"
55 -SRC_URI="${COMM_URI}/${P//rc/RC}.tar.bz2
56 - mirror://gentoo/system_filter.exim.gz
57 - doc? ( ${COMM_URI}/${PN}-html-${PV//rc/RC}.tar.bz2 )"
58 -HOMEPAGE="http://www.exim.org/"
59 -
60 -SLOT="0"
61 -LICENSE="GPL-2"
62 -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-solaris"
63 -
64 -COMMON_DEPEND=">=sys-apps/sed-4.0.5
65 - >=sys-libs/db-3.2:=
66 - dev-libs/libpcre
67 - perl? ( dev-lang/perl:= )
68 - pam? ( virtual/pam )
69 - tcpd? ( sys-apps/tcp-wrappers )
70 - ssl? (
71 - !libressl? ( dev-libs/openssl:0= )
72 - libressl? ( dev-libs/libressl:= )
73 - )
74 - gnutls? ( net-libs/gnutls[pkcs11?]
75 - dev-libs/libtasn1 )
76 - ldap? ( >=net-nds/openldap-2.0.7 )
77 - nis? ( elibc_glibc? ( || (
78 - <sys-libs/glibc-2.23
79 - >=sys-libs/glibc-2.23[rpc]
80 - ) ) )
81 - mysql? ( virtual/libmysqlclient )
82 - postgres? ( dev-db/postgresql:= )
83 - sasl? ( >=dev-libs/cyrus-sasl-2.1.26-r2 )
84 - redis? ( dev-libs/hiredis )
85 - spf? ( >=mail-filter/libspf2-1.2.5-r1 )
86 - dmarc? ( mail-filter/opendmarc )
87 - srs? ( mail-filter/libsrs_alt )
88 - X? ( x11-proto/xproto
89 - x11-libs/libX11
90 - x11-libs/libXmu
91 - x11-libs/libXt
92 - x11-libs/libXaw
93 - )
94 - sqlite? ( dev-db/sqlite )
95 - radius? ( net-dialup/freeradius-client )
96 - virtual/libiconv
97 - "
98 - # added X check for #57206
99 -DEPEND="${COMMON_DEPEND}
100 - virtual/pkgconfig"
101 -RDEPEND="${COMMON_DEPEND}
102 - !mail-mta/courier
103 - !mail-mta/esmtp
104 - !mail-mta/mini-qmail
105 - !<mail-mta/msmtp-1.4.19-r1
106 - !>=mail-mta/msmtp-1.4.19-r1[mta]
107 - !mail-mta/netqmail
108 - !mail-mta/nullmailer
109 - !mail-mta/postfix
110 - !mail-mta/qmail-ldap
111 - !mail-mta/sendmail
112 - !mail-mta/opensmtpd
113 - !<mail-mta/ssmtp-2.64-r2
114 - !>=mail-mta/ssmtp-2.64-r2[mta]
115 - !net-mail/mailwrapper
116 - >=net-mail/mailbase-0.00-r5
117 - virtual/logger
118 - dcc? ( mail-filter/dcc )
119 - selinux? ( sec-policy/selinux-exim )
120 - "
121 -
122 -S=${WORKDIR}/${P//rc/RC}
123 -
124 -src_prepare() {
125 - epatch "${FILESDIR}"/exim-4.14-tail.patch
126 - epatch "${FILESDIR}"/exim-4.74-localscan_dlopen.patch
127 - epatch "${FILESDIR}"/exim-4.69-r1.27021.patch
128 - epatch "${FILESDIR}"/exim-4.74-radius-db-ENV-clash.patch # 287426
129 - epatch "${FILESDIR}"/exim-4.82-makefile-freebsd.patch # 235785
130 - epatch "${FILESDIR}"/exim-4.87-as-needed-ldflags.patch # 352265, 391279
131 - epatch "${FILESDIR}"/exim-4.76-crosscompile.patch # 266591
132 -
133 - if use maildir ; then
134 - epatch "${FILESDIR}"/exim-4.20-maildir.patch
135 - else
136 - epatch "${FILESDIR}"/exim-4.80-spool-mail-group.patch # 438606
137 - fi
138 -
139 - # user Exim believes it should be
140 - MAILUSER=mail
141 - MAILGROUP=mail
142 - if use prefix && [[ ${EUID} != 0 ]] ; then
143 - MAILUSER=$(id -un)
144 - MAILGROUP=$(id -gn)
145 - fi
146 -}
147 -
148 -src_configure() {
149 - # general config and paths
150 -
151 - sed -i.orig \
152 - -e "/SYSTEM_ALIASES_FILE/s'SYSTEM_ALIASES_FILE'${EPREFIX}/etc/mail/aliases'" \
153 - "${S}"/src/configure.default || die
154 -
155 - sed -i -e 's/^buildname=.*/buildname=exim-gentoo/g' Makefile || die
156 -
157 - sed -e "48i\CFLAGS=${CFLAGS}" \
158 - -e "s:BIN_DIRECTORY=/usr/exim/bin:BIN_DIRECTORY=${EPREFIX}/usr/sbin:" \
159 - -e "s:EXIM_USER=:EXIM_USER=${MAILUSER}:" \
160 - -e "s:CONFIGURE_FILE=/usr/exim/configure:CONFIGURE_FILE=${EPREFIX}/etc/exim/exim.conf:" \
161 - -e "s:ZCAT_COMMAND=.*$:ZCAT_COMMAND=${EPREFIX}/bin/zcat:" \
162 - -e "s:COMPRESS_COMMAND=.*$:COMPRESS_COMMAND=${EPREFIX}/bin/gzip:" \
163 - src/EDITME > Local/Makefile
164 -
165 - if use elibc_musl; then
166 - sed -e 's/^LIBS = -lnsl/LIBS =/g' \
167 - -i OS/Makefile-Linux
168 - fi
169 -
170 - cd Local
171 -
172 - cat >> Makefile <<- EOC
173 - INFO_DIRECTORY=${EPREFIX}/usr/share/info
174 - PID_FILE_PATH=${EPREFIX}/run/exim.pid
175 - SPOOL_DIRECTORY=${EPREFIX}/var/spool/exim
176 - HAVE_ICONV=yes
177 - EOC
178 -
179 - # if we use libiconv, now is the time to tell so
180 - use !elibc_glibc && use !elibc_musl && echo "EXTRALIBS_EXIM=-liconv" >> Makefile
181 -
182 - # support for IPv6
183 - if use ipv6; then
184 - cat >> Makefile <<- EOC
185 - HAVE_IPV6=YES
186 - EOC
187 - fi
188 -
189 - #
190 - # mail storage formats
191 -
192 - # mailstore is Exim's traditional storage format
193 - cat >> Makefile <<- EOC
194 - SUPPORT_MAILSTORE=yes
195 - EOC
196 -
197 - # mbox
198 - if use mbx; then
199 - cat >> Makefile <<- EOC
200 - SUPPORT_MBX=yes
201 - EOC
202 - fi
203 -
204 - # maildir
205 - if use maildir; then
206 - cat >> Makefile <<- EOC
207 - SUPPORT_MAILDIR=yes
208 - EOC
209 - fi
210 -
211 - #
212 - # lookup methods
213 -
214 - # use the "native" interfaces to the DBM and CDB libraries, support
215 - # passwd and directory lookups by default
216 - cat >> Makefile <<- EOC
217 - USE_DB=yes
218 - DBMLIB=-ldb
219 - LOOKUP_CDB=yes
220 - LOOKUP_PASSWD=yes
221 - LOOKUP_DSEARCH=yes
222 - EOC
223 -
224 - if ! use dnsdb; then
225 - # DNSDB lookup is enabled by default
226 - sed -i "s:^LOOKUP_DNSDB=yes:# LOOKUP_DNSDB=yes:" Makefile
227 - fi
228 -
229 - if use ldap; then
230 - cat >> Makefile <<- EOC
231 - LOOKUP_LDAP=yes
232 - LDAP_LIB_TYPE=OPENLDAP2
233 - LOOKUP_INCLUDE += -I"${EROOT}"usr/include/ldap
234 - LOOKUP_LIBS += -lldap -llber
235 - EOC
236 - fi
237 -
238 - if use mysql; then
239 - cat >> Makefile <<- EOC
240 - LOOKUP_MYSQL=yes
241 - LOOKUP_INCLUDE += $(mysql_config --include)
242 - LOOKUP_LIBS += $(mysql_config --libs)
243 - EOC
244 - fi
245 -
246 - if use nis; then
247 - cat >> Makefile <<- EOC
248 - LOOKUP_NIS=yes
249 - LOOKUP_NISPLUS=yes
250 - EOC
251 - fi
252 -
253 - if use postgres; then
254 - cat >> Makefile <<- EOC
255 - LOOKUP_PGSQL=yes
256 - LOOKUP_INCLUDE += -I$(pg_config --includedir)
257 - LOOKUP_LIBS += -L$(pg_config --libdir) -lpq
258 - EOC
259 - fi
260 -
261 - if use sqlite; then
262 - cat >> Makefile <<- EOC
263 - LOOKUP_SQLITE=yes
264 - LOOKUP_SQLITE_PC=sqlite3
265 - EOC
266 - fi
267 -
268 - if use redis; then
269 - cat >> Makefile <<- EOC
270 - LOOKUP_REDIS=yes
271 - LOOKUP_LIBS += -lhiredis
272 - EOC
273 - fi
274 -
275 - #
276 - # Exim monitor, enabled by default, controlled via X USE-flag,
277 - # disable if not requested, bug #46778
278 - if use X; then
279 - cp ../exim_monitor/EDITME eximon.conf || die
280 - else
281 - sed -i -e '/^EXIM_MONITOR=/s/^/# /' Makefile
282 - fi
283 -
284 - #
285 - # features
286 -
287 - # content scanning support
288 - if use exiscan-acl; then
289 - cat >> Makefile <<- EOC
290 - WITH_CONTENT_SCAN=yes
291 - WITH_OLD_DEMIME=yes
292 - EOC
293 - fi
294 -
295 - # DomainKeys Identified Mail, RFC4871
296 - if ! use dkim; then
297 - # DKIM is enabled by default
298 - cat >> Makefile <<- EOC
299 - DISABLE_DKIM=yes
300 - EOC
301 - fi
302 -
303 - # Per-Recipient-Data-Response
304 - if ! use prdr; then
305 - # PRDR is enabled by default
306 - cat >> Makefile <<- EOC
307 - DISABLE_PRDR=yes
308 - EOC
309 - fi
310 -
311 - # log to syslog
312 - if use syslog; then
313 - sed -i "s:LOG_FILE_PATH=/var/log/exim/exim_%s.log:LOG_FILE_PATH=syslog:" Makefile
314 - cat >> Makefile <<- EOC
315 - LOG_FILE_PATH=syslog
316 - EOC
317 - else
318 - cat >> Makefile <<- EOC
319 - LOG_FILE_PATH=${EPREFIX}/var/log/exim/exim_%s.log
320 - EOC
321 - fi
322 -
323 - # starttls support (ssl)
324 - if use ssl; then
325 - echo "SUPPORT_TLS=yes" >> Makefile
326 - if use gnutls; then
327 - echo "USE_GNUTLS=yes" >> Makefile
328 - echo "USE_GNUTLS_PC=gnutls" >> Makefile
329 - use pkcs11 || echo "AVOID_GNUTLS_PKCS11=yes" >> Makefile
330 - else
331 - echo "USE_OPENSSL_PC=openssl" >> Makefile
332 - fi
333 - fi
334 -
335 - # TCP wrappers
336 - if use tcpd; then
337 - cat >> Makefile <<- EOC
338 - USE_TCP_WRAPPERS=yes
339 - EXTRALIBS_EXIM += -lwrap
340 - EOC
341 - fi
342 -
343 - # Light Mail Transport Protocol
344 - if use lmtp; then
345 - cat >> Makefile <<- EOC
346 - TRANSPORT_LMTP=yes
347 - EOC
348 - fi
349 -
350 - # embedded Perl
351 - if use perl; then
352 - cat >> Makefile <<- EOC
353 - EXIM_PERL=perl.o
354 - EOC
355 - fi
356 -
357 - # dlfunc
358 - if use dlfunc; then
359 - cat >> Makefile <<- EOC
360 - EXPAND_DLFUNC=yes
361 - EOC
362 - fi
363 -
364 - #
365 - # experimental features
366 -
367 - # DANE
368 - if use dane; then
369 - cat >> Makefile <<- EOC
370 - EXPERIMENTAL_DANE=yes
371 - EOC
372 - fi
373 -
374 - # Distributed Checksum Clearinghouse
375 - if use dcc; then
376 - echo "EXPERIMENTAL_DCC=yes">> Makefile
377 - fi
378 -
379 - # Sender Policy Framework
380 - if use spf; then
381 - cat >> Makefile <<- EOC
382 - EXPERIMENTAL_SPF=yes
383 - EXTRALIBS_EXIM += -lspf2
384 - EOC
385 - fi
386 -
387 - # Sender Rewriting Scheme
388 - if use srs; then
389 - cat >> Makefile <<- EOC
390 - EXPERIMENTAL_SRS=yes
391 - EXTRALIBS_EXIM += -lsrs_alt
392 - EOC
393 - fi
394 -
395 - # DMARC
396 - if use dmarc; then
397 - cat >> Makefile <<- EOC
398 - EXPERIMENTAL_DMARC=yes
399 - EXTRALIBS_EXIM += -lopendmarc
400 - EOC
401 - fi
402 -
403 - # Transport post-delivery actions
404 - if use tpda; then
405 - cat >> Makefile <<- EOC
406 - EXPERIMENTAL_EVENT=yes
407 - EOC
408 - fi
409 -
410 - # Proxy Protocol
411 - if use proxy; then
412 - cat >> Makefile <<- EOC
413 - EXPERIMENTAL_PROXY=yes
414 - EOC
415 - fi
416 -
417 - # Delivery Sender Notifications
418 - if use dsn; then
419 - cat >> Makefile <<- EOC
420 - EXPERIMENTAL_DSN=yes
421 - EOC
422 - fi
423 -
424 - #
425 - # authentication (SMTP AUTH)
426 -
427 - # standard bits
428 - cat >> Makefile <<- EOC
429 - AUTH_SPA=yes
430 - AUTH_CRAM_MD5=yes
431 - AUTH_PLAINTEXT=yes
432 - EOC
433 -
434 - # Cyrus SASL
435 - if use sasl; then
436 - cat >> Makefile <<- EOC
437 - CYRUS_SASLAUTHD_SOCKET=${EPREFIX}/run/saslauthd/mux
438 - AUTH_CYRUS_SASL=yes
439 - AUTH_LIBS += -lsasl2
440 - EOC
441 - fi
442 -
443 - # Dovecot
444 - if use dovecot-sasl; then
445 - cat >> Makefile <<- EOC
446 - AUTH_DOVECOT=yes
447 - EOC
448 - fi
449 -
450 - # Pluggable Authentication Modules
451 - if use pam; then
452 - cat >> Makefile <<- EOC
453 - SUPPORT_PAM=yes
454 - AUTH_LIBS += -lpam
455 - EOC
456 - fi
457 -
458 - # Radius
459 - if use radius; then
460 - cat >> Makefile <<- EOC
461 - RADIUS_CONFIG_FILE=${EPREFIX}/etc/radiusclient/radiusclient.conf
462 - RADIUS_LIB_TYPE=RADIUSCLIENTNEW
463 - AUTH_LIBS += -lfreeradius-client
464 - EOC
465 - fi
466 -}
467 -
468 -src_compile() {
469 - emake CC="$(tc-getCC)" HOSTCC="$(tc-getCC $CBUILD)" \
470 - AR="$(tc-getAR) cq" RANLIB="$(tc-getRANLIB)" FULLECHO='' \
471 - || die "make failed"
472 -}
473 -
474 -src_install () {
475 - cd "${S}"/build-exim-gentoo || die
476 - dosbin exim
477 - if use X; then
478 - dosbin eximon.bin
479 - dosbin eximon
480 - fi
481 - fperms 4755 /usr/sbin/exim
482 -
483 - dosym exim /usr/sbin/sendmail
484 - dosym exim /usr/sbin/rsmtp
485 - dosym exim /usr/sbin/rmail
486 - dosym /usr/sbin/exim /usr/bin/mailq
487 - dosym /usr/sbin/exim /usr/bin/newaliases
488 - dosym /usr/sbin/sendmail /usr/lib/sendmail
489 -
490 - for i in exicyclog exim_dbmbuild exim_dumpdb exim_fixdb exim_lock \
491 - exim_tidydb exinext exiwhat exigrep eximstats exiqsumm exiqgrep \
492 - convert4r3 convert4r4 exipick
493 - do
494 - dosbin $i
495 - done
496 -
497 - dodoc "${S}"/doc/*
498 - doman "${S}"/doc/exim.8
499 - use dsn && dodoc "${S}"/README.DSN
500 - use doc && dohtml -r "${WORKDIR}"/${PN}-html-${PV//rc/RC}/doc/html/spec_html/*
501 -
502 - # conf files
503 - insinto /etc/exim
504 - newins "${S}"/src/configure.default exim.conf.dist
505 - if use exiscan-acl; then
506 - newins "${S}"/src/configure.default exim.conf.exiscan-acl
507 - fi
508 - doins "${WORKDIR}"/system_filter.exim
509 - doins "${FILESDIR}"/auth_conf.sub
510 -
511 - pamd_mimic system-auth exim auth account
512 -
513 - # headers, #436406
514 - if use dlfunc ; then
515 - # fixup includes so they actually can be found when including
516 - sed -i \
517 - -e '/#include "\(config\|store\|mytypes\).h"/s:"\(.\+\)":<exim/\1>:' \
518 - local_scan.h || die
519 - insinto /usr/include/exim
520 - doins {config,local_scan}.h ../src/{mytypes,store}.h
521 - fi
522 -
523 - insinto /etc/logrotate.d
524 - newins "${FILESDIR}/exim.logrotate" exim
525 -
526 - newinitd "${FILESDIR}"/exim.rc9 exim
527 - newconfd "${FILESDIR}"/exim.confd exim
528 -
529 - systemd_dounit "${FILESDIR}"/{exim.service,exim.socket,exim-submission.socket}
530 - systemd_newunit "${FILESDIR}"/exim_at.service 'exim@.service'
531 - systemd_newunit "${FILESDIR}"/exim-submission_at.service 'exim-submission@.service'
532 -
533 - diropts -m 0750 -o ${MAILUSER} -g ${MAILGROUP}
534 - dodir /var/log/${PN}
535 -}
536 -
537 -pkg_postinst() {
538 - if [[ ! -f ${EROOT}etc/exim/exim.conf ]] ; then
539 - einfo "${EROOT}etc/exim/system_filter.exim is a sample system_filter."
540 - einfo "${EROOT}etc/exim/auth_conf.sub contains the configuration sub for using smtp auth."
541 - einfo "Please create ${EROOT}etc/exim/exim.conf from ${EROOT}etc/exim/exim.conf.dist."
542 - fi
543 - use dane && einfo "DANE support is experimental"
544 - if use dcc ; then
545 - einfo "DCC support is experimental, you can find some limited"
546 - einfo "documentation at the bottom of this prerelease message:"
547 - einfo "http://article.gmane.org/gmane.mail.exim.devel/3579"
548 - fi
549 - use spf && einfo "SPF support is experimental"
550 - use srs && einfo "SRS support is experimental"
551 - if use dmarc ; then
552 - einfo "DMARC support is experimental. See global settings to"
553 - einfo "configure DMARC, for usage see the documentation at "
554 - einfo "experimental-spec.txt."
555 - fi
556 - use tpda && einfo "TPDA/EVENT support is experimental"
557 - use proxy && einfo "proxy support is experimental"
558 - if use dsn ; then
559 - einfo "Starting from Exim 4.83, DSN support comes from upstream."
560 - einfo "DSN support is an experimental feature. If you used DSN"
561 - einfo "support prior to 4.83, make sure to remove all dsn_process"
562 - einfo "switches from your routers, see https://bugs.gentoo.org/511818"
563 - fi
564 - einfo "Exim maintains some db files under its spool directory that need"
565 - einfo "cleaning from time to time. (${EROOT}var/spool/exim/db)"
566 - einfo "Please use the exim_tidydb tool as documented in the Exim manual:"
567 - einfo "http://www.exim.org/exim-html-current/doc/html/spec_html/ch-exim_utilities.html#SECThindatmai"
568 - einfo "For CVE-2016-1531, Exim introduced keep_environment and"
569 - einfo "add_environment flags. You might want to set them, see:"
570 - einfo "https://lists.exim.org/lurker/message/20160302.191005.a72d8433.en.html"
571 -}
572
573 diff --git a/mail-mta/exim/exim-4.87.ebuild b/mail-mta/exim/exim-4.87.ebuild
574 deleted file mode 100644
575 index a610552..00000000
576 --- a/mail-mta/exim/exim-4.87.ebuild
577 +++ /dev/null
578 @@ -1,532 +0,0 @@
579 -# Copyright 1999-2016 Gentoo Foundation
580 -# Distributed under the terms of the GNU General Public License v2
581 -# $Id$
582 -
583 -EAPI="5"
584 -
585 -inherit eutils toolchain-funcs multilib pam systemd
586 -
587 -IUSE="dane dcc +dkim dlfunc dmarc +dnsdb doc dovecot-sasl dsn exiscan-acl gnutls 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 elibc_glibc"
588 -REQUIRED_USE="
589 - dane? ( !gnutls )
590 - dmarc? ( spf dkim )
591 - pkcs11? ( gnutls )
592 - spf? ( exiscan-acl )
593 - srs? ( exiscan-acl )
594 -"
595 -
596 -COMM_URI="ftp://ftp.exim.org/pub/exim/exim4$([[ ${PV} == *_rc* ]] && echo /test)"
597 -
598 -DESCRIPTION="A highly configurable, drop-in replacement for sendmail"
599 -SRC_URI="${COMM_URI}/${P//rc/RC}.tar.bz2
600 - mirror://gentoo/system_filter.exim.gz
601 - doc? ( ${COMM_URI}/${PN}-html-${PV//rc/RC}.tar.bz2 )"
602 -HOMEPAGE="http://www.exim.org/"
603 -
604 -SLOT="0"
605 -LICENSE="GPL-2"
606 -KEYWORDS="alpha amd64 ~arm hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~x86-solaris"
607 -
608 -COMMON_DEPEND=">=sys-apps/sed-4.0.5
609 - >=sys-libs/db-3.2:=
610 - dev-libs/libpcre
611 - perl? ( dev-lang/perl:= )
612 - pam? ( virtual/pam )
613 - tcpd? ( sys-apps/tcp-wrappers )
614 - ssl? (
615 - !libressl? ( dev-libs/openssl:0= )
616 - libressl? ( dev-libs/libressl:= )
617 - )
618 - gnutls? ( net-libs/gnutls[pkcs11?]
619 - dev-libs/libtasn1 )
620 - ldap? ( >=net-nds/openldap-2.0.7 )
621 - nis? ( elibc_glibc? ( || (
622 - <sys-libs/glibc-2.23
623 - >=sys-libs/glibc-2.23[rpc]
624 - ) ) )
625 - mysql? ( virtual/libmysqlclient )
626 - postgres? ( dev-db/postgresql:= )
627 - sasl? ( >=dev-libs/cyrus-sasl-2.1.26-r2 )
628 - redis? ( dev-libs/hiredis )
629 - spf? ( >=mail-filter/libspf2-1.2.5-r1 )
630 - dmarc? ( mail-filter/opendmarc )
631 - srs? ( mail-filter/libsrs_alt )
632 - X? ( x11-proto/xproto
633 - x11-libs/libX11
634 - x11-libs/libXmu
635 - x11-libs/libXt
636 - x11-libs/libXaw
637 - )
638 - sqlite? ( dev-db/sqlite )
639 - radius? ( net-dialup/freeradius-client )
640 - virtual/libiconv
641 - "
642 - # added X check for #57206
643 -DEPEND="${COMMON_DEPEND}
644 - virtual/pkgconfig"
645 -RDEPEND="${COMMON_DEPEND}
646 - !mail-mta/courier
647 - !mail-mta/esmtp
648 - !mail-mta/mini-qmail
649 - !<mail-mta/msmtp-1.4.19-r1
650 - !>=mail-mta/msmtp-1.4.19-r1[mta]
651 - !mail-mta/netqmail
652 - !mail-mta/nullmailer
653 - !mail-mta/postfix
654 - !mail-mta/qmail-ldap
655 - !mail-mta/sendmail
656 - !mail-mta/opensmtpd
657 - !<mail-mta/ssmtp-2.64-r2
658 - !>=mail-mta/ssmtp-2.64-r2[mta]
659 - !net-mail/mailwrapper
660 - >=net-mail/mailbase-0.00-r5
661 - virtual/logger
662 - dcc? ( mail-filter/dcc )
663 - selinux? ( sec-policy/selinux-exim )
664 - "
665 -
666 -S=${WORKDIR}/${P//rc/RC}
667 -
668 -src_prepare() {
669 - epatch "${FILESDIR}"/exim-4.14-tail.patch
670 - epatch "${FILESDIR}"/exim-4.74-localscan_dlopen.patch
671 - epatch "${FILESDIR}"/exim-4.69-r1.27021.patch
672 - epatch "${FILESDIR}"/exim-4.74-radius-db-ENV-clash.patch # 287426
673 - epatch "${FILESDIR}"/exim-4.82-makefile-freebsd.patch # 235785
674 - epatch "${FILESDIR}"/exim-4.87-as-needed-ldflags.patch # 352265, 391279
675 - epatch "${FILESDIR}"/exim-4.76-crosscompile.patch # 266591
676 -
677 - if use maildir ; then
678 - epatch "${FILESDIR}"/exim-4.20-maildir.patch
679 - else
680 - epatch "${FILESDIR}"/exim-4.80-spool-mail-group.patch # 438606
681 - fi
682 -
683 - # user Exim believes it should be
684 - MAILUSER=mail
685 - MAILGROUP=mail
686 - if use prefix && [[ ${EUID} != 0 ]] ; then
687 - MAILUSER=$(id -un)
688 - MAILGROUP=$(id -gn)
689 - fi
690 -}
691 -
692 -src_configure() {
693 - # general config and paths
694 -
695 - sed -i.orig \
696 - -e "/SYSTEM_ALIASES_FILE/s'SYSTEM_ALIASES_FILE'${EPREFIX}/etc/mail/aliases'" \
697 - "${S}"/src/configure.default || die
698 -
699 - sed -i -e 's/^buildname=.*/buildname=exim-gentoo/g' Makefile || die
700 -
701 - sed -e "48i\CFLAGS=${CFLAGS}" \
702 - -e "s:BIN_DIRECTORY=/usr/exim/bin:BIN_DIRECTORY=${EPREFIX}/usr/sbin:" \
703 - -e "s:EXIM_USER=:EXIM_USER=${MAILUSER}:" \
704 - -e "s:CONFIGURE_FILE=/usr/exim/configure:CONFIGURE_FILE=${EPREFIX}/etc/exim/exim.conf:" \
705 - -e "s:ZCAT_COMMAND=.*$:ZCAT_COMMAND=${EPREFIX}/bin/zcat:" \
706 - -e "s:COMPRESS_COMMAND=.*$:COMPRESS_COMMAND=${EPREFIX}/bin/gzip:" \
707 - src/EDITME > Local/Makefile
708 -
709 - cd Local
710 -
711 - cat >> Makefile <<- EOC
712 - INFO_DIRECTORY=${EPREFIX}/usr/share/info
713 - PID_FILE_PATH=${EPREFIX}/run/exim.pid
714 - SPOOL_DIRECTORY=${EPREFIX}/var/spool/exim
715 - HAVE_ICONV=yes
716 - EOC
717 -
718 - # if we use libiconv, now is the time to tell so
719 - use !elibc_glibc && echo "EXTRALIBS_EXIM=-liconv" >> Makefile
720 -
721 - # support for IPv6
722 - if use ipv6; then
723 - cat >> Makefile <<- EOC
724 - HAVE_IPV6=YES
725 - EOC
726 - fi
727 -
728 - #
729 - # mail storage formats
730 -
731 - # mailstore is Exim's traditional storage format
732 - cat >> Makefile <<- EOC
733 - SUPPORT_MAILSTORE=yes
734 - EOC
735 -
736 - # mbox
737 - if use mbx; then
738 - cat >> Makefile <<- EOC
739 - SUPPORT_MBX=yes
740 - EOC
741 - fi
742 -
743 - # maildir
744 - if use maildir; then
745 - cat >> Makefile <<- EOC
746 - SUPPORT_MAILDIR=yes
747 - EOC
748 - fi
749 -
750 - #
751 - # lookup methods
752 -
753 - # use the "native" interfaces to the DBM and CDB libraries, support
754 - # passwd and directory lookups by default
755 - cat >> Makefile <<- EOC
756 - USE_DB=yes
757 - DBMLIB=-ldb
758 - LOOKUP_CDB=yes
759 - LOOKUP_PASSWD=yes
760 - LOOKUP_DSEARCH=yes
761 - EOC
762 -
763 - if ! use dnsdb; then
764 - # DNSDB lookup is enabled by default
765 - sed -i "s:^LOOKUP_DNSDB=yes:# LOOKUP_DNSDB=yes:" Makefile
766 - fi
767 -
768 - if use ldap; then
769 - cat >> Makefile <<- EOC
770 - LOOKUP_LDAP=yes
771 - LDAP_LIB_TYPE=OPENLDAP2
772 - LOOKUP_INCLUDE += -I"${EROOT}"usr/include/ldap
773 - LOOKUP_LIBS += -lldap -llber
774 - EOC
775 - fi
776 -
777 - if use mysql; then
778 - cat >> Makefile <<- EOC
779 - LOOKUP_MYSQL=yes
780 - LOOKUP_INCLUDE += $(mysql_config --include)
781 - LOOKUP_LIBS += $(mysql_config --libs)
782 - EOC
783 - fi
784 -
785 - if use nis; then
786 - cat >> Makefile <<- EOC
787 - LOOKUP_NIS=yes
788 - LOOKUP_NISPLUS=yes
789 - EOC
790 - fi
791 -
792 - if use postgres; then
793 - cat >> Makefile <<- EOC
794 - LOOKUP_PGSQL=yes
795 - LOOKUP_INCLUDE += -I$(pg_config --includedir)
796 - LOOKUP_LIBS += -L$(pg_config --libdir) -lpq
797 - EOC
798 - fi
799 -
800 - if use sqlite; then
801 - cat >> Makefile <<- EOC
802 - LOOKUP_SQLITE=yes
803 - LOOKUP_SQLITE_PC=sqlite3
804 - EOC
805 - fi
806 -
807 - if use redis; then
808 - cat >> Makefile <<- EOC
809 - LOOKUP_REDIS=yes
810 - LOOKUP_LIBS += -lhiredis
811 - EOC
812 - fi
813 -
814 - #
815 - # Exim monitor, enabled by default, controlled via X USE-flag,
816 - # disable if not requested, bug #46778
817 - if use X; then
818 - cp ../exim_monitor/EDITME eximon.conf || die
819 - else
820 - sed -i -e '/^EXIM_MONITOR=/s/^/# /' Makefile
821 - fi
822 -
823 - #
824 - # features
825 -
826 - # content scanning support
827 - if use exiscan-acl; then
828 - cat >> Makefile <<- EOC
829 - WITH_CONTENT_SCAN=yes
830 - WITH_OLD_DEMIME=yes
831 - EOC
832 - fi
833 -
834 - # DomainKeys Identified Mail, RFC4871
835 - if ! use dkim; then
836 - # DKIM is enabled by default
837 - cat >> Makefile <<- EOC
838 - DISABLE_DKIM=yes
839 - EOC
840 - fi
841 -
842 - # Per-Recipient-Data-Response
843 - if ! use prdr; then
844 - # PRDR is enabled by default
845 - cat >> Makefile <<- EOC
846 - DISABLE_PRDR=yes
847 - EOC
848 - fi
849 -
850 - # log to syslog
851 - if use syslog; then
852 - sed -i "s:LOG_FILE_PATH=/var/log/exim/exim_%s.log:LOG_FILE_PATH=syslog:" Makefile
853 - cat >> Makefile <<- EOC
854 - LOG_FILE_PATH=syslog
855 - EOC
856 - else
857 - cat >> Makefile <<- EOC
858 - LOG_FILE_PATH=${EPREFIX}/var/log/exim/exim_%s.log
859 - EOC
860 - fi
861 -
862 - # starttls support (ssl)
863 - if use ssl; then
864 - echo "SUPPORT_TLS=yes" >> Makefile
865 - if use gnutls; then
866 - echo "USE_GNUTLS=yes" >> Makefile
867 - echo "USE_GNUTLS_PC=gnutls" >> Makefile
868 - use pkcs11 || echo "AVOID_GNUTLS_PKCS11=yes" >> Makefile
869 - else
870 - echo "USE_OPENSSL_PC=openssl" >> Makefile
871 - fi
872 - fi
873 -
874 - # TCP wrappers
875 - if use tcpd; then
876 - cat >> Makefile <<- EOC
877 - USE_TCP_WRAPPERS=yes
878 - EXTRALIBS_EXIM += -lwrap
879 - EOC
880 - fi
881 -
882 - # Light Mail Transport Protocol
883 - if use lmtp; then
884 - cat >> Makefile <<- EOC
885 - TRANSPORT_LMTP=yes
886 - EOC
887 - fi
888 -
889 - # embedded Perl
890 - if use perl; then
891 - cat >> Makefile <<- EOC
892 - EXIM_PERL=perl.o
893 - EOC
894 - fi
895 -
896 - # dlfunc
897 - if use dlfunc; then
898 - cat >> Makefile <<- EOC
899 - EXPAND_DLFUNC=yes
900 - EOC
901 - fi
902 -
903 - #
904 - # experimental features
905 -
906 - # DANE
907 - if use dane; then
908 - cat >> Makefile <<- EOC
909 - EXPERIMENTAL_DANE=yes
910 - EOC
911 - fi
912 -
913 - # Distributed Checksum Clearinghouse
914 - if use dcc; then
915 - echo "EXPERIMENTAL_DCC=yes">> Makefile
916 - fi
917 -
918 - # Sender Policy Framework
919 - if use spf; then
920 - cat >> Makefile <<- EOC
921 - EXPERIMENTAL_SPF=yes
922 - EXTRALIBS_EXIM += -lspf2
923 - EOC
924 - fi
925 -
926 - # Sender Rewriting Scheme
927 - if use srs; then
928 - cat >> Makefile <<- EOC
929 - EXPERIMENTAL_SRS=yes
930 - EXTRALIBS_EXIM += -lsrs_alt
931 - EOC
932 - fi
933 -
934 - # DMARC
935 - if use dmarc; then
936 - cat >> Makefile <<- EOC
937 - EXPERIMENTAL_DMARC=yes
938 - EXTRALIBS_EXIM += -lopendmarc
939 - EOC
940 - fi
941 -
942 - # Transport post-delivery actions
943 - if use tpda; then
944 - cat >> Makefile <<- EOC
945 - EXPERIMENTAL_EVENT=yes
946 - EOC
947 - fi
948 -
949 - # Proxy Protocol
950 - if use proxy; then
951 - cat >> Makefile <<- EOC
952 - EXPERIMENTAL_PROXY=yes
953 - EOC
954 - fi
955 -
956 - # Delivery Sender Notifications
957 - if use dsn; then
958 - cat >> Makefile <<- EOC
959 - EXPERIMENTAL_DSN=yes
960 - EOC
961 - fi
962 -
963 - #
964 - # authentication (SMTP AUTH)
965 -
966 - # standard bits
967 - cat >> Makefile <<- EOC
968 - AUTH_SPA=yes
969 - AUTH_CRAM_MD5=yes
970 - AUTH_PLAINTEXT=yes
971 - EOC
972 -
973 - # Cyrus SASL
974 - if use sasl; then
975 - cat >> Makefile <<- EOC
976 - CYRUS_SASLAUTHD_SOCKET=${EPREFIX}/run/saslauthd/mux
977 - AUTH_CYRUS_SASL=yes
978 - AUTH_LIBS += -lsasl2
979 - EOC
980 - fi
981 -
982 - # Dovecot
983 - if use dovecot-sasl; then
984 - cat >> Makefile <<- EOC
985 - AUTH_DOVECOT=yes
986 - EOC
987 - fi
988 -
989 - # Pluggable Authentication Modules
990 - if use pam; then
991 - cat >> Makefile <<- EOC
992 - SUPPORT_PAM=yes
993 - AUTH_LIBS += -lpam
994 - EOC
995 - fi
996 -
997 - # Radius
998 - if use radius; then
999 - cat >> Makefile <<- EOC
1000 - RADIUS_CONFIG_FILE=${EPREFIX}/etc/radiusclient/radiusclient.conf
1001 - RADIUS_LIB_TYPE=RADIUSCLIENTNEW
1002 - AUTH_LIBS += -lfreeradius-client
1003 - EOC
1004 - fi
1005 -}
1006 -
1007 -src_compile() {
1008 - emake CC="$(tc-getCC)" HOSTCC="$(tc-getCC $CBUILD)" \
1009 - AR="$(tc-getAR) cq" RANLIB="$(tc-getRANLIB)" FULLECHO='' \
1010 - || die "make failed"
1011 -}
1012 -
1013 -src_install () {
1014 - cd "${S}"/build-exim-gentoo || die
1015 - dosbin exim
1016 - if use X; then
1017 - dosbin eximon.bin
1018 - dosbin eximon
1019 - fi
1020 - fperms 4755 /usr/sbin/exim
1021 -
1022 - dosym exim /usr/sbin/sendmail
1023 - dosym exim /usr/sbin/rsmtp
1024 - dosym exim /usr/sbin/rmail
1025 - dosym /usr/sbin/exim /usr/bin/mailq
1026 - dosym /usr/sbin/exim /usr/bin/newaliases
1027 - dosym /usr/sbin/sendmail /usr/lib/sendmail
1028 -
1029 - for i in exicyclog exim_dbmbuild exim_dumpdb exim_fixdb exim_lock \
1030 - exim_tidydb exinext exiwhat exigrep eximstats exiqsumm exiqgrep \
1031 - convert4r3 convert4r4 exipick
1032 - do
1033 - dosbin $i
1034 - done
1035 -
1036 - dodoc "${S}"/doc/*
1037 - doman "${S}"/doc/exim.8
1038 - use dsn && dodoc "${S}"/README.DSN
1039 - use doc && dohtml -r "${WORKDIR}"/${PN}-html-${PV//rc/RC}/doc/html/spec_html/*
1040 -
1041 - # conf files
1042 - insinto /etc/exim
1043 - newins "${S}"/src/configure.default exim.conf.dist
1044 - if use exiscan-acl; then
1045 - newins "${S}"/src/configure.default exim.conf.exiscan-acl
1046 - fi
1047 - doins "${WORKDIR}"/system_filter.exim
1048 - doins "${FILESDIR}"/auth_conf.sub
1049 -
1050 - pamd_mimic system-auth exim auth account
1051 -
1052 - # headers, #436406
1053 - if use dlfunc ; then
1054 - # fixup includes so they actually can be found when including
1055 - sed -i \
1056 - -e '/#include "\(config\|store\|mytypes\).h"/s:"\(.\+\)":<exim/\1>:' \
1057 - local_scan.h || die
1058 - insinto /usr/include/exim
1059 - doins {config,local_scan}.h ../src/{mytypes,store}.h
1060 - fi
1061 -
1062 - insinto /etc/logrotate.d
1063 - newins "${FILESDIR}/exim.logrotate" exim
1064 -
1065 - newinitd "${FILESDIR}"/exim.rc9 exim
1066 - newconfd "${FILESDIR}"/exim.confd exim
1067 -
1068 - systemd_dounit "${FILESDIR}"/{exim.service,exim.socket,exim-submission.socket}
1069 - systemd_newunit "${FILESDIR}"/exim_at.service 'exim@.service'
1070 - systemd_newunit "${FILESDIR}"/exim-submission_at.service 'exim-submission@.service'
1071 -
1072 - diropts -m 0750 -o ${MAILUSER} -g ${MAILGROUP}
1073 - dodir /var/log/${PN}
1074 -}
1075 -
1076 -pkg_postinst() {
1077 - if [[ ! -f ${EROOT}etc/exim/exim.conf ]] ; then
1078 - einfo "${EROOT}etc/exim/system_filter.exim is a sample system_filter."
1079 - einfo "${EROOT}etc/exim/auth_conf.sub contains the configuration sub for using smtp auth."
1080 - einfo "Please create ${EROOT}etc/exim/exim.conf from ${EROOT}etc/exim/exim.conf.dist."
1081 - fi
1082 - use dane && einfo "DANE support is experimental"
1083 - if use dcc ; then
1084 - einfo "DCC support is experimental, you can find some limited"
1085 - einfo "documentation at the bottom of this prerelease message:"
1086 - einfo "http://article.gmane.org/gmane.mail.exim.devel/3579"
1087 - fi
1088 - use spf && einfo "SPF support is experimental"
1089 - use srs && einfo "SRS support is experimental"
1090 - if use dmarc ; then
1091 - einfo "DMARC support is experimental. See global settings to"
1092 - einfo "configure DMARC, for usage see the documentation at "
1093 - einfo "experimental-spec.txt."
1094 - fi
1095 - use tpda && einfo "TPDA/EVENT support is experimental"
1096 - use proxy && einfo "proxy support is experimental"
1097 - if use dsn ; then
1098 - einfo "Starting from Exim 4.83, DSN support comes from upstream."
1099 - einfo "DSN support is an experimental feature. If you used DSN"
1100 - einfo "support prior to 4.83, make sure to remove all dsn_process"
1101 - einfo "switches from your routers, see https://bugs.gentoo.org/511818"
1102 - fi
1103 - einfo "Exim maintains some db files under its spool directory that need"
1104 - einfo "cleaning from time to time. (${EROOT}var/spool/exim/db)"
1105 - einfo "Please use the exim_tidydb tool as documented in the Exim manual:"
1106 - einfo "http://www.exim.org/exim-html-current/doc/html/spec_html/ch-exim_utilities.html#SECThindatmai"
1107 - einfo "For CVE-2016-1531, Exim introduced keep_environment and"
1108 - einfo "add_environment flags. You might want to set them, see:"
1109 - einfo "https://lists.exim.org/lurker/message/20160302.191005.a72d8433.en.html"
1110 -}
1111
1112 diff --git a/mail-mta/exim/files/exim-4.87-as-needed-ldflags.patch b/mail-mta/exim/files/exim-4.87-as-needed-ldflags.patch
1113 deleted file mode 100644
1114 index e438485..00000000
1115 --- a/mail-mta/exim/files/exim-4.87-as-needed-ldflags.patch
1116 +++ /dev/null
1117 @@ -1,145 +0,0 @@
1118 -https://bugs.gentoo.org/show_bug.cgi?id=352265
1119 -
1120 -Make sure LDFLAGS comes first, such that all libraries are considered,
1121 -and not discarded when --as-needed is in effect.
1122 -
1123 -https://bugs.gentoo.org/show_bug.cgi?id=391279
1124 -
1125 -Use LDFLAGS for all targets, not just the exim binary, such that
1126 ---as-needed works as well.
1127 -
1128 -
1129 ---- OS/Makefile-Base
1130 -+++ OS/Makefile-Base
1131 -@@ -325,12 +325,12 @@
1132 - buildrouters buildtransports \
1133 - $(OBJ_EXIM) version.o
1134 - @echo "$(LNCC) -o exim"
1135 -- $(FE)$(PURIFY) $(LNCC) -o exim $(LFLAGS) $(OBJ_EXIM) version.o \
1136 -+ $(FE)$(PURIFY) $(LNCC) -o exim $(LDFLAGS) $(OBJ_EXIM) version.o \
1137 - routers/routers.a transports/transports.a lookups/lookups.a \
1138 - auths/auths.a pdkim/pdkim.a \
1139 - $(LIBRESOLV) $(LIBS) $(LIBS_EXIM) $(IPV6_LIBS) $(EXTRALIBS) \
1140 - $(EXTRALIBS_EXIM) $(DBMLIB) $(LOOKUP_LIBS) $(AUTH_LIBS) \
1141 -- $(PERL_LIBS) $(TLS_LIBS) $(PCRE_LIBS) $(LDFLAGS)
1142 -+ $(PERL_LIBS) $(TLS_LIBS) $(PCRE_LIBS) $(LFLAGS)
1143 - @if [ x"$(STRIP_COMMAND)" != x"" ]; then \
1144 - echo $(STRIP_COMMAND) exim; \
1145 - $(STRIP_COMMAND) exim; \
1146 -@@ -346,8 +346,8 @@
1147 -
1148 - exim_dumpdb: $(OBJ_DUMPDB)
1149 - @echo "$(LNCC) -o exim_dumpdb"
1150 -- $(FE)$(LNCC) $(CFLAGS) $(INCLUDE) -o exim_dumpdb $(LFLAGS) $(OBJ_DUMPDB) \
1151 -- $(LIBS) $(EXTRALIBS) $(DBMLIB)
1152 -+ $(FE)$(LNCC) $(CFLAGS) $(INCLUDE) -o exim_dumpdb $(LDFLAGS) $(OBJ_DUMPDB) \
1153 -+ $(LIBS) $(EXTRALIBS) $(DBMLIB) $(LFLAGS)
1154 - @if [ x"$(STRIP_COMMAND)" != x"" ]; then \
1155 - echo $(STRIP_COMMAND) exim_dumpdb; \
1156 - $(STRIP_COMMAND) exim_dumpdb; \
1157 -@@ -361,8 +361,8 @@
1158 -
1159 - exim_fixdb: $(OBJ_FIXDB) buildauths
1160 - @echo "$(LNCC) -o exim_fixdb"
1161 -- $(FE)$(LNCC) $(CFLAGS) $(INCLUDE) -o exim_fixdb $(LFLAGS) $(OBJ_FIXDB) \
1162 -- auths/auths.a $(LIBS) $(EXTRALIBS) $(DBMLIB)
1163 -+ $(FE)$(LNCC) $(CFLAGS) $(INCLUDE) -o exim_fixdb $(LDFLAGS) $(OBJ_FIXDB) \
1164 -+ auths/auths.a $(LIBS) $(EXTRALIBS) $(DBMLIB) $(LFLAGS)
1165 - @if [ x"$(STRIP_COMMAND)" != x"" ]; then \
1166 - echo $(STRIP_COMMAND) exim_fixdb; \
1167 - $(STRIP_COMMAND) exim_fixdb; \
1168 -@@ -376,8 +376,8 @@
1169 -
1170 - exim_tidydb: $(OBJ_TIDYDB)
1171 - @echo "$(LNCC) -o exim_tidydb"
1172 -- $(FE)$(LNCC) $(CFLAGS) $(INCLUDE) -o exim_tidydb $(LFLAGS) $(OBJ_TIDYDB) \
1173 -- $(LIBS) $(EXTRALIBS) $(DBMLIB)
1174 -+ $(FE)$(LNCC) $(CFLAGS) $(INCLUDE) -o exim_tidydb $(LDFLAGS) $(OBJ_TIDYDB) \
1175 -+ $(LIBS) $(EXTRALIBS) $(DBMLIB) $(LFLAGS)
1176 - @if [ x"$(STRIP_COMMAND)" != x"" ]; then \
1177 - echo $(STRIP_COMMAND) exim_tidydb; \
1178 - $(STRIP_COMMAND) exim_tidydb; \
1179 -@@ -389,8 +389,8 @@
1180 -
1181 - exim_dbmbuild: exim_dbmbuild.o
1182 - @echo "$(LNCC) -o exim_dbmbuild"
1183 -- $(FE)$(LNCC) -o exim_dbmbuild $(LFLAGS) exim_dbmbuild.o \
1184 -- $(LIBS) $(EXTRALIBS) $(DBMLIB)
1185 -+ $(FE)$(LNCC) -o exim_dbmbuild $(LDFLAGS) exim_dbmbuild.o \
1186 -+ $(LIBS) $(EXTRALIBS) $(DBMLIB) $(LFLAGS)
1187 - @if [ x"$(STRIP_COMMAND)" != x"" ]; then \
1188 - echo $(STRIP_COMMAND) exim_dbmbuild; \
1189 - $(STRIP_COMMAND) exim_dbmbuild; \
1190 -@@ -404,8 +404,8 @@
1191 - @echo "$(CC) exim_lock.c"
1192 - $(FE)$(CC) -c $(CFLAGS) $(INCLUDE) exim_lock.c
1193 - @echo "$(LNCC) -o exim_lock"
1194 -- $(FE)$(LNCC) -o exim_lock $(LFLAGS) exim_lock.o \
1195 -- $(LIBS) $(EXTRALIBS)
1196 -+ $(FE)$(LNCC) -o exim_lock $(LDFLAGS) exim_lock.o \
1197 -+ $(LIBS) $(EXTRALIBS) $(LFLAGS)
1198 - @if [ x"$(STRIP_COMMAND)" != x"" ]; then \
1199 - echo $(STRIP_COMMAND) exim_lock; \
1200 - $(STRIP_COMMAND) exim_lock; \
1201 -@@ -435,9 +435,9 @@
1202 - $(FE)$(CC) -o em_version.o -c \
1203 - $(CFLAGS) $(XINCLUDE) -I. ../exim_monitor/em_version.c
1204 - @echo "$(LNCC) -o eximon.bin"
1205 -- $(FE)$(PURIFY) $(LNCC) -o eximon.bin em_version.o $(LFLAGS) $(XLFLAGS) \
1206 -+ $(FE)$(PURIFY) $(LNCC) -o eximon.bin em_version.o $(LDFLAGS) $(XLFLAGS) \
1207 - $(OBJ_MONBIN) -lXaw -lXmu -lXt -lXext -lX11 $(PCRE_LIBS) \
1208 -- $(LIBS) $(LIBS_EXIMON) $(EXTRALIBS) $(EXTRALIBS_EXIMON) -lc
1209 -+ $(LIBS) $(LIBS_EXIMON) $(EXTRALIBS) $(EXTRALIBS_EXIMON) -lc $(LFLAGS)
1210 - @if [ x"$(STRIP_COMMAND)" != x"" ]; then \
1211 - echo $(STRIP_COMMAND) eximon.bin; \
1212 - $(STRIP_COMMAND) eximon.bin; \
1213 -@@ -745,9 +745,9 @@
1214 - test_dbfn: config.h dbfn.c dummies.o sa-globals.o sa-os.o store.o \
1215 - string.o tod.o version.o utf8.o
1216 - $(CC) -c $(CFLAGS) $(INCLUDE) -DSTAND_ALONE dbfn.c
1217 -- $(LNCC) -o test_dbfn $(LFLAGS) dbfn.o \
1218 -+ $(LNCC) -o test_dbfn $(LDFLAGS) dbfn.o \
1219 - dummies.o sa-globals.o sa-os.o store.o string.o \
1220 -- tod.o version.o utf8.o $(LIBS) $(DBMLIB) $(LDFLAGS)
1221 -+ tod.o version.o utf8.o $(LIBS) $(DBMLIB) $(LFLAGS)
1222 - rm -f dbfn.o
1223 -
1224 - test_host: config.h child.c host.c dns.c dummies.c sa-globals.o os.o \
1225 -@@ -756,29 +756,29 @@
1226 - $(CC) -c $(CFLAGS) $(INCLUDE) -DSTAND_ALONE -DTEST_HOST host.c
1227 - $(CC) -c $(CFLAGS) $(INCLUDE) -DSTAND_ALONE -DTEST_HOST dns.c
1228 - $(CC) -c $(CFLAGS) $(INCLUDE) -DSTAND_ALONE -DTEST_HOST dummies.c
1229 -- $(LNCC) -o test_host $(LFLAGS) \
1230 -+ $(LNCC) -o test_host $(LDFLAGS) \
1231 - host.o child.o dns.o dummies.o sa-globals.o os.o store.o string.o \
1232 -- tod.o tree.o $(LIBS) $(LIBRESOLV)
1233 -+ tod.o tree.o $(LIBS) $(LIBRESOLV) $(LFLAGS)
1234 - rm -f child.o dummies.o host.o dns.o
1235 -
1236 - test_os: os.h os.c dummies.o sa-globals.o store.o string.o tod.o utf8.o
1237 - $(CC) -c $(CFLAGS) $(INCLUDE) -DSTAND_ALONE os.c
1238 -- $(LNCC) -o test_os $(LFLAGS) os.o dummies.o \
1239 -- sa-globals.o store.o string.o tod.o utf8.o $(LIBS) $(LDFLAGS)
1240 -+ $(LNCC) -o test_os $(LDFLAGS) os.o dummies.o \
1241 -+ sa-globals.o store.o string.o tod.o utf8.o $(LIBS) $(LFLAGS)
1242 - rm -f os.o
1243 -
1244 - test_parse: config.h parse.c dummies.o sa-globals.o \
1245 - store.o string.o tod.o version.o utf8.o
1246 - $(CC) -c $(CFLAGS) $(INCLUDE) -DSTAND_ALONE parse.c
1247 -- $(LNCC) -o test_parse $(LFLAGS) parse.o \
1248 -+ $(LNCC) -o test_parse $(LDFLAGS) parse.o \
1249 - dummies.o sa-globals.o store.o string.o tod.o version.o \
1250 -- utf8.o $(LDFLAGS)
1251 -+ utf8.o $(LFLAGS)
1252 - rm -f parse.o
1253 -
1254 - test_string: config.h string.c dummies.o sa-globals.o store.o tod.o utf8.o
1255 - $(CC) -c $(CFLAGS) $(INCLUDE) -DSTAND_ALONE string.c
1256 -- $(LNCC) -o test_string $(LFLAGS) -DSTAND_ALONE string.o \
1257 -- dummies.o sa-globals.o store.o tod.o utf8.o $(LIBS) $(LDFLAGS)
1258 -+ $(LNCC) -o test_string $(LDFLAGS) -DSTAND_ALONE string.o \
1259 -+ dummies.o sa-globals.o store.o tod.o utf8.o $(LIBS) $(LFLAGS)
1260 - rm -f string.o
1261 -
1262 - # End