mirror of
git://git.code.sf.net/p/zsh/code
synced 2024-11-18 21:14:11 +01:00
70 lines
1.3 KiB
Perl
Executable File
70 lines
1.3 KiB
Perl
Executable File
#!/usr/bin/perl -w
|
|
|
|
# This programme turns the ChangeLog into changelog.html for display
|
|
# on the website. That lives at http://zsh.sunsite.dk/Etc/changelog.html.
|
|
|
|
my $out = "changelog.html";
|
|
|
|
open CL, "ChangeLog" or die "No ChangeLog --- run in top level directory.\n";
|
|
|
|
if (-f $out) {
|
|
die "Will not overwrite existing $out. Delete by hand.\n";
|
|
}
|
|
|
|
my $version;
|
|
my $changes = 0;
|
|
|
|
while (<CL>) {
|
|
/^\d+/ and $changes++;
|
|
if (/version\.mk.*version\s+(\d+(\.\d+)*(-\S+)?)/i) {
|
|
$version = $1;
|
|
$version =~ s/\.$//;
|
|
last;
|
|
}
|
|
}
|
|
|
|
if (defined $version) {
|
|
warn "Outputting changelog.html for version \"$version\".\n";
|
|
if ($changes) {
|
|
warn "WARNING: there are changes since this version.\n";
|
|
}
|
|
} else {
|
|
$version = "X.X.X";
|
|
warn "WARNING: no version found. Set by hand\n";
|
|
}
|
|
|
|
seek CL, 0, 0;
|
|
|
|
open NEW, ">changelog.html";
|
|
|
|
select NEW;
|
|
|
|
print <<"EOH";
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
|
|
<html>
|
|
<head>
|
|
<title>ChangeLog for zsh version $version</title>
|
|
</head>
|
|
<body>
|
|
<h1>ChangeLog for zsh version $version</h1>
|
|
<pre>
|
|
EOH
|
|
|
|
while (<CL>) {
|
|
s/&/&/g;
|
|
s/</</g;
|
|
s/>/>/g;
|
|
|
|
print;
|
|
}
|
|
|
|
my $now = gmtime(time);
|
|
|
|
print <<"EOH";
|
|
</pre>
|
|
<hr>
|
|
Automatically generated from ChangeLog at $now
|
|
</body>
|
|
</html>
|
|
EOH
|