]> git.pld-linux.org Git - packages/exim.git/blame - exim.spec
- rel 3
[packages/exim.git] / exim.spec
CommitLineData
9db332a8 1#
22442fbb 2# Conditional build:
b2db97da 3%bcond_without pgsql # without PostgreSQL support
4%bcond_without mysql # without MySQL support
abe10949 5%bcond_without sqlite # without sqlite
b2db97da 6%bcond_without whoson # without whoson support
ce4633e0 7%bcond_without sasl # without SASL
bcbbe38e 8%bcond_without ldap # without LDAP support
4acd3d45 9%bcond_without spf # without spf support
cf3f73d5 10%bcond_without srs # without srs support
b56ef289 11%bcond_without dynamic # dynamic modules
79697b11 12%bcond_without hiredis # without redis
ca839913
AM
13# opendmarc.spec not ready, so off by default
14%bcond_with dmarc # DMARC support
12731bf2 15
3717407e 16%if "%{pld_release}" == "ac"
3717407e
ER
17# hiredis build segfaults on ac-alpha
18%undefine with_hiredis
19%endif
20
d6eed07a 21Summary: University of Cambridge Mail Transfer Agent
9906dddb
ER
22Summary(pl.UTF-8): Agent Transferu Poczty Uniwersytetu w Cambridge
23Summary(pt_BR.UTF-8): Servidor de correio eletrônico exim
859700c9 24Name: exim
ca839913 25Version: 4.87
6ee7e5b5 26Release: 3
5e2ead7f 27Epoch: 2
b870edc7 28License: GPL
e50559d6 29Group: Networking/Daemons/SMTP
d3697a6b 30Source0: ftp://ftp.exim.org/pub/exim/exim4/%{name}-%{version}.tar.bz2
ca839913 31# Source0-md5: 2effc2bd47ad2dc010f655c11a1b1173
b4106aa6 32Source1: ftp://ftp.exim.org/pub/exim/exim4/%{name}-html-%{version}.tar.bz2
ca839913 33# Source1-md5: f6ee36fd8d024912c053d113970938f5
066110a4 34Source2: %{name}.init
35Source3: %{name}.cron.db
88f45d21 36Source4: %{name}4.conf
859700c9 37Source5: analyse-log-errors
066110a4 38Source6: %{name}on.desktop
88f45d21 39# 20021016: http://www.logic.univie.ac.at/~ametzler/debian/exim4manpages/
0e6a6f9b 40Source7: %{name}4-man-021016.tar.bz2
00108711 41# Source7-md5: b552704ebf853a401946038a2b7e8e98
066110a4 42Source9: %{name}.aliases
3a772b92 43Source10: newaliases
0e6a6f9b 44Source11: %{name}.logrotate
0e6a6f9b 45Source12: %{name}.sysconfig
f1095e43 46Source14: ftp://ftp.exim.org/pub/exim/exim4/old/config.samples.tar.bz2
9843e1e0 47# Source14-md5: 4b93321938a800caa6127c48ad60a42b
077cda1b 48Source15: %{name}4-smtp.pamd
ff7ae076 49Source16: %{name}on.png
ca839913 50# git log -p exim-4_87..exim-4_87+fixes --reverse -- . ":(exclude)doc/doc-*" ":(exclude)test" ":(exclude).*" > exim-git.patch
4022a9ec 51Patch100: %{name}-git.patch
88f45d21 52Patch0: %{name}4-EDITME.patch
53Patch1: %{name}4-monitor-EDITME.patch
ac65266c 54Patch2: %{name}4-cflags.patch
25142324 55Patch3: exim-defs.patch
88f45d21 56Patch4: %{name}4-Makefile-Default.patch
6d9e2777
AM
57# http://marc.merlins.org/linux/exim/files/sa-exim-cvs/localscan_dlopen_exim_4.20_or_better.patch
58Patch5: localscan_dlopen_%{name}_4.20_or_better.patch
ca839913 59
76e38fe1 60Patch8: %{name}-spam-timeout.patch
ca839913 61
60791d8d 62Patch10: %{name}-force-sigalrm.patch
f4d0d081 63
5d13b696 64Patch20: %{name}4-disableSSLv3.patch
066110a4 65URL: http://www.exim.org/
82ad425e
ER
66%{?with_sasl:BuildRequires: cyrus-sasl-devel >= 2.1.0}
67BuildRequires: db-devel
ca839913 68%{?with_dmarc:BuildRequires: opendmarc-devel}
79697b11 69%{?with_hiredis:BuildRequires: hiredis-devel}
eaeb5576
AM
70%{?with_spf:BuildRequires: libspf2-devel >= 1.2.5-2}
71%{?with_srs:BuildRequires: libsrs_alt-devel >= 1.0}
bcbbe38e 72%{?with_mysql:BuildRequires: mysql-devel}
1f87c676 73%{?with_ldap:BuildRequires: openldap-devel >= 2.3.0}
a6ad4b14 74BuildRequires: openssl-devel >= 0.9.7d
d6eed07a
TP
75BuildRequires: pam-devel
76BuildRequires: pcre-devel
5b3e22ec 77BuildRequires: perl-devel >= 1:5.6.0
82ad425e 78%{?with_pgsql:BuildRequires: postgresql-devel}
85ea61b0 79BuildRequires: readline-devel
1f87c676 80BuildRequires: rpm >= 4.4.9-56
ed878c0a 81BuildRequires: rpmbuild(macros) >= 1.268
82ad425e 82%{?with_sqlite:BuildRequires: sqlite3-devel}
82ad425e 83%{?with_whoson:BuildRequires: whoson-devel}
1f87c676 84%if "%{pld_release}" != "ac"
36ff593d 85BuildRequires: xorg-lib-libX11-devel
204feb3d 86BuildRequires: xorg-lib-libXaw-devel
1f87c676
ER
87%else
88BuildRequires: XFree86-devel
89%endif
82ad425e
ER
90Requires(post): /bin/hostname
91Requires(post): fileutils
92Requires(post,preun): /sbin/chkconfig
93Requires(postun): /usr/sbin/groupdel
94Requires(postun): /usr/sbin/userdel
33a67372 95Requires(pre): /bin/id
96Requires(pre): /usr/bin/getgid
97Requires(pre): /usr/sbin/groupadd
98Requires(pre): /usr/sbin/useradd
618734e2 99Requires: findutils
f27a18bf 100Requires: pam >= 0.79.0
82ad425e 101Requires: rc-scripts
4ec4eeb4 102Requires: which
74d9646b 103Provides: group(exim)
55d7b250 104Provides: smtpdaemon
74d9646b 105Provides: user(exim)
b3c701a5 106Obsoletes: exipick
88f45d21 107Obsoletes: smtpdaemon
bf677698 108Conflicts: logrotate < 3.8.3
b2db97da 109BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
f38f6b11 110
111%description
b870edc7 112Smail like Mail Transfer Agent with single configuration file.
113Features: flexible retry algorithms, header & envelope rewriting,
114multiple deliveries down single connection or multiple deliveries in
115parallel, regular expressions in configuration parameters, file
116lookups, supports sender and/or reciever verification, selective
117relaying, supports virtual domains, built-in mail filtering and can be
118configured to drop root privilleges when possible.
f38f6b11 119
f46cabaa 120%description -l pl.UTF-8
c130e36a 121Agent transferu poczty (MTA) z pojedynczym plikiem konfiguracyjnym.
f46cabaa
JR
122Jego zalety: świetne algorytmy, możliwość przepisywania nagłówków &
123koperty, wielokrotne dostarczanie poczty podczas jednego połączenia
124lub równoległe dostarczanie poczty, wyrażenia regularne w parametrach
b870edc7 125konfiguracyjnych, weryfikacja nadawcy i/lub odbiorcy, selektywne
f46cabaa
JR
126relayowanie, wsparcie dla wirtualnych domen, wbudowany system filtrów,
127możliwość odrzucania praw roota kiedy jest to możliwe.
c130e36a 128
f46cabaa
JR
129%description -l pt_BR.UTF-8
130O exim é um agente de transporte de correio eletrônico (MTA),
d0f0285c 131desenvolvido na Universidade de Cambridge para uso em sistemas Unix
132conectados a Internet. Similar em estilo ao smail 3, suas facilidades
f46cabaa
JR
133são mais extensivas e em particular ele tem opções para verificação do
134remetente e destinatário, para recusar mensagens de máquinas, redes ou
135remetentes específicos.
d0f0285c 136
f38f6b11 137%package X11
d0f0285c 138Summary: X11 based Exim administration tool
9906dddb
ER
139Summary(pl.UTF-8): Narzędzia administracyjne exima dla X11
140Summary(pt_BR.UTF-8): Monitor X11 para o exim
066110a4 141Group: X11/Applications
859700c9 142
f38f6b11 143%description X11
d0f0285c 144X11 based monitor & administration utility for the Exim Mail Transfer
145Agent.
f38f6b11 146
f46cabaa
JR
147%description X11 -l pl.UTF-8
148Bazujące na X11 narzędzia dla Exima - monitor i program
b870edc7 149administracyjny.
c130e36a 150
f46cabaa
JR
151%description X11 -l pt_BR.UTF-8
152O monitor exim é um suplemento opcional ao pacote exim. Ele mostra
153informações sobre o processamento do exim em uma janela X11. O
154administrador pode executar uma série de ações de controle a partir
d0f0285c 155desta interface.
156
6d9e2777 157%package devel
0ca73329 158Summary: Header files for Exim
9906dddb 159Summary(pl.UTF-8): Pliki nagłówkowe dla Exima
6d9e2777
AM
160Group: Development/Libraries
161Requires: %{name} = %{epoch}:%{version}-%{release}
162
163%description devel
0ca73329
JB
164Header files for Exim.
165
f46cabaa
JR
166%description devel -l pl.UTF-8
167Pliki nagłówkowe dla Exima.
6d9e2777 168
a4ef5176
AM
169%global dynamic_type yes
170%{?with_dynamic:%global dynamic_type 2}
171
f38f6b11 172%prep
01a20a09 173%setup -q -a1 -a7
ca839913 174#%patch100 -p2
4022a9ec 175
489eca58 176%patch0 -p1
177%patch1 -p1
ac65266c 178%patch2 -p1
25142324 179%patch3 -p1
22442fbb 180%patch4 -p1
6d9e2777 181%patch5 -p1
f4d0d081 182
76e38fe1 183%patch8 -p1
ca839913 184
60791d8d 185%patch10 -p1
f4d0d081 186
4630efcc 187install %{SOURCE4} exim4.conf
88f45d21 188install %{SOURCE14} doc/config.samples.tar.bz2
5d13b696 189%patch20 -p1
b870edc7 190install -d Local
531d4f95
AM
191cat << 'EOF' >> Local/Makefile-Linux
192CC=%{__cc}
193CUSTOM_CFLAGS=%{rpmcppflags} %{rpmcflags}
194CFLAGS_DYNAMIC=-shared -rdynamic -fPIC %{rpmldflags}
195LOOKUP_CDB=yes
196XLFLAGS=-L%{_prefix}/X11R6/%{_lib}
197X11_LD_LIB=%{_prefix}/X11R6/%{_lib}
6ec5ee33 198%{?with_dynamic:LOOKUP_MODULE_DIR=%{_libdir}/%{name}/modules}
07bb0382 199EXPERIMENTAL_DANE=yes
79697b11
AM
200EXPERIMENTAL_DCC=yes
201EXPERIMENTAL_PRDR=yes
ca839913
AM
202EXPERIMENTAL_DSN_INFO=yes
203SUPPORT_PROXY=yes
204%if %{with dmarc}
205EXPERIMENTAL_DMARC=yes
206LOOKUP_LIBS+=-lopendmarc
207%endif
79697b11
AM
208%if %{with spf}
209EXPERIMENTAL_SPF=yes
210LOOKUP_LIBS+=-lspf2
211%endif
212%if %{with srs}
213EXPERIMENTAL_SRS=yes
214LOOKUP_LIBS+=-lsrs_alt
215%endif
216%if %{with hiredis}
ca839913 217LOOKUP_REDIS=yes
79697b11
AM
218LOOKUP_LIBS+=-lhiredis
219%endif
531d4f95 220%if %{with mysql}
a4ef5176
AM
221LOOKUP_MYSQL=%{dynamic_type}
222# for dynamic
531d4f95
AM
223LOOKUP_MYSQL_INCLUDE=-I%{_includedir}/mysql
224LOOKUP_MYSQL_LIBS=-lmysqlclient
a4ef5176
AM
225# for static
226LOOKUP_INCLUDE+=-I%{_includedir}/mysql
227LOOKUP_LIBS+=-lmysqlclient
531d4f95
AM
228%endif
229%if %{with pgsql}
a4ef5176
AM
230LOOKUP_PGSQL=%{dynamic_type}
231# for dynamic
531d4f95
AM
232LOOKUP_PGSQL_INCLUDE=-I%{_includedir}/pgsql
233LOOKUP_PGSQL_LIBS=-lpq
a4ef5176
AM
234# for static
235LOOKUP_INCLUDE+=-I%{_includedir}/pgsql
236LOOKUP_LIBS+=-lpq
531d4f95
AM
237%endif
238%if %{with sqlite}
a4ef5176
AM
239LOOKUP_SQLITE=%{dynamic_type}
240# for dynamic
531d4f95 241LOOKUP_SQLITE_LIBS=-lsqlite3
a4ef5176
AM
242# for static
243LOOKUP_LIBS+=-lsqlite3
531d4f95
AM
244%endif
245%if %{with whoson}
a4ef5176
AM
246LOOKUP_WHOSON=%{dynamic_type}
247# for dynamic
531d4f95 248LOOKUP_WHOSON_LIBS=-lwhoson
a4ef5176
AM
249# for static
250LOOKUP_LIBS+=-lwhoson
531d4f95 251%endif
79697b11
AM
252%if %{with sasl}
253AUTH_CYRUS_SASL=yes
254LOOKUP_LIBS+=-lsasl2
255%endif
531d4f95 256%if %{with ldap}
a4ef5176 257LOOKUP_LDAP=%{dynamic_type}
531d4f95 258LDAP_LIB_TYPE=OPENLDAP2
a4ef5176
AM
259# for dynamic
260LOOKUP_LDAP_LIBS=-lldap -llber
261# for static
262LOOKUP_LIBS+=-lldap -llber
531d4f95 263%endif
531d4f95
AM
264EOF
265
266# have to be after Local/Makefile-Linux creation
4bf6fc61
JB
267cp -f src/EDITME Local/Makefile
268cp -f exim_monitor/EDITME Local/eximon.conf
f38f6b11 269
270%build
531d4f95
AM
271%{__make} -e -j1 \
272 FULLECHO=''
f38f6b11 273
274%install
b870edc7 275rm -rf $RPM_BUILD_ROOT
11db3d17 276install -d $RPM_BUILD_ROOT%{_sysconfdir}/mail
2dba4ae3 277install -d $RPM_BUILD_ROOT/etc/{cron.daily,logrotate.d,rc.d/init.d,sysconfig,pam.d,security}
28489cb1 278install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_mandir}/man8,/usr/lib}
4797292f 279install -d $RPM_BUILD_ROOT%{_var}/{spool/exim/{db,input,msglog},log/{archive,}/exim,mail}
b4106aa6 280install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}}
531d4f95 281install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/modules
066110a4 282
1e7de296 283install build-Linux-*/exim{,_fixdb,_tidydb,_dbmbuild,on.bin,_dumpdb,_lock} \
1e7de296 284 build-Linux-*/exi{cyclog,next,what} %{SOURCE10} \
ffa5b07d 285 build-Linux-*/{exigrep,exiqgrep,exipick,eximstats,exiqsumm,convert4r4} \
88f45d21 286 util/unknownuser.sh \
066110a4 287 $RPM_BUILD_ROOT%{_bindir}
9db332a8
JB
288install build-Linux-*/eximon.bin $RPM_BUILD_ROOT%{_bindir}
289install build-Linux-*/eximon $RPM_BUILD_ROOT%{_bindir}
a4ef5176 290%{?with_dynamic:install build-Linux-*/*/*.so $RPM_BUILD_ROOT%{_libdir}/%{name}/modules}
066110a4 291
292install %{SOURCE5} .
e42ab626 293install %{SOURCE3} $RPM_BUILD_ROOT/etc/cron.daily
3a772b92 294install %{SOURCE12} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
066110a4 295install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
4630efcc
AM
296install %{SOURCE11} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
297install exim4.conf $RPM_BUILD_ROOT%{_sysconfdir}/mail/exim.conf
9db332a8 298install {doc,man}/*.8 $RPM_BUILD_ROOT%{_mandir}/man8
066110a4 299install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/mail/aliases
fa39e47a 300install %{SOURCE15} $RPM_BUILD_ROOT/etc/pam.d/smtp
187c8c8b 301
4bf6fc61 302ln -sf %{_bindir}/exim $RPM_BUILD_ROOT%{_sbindir}/sendmail
28489cb1 303ln -sf %{_bindir}/exim $RPM_BUILD_ROOT/usr/lib/sendmail
4bf6fc61
JB
304ln -sf %{_bindir}/exim $RPM_BUILD_ROOT%{_sbindir}/mailq
305ln -sf %{_bindir}/exim $RPM_BUILD_ROOT%{_sbindir}/rsmtp
306ln -sf %{_bindir}/exim $RPM_BUILD_ROOT%{_sbindir}/rmail
307ln -sf %{_bindir}/exim $RPM_BUILD_ROOT%{_sbindir}/runq
b870edc7 308
ff7ae076 309install %{SOURCE6} $RPM_BUILD_ROOT%{_desktopdir}
310install %{SOURCE16} $RPM_BUILD_ROOT%{_pixmapsdir}
187c8c8b 311
6d9e2777 312install -d $RPM_BUILD_ROOT%{_includedir}/%{name}
b71250b4
SZ
313install src/{local_scan,store,mytypes}.h $RPM_BUILD_ROOT%{_includedir}/%{name}
314install build-Linux-*/config.h $RPM_BUILD_ROOT%{_includedir}/%{name}
6d9e2777 315
489eca58 316touch $RPM_BUILD_ROOT%{_var}/log/exim/{main,reject,panic,process}.log
187c8c8b 317
36310b55
JR
318touch $RPM_BUILD_ROOT/etc/security/blacklist.smtp
319
d387c64b
JB
320%clean
321rm -rf $RPM_BUILD_ROOT
322
0bbd4a49 323%pre
74a274d2
ER
324%groupadd -g 79 exim
325%useradd -u 79 -d /var/spool/exim -s /bin/false -c "Exim pseudo user" -g exim exim
0bbd4a49 326
859700c9 327%post
187c8c8b 328umask 022
5f92f1d0 329/sbin/chkconfig --add %{name}
ed878c0a 330%service %{name} restart "exim daemon"
187c8c8b
AM
331
332if [ ! -f /etc/mail/mailname ]; then
333 rm -f /etc/mail/mailname && hostname -f > /etc/mail/mailname
859700c9 334fi
187c8c8b 335newaliases
859700c9 336
337%preun
5f92f1d0 338if [ "$1" = "0" ]; then
ed878c0a 339 %service exim stop
5f92f1d0 340 /sbin/chkconfig --del %{name}
341fi
187c8c8b 342
3fdba252 343%postun
0bbd4a49 344if [ "$1" = "0" ]; then
74d9646b 345 %userremove exim
346 %groupremove exim
0bbd4a49 347fi
3fdba252 348
f38f6b11 349%files
859700c9 350%defattr(644,root,root,755)
00bddbb1 351%doc README* NOTICE LICENCE analyse-log-errors doc/{ChangeLog,NewStuff,dbm.discuss.txt,filter.txt,spec.txt,Exim*.upgrade,OptionLists.txt,experimental-spec.txt} build-Linux-*/transport-filter.pl
b4106aa6 352%doc exim-html-*/doc/html
5310bdd0 353%dir %{_sysconfdir}/mail
9db332a8 354%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/exim.conf
36ff593d
ER
355%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/aliases
356%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/exim
bfa1d1a0 357%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/exim
882e1157 358%attr(754,root,root) /etc/rc.d/init.d/exim
187c8c8b 359%attr(4755,root,root) %{_bindir}/exim
882e1157
JB
360%attr(770,root,exim) %dir %{_var}/spool/exim
361%attr(750,exim,exim) %dir %{_var}/spool/exim/db
362%attr(700,exim,root) %dir %{_var}/spool/exim/input
363%attr(750,exim,root) %dir %{_var}/spool/exim/msglog
364%attr(755,root,root) %{_bindir}/exim_*
365%attr(755,root,root) %{_bindir}/exinext
366%attr(755,root,root) %{_bindir}/exiwhat
367%attr(755,root,root) %{_bindir}/exicyclog
368%attr(755,root,root) %{_bindir}/exigrep
ffa5b07d
AM
369%attr(755,root,root) %{_bindir}/exipick
370%attr(755,root,root) %{_bindir}/exiqgrep
882e1157
JB
371%attr(755,root,root) %{_bindir}/eximstats
372%attr(755,root,root) %{_bindir}/exiqsumm
373%attr(755,root,root) %{_bindir}/unknownuser.sh
374%attr(755,root,root) %{_bindir}/newaliases
375%attr(755,root,root) %{_bindir}/convert4r4
c9e9e044 376%attr(755,root,root) %{_sbindir}/mailq
377%attr(755,root,root) %{_sbindir}/rmail
378%attr(755,root,root) %{_sbindir}/rsmtp
379%attr(755,root,root) %{_sbindir}/runq
380%attr(755,root,root) %{_sbindir}/sendmail
28489cb1 381%attr(755,root,root) /usr/lib/sendmail
e42ab626 382%attr(754,root,root) /etc/cron.daily/exim.cron.db
882e1157 383%attr(750,exim,root) %dir %{_var}/log/exim
40f3bcfe 384%attr(750,exim,root) %dir %{_var}/log/archive/exim
882e1157 385%attr(640,exim,root) %ghost %{_var}/log/exim/*
9db332a8 386%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/smtp
36310b55 387%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.smtp
a4ef5176 388%if %{with dynamic}
531d4f95
AM
389%dir %{_libdir}/%{name}
390%dir %{_libdir}/%{name}/modules
391%{?with_mysql:%attr(755,root,root) %{_libdir}/%{name}/modules/mysql.so}
392%{?with_pgsql:%attr(755,root,root) %{_libdir}/%{name}/modules/pgsql.so}
393%{?with_sqlite:%attr(755,root,root) %{_libdir}/%{name}/modules/sqlite.so}
394%{?with_whoson:%attr(755,root,root) %{_libdir}/%{name}/modules/whoson.so}
a4ef5176 395%endif
8d58ce27 396%{_mandir}/man8/*
859700c9 397
f38f6b11 398%files X11
b870edc7 399%defattr(644,root,root,755)
9db332a8
JB
400%attr(755,root,root) %{_bindir}/eximon
401%attr(755,root,root) %{_bindir}/eximon.bin
402%{_desktopdir}/eximon.desktop
403%{_pixmapsdir}/eximon.png
6d9e2777
AM
404
405%files devel
406%defattr(644,root,root,755)
407%{_includedir}/%{name}
This page took 0.191675 seconds and 4 git commands to generate.