clamav stable port information

Info3: <<
Package: clamav
Version: 0.97.3
Revision: 11

Description: Clam Anti-Virus scanner
DescDetail: <<
Clam AntiVirus is a GPL anti-virus toolkit for UNIX, designed
especially for e-mail scanning on mail gateways. It provides
a number of utilities including a flexible and scalable multi-
threaded daemon, a command line scanner and advanced tool for
automatic database updates. The core of the package is an
anti-virus engine available in a form of shared library.
<<
DescUsage: <<
'clamscan' scans the current working directory for known
viruses. See 'man clamscan' for details.

For virus updates, run 'freshclam' from a shell prompt
or in a cron script.
<<
DescPackaging: <<
clamscan requires a user named 'clamav' to run in
superuser mode regardless of how it was built. (Important when
running the post-build tests because fink runs as root).

During the test the virus database isn't actually installed yet so
the one in the build directory is specified.

The database directory %i/var/db/%n must be owned by the 'clamav'
user. This requires a change of the owner during the build.
Therefore, we cannot build as 'nobody'.

Version 0.92 and later cannot be build with the standard compiler
from Apple, as configure complains about a compiler bug:
checking for gcc bug PR28045... configure: error:
your compiler has gcc PR28045 bug, use a different compiler,
see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28045

Original package maintainer was Carsten Klapp
.
<<
DescPort: <<
Install virus databases into %p/var/db/clamav instead of default
%p/share/clamav; %p/share is for static data.
<<

Maintainer: Remi Mommsen
Homepage: http://www.clamav.net/
License: GPL
Source: mirror:sourceforge:%n/%n-%v.tar.gz
Source-MD5: 5cf25ed7778fa0cb6b140ad8f009befb

BuildConflicts: clamav2-dev, clamav3-dev, clamav4-dev, clamav5-dev, clamav6-dev
BuildDepends: <<
fink (>= 0.24.12),
bzip2,
bzip2-dev,
libiconv-dev,
libncurses5,
libtool2,
gcc46
<<
Depends: <<
clamav7-shlibs (=%v-%r),
libncurses5-shlibs
<<

PatchScript: <<
%{default_script}
/usr/bin/sed -i'.bak' 's/LC_AGE=1/LC_AGE=0/g' configure*
<<

SetCC: %p/bin/gcc-4
SetCXX: %p/bin/g++-4
CompileScript: <<
#!/bin/sh -ev
export PKG_CONFIG_PATH=%p/lib/system-openssl/lib/pkgconfig
export CFLAGS=-O3
./configure --prefix=%p --mandir=%p/share/man --with-dbdir=%p/var/db/%n \
--sysconfdir=%p/etc --disable-dependency-tracking --disable-clamav
make
<<
InstallScript: <<
#!/bin/sh -ev
/usr/bin/make install DESTDIR=%d

for configfile in clamav-milter.conf clamd.conf freshclam.conf ; do
/usr/bin/sed -e "s/^Example/#Example/" -e "s:^#PidFile /var/run:PidFile /var/run:" \
-e "s:#LocalSocket /tmp/:LocalSocket /tmp/:" \
etc/$configfile > %i/etc/$configfile
done

/usr/bin/install -d -m 755 %i/share/doc/%n
/bin/mv docs/* %i/share/doc/%n
(cd %i/share/doc/%n; /bin/rm -R Makefile Makefile.am Makefile.in man) || exit 1
/usr/bin/install -d -m 755 %i/share/doc/%n/test/
/bin/cp -r test/* %i/share/doc/%n/test/

#Remove CVS directories
/usr/bin/find %i -name "CVS" -type d -depth -exec rm -rf \{\} \;
<<
ConfFiles: %p/etc/clamav-milter.conf %p/etc/freshclam.conf
DocFiles: AUTHORS BUGS COPYING ChangeLog FAQ NEWS README UPGRADE

SplitOff: <<
Description: Shared libraries for ClamAV
Package: clamav7-shlibs
Depends: <<
bzip2-shlibs,
gcc46-shlibs,
libiconv,
libtool2-shlibs
<<
InstallScript: <<
/usr/bin/install -d -m 755 %i/lib
/bin/mv %I/lib/libclamav.7.dylib %i/lib
/bin/mv %I/lib/libclamunrar.7.dylib %i/lib
<<
Shlibs: <<
%p/lib/libclamav.7.dylib 8.0.0 %n (>= 0.95-1)
%p/lib/libclamunrar.7.dylib 8.0.0 %n (>= 0.95-1)
<<
<<
SplitOff2: <<
Description: ClamAV daemon
DescDetail: <<
Installs and runs the ClamAV daemon using the daemonic package.
<<
DescUsage: <<
In order to use the clamd daemon, you need to call 'clamdscan'
(note the d in contrast to the standard 'clamscan'
command).

You might want to edit %p/etc/clamd.conf to suit your
needs. Additionally, enable 'NotifyClamd' in
%p/etc/freshclam.conf such that the ClamAV daemon gets notified
about virus definition updates.
<<
Package: clamav-daemon
Depends: <<
clamav,
daemonic
<<
Files: <<
etc/clamd.conf
bin/clamdscan
sbin/clamd
<<
ConfFiles: %p/etc/clamd.conf
DaemonicName: clamav
DaemonicFile: <<

ClamAV
ClamAV anti-virus daemon

%p/sbin/clamd
%p/etc/clamd.conf
/var/run/clamd.pid


<<
PostInstScript: <<
daemonic enable clamav
/Library/StartupItems/daemonic-clamav/daemonic-clamav start
<<
PreRmScript: <<
# deamonic knows nothing about 'stop'
#/Library/StartupItems/daemonic-clamav/daemonic-clamav stop
# Location of pid file for clamav versions < 0.95-13
if [ -r %p/var/run/clamd.pid ]; then
kill -s TERM `cat %p/var/run/clamd.pid`
fi
# New location of pid file
if [ -r /var/run/clamd.pid ]; then
kill -s TERM `cat /var/run/clamd.pid`
fi
if [ $1 != "upgrade" ]; then
daemonic remove clamav
fi
<<
<<
SplitOff3: <<
Description: Developer files for ClamAV
Package: clamav7-dev
Depends: <<
clamav (=%v-%r),
pkgconfig
<<
Conflicts: clamav-dev, clamav2-dev, clamav3-dev, clamav4-dev, clamav5-dev, clamav6-dev
Replaces: clamav-dev, clamav2-dev, clamav3-dev, clamav4-dev, clamav5-dev, clamav6-dev
Provides: clamav-dev
BuildDependsOnly: true
InstallScript: <<
/bin/mv %I/include %i
/usr/bin/install -d -m 755 %i/lib
/bin/mv %I/lib/*a %I/lib/*dylib %i/lib/
/bin/mv %I/lib/pkgconfig %i/lib
<<
Files: bin/clamav-config
<<

InfoTest: <<
TestSuiteSize: medium
TestScript: <<
#!/bin/sh -ev
make check || exit 2
for clamfile in `/bin/ls -1 %b/test/clam*`; do
( %b/clamscan/clamscan --database=%b/database $clamfile ) ;
if [ $? -ne 1 ] ; then exit 2 ; fi
done
<<
<<

PostInstScript: <<
# need to change permissions here as these files might already been
# installed, in which case the permission are not adjusted
/usr/sbin/chown -R clamav:admin %p/var/db/clamav
/bin/chmod g+w %p/var/db/clamav
/bin/chmod g+w %p/etc/freshclam.conf

printf "\nDo you want to download the latest virus definitions now? [Yn] "
YN=yes
if ! read -t 20 YN; then
echo "Yes"
fi
case $YN in
[nN]|[nN][oO]) echo "Your virus definitions might be out-dated." ;;
*) set +e ; %p/bin/freshclam ;;
esac
printf "\nTo download the latest virus definitions in future, run 'freshclam'.\n"
<<
PreRmScript: <<
# Remove db files
/bin/rm -rf %p/var/db/clamav
<<
<<