| 
									
										
										
										
											2021-01-06 09:26:05 +08:00
										 |  |  | #! /usr/bin/env perl | 
					
						
							| 
									
										
										
										
											2022-05-03 18:52:38 +08:00
										 |  |  | # Copyright 2021-2022 The OpenSSL Project Authors. All Rights Reserved. | 
					
						
							| 
									
										
										
										
											2021-01-06 09:26:05 +08:00
										 |  |  | # | 
					
						
							|  |  |  | # Licensed under the Apache License 2.0 (the "License").  You may not use | 
					
						
							|  |  |  | # this file except in compliance with the License.  You can obtain a copy | 
					
						
							|  |  |  | # in the file LICENSE in the source distribution or at | 
					
						
							|  |  |  | # https://www.openssl.org/source/license.html | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | use strict; | 
					
						
							|  |  |  | use warnings; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | package OpenSSL::copyright; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | sub year_of { | 
					
						
							|  |  |  |     my $file = shift; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     return $ENV{'OSSL_COPYRIGHT_YEAR'} if defined $ENV{'OSSL_COPYRIGHT_YEAR'}; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     # Get the current year.  We use that as the default because the other | 
					
						
							|  |  |  |     # common case is that someone unpacked a tarfile and the file dates | 
					
						
							|  |  |  |     # are't properly set on extract. | 
					
						
							|  |  |  |     my $YEAR = [localtime()]->[5] + 1900; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     # See if git's available | 
					
						
							|  |  |  |     open my $FH, | 
					
						
							| 
									
										
										
										
											2022-01-06 00:25:02 +08:00
										 |  |  |        "git log -1 --date=short --format=format:%cd $file 2>/dev/null|" | 
					
						
							| 
									
										
										
										
											2021-01-06 09:26:05 +08:00
										 |  |  |            or return $YEAR; | 
					
						
							|  |  |  |     my $LINE = <$FH>; | 
					
						
							|  |  |  |     close $FH; | 
					
						
							| 
									
										
										
										
											2022-01-06 00:25:02 +08:00
										 |  |  |     $LINE =~ s/^([0-9]*)-.*/$1/; | 
					
						
							| 
									
										
										
										
											2021-01-06 09:26:05 +08:00
										 |  |  |     $YEAR = $LINE if $LINE; | 
					
						
							|  |  |  |     return $YEAR; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | sub latest { | 
					
						
							|  |  |  |     my $l = 0; | 
					
						
							|  |  |  |     foreach my $f (@_ ) { | 
					
						
							|  |  |  |         my $y = year_of($f); | 
					
						
							|  |  |  |         $l = $y if $y > $l; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |     return $l | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 1; |