Fix xslt_process() to ensure that it inserts a NULL terminator after the
[PostgreSQL.git] / doc / src / sgml / mk_feature_tables.pl
blobdd32e796fa41a1aed43d875318a7e307206aa7d1
1 # /usr/bin/perl -w
3 # $PostgreSQL$
5 my $yesno = $ARGV[0];
7 open PACK, $ARGV[1] or die;
9 my %feature_packages;
11 while (<PACK>) {
12 chomp;
13 my ($fid, $pname) = split /\t/;
14 if ($feature_packages{$fid}) {
15 $feature_packages{$fid} .= ", $pname";
16 } else {
17 $feature_packages{$fid} = $pname;
21 close PACK;
23 open FEAT, $ARGV[2] or die;
25 print "<tbody>\n";
27 while (<FEAT>) {
28 chomp;
29 my ($feature_id, $feature_name, $subfeature_id, $subfeature_name, $is_supported, $comments) = split /\t/;
31 $is_supported eq $yesno || next;
33 $feature_name =~ s/</&lt;/g;
34 $feature_name =~ s/>/&gt;/g;
35 $subfeature_name =~ s/</&lt;/g;
36 $subfeature_name =~ s/>/&gt;/g;
38 print " <row>\n";
40 if ($subfeature_id) {
41 print " <entry>$feature_id-$subfeature_id</entry>\n";
42 } else {
43 print " <entry>$feature_id</entry>\n";
45 print " <entry>" . $feature_packages{$feature_id} . "</entry>\n";
46 if ($subfeature_id) {
47 print " <entry>$subfeature_name</entry>\n";
48 } else {
49 print " <entry>$feature_name</entry>\n";
51 print " <entry>$comments</entry>\n";
53 print " </row>\n";
56 print "</tbody>\n";
58 close FEAT;