Gentoo Archives: gentoo-commits

From: "Eray Aslan (eras)" <eras@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in mail-mta/postfix: postfix-3.0_pre20150129.ebuild ChangeLog postfix-2.12_pre20150120.ebuild
Date: Sat, 31 Jan 2015 13:29:27
Message-Id: 20150131132921.E945A10C2E@oystercatcher.gentoo.org
1 eras 15/01/31 13:29:21
2
3 Modified: ChangeLog
4 Added: postfix-3.0_pre20150129.ebuild
5 Removed: postfix-2.12_pre20150120.ebuild
6 Log:
7 Version bump
8
9 (Portage version: 2.2.15/cvs/Linux x86_64, signed Manifest commit with key 0x77F1F175586A3B1F)
10
11 Revision Changes Path
12 1.564 mail-mta/postfix/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/ChangeLog?rev=1.564&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/ChangeLog?rev=1.564&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/ChangeLog?r1=1.563&r2=1.564
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/mail-mta/postfix/ChangeLog,v
21 retrieving revision 1.563
22 retrieving revision 1.564
23 diff -u -r1.563 -r1.564
24 --- ChangeLog 21 Jan 2015 10:51:31 -0000 1.563
25 +++ ChangeLog 31 Jan 2015 13:29:21 -0000 1.564
26 @@ -1,6 +1,12 @@
27 # ChangeLog for mail-mta/postfix
28 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/mail-mta/postfix/ChangeLog,v 1.563 2015/01/21 10:51:31 eras Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/mail-mta/postfix/ChangeLog,v 1.564 2015/01/31 13:29:21 eras Exp $
31 +
32 +*postfix-3.0_pre20150129 (31 Jan 2015)
33 +
34 + 31 Jan 2015; Eray Aslan <eras@g.o> +postfix-3.0_pre20150129.ebuild,
35 + -postfix-2.12_pre20150120.ebuild:
36 + Version bump
37
38 21 Jan 2015; Eray Aslan <eras@g.o> -postfix-2.11.1-r1.ebuild,
39 -postfix-2.11.1.ebuild, -postfix-2.11.2.ebuild:
40
41
42
43 1.1 mail-mta/postfix/postfix-3.0_pre20150129.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/postfix-3.0_pre20150129.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/postfix-3.0_pre20150129.ebuild?rev=1.1&content-type=text/plain
47
48 Index: postfix-3.0_pre20150129.ebuild
49 ===================================================================
50 # Copyright 1999-2015 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/mail-mta/postfix/postfix-3.0_pre20150129.ebuild,v 1.1 2015/01/31 13:29:21 eras Exp $
53
54 EAPI=5
55 inherit eutils flag-o-matic multilib pam ssl-cert systemd toolchain-funcs user versionator
56
57 MY_PV="${PV/_pre/-}"
58 MY_SRC="${PN}-${MY_PV}"
59 MY_URI="ftp://ftp.porcupine.org/mirrors/postfix-release/experimental"
60 VDA_PV="2.10.0"
61 VDA_P="${PN}-vda-v13-${VDA_PV}"
62 RC_VER="2.7"
63
64 DESCRIPTION="A fast and secure drop-in replacement for sendmail"
65 HOMEPAGE="http://www.postfix.org/"
66 SRC_URI="${MY_URI}/${MY_SRC}.tar.gz
67 vda? ( http://vda.sourceforge.net/VDA/${VDA_P}.patch ) "
68
69 LICENSE="IBM"
70 SLOT="0"
71 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
72 IUSE="+berkdb cdb doc dovecot-sasl +eai hardened ldap ldap-bind lmdb memcached mbox mysql nis pam postgres sasl selinux sqlite ssl vda"
73
74 DEPEND=">=dev-libs/libpcre-3.4
75 dev-lang/perl
76 berkdb? ( >=sys-libs/db-3.2 )
77 cdb? ( || ( >=dev-db/tinycdb-0.76 >=dev-db/cdb-0.75-r1 ) )
78 eai? ( dev-libs/icu )
79 ldap? ( net-nds/openldap )
80 ldap-bind? ( net-nds/openldap[sasl] )
81 lmdb? ( >=dev-db/lmdb-0.9.11 )
82 mysql? ( virtual/mysql )
83 pam? ( virtual/pam )
84 postgres? ( dev-db/postgresql )
85 sasl? ( >=dev-libs/cyrus-sasl-2 )
86 sqlite? ( dev-db/sqlite:3 )
87 ssl? ( >=dev-libs/openssl-0.9.6g )"
88
89 RDEPEND="${DEPEND}
90 dovecot-sasl? ( net-mail/dovecot )
91 memcached? ( net-misc/memcached )
92 net-mail/mailbase
93 !mail-mta/courier
94 !mail-mta/esmtp
95 !mail-mta/exim
96 !mail-mta/mini-qmail
97 !mail-mta/msmtp[mta]
98 !mail-mta/netqmail
99 !mail-mta/nullmailer
100 !mail-mta/qmail-ldap
101 !mail-mta/sendmail
102 !mail-mta/opensmtpd
103 !<mail-mta/ssmtp-2.64-r2
104 !>=mail-mta/ssmtp-2.64-r2[mta]
105 !net-mail/fastforward
106 selinux? ( sec-policy/selinux-postfix )"
107
108 # No vda support for postfix-3.0
109 REQUIRED_USE="ldap-bind? ( ldap sasl )
110 !vda"
111
112 S="${WORKDIR}/${MY_SRC}"
113
114 pkg_setup() {
115 # Add postfix, postdrop user/group (bug #77565)
116 enewgroup postfix 207
117 enewgroup postdrop 208
118 enewuser postfix 207 -1 /var/spool/postfix postfix,mail
119 }
120
121 src_prepare() {
122 if use vda; then
123 epatch "${DISTDIR}"/${VDA_P}.patch
124 fi
125
126 sed -i -e "/^#define ALIAS_DB_MAP/s|:/etc/aliases|:/etc/mail/aliases|" \
127 src/util/sys_defs.h || die "sed failed"
128
129 # change default paths to better comply with portage standard paths
130 sed -i -e "s:/usr/local/:/usr/:g" conf/master.cf || die "sed failed"
131
132 epatch_user
133 }
134
135 src_configure() {
136 for name in CDB LDAP LMDB MYSQL PCRE PGSQL SDBM SQLITE
137 do
138 local AUXLIBS_${name}=""
139 done
140
141 # Make sure LDFLAGS get passed down to the executables.
142 local mycc="-DHAS_PCRE" mylibs="${LDFLAGS} -ldl"
143 AUXLIBS_PCRE="$(pcre-config --libs)"
144
145 use pam && mylibs="${mylibs} -lpam"
146
147 if use ldap; then
148 mycc="${mycc} -DHAS_LDAP"
149 AUXLIBS_LDAP="-lldap -llber"
150 fi
151
152 if use mysql; then
153 mycc="${mycc} -DHAS_MYSQL $(mysql_config --include)"
154 AUXLIBS_MYSQL="$(mysql_config --libs)"
155 fi
156
157 if use postgres; then
158 mycc="${mycc} -DHAS_PGSQL -I$(pg_config --includedir)"
159 AUXLIBS_PGSQL="-L$(pg_config --libdir) -lpq"
160 fi
161
162 if use sqlite; then
163 mycc="${mycc} -DHAS_SQLITE"
164 AUXLIBS_SQLITE="-lsqlite3 -lpthread"
165 fi
166
167 if use ssl; then
168 mycc="${mycc} -DUSE_TLS"
169 mylibs="${mylibs} -lssl -lcrypto"
170 fi
171
172 if use lmdb; then
173 mycc="${mycc} -DHAS_LMDB"
174 AUXLIBS_LMDB="-llmdb -lpthread"
175 fi
176
177 if ! use eai; then
178 mycc="${mycc} -DNO_EAI"
179 fi
180
181 # broken. and "in other words, not supported" by upstream.
182 # Use inet_protocols setting in main.cf
183 #if ! use ipv6; then
184 # mycc="${mycc} -DNO_IPV6"
185 #fi
186
187 if use sasl; then
188 if use dovecot-sasl; then
189 # Set dovecot as default.
190 mycc="${mycc} -DDEF_SASL_SERVER=\\\"dovecot\\\""
191 fi
192 if use ldap-bind; then
193 mycc="${mycc} -DUSE_LDAP_SASL"
194 fi
195 mycc="${mycc} -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl"
196 mylibs="${mylibs} -lsasl2"
197 elif use dovecot-sasl; then
198 mycc="${mycc} -DUSE_SASL_AUTH -DDEF_SERVER_SASL_TYPE=\\\"dovecot\\\""
199 fi
200
201 if ! use nis; then
202 mycc="${mycc} -DNO_NIS"
203 fi
204
205 if ! use berkdb; then
206 mycc="${mycc} -DNO_DB"
207 if use cdb; then
208 # change default hash format from Berkeley DB to cdb
209 mycc="${mycc} -DDEF_DB_TYPE=\\\"cdb\\\""
210 fi
211 fi
212
213 if use cdb; then
214 mycc="${mycc} -DHAS_CDB -I/usr/include/cdb"
215 # Tinycdb is preferred.
216 if has_version dev-db/tinycdb ; then
217 einfo "Building with dev-db/tinycdb"
218 AUXLIBS_CDB="-lcdb"
219 else
220 einfo "Building with dev-db/cdb"
221 CDB_PATH="/usr/$(get_libdir)"
222 for i in cdb.a alloc.a buffer.a unix.a byte.a ; do
223 AUXLIBS_CDB="${AUXLIBS_CDB} ${CDB_PATH}/${i}"
224 done
225 fi
226 fi
227
228 # Robin H. Johnson <robbat2@g.o> 17/Nov/2006
229 # Fix because infra boxes hit 2Gb .db files that fail a 32-bit fstat signed check.
230 mycc="${mycc} -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE"
231 filter-lfs-flags
232
233 # Workaround for bug #76512
234 if use hardened; then
235 [[ "$(gcc-version)" == "3.4" ]] && replace-flags -O? -Os
236 fi
237
238 # Remove annoying C++ comment style warnings - bug #378099
239 append-flags -Wno-comment
240
241 sed -i -e "/^RANLIB/s/ranlib/$(tc-getRANLIB)/g" "${S}"/makedefs
242 sed -i -e "/^AR/s/ar/$(tc-getAR)/g" "${S}"/makedefs
243
244 emake makefiles shared=yes dynamicmaps=no \
245 shlib_directory="/usr/$(get_libdir)/postfix/MAIL_VERSION" \
246 DEBUG="" CC="$(tc-getCC)" OPT="${CFLAGS}" CCARGS="${mycc}" AUXLIBS="${mylibs}" \
247 AUXLIBS_CDB="${AUXLIBS_CDB}" AUXLIBS_LDAP="${AUXLIBS_LDAP}" \
248 AUXLIBS_LMDB="${AUXLIBS_LMDB}" AUXLIBS_MYSQL="${AUXLIBS_MYSQL}" \
249 AUXLIBS_PCRE="${AUXLIBS_PCRE}" AUXLIBS_PGSQL="${AUXLIBS_PGSQL}" \
250 AUXLIBS_SQLITE="${AUXLIBS_SQLITE}"
251 }
252
253 src_install () {
254 local myconf
255 use doc && myconf="readme_directory=\"/usr/share/doc/${PF}/readme\" \
256 html_directory=\"/usr/share/doc/${PF}/html\""
257
258 LD_LIBRARY_PATH="${S}/lib" \
259 /bin/sh postfix-install \
260 -non-interactive \
261 install_root="${D}" \
262 config_directory="/etc/postfix" \
263 manpage_directory="/usr/share/man" \
264 command_directory="/usr/sbin" \
265 mailq_path="/usr/bin/mailq" \
266 newaliases_path="/usr/bin/newaliases" \
267 sendmail_path="/usr/sbin/sendmail" \
268 ${myconf} \
269 || die "postfix-install failed"
270
271 # Fix spool removal on upgrade
272 rm -Rf "${D}"/var
273 keepdir /var/spool/postfix
274
275 # Install rmail for UUCP, closes bug #19127
276 dobin auxiliary/rmail/rmail
277
278 # Provide another link for legacy FSH
279 dosym /usr/sbin/sendmail /usr/$(get_libdir)/sendmail
280
281 # Install qshape tool and posttls-finger
282 dobin auxiliary/qshape/qshape.pl
283 doman man/man1/qshape.1
284 dobin bin/posttls-finger
285 doman man/man1/posttls-finger.1
286
287 # Performance tuning tools and their manuals
288 dosbin bin/smtp-{source,sink} bin/qmqp-{source,sink}
289 doman man/man1/smtp-{source,sink}.1 man/man1/qmqp-{source,sink}.1
290
291 # Set proper permissions on required files/directories
292 dodir /var/lib/postfix
293 keepdir /var/lib/postfix
294 fowners -R postfix:postfix /var/lib/postfix
295 fperms 0750 /var/lib/postfix
296 fowners root:postdrop /usr/sbin/post{drop,queue}
297 fperms 02711 /usr/sbin/post{drop,queue}
298
299 keepdir /etc/postfix
300 if use mbox; then
301 mypostconf="mail_spool_directory=/var/spool/mail"
302 else
303 mypostconf="home_mailbox=.maildir/"
304 fi
305 LD_LIBRARY_PATH="${S}/lib" \
306 "${D}"/usr/sbin/postconf -c "${D}"/etc/postfix \
307 -e ${mypostconf} || die "postconf failed"
308
309 insinto /etc/postfix
310 newins "${FILESDIR}"/smtp.pass saslpass
311 fperms 600 /etc/postfix/saslpass
312
313 newinitd "${FILESDIR}"/postfix.rc6.${RC_VER} postfix
314 # do not start mysql/postgres unnecessarily - bug #359913
315 use mysql || sed -i -e "s/mysql //" "${D}/etc/init.d/postfix"
316 use postgres || sed -i -e "s/postgresql //" "${D}/etc/init.d/postfix"
317
318 dodoc *README COMPATIBILITY HISTORY PORTING RELEASE_NOTES*
319 mv "${D}"/etc/postfix/{*.default,*.proto} "${D}"/usr/share/doc/${PF}/
320 use doc && mv "${S}"/examples "${D}"/usr/share/doc/${PF}/
321
322 pamd_mimic_system smtp auth account
323
324 if use sasl; then
325 insinto /etc/sasl2
326 newins "${FILESDIR}"/smtp.sasl smtpd.conf
327 fi
328
329 # header files
330 insinto /usr/include/postfix
331 doins include/*.h
332
333 # Remove unnecessary files
334 rm -f "${D}"/etc/postfix/{*LICENSE,access,aliases,canonical,generic}
335 rm -f "${D}"/etc/postfix/{header_checks,relocated,transport,virtual}
336
337 if has_version mail-mta/postfix; then
338 # let the sysadmin decide when to change the compatibility_level
339 sed -i -e /^compatibility_level/"s/^/#/" "${D}"/etc/postfix/main.cf || die
340 fi
341
342 systemd_dounit "${FILESDIR}/${PN}.service"
343 }
344
345 pkg_postinst() {
346 # Do not install server.{key,pem) SSL certificates if they already exist
347 if use ssl && [[ ! -f "${ROOT}"/etc/ssl/postfix/server.key \
348 && ! -f "${ROOT}"/etc/ssl/postfix/server.pem ]] ; then
349 SSL_ORGANIZATION="${SSL_ORGANIZATION:-Postfix SMTP Server}"
350 install_cert /etc/ssl/postfix/server
351 chown postfix:mail "${ROOT}"/etc/ssl/postfix/server.{key,pem}
352 fi
353
354 if [[ ! -e /etc/mail/aliases.db ]] ; then
355 ewarn
356 ewarn "You must edit /etc/mail/aliases to suit your needs"
357 ewarn "and then run /usr/bin/newaliases. Postfix will not"
358 ewarn "work correctly without it."
359 ewarn
360 fi
361
362 if [[ $(get_version_component_range 2 ${REPLACING_VERSIONS}) -lt 9 ]]; then
363 elog "If you are using old style postfix instances by symlinking"
364 elog "startup scripts in ${ROOT}etc/init.d, please consider"
365 elog "upgrading your config for postmulti support. For more info:"
366 elog "http://www.postfix.org/MULTI_INSTANCE_README.html"
367 if ! use berkdb; then
368 ewarn "\nPostfix is installed without BerkeleyDB support."
369 ewarn "Please turn on berkdb USE flag if you need hash or"
370 ewarn "btree table lookups.\n"
371 fi
372 ewarn "Postfix daemons now live under /usr/libexec/postfix"
373 ewarn "Please adjust your main.cf accordingly by running"
374 ewarn "etc-update/dispatch-conf or similar and accepting the new"
375 ewarn "daemon_directory setting."
376 fi
377 }