#!/usr/bin/perl
# Must be run from the website dir
use Getopt::Long;
my $output;
if (! GetOptions(
"output=s", \$output)
|| ! @ARGV[0]) {
die "usage: $0 [--output=file] list\n";
}
if (defined $output) {
open (OUT, ">$output.tmp.$$") || die "output.tmp.$$: $!"; # Set the output to a file
}
else {
open (OUT, ">&STDOUT"); # Set the output to stdout
}
open (HEAD,"header.html") || die("Could not open header.html: $!");
while(
) {
$line = $_ ;
print OUT "$line" ;
}
close HEAD;
print OUT "\n";
my $pack = 0;
my $date = "";
my $dtsa = "";
my $package = "";
my $desc = "";
open (LIST,@ARGV[0]) || die("Could not open list ".@ARGV[0].": $!");
while() {
$line = $_ ;
if ($line=~/^(\[.+\]) (DTSA-[0-9]+-[0-9]+) ([^ ].+) - (.+)$/) {
if ($pack == 1) {
# print the previous acvisory, as it wasn't unreleased
print OUT "- $date $dtsa $package
\n";
print OUT "- $desc
\n";
}
$date = $1;
$dtsa = $2;
$package = $3;
$desc = $4;
$pack = 1;
}
if ($line=~/TODO: unreleased$/) {
$pack = 0;
}
}
if ($pack == 1) {
# print the previous acvisory, as it wasn't unreleased
print OUT "- $date $dtsa $package
\n";
print OUT "- $desc
\n";
}
print OUT "
\n";
open (FOOT,"footer.html") || die("Could not open footer.html: $!"); ;
while() {
$line = $_ ;
print OUT "$line" ;
}
close FOOT;
close OUT;
if (defined $output) {
rename("$output.tmp.$$", $output) || die "rename: $!";
}