ports/57371: Update security/clamav-devel
Rob Evers
rob at debank.tv
Mon Sep 29 19:50:29 UTC 2003
>Number: 57371
>Category: ports
>Synopsis: Update security/clamav-devel
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Mon Sep 29 12:50:24 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator: Rob Evers
>Release: FreeBSD 4.9-PRERELEASE i386
>Organization:
>Environment:
System: FreeBSD haha.debank.tv 4.9-PRERELEASE FreeBSD 4.9-PRERELEASE #0: Thu Sep 18 16:37:14 CEST 2003 rob at haha.debank.tv:/usr/obj/usr/src/sys/HAHA i386
>Description:
Update security/clamav-devel
- use included libtool (seems heavily patched)
- make packageable and include a working configure file
- don't install useless .la files
- use DATADIR
- 510001 is FreeBSD 5.10, 5.1-CURRENT is 501100
- Change log and pid file location to more universal one
- RC-ng scripts for clamd and clamav-milter are planned
- Thanks to Oliver Eikemeier from whom I stole most (clamav-port)
>How-To-Repeat:
>Fix:
Create a file files/patch-ltmain.sh
and then apply this diff
--- clamav-devel.patch begins here ---
diff -ruN clamav-devel.orig/Makefile clamav-devel/Makefile
--- clamav-devel.orig/Makefile Fri Sep 26 19:34:19 2003
+++ clamav-devel/Makefile Mon Sep 29 18:35:09 2003
@@ -6,7 +6,7 @@
#
PORTNAME= clamav
-PORTVERSION= 20030926
+PORTVERSION= 20030928
CATEGORIES= security
MASTER_SITES= http://clamav.sourceforge.net/snapshot/
PKGNAMESUFFIX= -devel
@@ -32,20 +32,32 @@
CONFIGURE_ARGS= --prefix=${PREFIX} \
--disable-clamav --enable-bigstack
CFLAGS+= -I${LOCALBASE}/include
+LDFLAGS+= ${PTHREAD_LIBS}
CONFIGURE_ENV+= LDFLAGS="${LDFLAGS}"
MAN1= clamscan.1 freshclam.1 sigtool.1 clamdscan.1 clamav-milter.1
MAN5= clamav.conf.5
MAN8= clamd.8
-CLAMAVUSER?= clamav
-SPOOLDIR?= /var/clamd
-PLIST_SUB+= SPOOLDIR="${SPOOLDIR}"
-PLIST_SUB+= CLAMAVUSER="${CLAMAVUSER}"
+CLAMAVUSER?= clamav
+CLAMAVGROUP?= clamav
+
+PLIST_SUB+= CLAMAVUSER="${CLAMAVUSER}"
+PLIST_SUB+= CLAMAVGROUP="${CLAMAVGROUP}"
+
+SED_SCRIPT= -e 's|%%PREFIX%%|${PREFIX}|g' \
+ -e 's|%%DATADIR%%|${DATADIR}|g'
+
+SED_CONF= -E -e 's|^\#?(Example)$$|\#\1|' \
+ -e 's|^\#?(LogFile) .*$$|\1 /var/log/clamav/clamd.log|' \
+ -e 's|^\#?(PidFile) .*$$|\1 /var/run/clamav/clamd.pid|' \
+ -e 's|^\#?(LocalSocket) .*$$|\1 /var/run/clamav/clamd|' \
+ -e 's|^\#?(User) .*$$|\1 ${CLAMAVUSER}|' \
+ -e 's|^\#?(ScanMail)$$|\1|'
.include <bsd.port.pre.mk>
-.if ${OSVERSION} < 510001
+.if ${OSVERSION} < 501001
# compiles only with optimizer
CFLAGS+= -O
LDFLAGS+= -lcipher
@@ -69,9 +81,27 @@
@${REINPLACE_CMD} -e 's|/usr/lib/sendmail|/usr/sbin/sendmail|g' \
${WRKSRC}/clamav-milter/clamav-milter.c
+pre-configure:
+ @${REINPLACE_CMD} -e 's|clamav.conf|&.default|' \
+ ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT} \
+ ${CONFIGURE_WRKSRC}/etc/Makefile.in
+.ifdef USE_LIBTOOL_VER
+ @${REINPLACE_CMD} -e '/^LIBTOOL=/s|\$$(top_builddir)/libtool|${LIBTOOL}|' \
+ ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
+.endif
+
+post-build:
+ @${SED} ${SED_CONF} ${BUILD_WRKSRC}/etc/clamav.conf \
+ >${BUILD_WRKSRC}/etc/clamav.conf.default
+
+pre-install:
+ ${SETENV} PKG_PREFIX=${PREFIX} \
+ ${SH} ${PKGINSTALL} ${PREFIX}
+
post-install:
- ${SETENV} PKG_PREFIX=${PREFIX} \
- ${SH} ${PKGINSTALL} ${PREFIX}
+ @[ -f ${PREFIX}/etc/clamav.conf ] || \
+ ${CP} ${PREFIX}/etc/clamav.conf.default ${PREFIX}/etc/clamav.conf
+ @${CHOWN} -R ${CLAMAVUSER}:${CLAMAVGROUP} ${DATADIR}
${INSTALL_SCRIPT} ${WRKSRC}/clamav-clamd.sh \
${LOCALBASE}/etc/rc.d/clamav-clamd.sh.sample
.if defined(WITH_MILTER)
diff -ruN clamav-devel.orig/distinfo clamav-devel/distinfo
--- clamav-devel.orig/distinfo Fri Sep 26 19:34:19 2003
+++ clamav-devel/distinfo Mon Sep 29 18:35:29 2003
@@ -1 +1 @@
-MD5 (clamav-devel-20030926.tar.gz) = 7b8f32e8dc373c51e1cb1a2bda07bdad
+MD5 (clamav-devel-20030928.tar.gz) = 72bb345563a2e31ac70e9f90b2954cac
diff -ruN clamav-devel.orig/files/patch-ltmain.sh clamav-devel/files/patch-ltmain.sh
--- clamav-devel.orig/files/patch-ltmain.sh Thu Jan 1 01:00:00 1970
+++ clamav-devel/files/patch-ltmain.sh Mon Sep 29 18:27:22 2003
@@ -0,0 +1,23 @@
+--- ltmain.sh.orig Sat Sep 27 05:20:20 2003
++++ ltmain.sh Sat Sep 27 05:24:02 2003
+@@ -4259,10 +4259,16 @@
+ fi
+
+ # Install the pseudo-library for information purposes.
+- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
+- instname="$dir/$name"i
+- $show "$install_prog $instname $destdir/$name"
+- $run eval "$install_prog $instname $destdir/$name" || exit $?
++ case $host in
++ *-*-freebsd*)
++ # Do not install the useless pseudo-library
++ ;;
++ *)
++ name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
++ instname="$dir/$name"i
++ $show "$install_prog $instname $destdir/$name"
++ $run eval "$install_prog $instname $destdir/$name" || exit $?
++ esac
+
+ # Maybe install the static library, too.
+ test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
diff -ruN clamav-devel.orig/pkg-install clamav-devel/pkg-install
--- clamav-devel.orig/pkg-install Fri Sep 26 19:34:19 2003
+++ clamav-devel/pkg-install Mon Sep 29 18:27:22 2003
@@ -4,11 +4,12 @@
CLAMAVUSER=clamav
fi
-if [ -z "${SPOOLDIR}" ]; then
- SPOOLDIR=/var/clamd
+if [ -z "${CLAMAVGROUP}" ]; then
+ CLAMAVGROUP=clamav
fi
-CLAMAVGROUP=${CLAMAVUSER}
+CLAMRUN=/var/run/clamav
+CLAMLOG=/var/log/clamav
echo "===> Adding user \"${CLAMAVUSER}\" if necessary."
if ! pw groupshow "${CLAMAVGROUP}" 2>/dev/null 1>&2; then
@@ -22,7 +23,7 @@
if ! pw usershow "${CLAMAVUSER}" 2>/dev/null 1>&2; then
if pw useradd ${CLAMAVUSER} -g ${CLAMAVGROUP} -h - \
- -s "/usr/sbin/nologin" -d "${SPOOLDIR}" \
+ -s "/usr/sbin/nologin" -d "/nonexistent" \
-c "Clam Antivirus"; \
then
echo "===> Added user \"${CLAMAVUSER}\"."
@@ -33,7 +34,10 @@
fi
echo "===> Setting permissions..."
-mkdir ${SPOOLDIR}
-chown -R ${CLAMAVUSER}:${CLAMAVGROUP} ${PKG_PREFIX}/share/clamav ${SPOOLDIR}
+mkdir -p "${CLAMRUN}"
+chown "${CLAMAVUSER}:${CLAMAVGROUP}" "${CLAMRUN}"
+
+mkdir -p "${CLAMLOG}"
+chown "${CLAMAVUSER}:${CLAMAVGROUP}" "${CLAMLOG}"
exit 0
diff -ruN clamav-devel.orig/pkg-plist clamav-devel/pkg-plist
--- clamav-devel.orig/pkg-plist Fri Sep 26 19:34:19 2003
+++ clamav-devel/pkg-plist Mon Sep 29 18:27:22 2003
@@ -10,10 +10,17 @@
include/clamav.h
lib/libclamav.so.1
lib/libclamav.so
-lib/libclamav.la
lib/libclamav.a
-share/clamav/mirrors.txt
- at dirrm share/clamav
+ at unexec if cmp -s %D/etc/clamav.conf %D/etc/clamav.conf.default; then rm -f %D/etc/clamav.conf; fi
+etc/clamav.conf.default
+ at exec [ -f %B/clamav.conf ] || cp %B/%f %B/clamav.conf
+ at owner %%CLAMAVUSER%%
+ at group %%CLAMAVGROUP%%
+%%DATADIR%%/mirrors.txt
+ at exec chown %%CLAMAVUSER%%:%%CLAMAVGROUP%% %B
+ at dirrm %%DATADIR%%
+ at unexec rmdir /var/run/clamav 2>/dev/null || true
+ at unexec rmdir /var/log/clamav 2>/dev/null || true
@unexec echo ""
@unexec echo "========================================================="
@unexec echo " If you want to deinstall this package permanently then"
--- clamav-devel.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list