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-2.12_pre20140929.ebuild ChangeLog postfix-2.12_pre20140928.ebuild
Date: Tue, 30 Sep 2014 05:17:14
Message-Id: 20140930051710.5C1AA6912@oystercatcher.gentoo.org
1 eras 14/09/30 05:17:10
2
3 Modified: ChangeLog
4 Added: postfix-2.12_pre20140929.ebuild
5 Removed: postfix-2.12_pre20140928.ebuild
6 Log:
7 Version bump
8
9 (Portage version: 2.2.14_rc1/cvs/Linux x86_64, signed Manifest commit with key 0x77F1F175586A3B1F)
10
11 Revision Changes Path
12 1.532 mail-mta/postfix/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/ChangeLog?rev=1.532&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/ChangeLog?rev=1.532&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/ChangeLog?r1=1.531&r2=1.532
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/mail-mta/postfix/ChangeLog,v
21 retrieving revision 1.531
22 retrieving revision 1.532
23 diff -u -r1.531 -r1.532
24 --- ChangeLog 29 Sep 2014 06:39:14 -0000 1.531
25 +++ ChangeLog 30 Sep 2014 05:17:10 -0000 1.532
26 @@ -1,6 +1,12 @@
27 # ChangeLog for mail-mta/postfix
28 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/mail-mta/postfix/ChangeLog,v 1.531 2014/09/29 06:39:14 eras Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/mail-mta/postfix/ChangeLog,v 1.532 2014/09/30 05:17:10 eras Exp $
31 +
32 +*postfix-2.12_pre20140929 (30 Sep 2014)
33 +
34 + 30 Sep 2014; Eray Aslan <eras@g.o> +postfix-2.12_pre20140929.ebuild,
35 + -postfix-2.12_pre20140928.ebuild:
36 + Version bump
37
38 *postfix-2.12_pre20140928 (29 Sep 2014)
39
40
41
42
43 1.1 mail-mta/postfix/postfix-2.12_pre20140929.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/postfix-2.12_pre20140929.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-mta/postfix/postfix-2.12_pre20140929.ebuild?rev=1.1&content-type=text/plain
47
48 Index: postfix-2.12_pre20140929.ebuild
49 ===================================================================
50 # Copyright 1999-2014 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/mail-mta/postfix/postfix-2.12_pre20140929.ebuild,v 1.1 2014/09/30 05:17:10 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 ~ppc ~ppc64 ~x86"
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-base )
85 sasl? ( >=dev-libs/cyrus-sasl-2 )
86 selinux? ( sec-policy/selinux-postfix )
87 sqlite? ( dev-db/sqlite:3 )
88 ssl? ( >=dev-libs/openssl-0.9.6g )"
89
90 RDEPEND="${DEPEND}
91 dovecot-sasl? ( net-mail/dovecot )
92 memcached? ( net-misc/memcached )
93 net-mail/mailbase
94 !mail-mta/courier
95 !mail-mta/esmtp
96 !mail-mta/exim
97 !mail-mta/mini-qmail
98 !mail-mta/msmtp[mta]
99 !mail-mta/netqmail
100 !mail-mta/nullmailer
101 !mail-mta/qmail-ldap
102 !mail-mta/sendmail
103 !mail-mta/opensmtpd
104 !<mail-mta/ssmtp-2.64-r2
105 !>=mail-mta/ssmtp-2.64-r2[mta]
106 !net-mail/fastforward"
107
108 # No vda support for postfix-2.12
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 systemd_dounit "${FILESDIR}/${PN}.service"
338 }
339
340 pkg_postinst() {
341 # Do not install server.{key,pem) SSL certificates if they already exist
342 if use ssl && [[ ! -f "${ROOT}"/etc/ssl/postfix/server.key \
343 && ! -f "${ROOT}"/etc/ssl/postfix/server.pem ]] ; then
344 SSL_ORGANIZATION="${SSL_ORGANIZATION:-Postfix SMTP Server}"
345 install_cert /etc/ssl/postfix/server
346 chown postfix:mail "${ROOT}"/etc/ssl/postfix/server.{key,pem}
347 fi
348
349 if [[ ! -e /etc/mail/aliases.db ]] ; then
350 ewarn
351 ewarn "You must edit /etc/mail/aliases to suit your needs"
352 ewarn "and then run /usr/bin/newaliases. Postfix will not"
353 ewarn "work correctly without it."
354 ewarn
355 fi
356
357 if [[ $(get_version_component_range 2 ${REPLACING_VERSIONS}) -lt 9 ]]; then
358 elog "If you are using old style postfix instances by symlinking"
359 elog "startup scripts in ${ROOT}etc/init.d, please consider"
360 elog "upgrading your config for postmulti support. For more info:"
361 elog "http://www.postfix.org/MULTI_INSTANCE_README.html"
362 if ! use berkdb; then
363 ewarn "\nPostfix is installed without BerkeleyDB support."
364 ewarn "Please turn on berkdb USE flag if you need hash or"
365 ewarn "btree table lookups.\n"
366 fi
367 ewarn "Postfix daemons now live under /usr/libexec/postfix"
368 ewarn "Please adjust your main.cf accordingly by running"
369 ewarn "etc-update/dispatch-conf or similar and accepting the new"
370 ewarn "daemon_directory setting."
371 fi
372 }