Remove link to GitHub sponsors
[openssl-web.git] / bin / mk-latest
1 #! /usr/bin/perl -w
2 use strict;
3
4 die "Missing args\n" if $#ARGV < 0;
5 my $SRCDIR = $ARGV[0]; shift;
6
7 chdir $SRCDIR || die "Can't chdir $SRCDIR, $!";
8
9 my @tarballs =
10        sort grep /openssl-\d+\.\d+\.\d+[a-z]*\.tar\.gz$/,
11                glob("openssl-*.tar.gz");
12
13 my %series = ();
14 foreach(@tarballs) {
15         my ($version, $serie) = /^openssl-((\d+\.\d+\.\d+)[a-z]*)\./;
16         $series{$serie} = $_;
17 }
18 my $latest = $series{ (reverse sort keys %series)[0] };
19
20 print <<"EOF";
21 ######################################################################
22 # Please do NOT edit this file directly!
23 # Instead, edit bin/mk-latest in the master branch of openssl-web.git
24 #####
25
26 RewriteEngine on
27 RewriteBase /source
28 # First, rewrite all the 'latest' URLs
29 RewriteRule ^latest.tar.gz\$ $latest [L,R=302,NC]
30 EOF
31
32 foreach (sort keys %series) {
33         my $rule = "openssl-$_-latest.tar.gz";
34         #don't bother: $rule =~ s|\.|\\.|g;
35         my $target = $series{$_};
36         print "RewriteRule ^$rule\$ $target [L,R=302,NC]\n";
37 }
38
39 print <<\EOF;
40
41 # Old distro's are in subdirs.
42 RewriteCond %{REQUEST_FILENAME} !-f
43 RewriteRule ^(openssl-0\.9\.\d.*) old/0.9.x/$1 [L]
44 RewriteCond %{REQUEST_FILENAME} !-f
45 RewriteRule ^(openssl-(\d+\.\d+\.\d+).*) old/$2/$1 [L]
46 RewriteCond %{REQUEST_FILENAME} !-f
47 RewriteRule ^openssl-(fips.*)  old/fips/openssl-$1 [L]
48
49 <Files *.gz.asc>
50     RemoveEncoding .gz
51 </Files>
52 <Files *.gz.md5>
53     RemoveEncoding .gz
54 </Files>
55 <Files *.gz.sha1>
56     RemoveEncoding .gz
57 </Files>
58 <Files *.gz.sha256>
59     RemoveEncoding .gz
60 </Files>
61 EOF