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.1_pre20150330.ebuild ChangeLog postfix-3.1_pre20150329.ebuild
Date: Tue, 31 Mar 2015 06:39:38
Message-Id: 20150331063900.E983914E64@oystercatcher.gentoo.org
1 eras 15/03/31 06:38:59
2
3 Modified: ChangeLog
4 Added: postfix-3.1_pre20150330.ebuild
5 Removed: postfix-3.1_pre20150329.ebuild
6 Log:
7 Version bump
8
9 (Portage version: 2.2.18/cvs/Linux x86_64, signed Manifest commit with key 0x77F1F175586A3B1F)
10
11 Revision Changes Path
12 1.576 mail-mta/postfix/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/ChangeLog?rev=1.576&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/ChangeLog?rev=1.576&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/ChangeLog?r1=1.575&r2=1.576
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/mail-mta/postfix/ChangeLog,v
21 retrieving revision 1.575
22 retrieving revision 1.576
23 diff -u -r1.575 -r1.576
24 --- ChangeLog 30 Mar 2015 06:07:26 -0000 1.575
25 +++ ChangeLog 31 Mar 2015 06:38:59 -0000 1.576
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.575 2015/03/30 06:07:26 eras Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/mail-mta/postfix/ChangeLog,v 1.576 2015/03/31 06:38:59 eras Exp $
31 +
32 +*postfix-3.1_pre20150330 (31 Mar 2015)
33 +
34 + 31 Mar 2015; Eray Aslan <eras@g.o> +postfix-3.1_pre20150330.ebuild,
35 + -postfix-3.1_pre20150329.ebuild:
36 + Version bump
37
38 *postfix-3.1_pre20150329 (30 Mar 2015)
39
40
41
42
43 1.1 mail-mta/postfix/postfix-3.1_pre20150330.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/postfix-3.1_pre20150330.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/postfix-3.1_pre20150330.ebuild?rev=1.1&content-type=text/plain
47
48 Index: postfix-3.1_pre20150330.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.1_pre20150330.ebuild,v 1.1 2015/03/31 06:38:59 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 pie=yes \
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 }