]> git.pld-linux.org Git - packages/clamav.git/blame - clamav.spec
- typo
[packages/clamav.git] / clamav.spec
CommitLineData
c935072a 1# TODO:
c8321415 2# - Make freshclam package (script and daemon)
eba74cc1 3#
4# Conditional build:
88439ba9 5%bcond_without milter # build without milter subpackage
88439ba9 6%bcond_with curl # enable curl support
eba74cc1 7#
3bc0b921
AM
8%define _rc rc3
9%define _rel 1
b014d766 10Summary: An anti-virus utility for Unix
da5aee7a 11Summary(pl.UTF-8): Narzędzie antywirusowe dla Uniksów
e6c034d3 12Name: clamav
c8321415 13Version: 0.90
8239cb80 14Release: 0.%{_rc}.%{_rel}
e77f89d2 15Epoch: 0
92c5ef39 16License: GPL
4460ff0b 17Group: Applications
d78cc52a 18Source0: http://dl.sourceforge.net/clamav/%{name}-%{version}%{_rc}.tar.gz
3bc0b921 19# Source0-md5: 5af2bdbbb255829dd590609d900c1854
4460ff0b
AM
20Source1: %{name}.init
21Source2: %{name}.sysconfig
eba74cc1 22Source3: %{name}-milter.init
719d471d 23Source4: %{name}-cron-updatedb
4a3f68d7 24Source5: %{name}.logrotate
3e84b306 25Source8: %{name}-post-updatedb
eba74cc1 26Source9: %{name}-milter.sysconfig
1475e7a3 27Patch0: %{name}-pld_config.patch
83eaf0c7 28Patch1: %{name}-no_auto_libwrap.patch
82747f5b 29Patch2: %{name}-nolibs.patch
4ffd87a3 30Patch3: %{name}-find_milter.patch
182b1736 31URL: http://www.clamav.net/
e6c034d3 32BuildRequires: autoconf
33BuildRequires: automake
bc21dbca 34BuildRequires: bzip2-devel
a3809365 35%{?with_curl:BuildRequires: curl-devel}
73b401c8 36BuildRequires: gmp-devel
2d1a6e1f 37BuildRequires: libtool
dd6d36d5
ER
38%{?with_milter:BuildRequires: libwrap-devel}
39BuildRequires: rpmbuild(macros) >= 1.268
ccb78c9d 40%{?with_milter:BuildRequires: libmilter-devel}
e278889f 41BuildRequires: zlib-devel
dd6d36d5
ER
42Requires(post,preun): /sbin/chkconfig
43Requires(postun): /usr/sbin/groupdel
44Requires(postun): /usr/sbin/userdel
45Requires(postun,pre): /usr/sbin/usermod
0e86f481 46Requires(pre): /bin/id
49797116 47Requires(pre): /usr/bin/getgid
48Requires(pre): /usr/sbin/groupadd
49Requires(pre): /usr/sbin/useradd
d985d248 50Requires(triggerpostun): sed >= 4.0
d4117574 51Requires: %{name}-libs = %{epoch}:%{version}-%{release}
dd6d36d5 52Requires: /usr/sbin/usermod
6a92e05d 53Requires: bc
0e86f481 54Requires: rc-scripts
49797116 55Provides: group(clamav)
56Provides: user(clamav)
e6c034d3 57BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
58
e6c034d3 59%description
60Clam Antivirus is a powerful anti-virus scanner for Unix. It supports
ba45f729 61AMaViS, compressed files, on-access scanning and includes a program
eba74cc1 62for auto-updating with support for digital signatures. The virus
c8321415 63database has over 85387 viruses, worms and trojans signatures. The
eba74cc1 64scanner is multithreaded, written in C, and POSIX compliant.
e6c034d3 65
d8cf2de3
JR
66%description -l pl.UTF-8
67Clam Antivirus jest potężnym skanerem antywirusowym dla systemów
eba74cc1 68uniksowych. Wspiera on AMaViSa, skompresowane pliki, skanowanie
69"on-access" i posiada system bezpiecznej, automatycznej aktualizacji.
d8cf2de3 70Baza wirusów zawiera ponad 85387 sygnatur. Skaner jest wielowątkowy,
ba45f729 71napisany w C i zgodny z POSIXem.
e6c034d3 72
4460ff0b 73%package libs
f98d218a 74Summary: Shared libraries for clamav
da5aee7a 75Summary(pl.UTF-8): Biblioteki dzielone clamav
f98d218a 76Group: Libraries
4460ff0b
AM
77
78%description libs
79Shared libraries for clamav.
80
d8cf2de3 81%description libs -l pl.UTF-8
4460ff0b
AM
82Biblioteki dzielone clamav.
83
486b4f0f
JB
84%package milter
85Summary: ClamAV filter using milter interface
da5aee7a 86Summary(pl.UTF-8): Filtr ClamAV korzystający z interfejsu milter
eba74cc1 87Group: Daemons
d4117574 88Requires: %{name} = %{epoch}:%{version}-%{release}
eba74cc1 89Requires: sendmail >= 8.11
90Requires: tcp_wrappers
eba74cc1 91
92%description milter
93ClamAV sendmail filter using MILTER interface.
94
d8cf2de3
JR
95%description milter -l pl.UTF-8
96Filtr ClamAV dla sendmaila korzystający z interfejsu MILTER.
eba74cc1 97
4460ff0b 98%package devel
f98d218a 99Summary: clamav - Development header files and libraries
da5aee7a 100Summary(pl.UTF-8): clamav - Pliki nagłówkowe i biblioteki dla programistów
f98d218a 101Group: Development/Libraries
d4117574 102Requires: %{name}-libs = %{epoch}:%{version}-%{release}
cc776ef1
JB
103Requires: bzip2-devel
104Requires: gmp-devel
105Requires: zlib-devel
4460ff0b
AM
106
107%description devel
108This package contains the development header files and libraries
109necessary to develop clamav client applications.
110
d8cf2de3
JR
111%description devel -l pl.UTF-8
112Pliki nagłówkowe i biblioteki konieczne do kompilacji aplikacji
142cc22a 113klienckich clamav.
4460ff0b
AM
114
115%package static
dd6d36d5 116Summary: clamav static libraries
da5aee7a 117Summary(pl.UTF-8): Biblioteki statyczne clamav
f98d218a 118Group: Development/Libraries
d4117574 119Requires: %{name}-devel = %{epoch}:%{version}-%{release}
4460ff0b
AM
120
121%description static
f33eb2df 122clamav static libraries.
4460ff0b 123
d8cf2de3 124%description static -l pl.UTF-8
4460ff0b
AM
125Biblioteki statyczne clamav.
126
e6c034d3 127%prep
c8321415 128%setup -q %{?_rc:-n %{name}-%{version}%{_rc}}
c935072a 129%patch0 -p1
83eaf0c7 130%patch1 -p1
82747f5b 131%patch2 -p1
4ffd87a3 132%patch3 -p0
82747f5b 133
e6c034d3 134%build
82747f5b 135%{__libtoolize}
4460ff0b 136%{__aclocal}
ed667a13 137%{__autoconf}
82747f5b 138%{__autoheader}
ed667a13 139%{__automake}
92c5ef39 140%configure \
ca57b115 141 --disable-clamav \
7c471170 142 %{!?with_curl:--without-libcurl} \
142cc22a 143 %{?with_milter:--enable-milter} \
ca57b115 144 --with-dbdir=/var/lib/%{name}
92c5ef39 145%{__make}
4d3c9f35 146
e6c034d3 147%install
148rm -rf $RPM_BUILD_ROOT
06e3ab45
TP
149install -d $RPM_BUILD_ROOT/etc/{cron.d,logrotate.d,rc.d/init.d,sysconfig} \
150 $RPM_BUILD_ROOT%{_var}/{log,spool/clamav}
92c5ef39
AM
151
152%{__make} install \
153 DESTDIR=$RPM_BUILD_ROOT
142cc22a 154%{!?with_milter:rm -f $RPM_BUILD_ROOT%{_mandir}/man8/clamav-milter.8*}
92c5ef39 155
d78cc52a 156cat <<'EOF' >$RPM_BUILD_ROOT/etc/cron.d/%{name}
719d471d 1575 * * * * root %{_sbindir}/clamav-cron-updatedb
ca57b115 158EOF
92c5ef39 159
05eb87ef 160install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/clamd
4381c9a3 161%if %{with milter}
eba74cc1 162install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/clamav-milter
eba74cc1 163install %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/clamav-milter
4381c9a3 164%endif
165install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/clamd
719d471d 166install %{SOURCE4} $RPM_BUILD_ROOT%{_sbindir}/clamav-cron-updatedb
142cc22a 167install etc/*.conf $RPM_BUILD_ROOT%{_sysconfdir}
813b04f8 168install %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
2b9f3e64 169
3e84b306 170install %{SOURCE8} $RPM_BUILD_ROOT%{_sbindir}
4460ff0b 171
c935072a
MK
172# NOTE: clamd uses sane rights to it's clamd.pid file
173# So better keep it dir
174# If it is fixed use of dir will be unecesary
d78cc52a 175install -d $RPM_BUILD_ROOT/var/run/%{name}
c935072a 176
d78cc52a 177:> $RPM_BUILD_ROOT/var/log/freshclam.log
ef21d0fa 178
e6c034d3 179%clean
92c5ef39 180rm -rf $RPM_BUILD_ROOT
e6c034d3 181
c935072a
MK
182%triggerin -- amavis-ng
183AMAVIS=$(/usr/bin/getgid amavis)
184RESULT=$?
1475e7a3 185if [ $RESULT -eq 0 ]; then
236dddf1 186 echo "Adding clamav to amavis group GID=$AMAVIS"
06e3ab45 187 /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null
c935072a
MK
188fi
189
190%triggerin -- amavisd-new
191AMAVIS=$(/usr/bin/getgid amavis)
192RESULT=$?
1475e7a3 193if [ $RESULT -eq 0 ]; then
236dddf1 194 echo "Adding clamav to amavis group GID=$AMAVIS"
06e3ab45 195 /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null
c935072a
MK
196fi
197
198%triggerin -- amavisd
199AMAVIS=$(/usr/bin/getgid amavis)
200RESULT=$?
1475e7a3 201if [ $RESULT -eq 0 ]; then
236dddf1 202 echo "Adding clamav to amavis group GID=$AMAVIS"
49797116 203 /usr/sbin/usermod -G amavis clamav 1>&2
c935072a
MK
204fi
205
e278889f 206%pre
236dddf1
ER
207%groupadd -g 43 clamav
208%useradd -u 43 -d /tmp -s /bin/false -c "Clam Anti Virus Checker" -g clamav clamav
209
210# FIXME: check this. is it proper after useradd macro?
211# TODO: use addusertogroup macro?
212if [ -n "`/usr/bin/getgid amavis`" ]; then
213 echo "Adding clamav to amavis group"
214 /usr/sbin/usermod -G amavis clamav 1>&2
174915c1 215fi
216
66d1575d 217%post
66d1575d 218/sbin/chkconfig --add clamd
dd6d36d5 219%service clamd restart "Clam Antivirus daemon"
d78cc52a
ER
220touch /var/log/freshclam.log
221chown clamav:root /var/log/freshclam.log
222chmod 640 /var/log/freshclam.log
66d1575d 223
66d1575d 224%preun
225if [ "$1" = "0" ]; then
dd6d36d5 226 %service clamd stop
66d1575d 227 /sbin/chkconfig --del clamd
228fi
e6c034d3 229
0c8c3ba4 230%postun
174915c1 231if [ "$1" = "0" ]; then
49797116 232 %userremove clamav
233 %groupremove clamav
174915c1 234fi
235
1eab800a 236%triggerpostun -- %{name} <= 0.75.1
237if [ -f /etc/clamav.conf.rpmsave ]; then
d093ed8c 238 echo "Renaming config to new name /etc/clamd.conf"
239 mv -f /etc/clamd.conf /etc/clamd.conf.rpmnew
240 mv -f /etc/clamav.conf.rpmsave /etc/clamd.conf
d4117574 241 echo "Changing config location in freshclam config"
f12ca2c1
ER
242 %{__sed} -i -e 's/clamav.conf/clamd.conf/' /etc/freshclam.conf
243fi
244
29f80fd8
ER
245%triggerpostun -- %{name} < 0.90-0.rc2.0.10
246%{__cp} -f /etc/clamd.conf{,.rpmsave}
247%{__sed} -i -e '
248 s,^LogSyslog$,& yes,
249 s,^FixStaleSocket$,& yes,
250 s,^AllowSupplementaryGroups$,& yes,
251 s,^ClamukoScanOnOpen$,& yes,
252 s,^ClamukoScanOnClose$,& yes,
253 s,^ClamukoScanOnExec$,& yes,
3bc0b921
AM
254 s,^LogTime$,& yes,
255 s,^ScanPE$,& yes,
29f80fd8
ER
256' /etc/clamd.conf
257%banner -e %{name}-0.90 <<EOF
258ClamAV config was automatically upgraded to 0.90 format. You should review it
259that it's still valid.
260EOF
261#'
262# unfortunately clamd has no configcheck option so we just have to start it
263# once again after config was broken after upgrade
264touch /var/lock/subsys/clamd
265%service -q clamd restart
1eab800a 266
eba74cc1 267%post milter
268/sbin/chkconfig --add clamav-milter
dd6d36d5 269%service clamav-milter restart "Clam Antivirus daemon"
eba74cc1 270
4c570814 271%preun milter
eba74cc1 272if [ "$1" = "0" ]; then
dd6d36d5 273 %service clamav-milter stop
eba74cc1 274 /sbin/chkconfig --del clamav-milter
275fi
fba342ab 276
1475e7a3 277%post libs -p /sbin/ldconfig
278%postun libs -p /sbin/ldconfig
4460ff0b 279
e6c034d3 280%files
281%defattr(644,root,root,755)
6490b0f8 282%doc AUTHORS ChangeLog FAQ NEWS README TODO docs/*.pdf
24f68046 283%attr(755,root,root) %{_bindir}/clamdscan
284%attr(755,root,root) %{_bindir}/clamscan
285%attr(755,root,root) %{_bindir}/freshclam
286%attr(755,root,root) %{_bindir}/sigtool
d78cc52a 287%attr(755,root,root) %{_bindir}/clamconf
24f68046 288%attr(755,root,root) %{_sbindir}/clamd
289%attr(755,root,root) %{_sbindir}/clamav-cron-updatedb
c8321415 290%attr(755,root,root) %{_sbindir}/clamav-post-updatedb
ca57b115 291%attr(755,clamav,root) %dir /var/lib/%{name}
c8321415 292%ghost %attr(644,clamav,root) %verify(not md5 mtime size) /var/lib/clamav/*.cvd
d78cc52a
ER
293%attr(640,clamav,root) %ghost /var/log/freshclam.log
294%attr(750,clamav,clamav) %dir /var/run/%{name}
c935072a 295
b5177881 296%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}
0e86f481
JB
297%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/clamd.conf
298%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/freshclam.conf
6586d93d 299
05eb87ef 300%attr(754,root,root) /etc/rc.d/init.d/clamd
7c801993
ER
301%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/clamd
302%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/clamav
eba74cc1 303%{_mandir}/man[15]/*
304%{_mandir}/man8/clamd*
305
306%if %{with milter}
307%files milter
308%defattr(644,root,root,755)
7c801993 309%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/clamav-milter
491eb046 310%attr(754,root,root) /etc/rc.d/init.d/clamav-milter
eba74cc1 311#%attr(755,root,root) %{_sysconfdir}/cron.daily/clamav-milter
312#%attr(755,root,root) %{_sysconfdir}/log.d/scripts/services/clamav-milter
313#%{_sysconfdir}/log.d/conf/services/clamav-milter.conf
314%attr(755,root,root) %{_sbindir}/clamav-milter
315%{_mandir}/man8/clamav-milter.8*
0e86f481 316%attr(700,clamav,clamav) /var/spool/clamav
eba74cc1 317%endif
4460ff0b
AM
318
319%files libs
320%defattr(644,root,root,755)
263ab0bb 321%attr(755,root,root) %{_libdir}/lib*.so.*.*
4460ff0b
AM
322
323%files devel
324%defattr(644,root,root,755)
24f68046 325%attr(755,root,root) %{_bindir}/clamav-config
4460ff0b 326%attr(755,root,root) %{_libdir}/lib*.so
52d00604 327%{_libdir}/lib*.la
4460ff0b 328%{_includedir}/*.h
0d90572a 329%{_pkgconfigdir}/*.pc
4460ff0b
AM
330
331%files static
332%defattr(644,root,root,755)
333%{_libdir}/*.a
This page took 0.790022 seconds and 4 git commands to generate.