7cea767514629a01c92fa8910af1c199a7598ff9
[newsgate] / bin / mkcdb
1 #! /usr/bin/perl
2
3 use CDB_File;
4
5 @ARGV == 1 or die "usage: $0 GROUPFILE\n";
6 $g = shift;
7 open GROUPS, $g or die "$0: open($g): $!\n";
8 $c = CDB_File->new("$g.cdb", "$g.new") or die "$0: cdbmake($g.cdb): $!\n";
9 while (<GROUPS>) {
10 next if m'^\s*(\#|$)';
11 my @f = split;
12 @f == 3 or die "$0: bad info line $.\n";
13 my $l = join(" ", @f);
14 my ($tag, $group, $addr) = @f;
15 $group =~ tr/./-/;
16 $c->insert("t:$tag" => $l);
17 $c->insert("g:$group" => $l);
18 }
19 $c->finish() or die "$0: cdbfinish($g.cdb): $!\n";
20 exit 0;