X-Git-Url: http://git.pld-linux.org/?p=packages%2Fpostfix.git;a=blobdiff_plain;f=postfix.spec;h=faa309928c0a59e5cd483d97fd4cfa927a8f9397;hp=9407f1a181163d62c3400f878f9f0353c6905d85;hb=69cee14;hpb=13a4928fe86233bceb4f266a0f4b9ca549917be9 diff --git a/postfix.spec b/postfix.spec index 9407f1a..faa3099 100644 --- a/postfix.spec +++ b/postfix.spec @@ -7,11 +7,8 @@ %bcond_without sasl # without SMTP AUTH support %bcond_without ssl # without SSL/TLS support %bcond_without cdb # without cdb map support -%if "%{pld_release}" == "th" -%bcond_without vda # without VDA patch -%else +%bcond_without lmdb # without lmdb map support %bcond_with vda # with VDA patch -%endif %bcond_with hir # with Beeth's header_if_reject patch %bcond_with tcp # with unofficial tcp: lookup table %if "%{pld_release}" == "ac" @@ -24,7 +21,7 @@ %bcond_without epoll # disable epoll for 2.4 kernels %endif -%define vda_ver v10-2.8.5 +%define vda_ver v13-2.10.0 Summary: Postfix Mail Transport Agent Summary(cs.UTF-8): Postfix - program pro přepravu pošty (MTA) Summary(es.UTF-8): Postfix - Un MTA (Mail Transport Agent) de alto desempeño @@ -33,21 +30,22 @@ Summary(pl.UTF-8): Serwer SMTP Postfix Summary(pt_BR.UTF-8): Postfix - Um MTA (Mail Transport Agent) de alto desempenho Summary(sk.UTF-8): Agent prenosu pošty Postfix Name: postfix -Version: 2.9.1 -Release: 3 +Version: 3.3.2 +Release: 2 Epoch: 2 License: distributable Group: Networking/Daemons/SMTP Source0: ftp://ftp.porcupine.org/mirrors/postfix-release/official/%{name}-%{version}.tar.gz -# Source0-md5: 5c81b304a42c691671454dfe80b506ca +# Source0-md5: 4e6ed7056576e0c54cfce6040a0bb0ad Source1: %{name}.aliases Source2: %{name}.cron Source3: %{name}.init Source4: %{name}.sysconfig Source5: %{name}.sasl Source6: %{name}.pamd -Source7: http://vda.sourceforge.net/VDA/%{name}-vda-%{vda_ver}.patch -# Source7-md5: 3292f2ec7c9fb8957f88d8783252d1f8 +Source7: %{name}-vda.patch +#Source7: http://vda.sourceforge.net/VDA/%{name}-vda-%{vda_ver}.patch +# -ource7-md5: 01e1b031d79b85f3cb67d98ceddd775d Source8: %{name}-bounce.cf.pl # http://postfix.state-of-mind.de/bounce-templates/bounce.de-DE.cf Source9: %{name}-bounce.cf.de @@ -55,24 +53,25 @@ Source10: %{name}.monitrc Source11: %{name}-vda-bigquota.patch #Source11: http://vda.sourceforge.net/VDA/%{name}-%{vda_ver}-vda-ng-bigquota.patch.gz # -ource11-md5: d46103195b43ec5784ea2c166b238f71 +Source12: %{name}.service Patch0: %{name}-config.patch -Patch1: %{name}-conf_msg.patch -Patch2: %{name}-dynamicmaps.patch + Patch3: %{name}-master.cf_cyrus.patch # from http://akson.sgh.waw.pl/~chopin/unix/postfix-2.1.5-header_if_reject.diff Patch4: %{name}-header_if_reject.patch -Patch5: %{name}-ident.patch -Patch6: %{name}-lib64.patch + Patch7: %{name}-conf.patch Patch8: %{name}-dictname.patch -Patch9: %{name}-make-jN.patch -Patch10: %{name}-link.patch + Patch11: %{name}-scache_clnt.patch +Patch12: format-security.patch URL: http://www.postfix.org/ %{?with_sasl:BuildRequires: cyrus-sasl-devel} BuildRequires: db-devel # getifaddrs() with IPv6 support BuildRequires: glibc-devel >= 6:2.3.4 +BuildRequires: libicu-devel +%{?with_lmbd:BuildRequires: lmdb-devel} %{?with_mysql:BuildRequires: mysql-devel} %{?with_ldap:BuildRequires: openldap-devel >= 2.0.12} %{?with_ssl:BuildRequires: openssl-devel >= 0.9.7l} @@ -80,7 +79,7 @@ BuildRequires: pcre-devel BuildRequires: perl-base %{?with_pgsql:BuildRequires: postgresql-devel} BuildRequires: rpm >= 4.4.9-56 -BuildRequires: rpmbuild(macros) >= 1.268 +BuildRequires: rpmbuild(macros) >= 1.644 BuildRequires: sed >= 4.0 %{?with_sqlite:BuildRequires: sqlite3-devel} %{?with_cdb:BuildRequires: tinycdb-devel} @@ -100,6 +99,7 @@ Requires: findutils Requires: rc-scripts Requires: sed %{?with_cdb:Requires:tinycdb} +Requires: systemd-units >= 38 Suggests: cyrus-sasl-saslauthd Provides: group(postfix) Provides: smtpdaemon @@ -233,6 +233,30 @@ This package provides support for SQLite maps in Postfix. %description dict-sqlite -l pl.UTF-8 Ten pakiet dodaje obsługę map SQLite do Postfiksa. +%package dict-lmdb +Summary: LMDB map support for Postfix +Summary(pl.UTF-8): Obsługa map LMDB dla Postfiksa +Group: Networking/Daemons/SMTP +Requires: %{name} = %{epoch}:%{version}-%{release} + +%description dict-lmdb +This package provides support for LMDB maps in Postfix. + +%description dict-lmdb -l pl.UTF-8 +Ten pakiet dodaje obsługę map LMDB do Postfiksa. + +%package dict-cdb +Summary: CDB map support for Postfix +Summary(pl.UTF-8): Obsługa map CDB dla Postfiksa +Group: Networking/Daemons/SMTP +Requires: %{name} = %{epoch}:%{version}-%{release} + +%description dict-cdb +This package provides support for CDB maps in Postfix. + +%description dict-cdb -l pl.UTF-8 +Ten pakiet dodaje obsługę map CDB do Postfiksa. + %package qshape Summary: qshape - Print Postfix queue domain and age distribution Summary(pl.UTF-8): qshape - wypisywanie rozkładu domen i wieku z kolejki Postfiksa @@ -277,38 +301,45 @@ cat %{SOURCE11} | %{__patch} -p1 -s find -type f | xargs sed -i -e 's|/etc/postfix|/etc/mail|g' %patch0 -p1 -%patch1 -p0 -%patch2 -p1 + %patch3 -p1 %{?with_hir:%patch4 -p0} -%patch5 -p1 + sed -i '/scache_clnt_create/s/server/var_scache_service/' src/global/scache_clnt.c -%if "%{_lib}" == "lib64" -%patch6 -p1 -%endif %patch7 -p1 %patch8 -p1 -%patch9 -p1 -%patch10 -p1 + %patch11 -p1 +%if %{with vda} +%patch12 -p1 +%endif %if %{with tcp} sed -i 's/ifdef SNAPSHOT/if 1/' src/util/dict_open.c %endif %build -%{__make} -f Makefile.init makefiles -%{__make} tidy -CC="%{__cc}" -export CC -%{__make} \ +# export, as the same variables must be passed both to 'make makefiles' and 'make' +export CCARGS="%{!?with_epoll:-DNO_EPOLL} %{?with_ldap:-DHAS_LDAP} -DHAS_PCRE %{?with_sasl:-DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl} %{?with_mysql:-DHAS_MYSQL -I/usr/include/mysql} %{?with_pgsql:-DHAS_PGSQL} %{?with_ssl:-DUSE_TLS} -DMAX_DYNAMIC_MAPS %{?with_cdb:-DHAS_CDB} %{?with_sqlite:-DHAS_SQLITE} %{?with_lmdb:-DHAS_LMDB} -LHAS_SDBM" +export AUXLIBS="%{rpmldflags} -lsasl -lssl -lcrypto -ldb -lresolv" +export AUXLIBS_CDB="%{?with_cdb:-lcdb}" +export AUXLIBS_LDAP="%{?with_ldap:-lldap -llber}" +export AUXLIBS_LMDB="%{?with_lmdb:-llmdb}" +export AUXLIBS_MYSQL="%{?with_mysql:-lmysqlclient}" +export AUXLIBS_PCRE="-lpcre" +export AUXLIBS_PGSQL="%{?with_pgsql:-lpq}" +export AUXLIBS_SQLITE="%{?with_sqlite:-lsqlite3}" + +export CC="%{__cc}" +%{__make} makefiles \ + shared=yes dynamicmaps=yes \ + daemon_directory="%{_libdir}/postfix" \ + shlib_directory="%{_libdir}/postfix" \ + manpage_directory="%{_mandir}" + +%{__make} -j1 \ DEBUG="" \ - OPT="%{rpmcflags} -D_FILE_OFFSET_BITS=64" \ - %{!?with_ldap:LDAPSO=""} \ - %{!?with_mysql:MYSQLSO=""} \ - %{!?with_pgsql:PGSQLSO=""} \ - CCARGS="%{!?with_epoll:-DNO_EPOLL} %{?with_ldap:-DHAS_LDAP} -DHAS_PCRE %{?with_sasl:-DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl} %{?with_mysql:-DHAS_MYSQL -I/usr/include/mysql} %{?with_pgsql:-DHAS_PGSQL} %{?with_ssl:-DUSE_TLS} -DMAX_DYNAMIC_MAPS %{?with_cdb:-DHAS_CDB}" \ - AUXLIBS="-ldb -lresolv %{?with_sasl:-lsasl} %{?with_ssl:-lssl -lcrypto} %{?with_cdb:-lcdb} -lpcre" + OPT="%{rpmcflags} %{rpmcppflags} -D_FILE_OFFSET_BITS=64" %install rm -rf $RPM_BUILD_ROOT @@ -317,26 +348,18 @@ install -d $RPM_BUILD_ROOT/etc/{cron.daily,rc.d/init.d,sysconfig,pam.d,security, $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}/postfix,/usr/lib}\ $RPM_BUILD_ROOT{%{_includedir}/postfix,%{_mandir}} \ $RPM_BUILD_ROOT%{_var}/spool/postfix/{active,corrupt,deferred,maildrop,private,saved,bounce,defer,incoming,pid,public} \ - $RPM_BUILD_ROOT%{_var}/lib/postfix -%{__rm} html/Makefile.in conf/{LICENSE,main.cf.default} - -install -p bin/* $RPM_BUILD_ROOT%{_sbindir} -install -p libexec/* $RPM_BUILD_ROOT%{_libdir}/postfix -ln $RPM_BUILD_ROOT%{_libdir}/postfix/smtp $RPM_BUILD_ROOT%{_libdir}/postfix/lmtp -ln $RPM_BUILD_ROOT%{_libdir}/postfix/qmgr $RPM_BUILD_ROOT%{_libdir}/postfix/nqmgr -cp -a conf/* $RPM_BUILD_ROOT%{_sysconfdir}/mail + $RPM_BUILD_ROOT%{_var}/lib/postfix \ + $RPM_BUILD_ROOT%{systemdunitdir} + +%{__make} non-interactive-package \ + install_root=$RPM_BUILD_ROOT + +#cp -a conf/* $RPM_BUILD_ROOT%{_sysconfdir}/mail sed -e's,^daemon_directory = .*,daemon_directory = %{_libdir}/postfix,' \ conf/main.cf > $RPM_BUILD_ROOT%{_sysconfdir}/mail/main.cf -for f in dns global master util ; do - cp -a lib/lib${f}.a $RPM_BUILD_ROOT%{_libdir}/libpostfix-${f}.so.1 - ln -sf lib${f}.so.1 $RPM_BUILD_ROOT%{_libdir}/libpostfix-${f}.so -done -install -p lib/dict*.so $RPM_BUILD_ROOT%{_libdir}/postfix cp -a include/*.h $RPM_BUILD_ROOT%{_includedir}/postfix -cp -a man/man* $RPM_BUILD_ROOT%{_mandir} - cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/mail/aliases install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.daily/postfix install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/postfix @@ -346,6 +369,7 @@ cp -a %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/smtp cp -a %{SOURCE8} $RPM_BUILD_ROOT%{_sysconfdir}/mail/bounce.cf.pl cp -a %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/mail/bounce.cf.de cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/monit/%{name}.monitrc +cp -a %{SOURCE12} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service install -p auxiliary/rmail/rmail $RPM_BUILD_ROOT%{_bindir}/rmail install -p auxiliary/qshape/qshape.pl $RPM_BUILD_ROOT%{_bindir}/qshape @@ -361,9 +385,7 @@ touch $RPM_BUILD_ROOT/etc/security/blacklist.smtp > $RPM_BUILD_ROOT/var/spool/postfix/.nofinger %{__rm} -r $RPM_BUILD_ROOT%{_sysconfdir}/mail/makedefs.out -%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/mail/TLS_LICENSE - -%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/mail/{postfix-files,postfix-script,post-install} +%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/mail/{,TLS_}LICENSE %clean rm -rf $RPM_BUILD_ROOT @@ -394,12 +416,14 @@ fi %{_bindir}/newaliases /sbin/chkconfig --add postfix %service postfix restart "Postfix Daemon" +%systemd_post postfix.service %preun if [ "$1" = "0" ]; then %service postfix stop /sbin/chkconfig --del postfix fi +%systemd_preun postfix.service %postun /sbin/ldconfig @@ -408,6 +432,10 @@ if [ "$1" = "0" ]; then %userremove postfix %groupremove postfix fi +%systemd_reload + +%triggerpostun -- postfix < 2:2.9.4-4 +%systemd_trigger postfix.service %files %defattr(644,root,root,755) @@ -430,16 +458,17 @@ fi #%ghost %{_sysconfdir}/mail/*.db %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/dynamicmaps.cf %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/main.cf +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/main.cf.default +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/main.cf.proto %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/master.cf -%{_sysconfdir}/mail/postfix-wrapper -%{_sysconfdir}/mail/postmulti-script +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/master.cf.proto +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/postfix-files %attr(740,root,root) /etc/cron.daily/postfix %attr(754,root,root) /etc/rc.d/init.d/postfix %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/postfix %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/smtp %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.smtp %{?with_sasl:%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sasl/smtpd.conf} -%attr(755,root,root) %{_libdir}/libpostfix-*.so.* %attr(755,root,root) %{_bindir}/mailq %attr(755,root,root) %{_bindir}/newaliases %attr(755,root,root) %{_bindir}/rmail @@ -454,13 +483,46 @@ fi %attr(2755,root,maildrop) %{_sbindir}/postqueue %attr(755,root,root) %{_sbindir}/postsuper %attr(2755,root,maildrop) %{_sbindir}/postdrop -%attr(755,root,root) %{_sbindir}/qmqp-sink -%attr(755,root,root) %{_sbindir}/qmqp-source %attr(755,root,root) /usr/lib/sendmail %dir %{_libdir}/postfix -%attr(755,root,root) %{_libdir}/postfix/[!d]* +%attr(755,root,root) %{_libdir}/postfix/anvil +%attr(755,root,root) %{_libdir}/postfix/bounce +%attr(755,root,root) %{_libdir}/postfix/cleanup %attr(755,root,root) %{_libdir}/postfix/discard %attr(755,root,root) %{_libdir}/postfix/dnsblog +%attr(755,root,root) %{_libdir}/postfix/error +%attr(755,root,root) %{_libdir}/postfix/flush +%attr(755,root,root) %{_libdir}/postfix/libpostfix-dns.so +%attr(755,root,root) %{_libdir}/postfix/libpostfix-global.so +%attr(755,root,root) %{_libdir}/postfix/libpostfix-master.so +%attr(755,root,root) %{_libdir}/postfix/libpostfix-tls.so +%attr(755,root,root) %{_libdir}/postfix/libpostfix-util.so +%attr(755,root,root) %{_libdir}/postfix/lmtp +%attr(755,root,root) %{_libdir}/postfix/local +%attr(755,root,root) %{_libdir}/postfix/master +%attr(755,root,root) %{_libdir}/postfix/nqmgr +%attr(755,root,root) %{_libdir}/postfix/oqmgr +%attr(755,root,root) %{_libdir}/postfix/pickup +%attr(755,root,root) %{_libdir}/postfix/pipe +%attr(755,root,root) %{_libdir}/postfix/postfix-script +%attr(755,root,root) %{_libdir}/postfix/postfix-tls-script +%attr(755,root,root) %{_libdir}/postfix/postfix-wrapper +%attr(755,root,root) %{_libdir}/postfix/post-install +%attr(755,root,root) %{_libdir}/postfix/postmulti-script +%attr(755,root,root) %{_libdir}/postfix/postscreen +%attr(755,root,root) %{_libdir}/postfix/proxymap +%attr(755,root,root) %{_libdir}/postfix/qmgr +%attr(755,root,root) %{_libdir}/postfix/qmqpd +%attr(755,root,root) %{_libdir}/postfix/scache +%attr(755,root,root) %{_libdir}/postfix/showq +%attr(755,root,root) %{_libdir}/postfix/smtp +%attr(755,root,root) %{_libdir}/postfix/smtpd +%attr(755,root,root) %{_libdir}/postfix/spawn +%attr(755,root,root) %{_libdir}/postfix/tlsmgr +%attr(755,root,root) %{_libdir}/postfix/tlsproxy +%attr(755,root,root) %{_libdir}/postfix/trivial-rewrite +%attr(755,root,root) %{_libdir}/postfix/verify +%attr(755,root,root) %{_libdir}/postfix/virtual %attr(755,root,root) %dir %{_var}/spool/postfix %attr(700,postfix,root) %dir %{_var}/spool/postfix/active %attr(700,postfix,root) %dir %{_var}/spool/postfix/bounce @@ -469,7 +531,7 @@ fi %attr(700,postfix,root) %dir %{_var}/spool/postfix/deferred %attr(700,postfix,root) %dir %{_var}/spool/postfix/incoming %attr(1730,postfix,maildrop) %dir %{_var}/spool/postfix/maildrop -%attr(755,postfix,root) %dir %{_var}/spool/postfix/pid +%attr(755,root,root) %dir %{_var}/spool/postfix/pid %attr(700,postfix,root) %dir %{_var}/spool/postfix/private %attr(710,postfix,maildrop) %dir %{_var}/spool/postfix/public %attr(700,postfix,root) %dir %{_var}/spool/postfix/saved @@ -478,9 +540,7 @@ fi %{_mandir}/man1/mailq.1* %{_mandir}/man1/newaliases.1* %{_mandir}/man1/post*.1* -%{_mandir}/man1/qmqp-*.1* %{_mandir}/man1/sendmail.1* -%{_mandir}/man1/smtp-*.1* %{_mandir}/man5/access.5* %{_mandir}/man5/aliases.5* %{_mandir}/man5/body_checks.5* @@ -496,54 +556,66 @@ fi %{_mandir}/man5/postfix-wrapper.5* %{_mandir}/man5/regexp_table.5* %{_mandir}/man5/relocated.5* +%{_mandir}/man5/socketmap_table.5* %{_mandir}/man5/tcp_table.5* %{_mandir}/man5/transport.5* %{_mandir}/man5/virtual.5* %{_mandir}/man8/*.8* +%{systemdunitdir}/%{name}.service %files devel %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libpostfix-*.so %{_includedir}/postfix %if %{with ldap} %files dict-ldap %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/postfix/dict_ldap.so +%attr(755,root,root) %{_libdir}/postfix/postfix-ldap.so %{_mandir}/man5/ldap_table.5* %endif %if %{with mysql} %files dict-mysql %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/postfix/dict_mysql.so +%attr(755,root,root) %{_libdir}/postfix/postfix-mysql.so %{_mandir}/man5/mysql_table.5* %endif %files dict-pcre %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/postfix/dict_pcre.so +%attr(755,root,root) %{_libdir}/postfix/postfix-pcre.so #%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/pcre_table %{_mandir}/man5/pcre_table.5* %if %{with pgsql} %files dict-pgsql %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/postfix/dict_pgsql.so +%attr(755,root,root) %{_libdir}/postfix/postfix-pgsql.so %{_mandir}/man5/pgsql_table.5* %endif %if %{with sqlite} %files dict-sqlite %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/postfix/dict_sqlite.so +%attr(755,root,root) %{_libdir}/postfix/postfix-sqlite.so %{_mandir}/man5/sqlite_table.5* %endif +%if %{with lmdb} +%files dict-lmdb +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/postfix/postfix-lmdb.so +%{_mandir}/man5/lmdb_table.5* +%endif + +%if %{with cdb} +%files dict-cdb +%attr(755,root,root) %{_libdir}/postfix/postfix-cdb.so +%endif + %files qshape %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/qshape -%{_mandir}/man1/qshape.1* %files -n monit-rc-%{name} %defattr(644,root,root,755)