X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=postfix.spec;h=7abaf8d3807f520a7a629f1940f12f67eb658bf0;hb=5b4c128c6f2b8adc553ee540deee94c84cacf68d;hp=b02666df16618d71392cd2b320f4a0640694b7a4;hpb=00b96dcd0a7ab9eb9c9ee4019fe2b46b6a5a7e9a;p=packages%2Fpostfix.git diff --git a/postfix.spec b/postfix.spec index b02666d..7abaf8d 100644 --- a/postfix.spec +++ b/postfix.spec @@ -3,6 +3,7 @@ %bcond_without ldap # without LDAP map module %bcond_without mysql # without MySQL map module %bcond_without pgsql # without PostgreSQL map module +%bcond_without sqlite # without SQLite map module %bcond_without sasl # without SMTP AUTH support %bcond_without ssl # without SSL/TLS support %bcond_without cdb # without cdb map support @@ -23,7 +24,7 @@ %bcond_without epoll # disable epoll for 2.4 kernels %endif -%define vda_ver 2.5.5 +%define vda_ver v11-2.9.1 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 @@ -32,39 +33,43 @@ 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.6.5 +Version: 2.9.6 Release: 1 Epoch: 2 License: distributable Group: Networking/Daemons/SMTP Source0: ftp://ftp.porcupine.org/mirrors/postfix-release/official/%{name}-%{version}.tar.gz -# Source0-md5: 6b954cfb3eb6141dac1e773281211717 +# Source0-md5: 62eba08ce4acfa6b421e8fa88f2422d1 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_ver}-vda-ng.patch.gz -# Source7-md5: 1e30fdda918cf7e87e124b0a551337d3 +Source7: http://vda.sourceforge.net/VDA/%{name}-vda-%{vda_ver}.patch +# Source7-md5: a54a21428de5eeae91b4bb670976e37a Source8: %{name}-bounce.cf.pl # http://postfix.state-of-mind.de/bounce-templates/bounce.de-DE.cf Source9: %{name}-bounce.cf.de Source10: %{name}.monitrc -Source11: http://vda.sourceforge.net/VDA/%{name}-%{vda_ver}-vda-ng-64bit.patch.gz -# Source11-md5: 3b982959b6bbe7eebada34dc0c26038b +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}-log-proxy-rejects.patch -Patch6: %{name}-ident.patch -Patch7: %{name}-lib64.patch -Patch8: %{name}-conf.patch -Patch9: %{name}-dictname.patch -Patch10: %{name}-make-jN.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 @@ -77,8 +82,9 @@ 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} %{?with_mysql:BuildRequires: zlib-devel} Requires(post): /bin/hostname @@ -96,6 +102,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 @@ -217,6 +224,18 @@ This package provides support for PostgreSQL maps in Postfix. %description dict-pgsql -l pl.UTF-8 Ten pakiet dodaje obsługę map PostgreSQL do Postfiksa. +%package dict-sqlite +Summary: SQLite map support for Postfix +Summary(pl.UTF-8): Obsługa map SQLite dla Postfiksa +Group: Networking/Daemons/SMTP +Requires: %{name} = %{epoch}:%{version}-%{release} + +%description dict-sqlite +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 qshape Summary: qshape - Print Postfix queue domain and age distribution Summary(pl.UTF-8): qshape - wypisywanie rozkładu domen i wieku z kolejki Postfiksa @@ -253,8 +272,10 @@ Plik monitrc do monitorowania serwera Postfix. %prep %setup -q -%{?with_vda:zcat %{SOURCE7} | %{__patch} -p1 -s} -%{?with_vda:zcat %{SOURCE11} | %{__patch} -p1 -s} +%if %{with vda} +cat %{SOURCE7} | %{__patch} -p1 -s +cat %{SOURCE11} | %{__patch} -p1 -s +%endif find -type f | xargs sed -i -e 's|/etc/postfix|/etc/mail|g' @@ -264,14 +285,18 @@ find -type f | xargs sed -i -e 's|/etc/postfix|/etc/mail|g' %patch3 -p1 %{?with_hir:%patch4 -p0} %patch5 -p1 -%patch6 -p1 sed -i '/scache_clnt_create/s/server/var_scache_service/' src/global/scache_clnt.c %if "%{_lib}" == "lib64" -%patch7 -p1 +%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 @@ -284,11 +309,11 @@ CC="%{__cc}" export CC %{__make} \ DEBUG="" \ - OPT="%{rpmcflags} -D_FILE_OFFSET_BITS=64" \ + OPT="%{rpmcflags} %{rpmcppflags} -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} -DHAVE_GETIFADDRS" \ + 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" %install @@ -298,37 +323,40 @@ 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 -f html/Makefile.in conf/{LICENSE,main.cf.default} + $RPM_BUILD_ROOT%{_var}/lib/postfix \ + $RPM_BUILD_ROOT%{systemdunitdir} + +%{__rm} html/Makefile.in conf/{LICENSE,main.cf.default} -install bin/* $RPM_BUILD_ROOT%{_sbindir} -install libexec/* $RPM_BUILD_ROOT%{_libdir}/postfix +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 -install conf/* $RPM_BUILD_ROOT%{_sysconfdir}/mail +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 - install lib/lib${f}.a $RPM_BUILD_ROOT%{_libdir}/libpostfix-${f}.so.1 + 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 lib/dict*.so $RPM_BUILD_ROOT%{_libdir}/postfix -install include/*.h $RPM_BUILD_ROOT%{_includedir}/postfix +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} -install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/mail/aliases -install %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.daily/postfix +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 -install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/postfix -install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/sasl/smtpd.conf -install %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/smtp -install %{SOURCE8} $RPM_BUILD_ROOT%{_sysconfdir}/mail/bounce.cf.pl -install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/mail/bounce.cf.de -install %{SOURCE10} $RPM_BUILD_ROOT/etc/monit/%{name}.monitrc -install auxiliary/rmail/rmail $RPM_BUILD_ROOT%{_bindir}/rmail -install auxiliary/qshape/qshape.pl $RPM_BUILD_ROOT%{_bindir}/qshape +cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/postfix +cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/sasl/smtpd.conf +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 ln -sf %{_sbindir}/sendmail $RPM_BUILD_ROOT%{_bindir}/mailq ln -sf %{_sbindir}/sendmail $RPM_BUILD_ROOT%{_bindir}/newaliases @@ -341,10 +369,10 @@ touch $RPM_BUILD_ROOT/etc/security/blacklist.smtp > $RPM_BUILD_ROOT/var/spool/postfix/.nofinger -rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/mail/makedefs.out -rm -f $RPM_BUILD_ROOT%{_sysconfdir}/mail/TLS_LICENSE +%{__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/{postfix-files,postfix-script,post-install} %clean rm -rf $RPM_BUILD_ROOT @@ -364,8 +392,9 @@ if [ "$1" = "1" ]; then # only on installation, not upgrade; set sane defaults # postfix expects gethostname() to return FQDN, which is obviously wrong if ! grep -qE "^my(domain|hostname)" %{_sysconfdir}/mail/main.cf; then - [ `/bin/hostname -d` != 'localdomain' ] && \ - postconf -e mydomain=`/bin/hostname -d` + domain=$(/bin/hostname -d 2>/dev/null) + [ -n "$domain" -a "$domain" != 'localdomain' ] && \ + postconf -e mydomain="$domain" fi else %{_sbindir}/postfix upgrade-configuration @@ -374,12 +403,14 @@ fi %{_bindir}/newaliases /sbin/chkconfig --add postfix %service postfix restart "Postfix Daemon" +%systemd_post %preun if [ "$1" = "0" ]; then %service postfix stop /sbin/chkconfig --del postfix fi +%systemd_preun %postun /sbin/ldconfig @@ -388,6 +419,7 @@ if [ "$1" = "0" ]; then %userremove postfix %groupremove postfix fi +%systemd_postun %files %defattr(644,root,root,755) @@ -440,6 +472,7 @@ fi %dir %{_libdir}/postfix %attr(755,root,root) %{_libdir}/postfix/[!d]* %attr(755,root,root) %{_libdir}/postfix/discard +%attr(755,root,root) %{_libdir}/postfix/dnsblog %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,6 +502,7 @@ fi %{_mandir}/man5/generic.5* %{_mandir}/man5/header_checks.5* %{_mandir}/man5/master.5* +%{_mandir}/man5/memcache_table.5* %{_mandir}/man5/nisplus_table.5* %{_mandir}/man5/postconf.5* %{_mandir}/man5/postfix-wrapper.5* @@ -478,6 +512,7 @@ fi %{_mandir}/man5/transport.5* %{_mandir}/man5/virtual.5* %{_mandir}/man8/*.8* +%{systemdunitdir}/%{name}.service %files devel %defattr(644,root,root,755) @@ -511,6 +546,13 @@ fi %{_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 +%{_mandir}/man5/sqlite_table.5* +%endif + %files qshape %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/qshape