]> git.donarmstrong.com Git - debbugs.git/commitdiff
fix Mail install and script install
authorDon Armstrong <don@donarmstrong.com>
Tue, 21 Jul 2009 20:36:41 +0000 (22:36 +0200)
committerDon Armstrong <don@donarmstrong.com>
Tue, 21 Jul 2009 20:36:41 +0000 (22:36 +0200)
Mail/CrossAssassin.pm [new file with mode: 0644]
Makefile
Makefile.PL
debian/debbugs.install
debian/libdebbugs-perl.install
scripts/Mail/CrossAssassin.pm [deleted file]

diff --git a/Mail/CrossAssassin.pm b/Mail/CrossAssassin.pm
new file mode 100644 (file)
index 0000000..b8c676f
--- /dev/null
@@ -0,0 +1,98 @@
+# CrossAssassin.pm 2004/04/12 blarson 
+
+package Mail::CrossAssassin;
+
+use strict;
+require Exporter;
+our @ISA = qw(Exporter);
+our @EXPORT = qw(ca_init ca_keys ca_set ca_score ca_expire);
+our $VERSION = 0.1;
+
+use Digest::MD5 qw(md5_base64);
+use DB_File;
+
+our %database;
+our $init;
+our $addrpat = '\b\d{3,8}(?:-(?:close|done|forwarded|maintonly|submitter|quiet))?\@bugs\.debian\.org';
+
+sub ca_init(;$$) {
+    my $ap = shift;
+    $addrpat = $ap if(defined $ap);
+    my $dir = shift;
+    return if ($init && ! defined($dir));
+    $dir = "$ENV{'HOME'}/.crosssassassin" unless (defined($dir));
+    (mkdir $dir or die "Could not create \"$dir\"") unless (-d $dir);
+    untie %database;
+    tie %database, 'DB_File', "$dir/Crossdb"
+       or die "Could not initialize crosassasin database \"$dir/Crossdb\": $!";
+    $init = 1;
+}
+
+sub ca_keys($) {
+    my $body = shift;
+    my @keys;
+    my $m = join('',@$body);
+    $m =~ s/\n(?:\s*\n)+/\n/gm;
+    if (length($m) > 4000) {
+       my $m2 = $m;
+       $m2 =~ s/\S\S+/\*/gs;
+       push @keys, '0'.md5_base64($m2);
+    }
+#    $m =~ s/^--.*$/--/m;
+    $m =~ s/$addrpat/LOCAL\@ADDRESS/iogm;
+    push @keys, '1'.md5_base64($m);
+    return join(' ',@keys);
+}
+
+sub ca_set($) {
+    my @keys = split(' ', $_[0]);
+    my $now = time;
+    my $score = 0;
+    my @scores;
+    foreach my $k (@keys) {
+       my ($count,$date) = split(' ',$database{$k});
+        $count++;
+        $score = $count if ($count > $score);
+        $database{$k} = "$count $now";
+       push @scores, $count;
+    }
+    return (wantarray ? @scores : $score);
+}
+
+sub ca_score($) {
+    my @keys = split(' ', $_[0]);
+    my $score = 0;
+    my @scores;
+    my $i = 0;
+    foreach my $k (@keys) {
+       my ($count,$date) = split(' ',$database{$k});
+       $score = $count if ($count > $score);
+       $i++;
+       push @scores, $count;
+    }
+    return (wantarray ? @scores : $score);
+}
+
+sub ca_expire($) {
+    my $when = shift;
+    my @ret;
+    my $num = 0;
+    my $exp = 0;
+    while (my ($k, $v) = each %database) {
+       $num++;
+       my ($count, $date) = split(' ', $v);
+       if ($date <= $when) {
+           delete $database{$k};
+           $exp++;
+       }
+    }
+    return ($num, $exp);
+}
+
+END {
+    return unless($init);
+    untie %database;
+    undef($init);
+}
+
+1;
index 1bb7ef88a0c51f09d3146665277bc27a83436ca2..df174b82fef57881c5de12f59308b095ec0e1303 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -12,7 +12,7 @@ man_dir               := $(DESTDIR)/usr/share/man
 man8_dir       := $(man_dir)/man8
 examples_dir   := $(doc_dir)/examples
 
-scripts_in     := $(foreach script, $(filter-out scripts/config scripts/errorlib scripts/text, $(wildcard scripts/*)),$(patsubst scripts/%,%,$(script)))
+scripts_in     = $(foreach script, $(filter-out scripts/config% scripts/errorlib scripts/text, $(wildcard scripts/*)),$(patsubst scripts/%,%,$(script)))
 htmls_in       := $(wildcard html/*.html.in)
 cgis           := $(wildcard cgi/*.cgi cgi/*.pl)
 
@@ -61,7 +61,7 @@ $(var_dir)/spool/db-h $(scripts_dir) $(examples_dir) $(man8_dir); \
 
 
        # install the scripts
-       $(foreach script,$(scripts_in), $(exec $(install_exec) $(script) $(scripts_dir)/$(script)))
+       $(foreach script,$(scripts_in), $(install_exec) scripts/$(script) $(scripts_dir);)
        $(install_data) scripts/errorlib $(scripts_dir)/errorlib
 
        # install examples
index 06b43cca3cfd3a4a80fb39abbc73592a2ffbe8be..0063970eb560560f070067615513697fbc4d4d83 100644 (file)
@@ -3,7 +3,7 @@
 use ExtUtils::MakeMaker;
 
 WriteMakefile(FIRST_MAKEFILE => 'Makefile.perl',
-             PMLIBDIRS => ['Debbugs'],
+             PMLIBDIRS => ['Debbugs','Mail'],
              EXE_FILES => ['bin/local-debbugs',
                            'bin/add_bug_to_estraier',
                           ],
index 81d29cbef0bd5d574b7bd141b26188693ceb9520..38ec1f1f24e0cf434667d4a34757c48c2b9b3783 100644 (file)
@@ -6,3 +6,6 @@ var/lib/debbugs/spool
 var/lib/debbugs/indices
 usr/bin/add_bug_to_estraier
 usr/share/man/man1/add_bug_*
+# there currently isn't a Mail::Crossassassin manpage
+#usr/share/man/man3/Mail*
+usr/share/perl5/Mail*
\ No newline at end of file
index c4acdfa739b642c40c49fb84756ae06799e0a4c9..bc1da7eaf90cccce28eb371f0415961ed53fe6da 100644 (file)
@@ -1,3 +1,3 @@
-usr/share/man/man3
-usr/share/perl5
+usr/share/man/man3/Debbugs*
+usr/share/perl5/Debbugs*
 #etc/debbugs/config
diff --git a/scripts/Mail/CrossAssassin.pm b/scripts/Mail/CrossAssassin.pm
deleted file mode 100644 (file)
index b8c676f..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-# CrossAssassin.pm 2004/04/12 blarson 
-
-package Mail::CrossAssassin;
-
-use strict;
-require Exporter;
-our @ISA = qw(Exporter);
-our @EXPORT = qw(ca_init ca_keys ca_set ca_score ca_expire);
-our $VERSION = 0.1;
-
-use Digest::MD5 qw(md5_base64);
-use DB_File;
-
-our %database;
-our $init;
-our $addrpat = '\b\d{3,8}(?:-(?:close|done|forwarded|maintonly|submitter|quiet))?\@bugs\.debian\.org';
-
-sub ca_init(;$$) {
-    my $ap = shift;
-    $addrpat = $ap if(defined $ap);
-    my $dir = shift;
-    return if ($init && ! defined($dir));
-    $dir = "$ENV{'HOME'}/.crosssassassin" unless (defined($dir));
-    (mkdir $dir or die "Could not create \"$dir\"") unless (-d $dir);
-    untie %database;
-    tie %database, 'DB_File', "$dir/Crossdb"
-       or die "Could not initialize crosassasin database \"$dir/Crossdb\": $!";
-    $init = 1;
-}
-
-sub ca_keys($) {
-    my $body = shift;
-    my @keys;
-    my $m = join('',@$body);
-    $m =~ s/\n(?:\s*\n)+/\n/gm;
-    if (length($m) > 4000) {
-       my $m2 = $m;
-       $m2 =~ s/\S\S+/\*/gs;
-       push @keys, '0'.md5_base64($m2);
-    }
-#    $m =~ s/^--.*$/--/m;
-    $m =~ s/$addrpat/LOCAL\@ADDRESS/iogm;
-    push @keys, '1'.md5_base64($m);
-    return join(' ',@keys);
-}
-
-sub ca_set($) {
-    my @keys = split(' ', $_[0]);
-    my $now = time;
-    my $score = 0;
-    my @scores;
-    foreach my $k (@keys) {
-       my ($count,$date) = split(' ',$database{$k});
-        $count++;
-        $score = $count if ($count > $score);
-        $database{$k} = "$count $now";
-       push @scores, $count;
-    }
-    return (wantarray ? @scores : $score);
-}
-
-sub ca_score($) {
-    my @keys = split(' ', $_[0]);
-    my $score = 0;
-    my @scores;
-    my $i = 0;
-    foreach my $k (@keys) {
-       my ($count,$date) = split(' ',$database{$k});
-       $score = $count if ($count > $score);
-       $i++;
-       push @scores, $count;
-    }
-    return (wantarray ? @scores : $score);
-}
-
-sub ca_expire($) {
-    my $when = shift;
-    my @ret;
-    my $num = 0;
-    my $exp = 0;
-    while (my ($k, $v) = each %database) {
-       $num++;
-       my ($count, $date) = split(' ', $v);
-       if ($date <= $when) {
-           delete $database{$k};
-           $exp++;
-       }
-    }
-    return ($num, $exp);
-}
-
-END {
-    return unless($init);
-    untie %database;
-    undef($init);
-}
-
-1;