Remove link to GitHub sponsors
[openssl-web.git] / bin / mk-filelist
1 #! /usr/bin/perl -w
2 use strict;
3
4 die "Missing args\n" if $#ARGV < 2;
5 my $timebased = 1;
6 if ($ARGV[0] eq '-a') {
7     $timebased = 0;
8     shift;
9 }
10
11 my $SRCDIR = $ARGV[0]; shift;
12 my $URLBASE = $ARGV[0]; shift;
13 my $GLOB = join(' ', @ARGV);
14
15 my @months = ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
16            'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
17
18 sub ls {
19     my ($pat) = @_;
20     my @F = $timebased
21                 ? sort { (stat($b))[9] <=> (stat($a))[9]; } (glob($pat))
22                 : sort (glob($pat));
23     my @R = ();
24     foreach my $f (@F) {
25         next if ($f =~ m|^index.*|);
26         next if -d $f;
27         my @S = stat($f);
28         my @T = localtime($S[9]);
29         push(@R, sprintf("%d %d-%s-%02d %02d:%02d:%02d %s",
30              $S[7] / 1024,
31              1900+$T[5], $months[$T[4]], $T[3],
32              $T[2], $T[1], $T[0],
33              $f));
34     }
35     return @R;
36 }
37
38 chdir $SRCDIR || die "Can't chdir $SRCDIR, $!";
39 my @L = &ls($GLOB);
40 foreach my $l (@L) {
41     next if $l =~ m|^\s*$|;
42     my @fields = split / /, $l;
43     # Size, date, time, filename
44     my $fs = $fields[0];
45     my $fd = $fields[1] . "&nbsp;" . $fields[2];
46     my $ff = $fields[3];
47     my $url = $URLBASE . $ff;
48     my $r = "<a href=\"$url\">$ff</a>";
49     $r .= " (<a href=\"$url.sha256\">SHA256</a>)" if -f "$ff.sha256";
50     $r .= " (<a href=\"$url.asc\">PGP sign</a>)" if -f "$ff.asc";
51     $r .= " (<a href=\"$url.sha1\">SHA1</a>)" if -f "$ff.sha1";
52     # $r .= " (<a href=\"$url.md5\">MD5</a>)" if -f "$ff.md5";
53     print "<tr>\n";
54     print "  <td>$fs&nbsp;</td>\n";
55     print "  <td>$fd&nbsp;</td>\n";
56     print "  <td>$r</td>\n";
57     print "</tr>\n";
58 }
59
60 exit(0);