summaryrefslogtreecommitdiff
path: root/mail
diff options
context:
space:
mode:
authortron <tron@pkgsrc.org>2014-04-26 13:55:10 +0000
committertron <tron@pkgsrc.org>2014-04-26 13:55:10 +0000
commitc4012f32beb719ca744e53f703766e2f083ddc99 (patch)
tree775539b3929dd98a903f9dadac933f9589a4cac9 /mail
parent10fb690f2e3a4a216b8c474adf51f57cf64c58a6 (diff)
downloadpkgsrc-c4012f32beb719ca744e53f703766e2f083ddc99.tar.gz
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.
Diffstat (limited to 'mail')
-rw-r--r--mail/spamassassin/Makefile32
-rw-r--r--mail/spamassassin/distinfo39
-rw-r--r--mail/spamassassin/patches/patch-Makefile.PL (renamed from mail/spamassassin/patches/patch-ab)12
-rw-r--r--mail/spamassassin/patches/patch-ba25
-rw-r--r--mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_AsyncLoop.pm31
-rw-r--r--mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_Conf_Parser.pm15
-rw-r--r--mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_DnsResolver.pm24
-rw-r--r--mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_PerMsgStatus.pm36
-rw-r--r--mail/spamassassin/patches/patch-lib_Mail_SpamAssassin_Util.pm15
-rw-r--r--mail/spamassassin/patches/patch-sa-compile25
-rw-r--r--mail/spamassassin/patches/patch-sa-update58
-rw-r--r--mail/spamassassin/patches/patch-spamd_netbsd-rc-script.sh (renamed from mail/spamassassin/patches/patch-aa)15
12 files changed, 112 insertions, 215 deletions
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-ab b/mail/spamassassin/patches/patch-Makefile.PL
index ca6de755b43..bdfcc8235b3 100644
--- a/mail/spamassassin/patches/patch-ab
+++ b/mail/spamassassin/patches/patch-Makefile.PL
@@ -1,13 +1,13 @@
-$NetBSD: patch-ab,v 1.16 2010/03/24 21:41:11 heinz Exp $
+$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 2009-08-09 23:01:31.000000000 +0200
-+++ Makefile.PL
-@@ -138,6 +138,7 @@ my %makefile = (
+--- 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',
@@ -15,7 +15,7 @@ $NetBSD: patch-ab,v 1.16 2010/03/24 21:41:11 heinz Exp $
'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
+@@ -1098,19 +1099,21 @@
conf__install:
-$(MKPATH) $(B_CONFDIR)
@@ -25,6 +25,7 @@ $NetBSD: patch-ab,v 1.16 2010/03/24 21:41:11 heinz Exp $
- $(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}"
@@ -32,6 +33,7 @@ $NetBSD: patch-ab,v 1.16 2010/03/24 21:41:11 heinz Exp $
+ @ # $(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)
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-aa b/mail/spamassassin/patches/patch-spamd_netbsd-rc-script.sh
index 67f13a6dc4a..fa1aa6db177 100644
--- a/mail/spamassassin/patches/patch-aa
+++ b/mail/spamassassin/patches/patch-spamd_netbsd-rc-script.sh
@@ -1,20 +1,11 @@
-$NetBSD: patch-aa,v 1.9 2013/02/25 18:41:46 gdt Exp $
+$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 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
+--- 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