mirror of
				https://github.com/openresty/openresty.git
				synced 2024-10-13 00:29:41 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			50 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env perl
 | |
| 
 | |
| use strict;
 | |
| use warnings;
 | |
| 
 | |
| my $ver = shift or usage();
 | |
| my $newver = shift or usage();
 | |
| 
 | |
| my @files = `find patches -name '*.patch'`;
 | |
| for my $file (@files) {
 | |
|     chomp $file;
 | |
|     next unless $file =~ m{^patches/nginx-(?:$ver|$newver)-};
 | |
|     (my $newfile = $file) =~ s/nginx-$ver-/nginx-$newver-/g;
 | |
|     if ($newfile ne $file && !-f $newfile) {
 | |
|         my $cmd = "cp $file $newfile";
 | |
|         system($cmd) == 0
 | |
|             or die "failed run command $cmd.\n";
 | |
| 
 | |
|         $cmd = "git add $newfile";
 | |
|         system($cmd) == 0
 | |
|             or die "failed run command $cmd.\n";
 | |
|     }
 | |
| 
 | |
|     my $cmd = "sed -i 's/\Q$ver\E/$newver/g' $newfile";
 | |
|     system($cmd) == 0
 | |
|             or die "failed to run command $cmd.\n";
 | |
| 
 | |
|     my $oldver_int = version_to_int($ver);
 | |
|     my $newver_int = version_to_int($newver);
 | |
| 
 | |
|     warn "$oldver_int => $newver_int\n";
 | |
| 
 | |
|     $cmd = "sed -i 's/$oldver_int/$newver_int/g' $newfile";
 | |
|     system($cmd) == 0
 | |
|             or die "failed to run command $cmd.\n";
 | |
| 
 | |
|     print "$file => $newfile\n";
 | |
| }
 | |
| 
 | |
| sub usage {
 | |
|     die "Usage: $0 <old-version> <new-version>\n";
 | |
| }
 | |
| 
 | |
| sub version_to_int {
 | |
|     my $ver = shift;
 | |
|     $ver =~ s/\.(\d+)/sprintf("%03d", $1)/eg;
 | |
|     $ver
 | |
| }
 | |
| 
 |