%bcond_without spf # without spf support
%bcond_without srs # without srs support
%bcond_without dynamic # dynamic modules
-#
+%bcond_without hiredis # without redis
+# opendmarc.spec not ready, so off by default
+%bcond_with dmarc # DMARC support
+%bcond_without lmdb # LMDB support
+
+%if "%{pld_release}" == "ac"
+# hiredis build segfaults on ac-alpha
+%undefine with_hiredis
+%endif
+
Summary: University of Cambridge Mail Transfer Agent
Summary(pl.UTF-8): Agent Transferu Poczty Uniwersytetu w Cambridge
Summary(pt_BR.UTF-8): Servidor de correio eletrônico exim
Name: exim
-Version: 4.80.1
-Release: 5
+Version: 4.90
+Release: 2
Epoch: 2
License: GPL
Group: Networking/Daemons/SMTP
Source0: ftp://ftp.exim.org/pub/exim/exim4/%{name}-%{version}.tar.bz2
-# Source0-md5: 1a95dc9f02834b1b7430403a75edf162
+# Source0-md5: 29a14c4bd29b553c0dfc13036225ebdd
Source1: ftp://ftp.exim.org/pub/exim/exim4/%{name}-html-%{version}.tar.bz2
-# Source1-md5: a0974c2ed244faa27cb6bc1724880ed3
+# Source1-md5: a728618fb641f4b9eb56deeefdb0cf67
Source2: %{name}.init
Source3: %{name}.cron.db
Source4: %{name}4.conf
Source10: newaliases
Source11: %{name}.logrotate
Source12: %{name}.sysconfig
-Source13: ftp://ftp.csx.cam.ac.uk/pub/software/email/exim/exim4/FAQ.txt.bz2
-# Source13-md5: ff781bd31fb1d574c8b9d33f4bfd34a7
-Source14: ftp://ftp.csx.cam.ac.uk/pub/software/email/exim/exim4/config.samples.tar.bz2
+Source14: ftp://ftp.exim.org/pub/exim/exim4/old/config.samples.tar.bz2
# Source14-md5: 4b93321938a800caa6127c48ad60a42b
Source15: %{name}4-smtp.pamd
Source16: %{name}on.png
+# sh branch.sh
+Patch100: %{name}-git.patch
+# Patch100-md5: 795a627f4c0f9d351c60772294626ee6
Patch0: %{name}4-EDITME.patch
Patch1: %{name}4-monitor-EDITME.patch
Patch2: %{name}4-cflags.patch
+Patch3: exim-defs.patch
Patch4: %{name}4-Makefile-Default.patch
# http://marc.merlins.org/linux/exim/files/sa-exim-cvs/localscan_dlopen_exim_4.20_or_better.patch
Patch5: localscan_dlopen_%{name}_4.20_or_better.patch
-# http://sourceforge.net/projects/eximdsn/
-Patch7: %{name}_463_dsn_1_3.patch
Patch8: %{name}-spam-timeout.patch
Patch10: %{name}-force-sigalrm.patch
-Patch11: %{name}-bug-1057.patch
+
+Patch20: %{name}4-disableSSLv3.patch
URL: http://www.exim.org/
%{?with_sasl:BuildRequires: cyrus-sasl-devel >= 2.1.0}
BuildRequires: db-devel
+%{?with_dmarc:BuildRequires: opendmarc-devel}
+%{?with_hiredis:BuildRequires: hiredis-devel}
+BuildRequires: libidn-devel
+BuildRequires: libidn2-devel
%{?with_spf:BuildRequires: libspf2-devel >= 1.2.5-2}
%{?with_srs:BuildRequires: libsrs_alt-devel >= 1.0}
+%{?with_lmdb:BuildRequires: lmdb-devel}
%{?with_mysql:BuildRequires: mysql-devel}
%{?with_ldap:BuildRequires: openldap-devel >= 2.3.0}
BuildRequires: openssl-devel >= 0.9.7d
Requires: findutils
Requires: pam >= 0.79.0
Requires: rc-scripts
+Requires: which
Provides: group(exim)
Provides: smtpdaemon
Provides: user(exim)
+Obsoletes: exipick
Obsoletes: smtpdaemon
Conflicts: logrotate < 3.8.3
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%prep
%setup -q -a1 -a7
+%patch100 -p2
+
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
%patch4 -p1
%patch5 -p1
-%patch7 -p1
%patch8 -p1
%patch10 -p1
-%patch11 -p1
-install %{SOURCE13} doc/FAQ.txt.bz2
+install %{SOURCE4} exim4.conf
install %{SOURCE14} doc/config.samples.tar.bz2
-
+%patch20 -p1
install -d Local
cat << 'EOF' >> Local/Makefile-Linux
CC=%{__cc}
XLFLAGS=-L%{_prefix}/X11R6/%{_lib}
X11_LD_LIB=%{_prefix}/X11R6/%{_lib}
%{?with_dynamic:LOOKUP_MODULE_DIR=%{_libdir}/%{name}/modules}
-SUPPORT_DSN=yes
-%{?with_spf:EXPERIMENTAL_SPF=yes}
-%{?with_srs:EXPERIMENTAL_SRS=yes}
+EXPERIMENTAL_DANE=yes
+EXPERIMENTAL_DCC=yes
+EXPERIMENTAL_PRDR=yes
+EXPERIMENTAL_DSN_INFO=yes
+EXPERIMENTAL_QUEUEFILE=yes
+SUPPORT_I18N=yes
+SUPPORT_I18N_2008=yes
+LDFLAGS+= -lidn -lidn2
+SUPPORT_PROXY=yes
+%if %{with dmarc}
+EXPERIMENTAL_DMARC=yes
+LOOKUP_LIBS+=-lopendmarc
+%endif
+%if %{with spf}
+EXPERIMENTAL_SPF=yes
+LOOKUP_LIBS+=-lspf2
+%endif
+%if %{with srs}
+EXPERIMENTAL_SRS=yes
+LOOKUP_LIBS+=-lsrs_alt
+%endif
+%if %{with hiredis}
+LOOKUP_REDIS=yes
+LOOKUP_LIBS+=-lhiredis
+%endif
%if %{with mysql}
LOOKUP_MYSQL=%{dynamic_type}
# for dynamic
# for static
LOOKUP_LIBS+=-lwhoson
%endif
-%{?with_sasl:AUTH_CYRUS_SASL=yes}
+%if %{with sasl}
+AUTH_CYRUS_SASL=yes
+LOOKUP_LIBS+=-lsasl2
+%endif
%if %{with ldap}
LOOKUP_LDAP=%{dynamic_type}
LDAP_LIB_TYPE=OPENLDAP2
# for static
LOOKUP_LIBS+=-lldap -llber
%endif
-LOOKUP_LIBS+=%{?with_spf:-lspf2} %{?with_srs:-lsrs_alt} %{?with_sasl:-lsasl2}
+%if %{with lmdb}
+EXPERIMENTAL_LMDB=yes
+LOOKUP_LIBS+=-llmdb
+%endif
EOF
# have to be after Local/Makefile-Linux creation
install build-Linux-*/exim{,_fixdb,_tidydb,_dbmbuild,on.bin,_dumpdb,_lock} \
build-Linux-*/exi{cyclog,next,what} %{SOURCE10} \
- build-Linux-*/{exigrep,eximstats,exiqsumm,convert4r4} \
+ build-Linux-*/{exigrep,exiqgrep,exipick,eximstats,exiqsumm,convert4r4} \
util/unknownuser.sh \
$RPM_BUILD_ROOT%{_bindir}
install build-Linux-*/eximon.bin $RPM_BUILD_ROOT%{_bindir}
install %{SOURCE3} $RPM_BUILD_ROOT/etc/cron.daily
install %{SOURCE12} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
-install %{SOURCE11} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
-install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/mail/exim.conf
+install %{SOURCE11} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
+install exim4.conf $RPM_BUILD_ROOT%{_sysconfdir}/mail/exim.conf
install {doc,man}/*.8 $RPM_BUILD_ROOT%{_mandir}/man8
install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/mail/aliases
install %{SOURCE15} $RPM_BUILD_ROOT/etc/pam.d/smtp
%attr(755,root,root) %{_bindir}/exiwhat
%attr(755,root,root) %{_bindir}/exicyclog
%attr(755,root,root) %{_bindir}/exigrep
+%attr(755,root,root) %{_bindir}/exipick
+%attr(755,root,root) %{_bindir}/exiqgrep
%attr(755,root,root) %{_bindir}/eximstats
%attr(755,root,root) %{_bindir}/exiqsumm
%attr(755,root,root) %{_bindir}/unknownuser.sh