forked from rpms/kernel
		
	- Update remove-binary-diff.pl to remove git binary patches as well. Git binary patches can be applied but the spec file needs to be updated to support this.
		
			
				
	
	
		
			35 lines
		
	
	
		
			690 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			690 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/perl -w
 | |
| # A script to remove those terrible binary diffs from the patches which
 | |
| # screw up everything and rain on my parade.
 | |
| 
 | |
| use strict;
 | |
| 
 | |
| my @args=@ARGV;
 | |
| my @current_patch;
 | |
| my $is_binary = 0;
 | |
| my $cnt = 0;
 | |
| 
 | |
| while(my $row = <>) {
 | |
| 	# diff marks the start of a new file to check
 | |
| 	if ($row =~ /^diff --git.*?(\S+)$/) {
 | |
| 		if (!$is_binary) {
 | |
| 			foreach my $line (@current_patch) {
 | |
| 				print $line;
 | |
| 			}
 | |
| 		}
 | |
| 		$is_binary = 0;
 | |
| 		@current_patch = ();
 | |
| 	} elsif ($row =~ /Binary files (.)* differ$/) {
 | |
| 		$is_binary = 1;
 | |
| 	} elsif ($row =~ /GIT binary patch/) {
 | |
| 		$is_binary = 1;
 | |
| 	}
 | |
| 	push (@current_patch, $row);
 | |
| }
 | |
| 
 | |
| if (!$is_binary) {
 | |
| 	foreach my $line (@current_patch) {
 | |
| 		print $line;
 | |
| 	}
 | |
| }
 |