7 my $inputfile = "$ENV{srcdir}/gedcom.tabgen.h";
8 my $outputfile = "$ENV{srcdir}/tag_names.h";
11 my ($min, $max) = (9999, 0);
13 open INPUT, $inputfile or die "Can't read $inputfile\n";
14 open OUTPUT, ">$outputfile" or die "Can't write $outputfile\n";
18 if (/TAG_(.*?)\s+(\d+)/) {
19 my ($name, $num) = ($1, $2);
21 $min = $num if $num < $min;
22 $max = $num if $num > $max;
26 print OUTPUT "/* This file is automatically generated */\n";
28 print OUTPUT "#define TAG_NUM_START $min\n";
29 print OUTPUT "#define TAG_NUM_END $max\n";
31 print OUTPUT "char* tag_name[] =\n";
34 foreach my $tagnum (sort keys %tags) {
35 if (($tagnum - $min) % 8 == 0) {
37 print OUTPUT " /* $tagnum */ ";
39 print OUTPUT "\"$tags{$tagnum}\", ";
42 print OUTPUT "\n};\n";