rpms/clamav/devel clamav.spec,1.45,1.46
Enrico Scholz (ensc)
fedora-extras-commits at redhat.com
Sat Feb 3 15:16:40 UTC 2007
Author: ensc
Update of /cvs/extras/rpms/clamav/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv31542/devel
Modified Files:
clamav.spec
Log Message:
- updated to 0.90rc3
- splitted mandatory parts from the data-file into a separate -filesystem
subpackage
- added a -data-empty subpackage to allow a setup where database is
updated per cron-job and user does not want to download the large
-data package with outdated virus definitations (#214949)
- %ghost'ed the files downloaded by freshclam
Index: clamav.spec
===================================================================
RCS file: /cvs/extras/rpms/clamav/devel/clamav.spec,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -r1.45 -r1.46
--- clamav.spec 12 Dec 2006 08:17:53 -0000 1.45
+++ clamav.spec 3 Feb 2007 15:16:08 -0000 1.46
@@ -5,6 +5,8 @@
##
+%global rcver rc3
+
%global username clamav
%global homedir %_var/lib/clamav
%global freshclamlog %_var/log/freshclam.log
@@ -18,14 +20,14 @@
Summary: End-user tools for the Clam Antivirus scanner
Name: clamav
-Version: 0.88.7
-Release: %release_func 1
+Version: 0.90
+Release: %release_func 0.2.rc3
License: GPL
Group: Applications/File
URL: http://www.clamav.net
-Source0: http://download.sourceforge.net/sourceforge/clamav/%name-%version.tar.gz
-Source999: http://download.sourceforge.net/sourceforge/clamav/%name-%version.tar.gz.sig
+Source0: http://download.sourceforge.net/sourceforge/clamav/%name-%version%{?rcver}.tar.gz
+Source999: http://download.sourceforge.net/sourceforge/clamav/%name-%version%{?rcver}.tar.gz.sig
Source1: clamd-wrapper
Source2: clamd.sysconfig
Source3: clamd.logrotate
@@ -33,9 +35,6 @@
Source6: clamav-update.logrotate
Source7: clamd.SERVICE.init
Source8: clamav-notify-servers
-Patch0: clamav-0.88.2-guys,please-read-the-compiler-warnings-before-doing-a-release.patch
-Patch1: clamav-0.88.1-strncpy.patch
-Patch20: clamav-0.70-user.patch
Patch21: clamav-0.70-path.patch
Patch22: clamav-0.80-initoff.patch
Patch23: clamav-0.88.4-visibility.patch
@@ -45,6 +44,17 @@
BuildRequires: zlib-devel bzip2-devel gmp-devel tcp_wrappers curl-devel
BuildRequires: bc
+%package filesystem
+Summary: Filesystem structure for clamav
+Group: Applications/File
+Provides: user(clamav)
+Provides: group(clamav)
+# Prevent version mix
+Conflicts: %name < %version-%release
+Conflicts: %name > %version-%release
+BuildRequires: fedora-usermgmt-devel
+%{?FE_USERADD_REQ}
+
%package lib
Summary: Dynamic libraries for the Clam Antivirus scanner
Group: System Environment/Libraries
@@ -54,17 +64,25 @@
Summary: Header files and libraries for the Clam Antivirus scanner
Group: Development/Libraries
Source100: clamd-gen
-Requires: clamav-lib = %version-%release
+Requires: clamav-lib = %version-%release
+Requires: clamav-filesystem = %version-%release
Requires(pre): %_libdir/pkgconfig
%package data
Summary: Virus signature data for the Clam Antivirus scanner
Group: Applications/File
-Provides: data(clamav)
-Provides: user(clamav)
-Provides: group(clamav)
-BuildRequires: fedora-usermgmt-devel
-%{?FE_USERADD_REQ}
+Requires(pre): clamav-filesystem = %version-%release
+Requires(postun): clamav-filesystem = %version-%release
+Provides: data(clamav) = full
+Conflicts: data(clamav) < full
+Conflicts: data(clamav) > full
+
+%package data-empty
+Summary: Empty data package for the Clam Antivirus scanner
+Group: Applications/File
+Provides: data(clamav) = empty
+Conflicts: data(clamav) < empty
+Conflicts: data(clamav) > empty
%package update
Summary: Auto-updater for the Clam Antivirus scanner data-files
@@ -72,7 +90,7 @@
Source200: freshclam-sleep
Source201: freshclam.sysconfig
Source202: clamav-update.cron
-Requires: clamav-data = %version-%release
+Requires: clamav-filesystem = %version-%release
Requires(pre): /etc/cron.d
Requires(postun): /etc/cron.d
Requires(post): %__chown %__chmod
@@ -83,7 +101,8 @@
Group: System Environment/Daemons
Requires: init(clamav-server)
Requires: data(clamav)
-Requires: clamav-lib = %version-%release
+Requires: clamav-filesystem = %version-%release
+Requires: clamav-lib = %version-%release
%package server-sysv
Summary: SysV initscripts for clamav server
@@ -129,6 +148,9 @@
(including signatures for popular polymorphic viruses, too) and is KEPT UP
TO DATE.
+%description filesystem
+This package provides the filesystem structure and contains the
+user-creation scripts required by clamav.
%description lib
This package contains dynamic libraries shared between applications
@@ -141,7 +163,29 @@
%description data
This package contains the virus-database needed by clamav. This
database should be updated regularly; the 'clamav-update' package
-ships a corresponding cron-job.
+ships a corresponding cron-job. This package and the
+'clamav-data-empty' package are mutually exclusive.
+
+Use -data when you want a working (but perhaps outdated) virus scanner
+immediately after package installation.
+
+Use -data-empty when you are updating the virus database regulary and
+do not want to download a >5MB sized rpm-package with outdated virus
+definitions.
+
+
+%description data-empty
+This is an empty package to fulfill inter-package dependencies of the
+clamav suite. This package and the 'clamav-data' package are mutually
+exclusive.
+
+Use -data when you want a working (but perhaps outdated) virus scanner
+immediately after package installation.
+
+Use -data-empty when you are updating the virus database regulary and
+do not want to download a >5MB sized rpm-package with outdated virus
+definitions.
+
%description update
This package contains programs which can be used to update the clamav
@@ -179,11 +223,8 @@
## ------------------------------------------------------------
%prep
-%setup -q
-%patch0 -p1 -b '.guys,please-read-the-compiler-warnings-before-doing-a-release.patch'
-%patch1 -p1 -b .strncpy
+%setup -q -n %name-%version%{?rcver}
-%patch20 -p1 -b .user
%patch21 -p1 -b .path
%patch22 -p1 -b .initoff
%patch23 -p1 -b .visibility
@@ -240,11 +281,16 @@
${RPM_BUILD_ROOT}%_var/log \
${RPM_BUILD_ROOT}%milterstatedir \
${RPM_BUILD_ROOT}%pkgdatadir/template \
- ${RPM_BUILD_ROOT}%_initrddir
+ ${RPM_BUILD_ROOT}%_initrddir \
+ ${RPM_BUILD_ROOT}%homedir/daily.inc
rm -f ${RPM_BUILD_ROOT}%_sysconfdir/clamd.conf \
${RPM_BUILD_ROOT}%_libdir/*.la
+for i in COPYING daily.{db,fp,hdb,info,ndb,pdb,zmd}; do
+ touch ${RPM_BUILD_ROOT}%homedir/daily.inc/$i
+done
+
## prepare the server-files
mkdir _doc_server
@@ -290,10 +336,7 @@
cat <<EOF >$RPM_BUILD_ROOT%_sysconfdir/sysconfig/clamav-milter
-## The '-blo' options might be usefully here -- especially for testing; see
-## "man 8 clamav-milter" for further options
-CLAMAV_FLAGS='--max-children=2 -c /etc/clamd.d/milter.conf local:%milterstatedir/clamav.sock'
-CLAMAV_USER='%milteruser'
+CLAMAV_FLAGS='-lo -c /etc/clamd.d/milter.conf local:%milterstatedir/clamav.sock'
EOF
install -p -m755 contrib/init/RedHat/clamav-milter $RPM_BUILD_ROOT%_initrddir/clamav-milter
@@ -307,11 +350,16 @@
## ------------------------------------------------------------
-%pre data
+%pre filesystem
%__fe_groupadd 4 -r %username &>/dev/null || :
%__fe_useradd 4 -r -s /sbin/nologin -d %homedir -M \
-c 'Clamav database update user' -g %username %username &>/dev/null || :
+%postun filesystem
+%__fe_userdel %username &>/dev/null || :
+%__fe_groupdel %username &>/dev/null || :
+
+
%post update
test -e %freshclamlog || {
touch %freshclamlog
@@ -319,10 +367,6 @@
%__chown root:%username %freshclamlog
}
-%postun data
-%__fe_userdel %username &>/dev/null || :
-%__fe_groupdel %username &>/dev/null || :
-
%pre milter
%__fe_groupadd 5 -r %milteruser &>/dev/null || :
%__fe_useradd 5 -r -s /sbin/nologin -d %milterstatedir -M \
@@ -378,7 +422,6 @@
%_includedir/*
%_libdir/*.*a
%_libdir/*.so
-%dir %pkgdatadir
%pkgdatadir/template
%pkgdatadir/clamd-gen
%_libdir/pkgconfig/*
@@ -386,14 +429,25 @@
## -----------------------
+%files filesystem
+%attr(-,%username,%username) %dir %homedir
+%attr(-,%username,%username) %dir %homedir/daily.inc
+%attr(-,root,root) %dir %pkgdatadir
+
+## -----------------------
+
%files data
%defattr(-,%username,%username,-)
-%dir %homedir
# use %%config to keep files which were updated by 'freshclam'
# already. Without this tag, they would be overridden with older
# versions whenever a new -data package is installed.
%config %verify(not size md5 mtime) %homedir/*.cvd
+
+%files data-empty
+%defattr(-,%username,%username,-)
+%ghost %attr(0664,%username,%username) %homedir/main.cvd
+
## -----------------------
%files update
@@ -408,6 +462,16 @@
%ghost %attr(0664,root,%username) %verify(not size md5 mtime) %freshclamlog
+%ghost %attr(0664,%username,%username) %homedir/daily.inc/COPYING
+%ghost %attr(0664,%username,%username) %homedir/daily.inc/daily.db
+%ghost %attr(0664,%username,%username) %homedir/daily.inc/daily.fp
+%ghost %attr(0664,%username,%username) %homedir/daily.inc/daily.hdb
+%ghost %attr(0664,%username,%username) %homedir/daily.inc/daily.info
+%ghost %attr(0664,%username,%username) %homedir/daily.inc/daily.ndb
+%ghost %attr(0664,%username,%username) %homedir/daily.inc/daily.pdb
+%ghost %attr(0664,%username,%username) %homedir/daily.inc/daily.zmd
+
+
## -----------------------
%files server
@@ -415,7 +479,6 @@
%doc _doc_server/*
%_mandir/man[58]/clamd*
%_sbindir/*
-%dir %pkgdatadir
%pkgdatadir/clamd-wrapper
%dir %_sysconfdir/clamd.d
@@ -448,6 +511,15 @@
%changelog
+* Sat Feb 3 2007 Enrico Scholz <enrico.scholz at informatik.tu-chemnitz.de> - 0.90-0.2.rc3
+- updated to 0.90rc3
+- splitted mandatory parts from the data-file into a separate -filesystem
+ subpackage
+- added a -data-empty subpackage to allow a setup where database is
+ updated per cron-job and user does not want to download the large
+ -data package with outdated virus definitations (#214949)
+- %%ghost'ed the files downloaded by freshclam
+
* Tue Dec 12 2006 Enrico Scholz <enrico.scholz at informatik.tu-chemnitz.de> - 0.88.7-1
- updated to 0.88.7
More information about the scm-commits
mailing list