If SOURCE_DATE_EPOCH is defined, use it for copyright year
authorNicolas Vigier <boklm@torproject.org>
Thu, 5 Mar 2020 19:39:05 +0000 (20:39 +0100)
committerMatt Caswell <matt@openssl.org>
Fri, 15 May 2020 10:43:31 +0000 (11:43 +0100)
Using the date from SOURCE_DATE_EPOCH instead of the current date makes
it possible to reproduce a build that was built on a different year:
https://reproducible-builds.org/specs/source-date-epoch/

This is fixing an issue we had while building Tor Browser:
https://trac.torproject.org/projects/tor/ticket/33535

CLA: trivial

Reviewed-by: Paul Dale <paul.dale@oracle.com>
Reviewed-by: Ben Kaduk <kaduk@mit.edu>
(Merged from https://github.com/openssl/openssl/pull/11296)

util/mkrc.pl

index 8ff3588..5b1111a 100755 (executable)
@@ -25,7 +25,7 @@ if ( $filename =~ /openssl/i ) {
     $vft = "VFT_APP";
 }
 
-my $YEAR = [localtime()]->[5] + 1900;
+my $YEAR = [gmtime($ENV{SOURCE_DATE_EPOCH} || time())]->[5] + 1900;
 print <<___;
 #include <winver.h>