chiark / gitweb /
Initial check-in.
[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;