version 1.1.1.1, 2012/02/17 15:09:30
|
version 1.1.1.3, 2016/11/01 09:54:32
|
Line 23 my $make_gen_cmd = 'make -f prepare-source.mak conf &&
|
Line 23 my $make_gen_cmd = 'make -f prepare-source.mak conf &&
|
); |
); |
&usage if $help_opt; |
&usage if $help_opt; |
|
|
|
$ENV{GIT_MERGE_AUTOEDIT} = 'no'; |
|
|
if (defined $incl_generated_files) { |
if (defined $incl_generated_files) { |
$patches_dir = $incl_generated_files if $incl_generated_files ne ''; |
$patches_dir = $incl_generated_files if $incl_generated_files ne ''; |
$incl_generated_files = 1; |
$incl_generated_files = 1; |
Line 32 die "No '$patches_dir' directory was found.\n" unless
|
Line 34 die "No '$patches_dir' directory was found.\n" unless
|
die "No '.git' directory present in the current dir.\n" unless -d '.git'; |
die "No '.git' directory present in the current dir.\n" unless -d '.git'; |
|
|
require 'packaging/git-status.pl'; |
require 'packaging/git-status.pl'; |
check_git_state($master_branch, !$skip_branch_check, 1); | my $starting_branch = check_git_state($master_branch, !$skip_branch_check, 1); |
|
|
my $master_commit; |
my $master_commit; |
open PIPE, '-|', "git log -1 --no-color $master_branch" or die $!; |
open PIPE, '-|', "git log -1 --no-color $master_branch" or die $!; |
Line 45 while (<PIPE>) {
|
Line 47 while (<PIPE>) {
|
close PIPE; |
close PIPE; |
die "Unable to determine commit hash for master branch: $master_branch\n" unless defined $master_commit; |
die "Unable to determine commit hash for master branch: $master_branch\n" unless defined $master_commit; |
|
|
my @extra_files; |
|
open(IN, '<', 'Makefile.in') or die "Couldn't open Makefile.in: $!\n"; |
|
while (<IN>) { |
|
if (s/^GENFILES=//) { |
|
while (s/\\$//) { |
|
$_ .= <IN>; |
|
} |
|
@extra_files = split(' ', $_); |
|
last; |
|
} |
|
} |
|
close IN; |
|
|
|
if ($incl_generated_files) { |
if ($incl_generated_files) { |
|
my @extra_files = get_extra_files(); |
die "'$tmp_dir' must not exist in the current directory.\n" if -e $tmp_dir; |
die "'$tmp_dir' must not exist in the current directory.\n" if -e $tmp_dir; |
mkdir($tmp_dir, 0700) or die "Unable to mkdir($tmp_dir): $!\n"; |
mkdir($tmp_dir, 0700) or die "Unable to mkdir($tmp_dir): $!\n"; |
system "$make_gen_cmd && rsync -a @extra_files $tmp_dir/master/" and exit 1; |
system "$make_gen_cmd && rsync -a @extra_files $tmp_dir/master/" and exit 1; |
Line 124 if ($incl_generated_files) {
|
Line 114 if ($incl_generated_files) {
|
} |
} |
|
|
sleep 1 while $last_touch >= time; |
sleep 1 while $last_touch >= time; |
system "git checkout $master_branch" and exit 1; | system "git checkout $starting_branch" and exit 1; |
|
|
exit; |
exit; |
|
|
Line 171 sub update_patch
|
Line 161 sub update_patch
|
open(OUT, '>', "$patches_dir/$patch.diff") or die $!; |
open(OUT, '>', "$patches_dir/$patch.diff") or die $!; |
print OUT $description{$patch}, "\nbased-on: $based_on\n"; |
print OUT $description{$patch}, "\nbased-on: $based_on\n"; |
|
|
|
my @extra_files; |
if ($incl_generated_files) { |
if ($incl_generated_files) { |
|
@extra_files = get_extra_files(); |
system "$make_gen_cmd && rsync -a @extra_files $tmp_dir/$patch/" and exit 1; |
system "$make_gen_cmd && rsync -a @extra_files $tmp_dir/$patch/" and exit 1; |
} |
} |
$last_touch = time; |
$last_touch = time; |
Line 196 sub update_patch
|
Line 188 sub update_patch
|
} else { |
} else { |
($parent_dir) = $parent =~ m{([^/]+)$}; |
($parent_dir) = $parent =~ m{([^/]+)$}; |
} |
} |
open(PIPE, '-|', 'diff', '-up', "$tmp_dir/$parent_dir", "$tmp_dir/$patch") or die $!; | open(PIPE, '-|', 'diff', '-Nurp', "$tmp_dir/$parent_dir", "$tmp_dir/$patch") or die $!; |
while (<PIPE>) { |
while (<PIPE>) { |
s#^(diff -up) $tmp_dir/[^/]+/(.*?) $tmp_dir/[^/]+/(.*)#$1 a/$2 b/$3#o; | s#^(diff -Nurp) $tmp_dir/[^/]+/(.*?) $tmp_dir/[^/]+/(.*)#$1 a/$2 b/$3#o; |
s#^\Q---\E $tmp_dir/[^/]+/([^\t]+)\t.*#--- a/$1#o; |
s#^\Q---\E $tmp_dir/[^/]+/([^\t]+)\t.*#--- a/$1#o; |
s#^\Q+++\E $tmp_dir/[^/]+/([^\t]+)\t.*#+++ b/$1#o; |
s#^\Q+++\E $tmp_dir/[^/]+/([^\t]+)\t.*#+++ b/$1#o; |
print OUT $_; |
print OUT $_; |
} |
} |
close PIPE; |
close PIPE; |
|
unlink @extra_files; |
} |
} |
|
|
close OUT; |
close OUT; |
Line 212 sub update_patch
|
Line 205 sub update_patch
|
} |
} |
|
|
exit; |
exit; |
|
|
|
sub get_extra_files |
|
{ |
|
my @extras; |
|
|
|
open(IN, '<', 'Makefile.in') or die "Couldn't open Makefile.in: $!\n"; |
|
while (<IN>) { |
|
if (s/^GENFILES=//) { |
|
while (s/\\$//) { |
|
$_ .= <IN>; |
|
} |
|
@extras = split(' ', $_); |
|
last; |
|
} |
|
} |
|
close IN; |
|
|
|
return @extras; |
|
} |
|
|
sub usage |
sub usage |
{ |
{ |