Date: Wed, 8 Sep 2004 14:13:38 +0700 (NOVST) From: "Michael O. Boev" <mike@tric.tomsk.gov.ru> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/71486: new port mail/milter-spamc Message-ID: <200409080713.i887DcC6006520@isrv.tric.ru> Resent-Message-ID: <200409080720.i887KR2L051125@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 71486 >Category: ports >Synopsis: new port mail/milter-spamc >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Wed Sep 08 07:20:27 GMT 2004 >Closed-Date: >Last-Modified: >Originator: Michael O. Boev >Release: FreeBSD 4.10-RELEASE i386 >Organization: Tomsk Regional Information Center >Environment: System: FreeBSD isrv.tric.ru 4.10-RELEASE FreeBSD 4.10-RELEASE #3: Fri May 28 14:45:40 NOVST 2004 root@isrv.tric.ru:/usr/obj/usr/src/sys/ISRV i386 >Description: Here is a new port, mail/milter-spamc. It is a fast and powerful milter interface to SpamAssassin's spamd, written entirely in C. Together with milter-sender (already in the ports tree), they can provide a very decent and flexible anti-spam defence. See http://www.milter.info/milter-spamc/ for more information. The very port is based on its cousin, mail/milter-sender >How-To-Repeat: >Fix: Attached to the bottom is the port skeleton. Please, also update LEGAL: --- milter-spamc.port begins here --- # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # milter-spamc # milter-spamc/files # milter-spamc/files/patch-aa # milter-spamc/files/patch-ab # milter-spamc/files/patch-ac # milter-spamc/files/patch-ad # milter-spamc/files/patch-ae # milter-spamc/files/milter-spamc.sh # milter-spamc/Makefile # milter-spamc/distinfo # milter-spamc/pkg-descr # milter-spamc/pkg-message # milter-spamc/pkg-plist # echo c - milter-spamc mkdir -p milter-spamc > /dev/null 2>&1 echo c - milter-spamc/files mkdir -p milter-spamc/files > /dev/null 2>&1 echo x - milter-spamc/files/patch-aa sed 's/^X//' >milter-spamc/files/patch-aa << 'END-of-milter-spamc/files/patch-aa' X--- configure.orig Fri Jun 11 20:37:06 2004 X+++ configure Wed Jun 16 13:43:31 2004 X@@ -1617,6 +1617,6 @@ X COMPILE='$(CC) $(CFLAGS) $(CC_O)$*$O -c $<' X X- CFLAGS="$CFLAGS -pthread -fvolatile" X+ CFLAGS="$CFLAGS -Wall -fvolatile" X elif test "$OS" = 'SunOS'; then X # This used to be -I{}, but I've seen two different SunOS 5.8 X # systems in two different parts of the world with man pages END-of-milter-spamc/files/patch-aa echo x - milter-spamc/files/patch-ab sed 's/^X//' >milter-spamc/files/patch-ab << 'END-of-milter-spamc/files/patch-ab' X--- install.sh.in.orig Fri May 21 15:12:40 2004 X+++ install.sh.in Sun Sep 5 23:02:30 2004 X@@ -12,60 +12,19 @@ X STARTUP_EXT="@STARTUP_EXT@" X MAILDIR="@with_sendmail@" X X-if [ ! -d ${STATEDIR} ]; then X- mkdir -p ${STATEDIR} X-fi X-chown ${USER} ${STATEDIR} X-chgrp ${GROUP} ${STATEDIR} X+install -d -o $USER -g $USER -m 755 $STATEDIR X X RC="${STARTUP_DIR}/${MILTER}${STARTUP_EXT}" X-if [ ! -f $RC ]; then X- cp ${MILTER}.sh $RC X- chmod 540 $RC X+${BSD_INSTALL_SCRIPT} ${MILTER}.sh.freebsd $RC.sample X+[ ! -f $RC ] && cp $RC.sample $RC X X- case `uname -s` in X- Linux*) X- which chkconfig X- if test $? -eq 0; then X- chkconfig --add ${MILTER} X- else X- # Probably a stupid Debian system. X- cd ${STARTUP_DIR} X+${BSD_INSTALL_PROGRAM} ${MILTER} ${SBINDIR} X X- # Create relative links X- cd ../rc0.d X- ln -s ../init.d/${MILTER} K20${MILTER} X- cd ../rc1.d X- ln -s ../init.d/${MILTER} K20${MILTER} X- cd ../rc6.d X- ln -s ../init.d/${MILTER} K20${MILTER} X+${BSD_INSTALL_DATA} ${MILTER}.mc ${MAILDIR}/${MILTER}.mc.sample X+[ ! -f ${MAILDIR}/${MILTER}.mc ] && cp ${MAILDIR}/${MILTER}.mc.sample ${MAILDIR}/${MILTER}.mc X X- # Assume S20sendmail or higher. X- cd ../rc2.d X- ln -s ../init.d/${MILTER} S18${MILTER} X- cd ../rc3.d X- ln -s ../init.d/${MILTER} S18${MILTER} X- cd ../rc4.d X- ln -s ../init.d/${MILTER} S18${MILTER} X- cd ../rc5.d X- ln -s ../init.d/${MILTER} S18${MILTER} X- fi X- ;; X- SunOS*) X- # Does SunOS have a chkconfig like tool? X- ln -s $RC /etc/rc2.d/S70${MILTER} X- ln -s $RC /etc/rcS.d/K30${MILTER} X- ;; X- esac X-fi X- X-cp -f ${MILTER} ${SBINDIR} X-chmod 550 ${SBINDIR}/${MILTER} X- X-cp -f ${MILTER}.mc ${MAILDIR}/${MILTER}.mc.sample X- X-chmod g+r ${MAILDIR} ${MAILDIR}/access.* ${MAILDIR}/aliases.* X-chgrp ${GROUP} ${MAILDIR} ${MAILDIR}/access.* ${MAILDIR}/aliases.* X+chgrp ${GROUP} ${MAILDIR}/access.db ${MAILDIR}/aliases.db X+chmod g+r ${MAILDIR}/access.db ${MAILDIR}/aliases.db X X echo '***************************************************************' X echo END-of-milter-spamc/files/patch-ab echo x - milter-spamc/files/patch-ac sed 's/^X//' >milter-spamc/files/patch-ac << 'END-of-milter-spamc/files/patch-ac' X--- milter-spamc.c.orig Sun Sep 5 23:36:27 2004 X+++ milter-spamc.c Sun Sep 5 23:35:47 2004 X@@ -717,7 +717,7 @@ X return smfNullWorkspaceError("filterBody"); X X if (smfLogDetail & SMF_LOG_TRACE) X- syslog(LOG_DEBUG, TAG_FORMAT "filterBody(%lx, '%.20s...', %lu) maxBytes=%ld bytesSent=%lu", TAG_ARGS, (long) ctx, chunk, size, maxBytes, data->bytesSent); X+ syslog(LOG_DEBUG, TAG_FORMAT "filterBody(%lx, '%.20s...', %lu) maxBytes=%ld bytesSent=%lu", TAG_ARGS, (long) ctx, chunk, (unsigned long)size, maxBytes, (unsigned long)data->bytesSent); X X if (data->work.skipMessage) X goto error0; END-of-milter-spamc/files/patch-ac echo x - milter-spamc/files/patch-ad sed 's/^X//' >milter-spamc/files/patch-ad << 'END-of-milter-spamc/files/patch-ad' X--- ../lib/configure.orig Wed Jun 16 13:56:11 2004 X+++ ../lib/configure Wed Jun 16 13:56:19 2004 X@@ -1621,7 +1621,6 @@ X X if test "$OS" = 'FreeBSD'; then X # Assume GCC. X- CFLAGS="${CFLAGS} -D_THREAD_SAFE -pthread" X COMPILE='$(CC) $(CFLAGS) $(CC_O)$*$O -c $<' X ARCHIVE='ar rc $(LIB) {}' X XARGSI='xargs -J{}' END-of-milter-spamc/files/patch-ad echo x - milter-spamc/files/patch-ae sed 's/^X//' >milter-spamc/files/patch-ae << 'END-of-milter-spamc/files/patch-ae' X--- milter-spamc.mc.in.orig Wed Jun 16 13:58:58 2004 X+++ milter-spamc.mc.in Wed Jun 16 13:59:24 2004 X@@ -4,7 +4,7 @@ X dnl Example configuration to be added to sendmail.mc. X dnl X X-define(`_FFR_MILTER', `1')dnl X+dnl define(`_FFR_MILTER', `1')dnl X X dnl ------------------------------------------------------------------- X dnl Enable this for debug output from Sendmail. END-of-milter-spamc/files/patch-ae echo x - milter-spamc/files/milter-spamc.sh sed 's/^X//' >milter-spamc/files/milter-spamc.sh << 'END-of-milter-spamc/files/milter-spamc.sh' X#!/bin/sh X# X# $FreeBSD$ X# X X# PROVIDE: %%NAME%% X# REQUIRE: syslogd X# BEFORE: sendmail X# KEYWORD: FreeBSD shutdown X X# X# Add the following lines to /etc/rc.conf to enable milter-spamc: X# X#%%NAME%%_enable="YES" X# X# See %%PREFIX%%/share/doc/milter-spamc/index.shtml for flags X# X X. %%RC_SUBR%% X Xname=%%NAME%% Xrcvar=`set_rcvar` X X# set defaults X%%NAME%%_enable=${%%NAME%%_enable:-"NO"} X%%NAME%%_chdir="/var/spool/milter-spamc" X%%NAME%%_pidfile=${%%NAME%%_pidfile:-"$%%NAME%%_chdir/pid"} X%%NAME%%_flags=${%%NAME%%_flags:-"-f /etc/mail/sendmail.cf unix:$%%NAME%%_chdir/socket"} X Xcommand=%%PREFIX%%/sbin/milter-spamc Xrequired_dirs="$%%NAME%%_chdir" X Xstart_cmd=start_cmd Xstart_cmd() X{ X if [ -s "$%%NAME%%_chdir/mutex" ]; then X ipcrm -s `cat $%%NAME%%_chdir/mutex` X fi X rm -f $%%NAME%%_chdir/{mutex,socket} $%%NAME%%_pidfile X cd $%%NAME%%_chdir && $command $%%NAME%%_flags >/dev/null & X} X Xload_rc_config $name Xrun_rc_command "$1" END-of-milter-spamc/files/milter-spamc.sh echo x - milter-spamc/Makefile sed 's/^X//' >milter-spamc/Makefile << 'END-of-milter-spamc/Makefile' X# New ports collection makefile for: milter-spamc X# Date created: 5 Sep 2004 X# Whom: Mike Boev X# X# $FreeBSD$ X# X XPORTNAME= milter-spamc XPORTVERSION= 0.25 XCATEGORIES= mail XMASTER_SITES= http://www.snert.com/Software/download/ XDISTFILES= libsnert-1.40.tgz milter-spamc-${PORTVERSION}.tgz X XMAINTAINER= mike@tric.tomsk.gov.ru XCOMMENT= Yet Another Sendmail-SpamAssassin Interface Milter X XRESTRICTED= No redistribution allowed X XUSE_REINPLACE= yes XGNU_CONFIGURE= yes X XWRKSRC= ${WRKDIR}/com/snert/src/milter-spamc XMAKEFILE= makefile X X.include <bsd.port.pre.mk> X X.if ( ${OSVERSION} < 440000 ) XBUILD_DEPENDS= gxargs:${PORTSBASE}/misc/findutils X.endif X X.if !exists(/usr/lib/libmilter.a) && !exists(${LOCALBASE}/lib/libmilter.a) XIGNORE= requires Sendmail 8.12 X.endif X.if exists(${LOCALBASE}/lib/libmilter.a) XCFLAGS+= -I${LOCALBASE}/include XLDFLAGS+= -L${LOCALBASE}/lib X.endif XCFLAGS+= ${PTHREAD_CFLAGS} XLDFLAGS+= ${PTHREAD_LIBS} X XDOCS= CHANGES.TXT index.shtml style.css mailto.js \ X LICENSE.TXT X XCONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL} XCONFIGURE_ENV+= LDFLAGS="${LDFLAGS}" XCONFIGURE_ARGS+=--with-db --localstatedir=/var/spool X.if !defined(WITH_DEBUG) XCONFIGURE_ARGS+=--disable-debug X.endif X XUSE_RC_SUBR= yes XRC_SCRIPTS_SUB= PREFIX=${PREFIX} RC_SUBR=${RC_SUBR} NAME=milter_spamc X Xpost-extract: X ${SED} ${RC_SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \ X ${FILESDIR}/milter-spamc.sh > ${WRKSRC}/milter-spamc.sh.freebsd X Xpost-patch: X.if ( ${OSVERSION} < 440000 ) # please contact vs@ if in doubt X ${REINPLACE_CMD} 's/xargs -J{}/gxargs -i{}/' ${WRKSRC}/../lib/configure X.endif X ${REINPLACE_CMD} "s,-fvolatile,," ${WRKSRC}/configure X Xpre-configure: X @cd ${WRKSRC}/../lib && \ X ${SETENV} CC="${CC}" CXX="${CXX}" \ X CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \ X INSTALL="/usr/bin/install -c ${_BINOWNGRP}" \ X INSTALL_DATA="${INSTALL_DATA}" \ X INSTALL_PROGRAM="${INSTALL_PROGRAM}" \ X INSTALL_SCRIPT="${INSTALL_SCRIPT}" \ X ${CONFIGURE_ENV} ./${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS} X @cd ${WRKSRC}/../lib && \ X ${SETENV} ${MAKE_ENV} ${MAKE} \ X ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${ALL_TARGET} X Xpost-install: X.if !defined(NOPORTDOCS) X @${MKDIR} ${DOCSDIR}/Img X cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${DOCSDIR} X @cd ${WRKSRC}/Img && \ X ${INSTALL_DATA} *.gif *.png ${DOCSDIR}/Img X.endif X @${CAT} ${PKGMESSAGE} X X.include <bsd.port.post.mk> END-of-milter-spamc/Makefile echo x - milter-spamc/distinfo sed 's/^X//' >milter-spamc/distinfo << 'END-of-milter-spamc/distinfo' XMD5 (libsnert-1.40.tgz) = ee97d93f06304a87f54f1caf994cc91b XSIZE (libsnert-1.40.tgz) = 307456 XMD5 (milter-spamc-0.25.tgz) = fd37f931c8e580a12a350eecafc6903c XSIZE (milter-spamc-0.25.tgz) = 193312 END-of-milter-spamc/distinfo echo x - milter-spamc/pkg-descr sed 's/^X//' >milter-spamc/pkg-descr << 'END-of-milter-spamc/pkg-descr' XSpamAssassin is a well established free open-source mail classification tool, Xhowever it has no means by which to interface with Sendmail. Xmilter-spamc provides such an interface between Sendmail and SpamAssassin. X XWWW: http://www.milter.info/milter-spamc/ X END-of-milter-spamc/pkg-descr echo x - milter-spamc/pkg-message sed 's/^X//' >milter-spamc/pkg-message << 'END-of-milter-spamc/pkg-message' X************************************************************************ X XIn order to run this port, please add the following line to X/etc/mail/YOUR-CONF.mc: X Xinclude(`milter-spamc.mc')dnl X XDon't forget to remake and reinstall the sendmail configuration file Xafter modifying YOUR-CONF.mc. X X************************************************************************ END-of-milter-spamc/pkg-message echo x - milter-spamc/pkg-plist sed 's/^X//' >milter-spamc/pkg-plist << 'END-of-milter-spamc/pkg-plist' X@unexec if [ -f %D/etc/rc.d/milter-spamc.sh ] && cmp -s %D/etc/rc.d/milter-spamc.sh %D/etc/rc.d/milter-spamc.sh.sample; then rm -f %D/etc/rc.d/milter-spamc.sh; fi Xetc/rc.d/milter-spamc.sh.sample X@exec if [ ! -f %D/etc/rc.d/milter-spamc.sh ] ; then cp %D/%F %B/milter-spamc.sh; fi Xsbin/milter-spamc X@exec install -d -o smmsp -g smmsp -m 755 /var/spool/milter-spamc X@unexec rm -rf /var/spool/milter-spamc 2>&1 >/dev/null || true X%%PORTDOCS%%%%DOCSDIR%%/CHANGES.TXT X%%PORTDOCS%%%%DOCSDIR%%/Img/bg.gif X%%PORTDOCS%%%%DOCSDIR%%/Img/dilbert2003071742312.gif X%%PORTDOCS%%%%DOCSDIR%%/Img/dilbert2003228690821.gif X%%PORTDOCS%%%%DOCSDIR%%/Img/dilbert20040429.gif X%%PORTDOCS%%%%DOCSDIR%%/Img/mrpixel.gif X%%PORTDOCS%%%%DOCSDIR%%/Img/overview.png X%%PORTDOCS%%%%DOCSDIR%%/Img/sendmail-bat-left-142x38.png X%%PORTDOCS%%%%DOCSDIR%%/Img/sendmail-bat-right-142x38.png X%%PORTDOCS%%%%DOCSDIR%%/Img/sun.gif X%%PORTDOCS%%%%DOCSDIR%%/LICENSE.TXT X%%PORTDOCS%%%%DOCSDIR%%/index.shtml X%%PORTDOCS%%%%DOCSDIR%%/mailto.js X%%PORTDOCS%%%%DOCSDIR%%/style.css X@unexec echo X@unexec echo "If permanently deleting this package, don't forget to delete" X@unexec echo "the inclusion of milter-spamc.mc from /etc/mail/YOUR-CONF.mc" X@unexec echo "and then to rebuild and reinstall the sendmail configuration file!" X@unexec echo X%%PORTDOCS%%@dirrm %%DOCSDIR%%/Img X%%PORTDOCS%%@dirrm %%DOCSDIR%% X@cwd / X@unexec if [ -f %D/etc/mail/milter-spamc.mc ] && cmp -s %D/etc/mail/milter-spamc.mc %D/etc/mail/milter-spamc.mc.sample; then rm -f %D/etc/mail/milter-spamc.mc; fi Xetc/mail/milter-spamc.mc.sample X@exec if [ ! -f %D/etc/mail/milter-spamc.mc ] ; then cp %D/%F %B/milter-spamc.mc; fi X@exec chgrp smmsp %D/etc/mail/access.db %D/etc/mail/aliases.db X@exec chmod g+r %D/etc/mail/access.db %D/etc/mail/aliases.db END-of-milter-spamc/pkg-plist exit --- milter-spamc.port ends here --- --- LEGAL.patch begins here --- --- LEGAL.orig Tue Sep 7 20:01:05 2004 +++ LEGAL Tue Sep 7 20:01:32 2004 @@ -370,6 +370,8 @@ mikachan-ttfonts/ver*.* ports/japanese/mikachan-ttfonts Do not sell distfile milter-sender-* ports/mail/milter-sender Non-commercial distribution of the original files only +milter-spamc-* ports/mail/milter-spamc Non-commercial distribution + of the original files only mindfocus-* ports/games/mindfocus contains commercial character data mindterm-* ports/security/mindterm-binary Do not sell for profit. --- LEGAL.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200409080713.i887DcC6006520>