From c4012f32beb719ca744e53f703766e2f083ddc99 Mon Sep 17 00:00:00 2001 From: tron Date: Sat, 26 Apr 2014 13:55:10 +0000 Subject: Update "spamassassin" package to version 3.4.0: This is a major release. It introduces over two years of bug fixes and features since the release of SpamAssassin 3.3.2 on June 16, 2011. 3.4.0 includes the Bayes Redis (http://redis.io/) back-end (bug 6879), EDNS0 changes (bug 6910), native IPv6 support, numerous URIBL.pm changes or features and a small API change in libspamc (bug 6562) with many other subtle changes. --- mail/spamassassin/Makefile | 32 +++++++++--- mail/spamassassin/distinfo | 39 +++++++-------- mail/spamassassin/patches/patch-Makefile.PL | 47 ++++++++++++++++++ mail/spamassassin/patches/patch-aa | 30 ----------- mail/spamassassin/patches/patch-ab | 45 ----------------- mail/spamassassin/patches/patch-ba | 25 ---------- .../patch-lib_Mail_SpamAssassin_AsyncLoop.pm | 31 ------------ .../patch-lib_Mail_SpamAssassin_Conf_Parser.pm | 15 ------ .../patch-lib_Mail_SpamAssassin_DnsResolver.pm | 24 --------- .../patch-lib_Mail_SpamAssassin_PerMsgStatus.pm | 36 -------------- .../patches/patch-lib_Mail_SpamAssassin_Util.pm | 15 ------ mail/spamassassin/patches/patch-sa-compile | 25 ++++++++++ mail/spamassassin/patches/patch-sa-update | 58 ++++++++++++++-------- .../patches/patch-spamd_netbsd-rc-script.sh | 21 ++++++++ 14 files changed, 170 insertions(+), 273 deletions(-) create mode 100644 mail/spamassassin/patches/patch-Makefile.PL delete mode 100644 mail/spamassassin/patches/patch-aa delete mode 100644 mail/spamassassin/patches/patch-ab delete mode 100644 mail/spamassassin/patches/patch-ba delete mode 100644 mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_AsyncLoop.pm delete mode 100644 mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_Conf_Parser.pm delete mode 100644 mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_DnsResolver.pm delete mode 100644 mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_PerMsgStatus.pm delete mode 100644 mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_Util.pm create mode 100644 mail/spamassassin/patches/patch-sa-compile create mode 100644 mail/spamassassin/patches/patch-spamd_netbsd-rc-script.sh (limited to 'mail') diff --git a/mail/spamassassin/Makefile b/mail/spamassassin/Makefile index 42d5e26305e..84c8fa9b1ba 100644 --- a/mail/spamassassin/Makefile +++ b/mail/spamassassin/Makefile @@ -1,8 +1,7 @@ -# $NetBSD: Makefile,v 1.112 2014/02/12 23:18:10 tron Exp $ +# $NetBSD: Makefile,v 1.113 2014/04/26 13:55:10 tron Exp $ -DISTNAME= Mail-SpamAssassin-3.3.2 -PKGNAME= spamassassin-3.3.2 -PKGREVISION= 8 +DISTNAME= Mail-SpamAssassin-3.4.0 +PKGNAME= spamassassin-3.4.0 SVR4_PKGNAME= sa CATEGORIES= mail perl5 MASTER_SITES= ${MASTER_SITE_APACHE:=spamassassin/source/} @@ -21,7 +20,7 @@ PKG_INSTALLATION_TYPES= overwrite pkgviews .include "../../mk/bsd.prefs.mk" -RULESARCHIVE= Mail-SpamAssassin-rules-3.3.2-r1104058.tar.gz +RULESARCHIVE= Mail-SpamAssassin-rules-3.4.0.r1565117.tgz RULESARCHIVEASC=${RULESARCHIVE}.asc RULESARCHIVESHA=${RULESARCHIVE}.sha1 FILES_SUBST+= RULESARCHIVE=${RULESDIR}/${RULESARCHIVE} @@ -40,6 +39,7 @@ DEPENDS+= p5-Net-DNS>=0.58:../../net/p5-Net-DNS DEPENDS+= {p5-MIME-Base64>=2.11,perl>=5.8.0}:../../converters/p5-MIME-Base64 DEPENDS+= {perl>=5.7.3,p5-Time-HiRes-[0-9]*}:../../time/p5-Time-HiRes DEPENDS+= p5-libwww-[0-9]*:../../www/p5-libwww +DEPENDS+= re2c>=0.13.6:../../devel/re2c USE_TOOLS+= perl @@ -93,7 +93,7 @@ DOCDIR= ${PREFIX}/${DOC_SUBDIR} RULE_SUBDIR= share/spamassassin RULESDIR= ${PREFIX}/${RULE_SUBDIR} -PRE_FILES= init.pre v310.pre v312.pre v320.pre v330.pre +PRE_FILES= init.pre v310.pre v312.pre v320.pre v330.pre v340.pre .for p in ${PRE_FILES} CONF_FILES+= ${EGDIR}/${p} ${PKG_SYSCONFDIR}/${p} .endfor @@ -108,8 +108,6 @@ SA_INSTALLDIRS+= ${DOC_SUBDIR}/spamd ${DOC_SUBDIR}/sql ${RULE_SUBDIR} SA_DOCFILES= INSTALL LICENSE README TRADEMARK UPGRADE USAGE NOTICE SA_DOCFILES+= CREDITS PACKAGING Changes SA_DOCFILES+= ldap/README ldap/README.testing ldap/sa_test.ldif -SA_DOCFILES+= rules/STATISTICS-set0.txt rules/STATISTICS-set1.txt -SA_DOCFILES+= rules/STATISTICS-set2.txt rules/STATISTICS-set3.txt SA_DOCFILES+= rules/sa-update-pubkey.txt SA_DOCFILES+= spamc/README.qmail SA_DOCFILES+= sample-nonspam.txt sample-spam.txt @@ -160,6 +158,24 @@ FILES_SUBST+= OPSYS=${OPSYS} INSTALLATION_DIRS+= ${SA_INSTALLDIRS} +# Configure the programe that "sa-update" uses for fetching files +.if defined(TOOLS_PLATFORM.curl) +SA_UPDATE_FETCH_PROG= curl +SA_UPDATE_FETCH_CMD= ${TOOLS_PLATFORM.curl} +.elif defined(TOOLS_PLATFORM.fetch) +SA_UPDATE_FETCH_PROG= fetch +SA_UPDATE_FETCH_CMD= ${TOOLS_PLATFORM.fetch} +.else +DEPENDS+= wget-[0-9]*:../../net/wget + +SA_UPDATE_FETCH_PROG= wget +SA_UPDATE_FETCH_CMD= ${PREFIX}/bin/wget +.endif +SUBST_CLASSES+= fetch +SUBST_STAGE.fetch= pre-configure +SUBST_FILES.fetch= sa-update.raw +SUBST_VARS.fetch= SA_UPDATE_FETCH_CMD SA_UPDATE_FETCH_PROG + pre-configure: perl5-configure # GNU configure needs version.h -> create it cd ${WRKSRC}/spamc && ${PERL5} ./version.h.pl diff --git a/mail/spamassassin/distinfo b/mail/spamassassin/distinfo index 4fde4478c08..1429b2199e8 100644 --- a/mail/spamassassin/distinfo +++ b/mail/spamassassin/distinfo @@ -1,27 +1,22 @@ -$NetBSD: distinfo,v 1.61 2013/12/04 15:14:19 jperkin Exp $ +$NetBSD: distinfo,v 1.62 2014/04/26 13:55:10 tron Exp $ -SHA1 (Mail-SpamAssassin-3.3.2.tar.gz) = de954f69e190496eff4a796a9bab61747f03072b -RMD160 (Mail-SpamAssassin-3.3.2.tar.gz) = 78e22ba6ba62a48fb7d24c40170124881b975fd9 -Size (Mail-SpamAssassin-3.3.2.tar.gz) = 1208182 bytes -SHA1 (Mail-SpamAssassin-rules-3.3.2-r1104058.tar.gz) = a199d5f0f8c2381e3dfe421e7a774356b3ffda4b -RMD160 (Mail-SpamAssassin-rules-3.3.2-r1104058.tar.gz) = 22843725705aca9a7c773d9cca50d6eb30ca295c -Size (Mail-SpamAssassin-rules-3.3.2-r1104058.tar.gz) = 258995 bytes -SHA1 (Mail-SpamAssassin-rules-3.3.2-r1104058.tar.gz.asc) = 102cbd61d3d37243d17a48748fc468a1a4e91d05 -RMD160 (Mail-SpamAssassin-rules-3.3.2-r1104058.tar.gz.asc) = 764ea0f583c370c3c11f7245005327afa6c19988 -Size (Mail-SpamAssassin-rules-3.3.2-r1104058.tar.gz.asc) = 823 bytes -SHA1 (Mail-SpamAssassin-rules-3.3.2-r1104058.tar.gz.sha1) = 13003cfad508bd45863e02711aaee041ab9bc30e -RMD160 (Mail-SpamAssassin-rules-3.3.2-r1104058.tar.gz.sha1) = aa218d53eb3dda0737171f75d63b7a64f97c2930 -Size (Mail-SpamAssassin-rules-3.3.2-r1104058.tar.gz.sha1) = 88 bytes -SHA1 (patch-aa) = 0fff97dee1153332471aeadc2b96c357d1925f5c -SHA1 (patch-ab) = 84ebc0f611365c00205a85cb84970772a0931ef8 +SHA1 (Mail-SpamAssassin-3.4.0.tar.gz) = 4dac1384282b6201f7d80cea8295933ef08e7e28 +RMD160 (Mail-SpamAssassin-3.4.0.tar.gz) = c3a9b4adaebfe62c279684349ce76ed36d304f26 +Size (Mail-SpamAssassin-3.4.0.tar.gz) = 1269753 bytes +SHA1 (Mail-SpamAssassin-rules-3.4.0.r1565117.tgz) = d71a64cab9f5454d3b164e44d3649bff9cb87f87 +RMD160 (Mail-SpamAssassin-rules-3.4.0.r1565117.tgz) = fcf0bb481dee0fddc863ebab5772d6dbbde299f9 +Size (Mail-SpamAssassin-rules-3.4.0.r1565117.tgz) = 247283 bytes +SHA1 (Mail-SpamAssassin-rules-3.4.0.r1565117.tgz.asc) = 3a726149419ea2d23b28920582ac0921335966ac +RMD160 (Mail-SpamAssassin-rules-3.4.0.r1565117.tgz.asc) = 0db3057f2af1c4cf16f8eb48457553c81f769eec +Size (Mail-SpamAssassin-rules-3.4.0.r1565117.tgz.asc) = 823 bytes +SHA1 (Mail-SpamAssassin-rules-3.4.0.r1565117.tgz.sha1) = 9b4fc4c3b3dea74f0337c6b4c914943375616663 +RMD160 (Mail-SpamAssassin-rules-3.4.0.r1565117.tgz.sha1) = bab252971f0b1618ed5b28de9c377b10e54df169 +Size (Mail-SpamAssassin-rules-3.4.0.r1565117.tgz.sha1) = 85 bytes +SHA1 (patch-Makefile.PL) = 965e6aa223f2e714630db45131918485a5730c48 SHA1 (patch-ae) = d46b1d8f56c8c61936c307f74b39a49da1b1f353 SHA1 (patch-aq) = 3a273c7742275647c2334382fed29c0ea33dfbd8 SHA1 (patch-ay) = ca8ea0b1e6d8fddd29d6ae960e1bf6e534d2f424 -SHA1 (patch-ba) = 1842e3fc17b3d23309336e542635eeacb67461e8 -SHA1 (patch-lib_Mail_SpamAssassin_AsyncLoop.pm) = a305fc866785905bcb6b65b013525cb130ddf4a3 -SHA1 (patch-lib_Mail_SpamAssassin_Conf_Parser.pm) = bbb41a5667f88d485b027860973d205f6ccec0d1 -SHA1 (patch-lib_Mail_SpamAssassin_DnsResolver.pm) = ec66585e49d1cfa5acfb6989508958a75a824bc5 SHA1 (patch-lib_Mail_SpamAssassin_Message.pm) = 402b9769df65ae87c3beebcc9441e29619eed367 -SHA1 (patch-lib_Mail_SpamAssassin_PerMsgStatus.pm) = 9eb3a5135ab7f2ca3aa18686bad9bbe818bdf761 -SHA1 (patch-lib_Mail_SpamAssassin_Util.pm) = 930b99127847057aeadf6c2c6c9558afec2ff2c8 -SHA1 (patch-sa-update) = 893d8c2ebe68524b620a438f30e2b9ba764aaa6e +SHA1 (patch-sa-compile) = e8a92060eefbc1c95b7b2c674fc69686a66f230b +SHA1 (patch-sa-update) = 6ea354aa6b11740df1d25a807f5610115218294a +SHA1 (patch-spamd_netbsd-rc-script.sh) = 192fc1876ee30a4475c0efd9be6340e87d9fa2f4 diff --git a/mail/spamassassin/patches/patch-Makefile.PL b/mail/spamassassin/patches/patch-Makefile.PL new file mode 100644 index 00000000000..bdfcc8235b3 --- /dev/null +++ b/mail/spamassassin/patches/patch-Makefile.PL @@ -0,0 +1,47 @@ +$NetBSD: patch-Makefile.PL,v 1.1 2014/04/26 13:55:10 tron Exp $ + + - enable build of qmail-spamc + - some files (local.cf, *.pre) are managed by pkgsrc, disable + their installation. + - pkgsrc creates B_DATADIR, so there is no need to re-set permissions + +--- Makefile.PL.orig 2014-02-07 08:36:38.000000000 +0000 ++++ Makefile.PL 2014-04-26 11:11:54.000000000 +0100 +@@ -138,6 +138,7 @@ + 'spamassassin.raw' => 'spamassassin', + 'sa-learn.raw' => 'sa-learn', + 'sa-update.raw' => 'sa-update', ++ 'spamc/qmail-spamc.c' => 'spamc/qmail-spamc$(EXE_EXT)', + 'sa-compile.raw' => 'sa-compile', + 'sa-awl.raw' => 'sa-awl', + 'sa-check_spamd.raw' => 'sa-check_spamd', +@@ -1098,19 +1099,21 @@ + + conf__install: + -$(MKPATH) $(B_CONFDIR) +- $(PERL) -MFile::Copy -e "copy(q{rules/local.cf}, q{$(B_CONFDIR)/local.cf}) unless -f q{$(B_CONFDIR)/local.cf}" +- $(PERL) -MFile::Copy -e "copy(q{rules/init.pre}, q{$(B_CONFDIR)/init.pre}) unless -f q{$(B_CONFDIR)/init.pre}" +- $(PERL) -MFile::Copy -e "copy(q{rules/v310.pre}, q{$(B_CONFDIR)/v310.pre}) unless -f q{$(B_CONFDIR)/v310.pre}" +- $(PERL) -MFile::Copy -e "copy(q{rules/v312.pre}, q{$(B_CONFDIR)/v312.pre}) unless -f q{$(B_CONFDIR)/v312.pre}" +- $(PERL) -MFile::Copy -e "copy(q{rules/v320.pre}, q{$(B_CONFDIR)/v320.pre}) unless -f q{$(B_CONFDIR)/v320.pre}" +- $(PERL) -MFile::Copy -e "copy(q{rules/v330.pre}, q{$(B_CONFDIR)/v330.pre}) unless -f q{$(B_CONFDIR)/v330.pre}" +- $(PERL) -MFile::Copy -e "copy(q{rules/v340.pre}, q{$(B_CONFDIR)/v340.pre}) unless -f q{$(B_CONFDIR)/v340.pre}" ++ @ # manage local.cf and *.pre through pkgsrc .mk files ++ @ # $(PERL) -MFile::Copy -e "copy(q{rules/local.cf}, q{$(B_CONFDIR)/local.cf}) unless -f q{$(B_CONFDIR)/local.cf}" ++ @ # $(PERL) -MFile::Copy -e "copy(q{rules/init.pre}, q{$(B_CONFDIR)/init.pre}) unless -f q{$(B_CONFDIR)/init.pre}" ++ @ # $(PERL) -MFile::Copy -e "copy(q{rules/v310.pre}, q{$(B_CONFDIR)/v310.pre}) unless -f q{$(B_CONFDIR)/v310.pre}" ++ @ # $(PERL) -MFile::Copy -e "copy(q{rules/v312.pre}, q{$(B_CONFDIR)/v312.pre}) unless -f q{$(B_CONFDIR)/v312.pre}" ++ @ # $(PERL) -MFile::Copy -e "copy(q{rules/v320.pre}, q{$(B_CONFDIR)/v320.pre}) unless -f q{$(B_CONFDIR)/v320.pre}" ++ @ # $(PERL) -MFile::Copy -e "copy(q{rules/v330.pre}, q{$(B_CONFDIR)/v330.pre}) unless -f q{$(B_CONFDIR)/v330.pre}" ++ @ # $(PERL) -MFile::Copy -e "copy(q{rules/v340.pre}, q{$(B_CONFDIR)/v340.pre}) unless -f q{$(B_CONFDIR)/v340.pre}" + + data__install: + -$(MKPATH) $(B_DATADIR) + $(PERL) -e "map unlink, <$(B_DATADIR)/*>" + $(PREPROCESS) $(FIXVARS) -m$(PERM_RW) -Irules -O$(B_DATADIR) $(DATAFILES) +- $(CHMOD) $(PERM_RWX) $(B_DATADIR) ++ @ # no change of directory created by pkgsrc ++ @ # $(CHMOD) $(PERM_RWX) $(B_DATADIR) + + text_html_doc: made-doc-stamp + $(NOOP) diff --git a/mail/spamassassin/patches/patch-aa b/mail/spamassassin/patches/patch-aa deleted file mode 100644 index 67f13a6dc4a..00000000000 --- a/mail/spamassassin/patches/patch-aa +++ /dev/null @@ -1,30 +0,0 @@ -$NetBSD: patch-aa,v 1.9 2013/02/25 18:41:46 gdt Exp $ - -Make an effort to pick up spamd_flags from the rc configuration when -not running on NetBSD/DragonFlyBSD. -Adjust comment for renamed file. - ---- spamd/netbsd-rc-script.sh.orig 2011-06-07 01:59:19.000000000 +0200 -+++ spamd/netbsd-rc-script.sh 2013-02-25 17:56:03.000000000 +0100 -@@ -10,7 +10,7 @@ - # of spam - # - # PLEASE read the file --# @PREFIX@/share/doc/spamassassin/spamd/README.spamd -+# @PREFIX@/share/doc/spamassassin/spamd/README - # especially the section about security. - - ## only for DragonFlyBSD/NetBSD -@@ -118,6 +118,12 @@ - - else # not NetBSD or DragonFlyBSD - -+ if [ -f /etc/rc.subr -a -d /etc/rc.d -a -f /etc/rc.d/DAEMON ]; then -+ load_rc_config $name -+ elif [ -f /etc/rc.conf ]; then -+ . /etc/rc.conf -+ fi -+ - if [ -f ${pidfile} ]; then - the_spamd_pid=`head -1 ${pidfile}` - else diff --git a/mail/spamassassin/patches/patch-ab b/mail/spamassassin/patches/patch-ab deleted file mode 100644 index ca6de755b43..00000000000 --- a/mail/spamassassin/patches/patch-ab +++ /dev/null @@ -1,45 +0,0 @@ -$NetBSD: patch-ab,v 1.16 2010/03/24 21:41:11 heinz Exp $ - - - enable build of qmail-spamc - - some files (local.cf, *.pre) are managed by pkgsrc, disable - their installation. - - pkgsrc creates B_DATADIR, so there is no need to re-set permissions - ---- Makefile.PL.orig 2009-08-09 23:01:31.000000000 +0200 -+++ Makefile.PL -@@ -138,6 +138,7 @@ my %makefile = ( - 'spamassassin.raw' => 'spamassassin', - 'sa-learn.raw' => 'sa-learn', - 'sa-update.raw' => 'sa-update', -+ 'spamc/qmail-spamc.c' => 'spamc/qmail-spamc$(EXE_EXT)', - 'sa-compile.raw' => 'sa-compile', - 'sa-awl.raw' => 'sa-awl', - 'sa-check_spamd.raw' => 'sa-check_spamd', -@@ -1095,18 +1096,20 @@ qmail/qmail-spamc$(EXE_EXT): spamc/qmail - - conf__install: - -$(MKPATH) $(B_CONFDIR) -- $(PERL) -MFile::Copy -e "copy(q{rules/local.cf}, q{$(B_CONFDIR)/local.cf}) unless -f q{$(B_CONFDIR)/local.cf}" -- $(PERL) -MFile::Copy -e "copy(q{rules/init.pre}, q{$(B_CONFDIR)/init.pre}) unless -f q{$(B_CONFDIR)/init.pre}" -- $(PERL) -MFile::Copy -e "copy(q{rules/v310.pre}, q{$(B_CONFDIR)/v310.pre}) unless -f q{$(B_CONFDIR)/v310.pre}" -- $(PERL) -MFile::Copy -e "copy(q{rules/v312.pre}, q{$(B_CONFDIR)/v312.pre}) unless -f q{$(B_CONFDIR)/v312.pre}" -- $(PERL) -MFile::Copy -e "copy(q{rules/v320.pre}, q{$(B_CONFDIR)/v320.pre}) unless -f q{$(B_CONFDIR)/v320.pre}" -- $(PERL) -MFile::Copy -e "copy(q{rules/v330.pre}, q{$(B_CONFDIR)/v330.pre}) unless -f q{$(B_CONFDIR)/v330.pre}" -+ @ # manage local.cf and *.pre through pkgsrc .mk files -+ @ # $(PERL) -MFile::Copy -e "copy(q{rules/local.cf}, q{$(B_CONFDIR)/local.cf}) unless -f q{$(B_CONFDIR)/local.cf}" -+ @ # $(PERL) -MFile::Copy -e "copy(q{rules/init.pre}, q{$(B_CONFDIR)/init.pre}) unless -f q{$(B_CONFDIR)/init.pre}" -+ @ # $(PERL) -MFile::Copy -e "copy(q{rules/v310.pre}, q{$(B_CONFDIR)/v310.pre}) unless -f q{$(B_CONFDIR)/v310.pre}" -+ @ # $(PERL) -MFile::Copy -e "copy(q{rules/v312.pre}, q{$(B_CONFDIR)/v312.pre}) unless -f q{$(B_CONFDIR)/v312.pre}" -+ @ # $(PERL) -MFile::Copy -e "copy(q{rules/v320.pre}, q{$(B_CONFDIR)/v320.pre}) unless -f q{$(B_CONFDIR)/v320.pre}" -+ @ # $(PERL) -MFile::Copy -e "copy(q{rules/v330.pre}, q{$(B_CONFDIR)/v330.pre}) unless -f q{$(B_CONFDIR)/v330.pre}" - - data__install: - -$(MKPATH) $(B_DATADIR) - $(PERL) -e "map unlink, <$(B_DATADIR)/*>" - $(PREPROCESS) $(FIXVARS) -m$(PERM_RW) -Irules -O$(B_DATADIR) $(DATAFILES) -- $(CHMOD) $(PERM_RWX) $(B_DATADIR) -+ @ # no change of directory created by pkgsrc -+ @ # $(CHMOD) $(PERM_RWX) $(B_DATADIR) - - text_html_doc: made-doc-stamp - $(NOOP) diff --git a/mail/spamassassin/patches/patch-ba b/mail/spamassassin/patches/patch-ba deleted file mode 100644 index d9997e47d42..00000000000 --- a/mail/spamassassin/patches/patch-ba +++ /dev/null @@ -1,25 +0,0 @@ -$NetBSD: patch-ba,v 1.4 2013/07/24 16:17:02 drochner Exp $ - -prepare for SUBST - ---- sa-update.raw.orig 2011-06-06 23:59:19.000000000 +0000 -+++ sa-update.raw -@@ -1,4 +1,4 @@ --#!/usr/bin/perl -w -T -+#!/usr/pkg/bin/perl -w -T - - # <@LICENSE> - # Licensed to the Apache Software Foundation (ASF) under one or more -@@ -281,10 +281,10 @@ my $GPGPath; - if ($GPG_ENABLED || $opt{'import'}) { - # find GPG in the PATH - # bug 4958: for *NIX it's "gpg", in Windows it's "gpg.exe" -- $GPGPath = 'gpg' . $Config{_exe}; -+ $GPGPath = '@GPGPATH@' . $Config{_exe}; - dbg("gpg: Searching for '$GPGPath'"); - -- if ($GPGPath = Mail::SpamAssassin::Util::find_executable_in_env_path($GPGPath)) { -+ if (-f $GPGPath) { - dbg("gpg: found $GPGPath"); - - # bug 5030: if GPGPath has a space, put it in quotes diff --git a/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_AsyncLoop.pm b/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_AsyncLoop.pm deleted file mode 100644 index e75b6d7bd14..00000000000 --- a/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_AsyncLoop.pm +++ /dev/null @@ -1,31 +0,0 @@ -$NetBSD: patch-lib_Mail_SpamAssassin_AsyncLoop.pm,v 1.1 2013/12/04 15:14:19 jperkin Exp $ - -Part of backport of bug#6937 - ---- lib/Mail/SpamAssassin/AsyncLoop.pm.orig 2011-06-06 23:59:17.000000000 +0000 -+++ lib/Mail/SpamAssassin/AsyncLoop.pm -@@ -360,7 +360,13 @@ sub complete_lookups { - } - $now = time; # capture new timestamp, after possible sleep in 'select' - -- while (my($key,$ent) = each %$pending) { -+ # A callback routine may generate another DNS query, which may insert -+ # an entry into the %$pending hash thus invalidating the each() context. -+ # So, make sure that callbacks are not called while the each() context -+ # is open, or avoid using each(). [Bug 6937] -+ # -+ foreach my $key (keys %$pending) { -+ my $ent = $pending->{$key}; - my $id = $ent->{id}; - if (defined $ent->{poll_callback}) { # call a "poll_callback" if exists - # be nice, provide fresh info to a callback routine -@@ -448,7 +454,8 @@ sub abort_remaining_lookups { - my $pending = $self->{pending_lookups}; - my $foundcnt = 0; - my $now = time; -- while (my($key,$ent) = each %$pending) { -+ foreach my $key (keys %$pending) { -+ my $ent = $pending->{$key}; - dbg("async: aborting after %.3f s, %s: %s", - $now - $ent->{start_time}, - (defined $ent->{timeout_initial} && diff --git a/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_Conf_Parser.pm b/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_Conf_Parser.pm deleted file mode 100644 index 4d77c8d0cce..00000000000 --- a/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_Conf_Parser.pm +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-lib_Mail_SpamAssassin_Conf_Parser.pm,v 1.1 2013/12/04 15:14:19 jperkin Exp $ - -Part of backport of bug#6937 - ---- lib/Mail/SpamAssassin/Conf/Parser.pm.orig 2011-06-06 23:59:17.000000000 +0000 -+++ lib/Mail/SpamAssassin/Conf/Parser.pm -@@ -1248,7 +1248,7 @@ sub is_regexp_valid { - my $safere = $re; - my $mods = ''; - local ($1,$2); -- if ($re =~ s/^m{//) { -+ if ($re =~ s/^m\{//) { - $re =~ s/}([a-z]*)$//; $mods = $1; - } - elsif ($re =~ s/^m\(//) { diff --git a/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_DnsResolver.pm b/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_DnsResolver.pm deleted file mode 100644 index 5efd2d24635..00000000000 --- a/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_DnsResolver.pm +++ /dev/null @@ -1,24 +0,0 @@ -$NetBSD: patch-lib_Mail_SpamAssassin_DnsResolver.pm,v 1.1 2013/12/04 15:14:19 jperkin Exp $ - -Part of backport of bug#6937 - ---- lib/Mail/SpamAssassin/DnsResolver.pm.orig 2011-06-06 23:59:17.000000000 +0000 -+++ lib/Mail/SpamAssassin/DnsResolver.pm -@@ -440,10 +440,16 @@ sub poll_responses { - { my $timer; # collects timestamp when variable goes out of scope - if (!defined($timeout) || $timeout > 0) - { $timer = $self->{main}->time_method("poll_dns_idle") } -+ $! = 0; - ($nfound, $timeleft) = select($rout=$rin, undef, undef, $timeout); - } - if (!defined $nfound || $nfound < 0) { -- warn "dns: select failed: $!"; -+ if ($!) { warn "dns: select failed: $!\n" } -+ else { info("dns: select interrupted") } -+ return; -+ } elsif (!$nfound) { -+ if (!defined $timeout) { warn("dns: select returned empty-handed\n") } -+ elsif ($timeout > 0) { dbg("dns: select timed out %.3f s", $timeout) } - return; - } - diff --git a/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_PerMsgStatus.pm b/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_PerMsgStatus.pm deleted file mode 100644 index 1e50e02ae7d..00000000000 --- a/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_PerMsgStatus.pm +++ /dev/null @@ -1,36 +0,0 @@ -$NetBSD: patch-lib_Mail_SpamAssassin_PerMsgStatus.pm,v 1.1 2013/12/04 15:14:19 jperkin Exp $ - -Part of backport of bug#6937 - ---- lib/Mail/SpamAssassin/PerMsgStatus.pm.orig 2011-06-06 23:59:17.000000000 +0000 -+++ lib/Mail/SpamAssassin/PerMsgStatus.pm -@@ -420,8 +420,8 @@ sub _get_autolearn_points { - } - } - -- # ignore tests with 0 score in this scoreset -- next if ($scores->{$test} == 0); -+ # ignore tests with 0 score (or undefined) in this scoreset -+ next if !$scores->{$test}; - - # Go ahead and add points to the proper locations - if (!$self->{conf}->maybe_header_only ($test)) { -@@ -1252,13 +1252,12 @@ sub _get_tag { - my $arg = (shift || ","); - my $line = ''; - foreach my $test (sort @{$self->{test_names_hit}}) { -- if (!$line) { -- $line .= $test . "=" . $self->{conf}->{scores}->{$test}; -- } else { -- $line .= $arg . $test . "=" . $self->{conf}->{scores}->{$test}; -- } -+ my $score = $self->{conf}->{scores}->{$test}; -+ $score = '0' if !defined $score; -+ $line .= $arg if $line ne ''; -+ $line .= $test . "=" . $score; - } -- $line ? $line : 'none'; -+ $line ne '' ? $line : 'none'; - }, - - PREVIEW => sub { $self->get_content_preview() }, diff --git a/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_Util.pm b/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_Util.pm deleted file mode 100644 index fb35cb51d8d..00000000000 --- a/mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_Util.pm +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-lib_Mail_SpamAssassin_Util.pm,v 1.1 2013/12/04 15:14:19 jperkin Exp $ - -Part of backport of bug#6937 - ---- lib/Mail/SpamAssassin/Util.pm.orig 2011-06-06 23:59:17.000000000 +0000 -+++ lib/Mail/SpamAssassin/Util.pm -@@ -1582,7 +1582,7 @@ sub regexp_remove_delimiters { - warn "cannot remove delimiters from null regexp"; - return undef; # invalid - } -- elsif ($re =~ s/^m{//) { # m{foo/bar} -+ elsif ($re =~ s/^m\{//) { # m{foo/bar} - $delim = '}'; - } - elsif ($re =~ s/^m\(//) { # m(foo/bar) diff --git a/mail/spamassassin/patches/patch-sa-compile b/mail/spamassassin/patches/patch-sa-compile new file mode 100644 index 00000000000..c5e0f4b8ad1 --- /dev/null +++ b/mail/spamassassin/patches/patch-sa-compile @@ -0,0 +1,25 @@ +$NetBSD: patch-sa-compile,v 1.1 2014/04/26 13:55:10 tron Exp $ + +Use full path of "re2c" binary to make sure that "sa-compile" works +with a default command search path. + +--- sa-compile.raw.orig 2014-02-07 08:36:38.000000000 +0000 ++++ sa-compile.raw 2014-04-26 14:40:47.000000000 +0100 +@@ -108,7 +108,7 @@ + or die "error writing: $!"; + exit 1; + } +-unless (qx(re2c -V)) { ++unless (qx($PREFIX/bin/re2c -V)) { + print "$0 requires re2c for proper operation.\n" + or die "error writing: $!"; + exit 1; +@@ -451,7 +451,7 @@ + } + + for (1..$numscans) { +- my $cmd = "re2c -i -b -o scanner$_.c scanner$_.re"; ++ my $cmd = "$PREFIX/bin/re2c -i -b -o scanner$_.c scanner$_.re"; + if (!run($cmd)) { + # this must be fatal; it can result in corrupt output modules missing + # scannerN() functions diff --git a/mail/spamassassin/patches/patch-sa-update b/mail/spamassassin/patches/patch-sa-update index bf625cb53d0..c8cdc7f7395 100644 --- a/mail/spamassassin/patches/patch-sa-update +++ b/mail/spamassassin/patches/patch-sa-update @@ -1,24 +1,38 @@ -$NetBSD: patch-sa-update,v 1.1 2013/08/01 10:29:00 bouyer Exp $ +$NetBSD: patch-sa-update,v 1.2 2014/04/26 13:55:10 tron Exp $ -from https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6872, -fix for new Net::DNS +Prepare for substitution. -Index: sa-update.raw -=================================================================== ---- sa-update.raw (revision 1421187) -+++ sa-update (working copy) -@@ -1136,9 +1136,11 @@ - if ($RR) { - foreach my $rr ($RR->answer) { - my $text = $rr->rdatastr; -- local($1); -- $text =~ /^"(.*)"$/; -- push @result, $1; -+ if (defined $text && $text ne '') { -+ local($1); -+ $text =~ s/^"(.*)"\z/$1/s; -+ push(@result,$text); -+ } - } - } - else { +--- sa-update.raw.orig 2014-02-07 08:36:38.000000000 +0000 ++++ sa-update.raw 2014-04-26 13:56:38.000000000 +0100 +@@ -1,4 +1,4 @@ +-#!/usr/bin/perl -w -T ++#!/usr/pkg/bin/perl -w -T + + # <@LICENSE> + # Licensed to the Apache Software Foundation (ASF) under one or more +@@ -340,10 +340,10 @@ + if ($GPG_ENABLED || $opt{'import'}) { + # find GPG in the PATH + # bug 4958: for *NIX it's "gpg", in Windows it's "gpg.exe" +- $GPGPath = 'gpg' . $Config{_exe}; ++ $GPGPath = '@GPGPATH@' . $Config{_exe}; + dbg("gpg: Searching for '$GPGPath'"); + +- if ($GPGPath = Mail::SpamAssassin::Util::find_executable_in_env_path($GPGPath)) { ++ if (-f $GPGPath) { + dbg("gpg: found $GPGPath"); + + # bug 5030: if GPGPath has a space, put it in quotes +@@ -1459,10 +1459,8 @@ + !$out_fname_exists ? 'new' : $force_reload ? 'replace' : 'update'); + + my($ext_prog, $cmd, @args); +- foreach my $try_prog ('curl', 'wget', 'fetch') { +- $cmd = Mail::SpamAssassin::Util::find_executable_in_env_path($try_prog); +- if (defined $cmd && $cmd ne '') { $ext_prog = $try_prog; last } +- } ++ $ext_prog = '@SA_UPDATE_FETCH_PROG@'; ++ $cmd = '@SA_UPDATE_FETCH_CMD@'; + + if (defined $ext_prog && $ext_prog eq 'curl') { + push(@args, qw(-s -L -O --remote-time -g --max-redirs 2 diff --git a/mail/spamassassin/patches/patch-spamd_netbsd-rc-script.sh b/mail/spamassassin/patches/patch-spamd_netbsd-rc-script.sh new file mode 100644 index 00000000000..fa1aa6db177 --- /dev/null +++ b/mail/spamassassin/patches/patch-spamd_netbsd-rc-script.sh @@ -0,0 +1,21 @@ +$NetBSD: patch-spamd_netbsd-rc-script.sh,v 1.1 2014/04/26 13:55:10 tron Exp $ + +Make an effort to pick up spamd_flags from the rc configuration when +not running on NetBSD/DragonFlyBSD. +Adjust comment for renamed file. + +--- spamd/netbsd-rc-script.sh.orig 2014-02-07 08:36:38.000000000 +0000 ++++ spamd/netbsd-rc-script.sh 2014-04-26 10:50:41.000000000 +0100 +@@ -118,6 +118,12 @@ + + else # not NetBSD or DragonFlyBSD + ++ if [ -f /etc/rc.subr -a -d /etc/rc.d -a -f /etc/rc.d/DAEMON ]; then ++ load_rc_config $name ++ elif [ -f /etc/rc.conf ]; then ++ . /etc/rc.conf ++ fi ++ + if [ -f ${pidfile} ]; then + the_spamd_pid=`head -1 ${pidfile}` + else -- cgit v1.2.3