]> git.pld-linux.org Git - packages/clamav.git/blame - clamav.spec
- package missing .service file
[packages/clamav.git] / clamav.spec
CommitLineData
c935072a 1# TODO:
c8321415 2# - Make freshclam package (script and daemon)
d06ef0ed 3# - restart amavis in triggers if group membership was modified?
eba74cc1 4#
5# Conditional build:
88439ba9 6%bcond_without milter # build without milter subpackage
9279da12
ER
7%if "%{pld_release}" == "ac"
8%bcond_with llvm # build without llvm support
9%else
10%bcond_without llvm # build without llvm support
11%endif
df7c34e3 12
b014d766 13Summary: An anti-virus utility for Unix
8618c36b 14Summary(pl.UTF-8): Narzędzie antywirusowe dla Uniksów
e6c034d3 15Name: clamav
2f820fbc 16Version: 0.97.7
28e95a65 17Release: 4
c81b4cf4 18License: GPL v2+
c3cae60d 19Group: Daemons
2d82c59b 20Source0: http://downloads.sourceforge.net/clamav/%{name}-%{version}.tar.gz
2f820fbc 21# Source0-md5: c6e6e333d8c9bd3785cbc6ec296c146f
4460ff0b
AM
22Source1: %{name}.init
23Source2: %{name}.sysconfig
eba74cc1 24Source3: %{name}-milter.init
719d471d 25Source4: %{name}-cron-updatedb
4a3f68d7 26Source5: %{name}.logrotate
3e84b306 27Source8: %{name}-post-updatedb
eba74cc1 28Source9: %{name}-milter.sysconfig
24adbaa3 29Source10: %{name}.tmpfiles
09a96373 30Source11: clamd.service
1475e7a3 31Patch0: %{name}-pld_config.patch
40002522 32Patch1: %{name}-nolibs.patch
453ff8b1 33Patch2: am-nosilentrules.patch
1337bca5 34Patch3: ac2.68.patch
182b1736 35URL: http://www.clamav.net/
e6c034d3 36BuildRequires: autoconf
37BuildRequires: automake
bc21dbca 38BuildRequires: bzip2-devel
73b401c8 39BuildRequires: gmp-devel
bda09b13 40BuildRequires: libltdl-devel
9d42dc39 41%{?with_milter:BuildRequires: libmilter-devel}
75268608 42BuildRequires: libstdc++-devel
2d1a6e1f 43BuildRequires: libtool
dd6d36d5 44%{?with_milter:BuildRequires: libwrap-devel}
9279da12 45%{?with_llvm:BuildRequires: llvm-devel}
75268608 46BuildRequires: ncurses-devel
9279da12 47BuildRequires: rpm >= 4.4.9-56
09a96373 48BuildRequires: rpmbuild(macros) >= 1.647
e278889f 49BuildRequires: zlib-devel
dd6d36d5
ER
50Requires(post,preun): /sbin/chkconfig
51Requires(postun): /usr/sbin/groupdel
52Requires(postun): /usr/sbin/userdel
53Requires(postun,pre): /usr/sbin/usermod
0e86f481 54Requires(pre): /bin/id
49797116 55Requires(pre): /usr/bin/getgid
56Requires(pre): /usr/sbin/groupadd
57Requires(pre): /usr/sbin/useradd
28e95a65
ŁK
58Requires(post,preun,postun): systemd-units >= 38
59Requires: systemd-units >= 38
d985d248 60Requires(triggerpostun): sed >= 4.0
d4117574 61Requires: %{name}-libs = %{epoch}:%{version}-%{release}
dd6d36d5 62Requires: /usr/sbin/usermod
f40f9e2f 63Requires: rc-scripts >= 0.4.1.23
6475233d 64Suggests: clamav-database
49797116 65Provides: group(clamav)
66Provides: user(clamav)
d0ecd394 67Conflicts: logrotate < 3.7-4
e6c034d3 68BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
69
e6c034d3 70%description
066e1c29
ER
71Clam AntiVirus is an open source anti-virus toolkit for UNIX, designed
72especially for e-mail scanning on mail gateways. It provides a number
73of utilities including a flexible and scalable multi-threaded daemon,
74a command line scanner and advanced tool for automatic database
75updates. The core of the package is an anti-virus engine available in
76a form of shared library.
77
78Here is a list of the main features:
79- command-line scanner
80- fast, multi-threaded daemon with support for on-access scanning
81- milter interface for sendmail
82- advanced database updater with support for scripted updates and
83 digital signatures
84- virus scanner C library
8618c36b 85- on-access scanning (Linux® and FreeBSD®)
066e1c29
ER
86- virus database updated multiple times per day (see home page for
87 total number of signatures)
88- built-in support for various archive formats, including Zip, RAR,
89 Tar, Gzip, Bzip2, OLE2, Cabinet, CHM, BinHex, SIS and others
90- built-in support for almost all mail file formats
91- built-in support for ELF executables and Portable Executable files
92 compressed with UPX, FSG, Petite, NsPack, wwpack32, MEW, Upack and
93 obfuscated with SUE, Y0da Cryptor and others
94- built-in support for popular document formats including MS Office
95 and MacOffice files, HTML, RTF and PDF
e6c034d3 96
d8cf2de3 97%description -l pl.UTF-8
8618c36b 98Clam Antivirus jest potężnym skanerem antywirusowym dla systemów
eba74cc1 99uniksowych. Wspiera on AMaViSa, skompresowane pliki, skanowanie
100"on-access" i posiada system bezpiecznej, automatycznej aktualizacji.
8618c36b 101Baza wirusów zawiera ponad 90000 sygnatur. Skaner jest wielowątkowy,
ba45f729 102napisany w C i zgodny z POSIXem.
e6c034d3 103
4460ff0b 104%package libs
f98d218a 105Summary: Shared libraries for clamav
da5aee7a 106Summary(pl.UTF-8): Biblioteki dzielone clamav
f98d218a 107Group: Libraries
4460ff0b
AM
108
109%description libs
110Shared libraries for clamav.
111
d8cf2de3 112%description libs -l pl.UTF-8
4460ff0b
AM
113Biblioteki dzielone clamav.
114
486b4f0f
JB
115%package milter
116Summary: ClamAV filter using milter interface
8618c36b 117Summary(pl.UTF-8): Filtr ClamAV korzystający z interfejsu milter
eba74cc1 118Group: Daemons
d4117574 119Requires: %{name} = %{epoch}:%{version}-%{release}
893a866a 120Requires: postfix
7c438a38 121#Requires: sendmail >= 8.11
eba74cc1 122Requires: tcp_wrappers
eba74cc1 123
124%description milter
125ClamAV sendmail filter using MILTER interface.
126
d8cf2de3 127%description milter -l pl.UTF-8
8618c36b 128Filtr ClamAV dla sendmaila korzystający z interfejsu MILTER.
eba74cc1 129
4460ff0b 130%package devel
f98d218a 131Summary: clamav - Development header files and libraries
8618c36b 132Summary(pl.UTF-8): clamav - Pliki nagłówkowe i biblioteki dla programistów
f98d218a 133Group: Development/Libraries
d4117574 134Requires: %{name}-libs = %{epoch}:%{version}-%{release}
cc776ef1
JB
135Requires: bzip2-devel
136Requires: gmp-devel
137Requires: zlib-devel
4460ff0b
AM
138
139%description devel
140This package contains the development header files and libraries
141necessary to develop clamav client applications.
142
d8cf2de3 143%description devel -l pl.UTF-8
8618c36b 144Pliki nagłówkowe i biblioteki konieczne do kompilacji aplikacji
142cc22a 145klienckich clamav.
4460ff0b
AM
146
147%package static
dd6d36d5 148Summary: clamav static libraries
da5aee7a 149Summary(pl.UTF-8): Biblioteki statyczne clamav
f98d218a 150Group: Development/Libraries
d4117574 151Requires: %{name}-devel = %{epoch}:%{version}-%{release}
4460ff0b
AM
152
153%description static
f33eb2df 154clamav static libraries.
4460ff0b 155
d8cf2de3 156%description static -l pl.UTF-8
4460ff0b
AM
157Biblioteki statyczne clamav.
158
e6c034d3 159%prep
c81b4cf4 160%setup -q
c935072a 161%patch0 -p1
83eaf0c7 162%patch1 -p1
453ff8b1 163%patch2 -p1
1337bca5 164%patch3 -p1
82747f5b 165
e6c034d3 166%build
839be9e8
ŁK
167# automake 1.12+ needs configure.ac not .in
168mv configure.{in,ac}
82747f5b 169%{__libtoolize}
c81b4cf4 170%{__aclocal} -I m4
ed667a13 171%{__autoconf}
82747f5b 172%{__autoheader}
ed667a13 173%{__automake}
92c5ef39 174%configure \
ca57b115 175 --disable-clamav \
142cc22a 176 %{?with_milter:--enable-milter} \
20f26031 177 --with-dbdir=/var/lib/%{name} \
8635bd29 178 --with-no-cache \
839be9e8 179 --with-ltdl-include=%{_includedir} \
a811cf23
ER
180 --with-ltdl-lib=%{_libdir}
181
182%{__make} \
839be9e8 183 LIBTOOL=%{_bindir}/libtool
4d3c9f35 184
e6c034d3 185%install
186rm -rf $RPM_BUILD_ROOT
06e3ab45 187install -d $RPM_BUILD_ROOT/etc/{cron.d,logrotate.d,rc.d/init.d,sysconfig} \
c79a8ed7 188 $RPM_BUILD_ROOT%{_var}/{log,spool/clamav,lib/clamav} \
28e95a65
ŁK
189 $RPM_BUILD_ROOT%{systemdtmpfilesdir} \
190 $RPM_BUILD_ROOT%{systemdunitdir}
92c5ef39
AM
191
192%{__make} install \
839be9e8 193 LIBTOOL=%{_bindir}/libtool \
92c5ef39 194 DESTDIR=$RPM_BUILD_ROOT
142cc22a 195%{!?with_milter:rm -f $RPM_BUILD_ROOT%{_mandir}/man8/clamav-milter.8*}
92c5ef39 196
d78cc52a 197cat <<'EOF' >$RPM_BUILD_ROOT/etc/cron.d/%{name}
719d471d 1985 * * * * root %{_sbindir}/clamav-cron-updatedb
ca57b115 199EOF
92c5ef39 200
9279da12 201install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/clamd
4381c9a3 202%if %{with milter}
9279da12
ER
203install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/clamav-milter
204cp -p %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/clamav-milter
4381c9a3 205%endif
9279da12
ER
206cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/clamd
207install -p %{SOURCE4} $RPM_BUILD_ROOT%{_sbindir}/clamav-cron-updatedb
208cp -p etc/*.conf $RPM_BUILD_ROOT%{_sysconfdir}
209cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
2b9f3e64 210
9279da12 211install -p %{SOURCE8} $RPM_BUILD_ROOT%{_sbindir}
4460ff0b 212
839be9e8 213install %{SOURCE10} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
24adbaa3 214
28e95a65
ŁK
215install %{SOURCE11} $RPM_BUILD_ROOT%{systemdunitdir}
216
c935072a
MK
217# NOTE: clamd uses sane rights to it's clamd.pid file
218# So better keep it dir
219# If it is fixed use of dir will be unecesary
d78cc52a 220install -d $RPM_BUILD_ROOT/var/run/%{name}
c935072a 221
d78cc52a 222:> $RPM_BUILD_ROOT/var/log/freshclam.log
ef21d0fa 223
e6c034d3 224%clean
92c5ef39 225rm -rf $RPM_BUILD_ROOT
e6c034d3 226
c935072a 227%triggerin -- amavis-ng
50d65e20 228%addusertogroup -q clamav amavis
c935072a
MK
229
230%triggerin -- amavisd-new
50d65e20 231%addusertogroup -q clamav amavis
c935072a
MK
232
233%triggerin -- amavisd
50d65e20 234%addusertogroup -q clamav amavis
c935072a 235
e278889f 236%pre
236dddf1
ER
237%groupadd -g 43 clamav
238%useradd -u 43 -d /tmp -s /bin/false -c "Clam Anti Virus Checker" -g clamav clamav
174915c1 239
66d1575d 240%post
66d1575d 241/sbin/chkconfig --add clamd
dd6d36d5 242%service clamd restart "Clam Antivirus daemon"
d78cc52a
ER
243touch /var/log/freshclam.log
244chown clamav:root /var/log/freshclam.log
245chmod 640 /var/log/freshclam.log
28e95a65 246%systemd_post clamd.service
66d1575d 247
66d1575d 248%preun
249if [ "$1" = "0" ]; then
dd6d36d5 250 %service clamd stop
66d1575d 251 /sbin/chkconfig --del clamd
252fi
28e95a65 253%systemd_preun clamd.service
e6c034d3 254
0c8c3ba4 255%postun
174915c1 256if [ "$1" = "0" ]; then
49797116 257 %userremove clamav
258 %groupremove clamav
174915c1 259fi
28e95a65 260%systemd_reload
174915c1 261
ed0b0327 262%triggerpostun -- %{name} < 0.80
1eab800a 263if [ -f /etc/clamav.conf.rpmsave ]; then
d093ed8c 264 echo "Renaming config to new name /etc/clamd.conf"
265 mv -f /etc/clamd.conf /etc/clamd.conf.rpmnew
266 mv -f /etc/clamav.conf.rpmsave /etc/clamd.conf
d4117574 267 echo "Changing config location in freshclam config"
f12ca2c1
ER
268 %{__sed} -i -e 's/clamav.conf/clamd.conf/' /etc/freshclam.conf
269fi
270
29f80fd8
ER
271%triggerpostun -- %{name} < 0.90-0.rc2.0.10
272%{__cp} -f /etc/clamd.conf{,.rpmsave}
273%{__sed} -i -e '
274 s,^LogSyslog$,& yes,
275 s,^FixStaleSocket$,& yes,
276 s,^AllowSupplementaryGroups$,& yes,
277 s,^ClamukoScanOnOpen$,& yes,
278 s,^ClamukoScanOnClose$,& yes,
279 s,^ClamukoScanOnExec$,& yes,
3bc0b921
AM
280 s,^LogTime$,& yes,
281 s,^ScanPE$,& yes,
29f80fd8
ER
282' /etc/clamd.conf
283%banner -e %{name}-0.90 <<EOF
284ClamAV config was automatically upgraded to 0.90 format. You should review it
285that it's still valid.
286EOF
287#'
288# unfortunately clamd has no configcheck option so we just have to start it
289# once again after config was broken after upgrade
290touch /var/lock/subsys/clamd
291%service -q clamd restart
1eab800a 292
09a96373
ŁK
293%triggerpostun -- %{name} < 0.97.7-4
294%systemd_trigger clamd.service
295
eba74cc1 296%post milter
297/sbin/chkconfig --add clamav-milter
dd6d36d5 298%service clamav-milter restart "Clam Antivirus daemon"
eba74cc1 299
4c570814 300%preun milter
eba74cc1 301if [ "$1" = "0" ]; then
dd6d36d5 302 %service clamav-milter stop
eba74cc1 303 /sbin/chkconfig --del clamav-milter
304fi
fba342ab 305
1475e7a3 306%post libs -p /sbin/ldconfig
307%postun libs -p /sbin/ldconfig
4460ff0b 308
e6c034d3 309%files
310%defattr(644,root,root,755)
c5a8ecb5 311%doc AUTHORS ChangeLog FAQ NEWS README docs/*.pdf
79125c5b 312%attr(755,root,root) %{_bindir}/clambc
24f68046 313%attr(755,root,root) %{_bindir}/clamdscan
40002522 314%attr(755,root,root) %{_bindir}/clamdtop
24f68046 315%attr(755,root,root) %{_bindir}/clamscan
316%attr(755,root,root) %{_bindir}/freshclam
317%attr(755,root,root) %{_bindir}/sigtool
d78cc52a 318%attr(755,root,root) %{_bindir}/clamconf
24f68046 319%attr(755,root,root) %{_sbindir}/clamd
320%attr(755,root,root) %{_sbindir}/clamav-cron-updatedb
c8321415 321%attr(755,root,root) %{_sbindir}/clamav-post-updatedb
839be9e8 322%{systemdtmpfilesdir}/%{name}.conf
09a96373 323%{systemdunitdir}/clamd.service
ca57b115 324%attr(755,clamav,root) %dir /var/lib/%{name}
d78cc52a
ER
325%attr(640,clamav,root) %ghost /var/log/freshclam.log
326%attr(750,clamav,clamav) %dir /var/run/%{name}
c935072a 327
b5177881 328%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}
0e86f481
JB
329%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/clamd.conf
330%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/freshclam.conf
6586d93d 331
05eb87ef 332%attr(754,root,root) /etc/rc.d/init.d/clamd
7c801993
ER
333%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/clamd
334%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/clamav
eba74cc1 335%{_mandir}/man[15]/*
336%{_mandir}/man8/clamd*
337
338%if %{with milter}
339%files milter
340%defattr(644,root,root,755)
7c801993 341%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/clamav-milter
9279da12 342%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/clamav-milter.conf
491eb046 343%attr(754,root,root) /etc/rc.d/init.d/clamav-milter
eba74cc1 344#%attr(755,root,root) %{_sysconfdir}/cron.daily/clamav-milter
345#%attr(755,root,root) %{_sysconfdir}/log.d/scripts/services/clamav-milter
346#%{_sysconfdir}/log.d/conf/services/clamav-milter.conf
347%attr(755,root,root) %{_sbindir}/clamav-milter
348%{_mandir}/man8/clamav-milter.8*
0e86f481 349%attr(700,clamav,clamav) /var/spool/clamav
eba74cc1 350%endif
4460ff0b
AM
351
352%files libs
353%defattr(644,root,root,755)
263ab0bb 354%attr(755,root,root) %{_libdir}/lib*.so.*.*
40002522
AG
355%attr(755,root,root) %ghost %{_libdir}/libclamav.so.6
356%attr(755,root,root) %ghost %{_libdir}/libclamunrar.so.6
357%attr(755,root,root) %ghost %{_libdir}/libclamunrar_iface.so.6
4460ff0b
AM
358
359%files devel
360%defattr(644,root,root,755)
24f68046 361%attr(755,root,root) %{_bindir}/clamav-config
4460ff0b 362%attr(755,root,root) %{_libdir}/lib*.so
52d00604 363%{_libdir}/lib*.la
4460ff0b 364%{_includedir}/*.h
0d90572a 365%{_pkgconfigdir}/*.pc
4460ff0b
AM
366
367%files static
368%defattr(644,root,root,755)
369%{_libdir}/*.a
This page took 0.093175 seconds and 4 git commands to generate.