Commit 67b9b26f authored by Wayne Davison's avatar Wayne Davison

Modified the discovery of the generated files & use "make gen".

parent b82ad950
...@@ -41,15 +41,22 @@ if ($make_tar) { ...@@ -41,15 +41,22 @@ if ($make_tar) {
die "The checkout is not clean:\n", $status unless $status =~ /\nnothing to commit \(working directory clean\)/; die "The checkout is not clean:\n", $status unless $status =~ /\nnothing to commit \(working directory clean\)/;
die "The checkout is not on the master branch.\n" unless $status =~ /^# On branch master\n/; die "The checkout is not on the master branch.\n" unless $status =~ /^# On branch master\n/;
open(IN, '<', 'prepare-source.mak') or die "Couldn't open prepare-source.mak: $!\n"; my @extra_files;
$_ = join('', <IN>); 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; close IN;
my @extra_files = m{\n([^\s:]+):.*\n\t\S}g;
map { s#^#$name/# } @extra_files; map { s#^#$name/# } @extra_files;
print "Creating $name.tar.gz\n"; print "Creating $name.tar.gz\n";
system "./prepare-source && touch proto.h"; system "make gen";
symlink('.', $name); symlink('.', $name);
system "git-archive --format=tar --prefix=$name/ HEAD >$dest/$name.tar"; system "git-archive --format=tar --prefix=$name/ HEAD >$dest/$name.tar";
system "fakeroot tar rf $dest/$name.tar @extra_files; gzip -9 $dest/$name.tar"; system "fakeroot tar rf $dest/$name.tar @extra_files; gzip -9 $dest/$name.tar";
......
...@@ -17,12 +17,19 @@ my $ztoday = time2str('%d %b %Y', time); ...@@ -17,12 +17,19 @@ my $ztoday = time2str('%d %b %Y', time);
my $curdir = Cwd::cwd; my $curdir = Cwd::cwd;
open(IN, '<', 'prepare-source.mak') or die "Couldn't open prepare-source.mak: $!\n"; my @extra_files;
$_ = join('', <IN>); 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; close IN;
my @extra_files = m{\n([^\s:]+):.*\n\t\S}g;
my $break = <<EOT; my $break = <<EOT;
========================================================================== ==========================================================================
EOT EOT
...@@ -154,7 +161,7 @@ foreach my $fn (@tweak_files) { ...@@ -154,7 +161,7 @@ foreach my $fn (@tweak_files) {
close OUT; close OUT;
} }
system "./prepare-source && touch proto.h"; system "make gen";
print $break; print $break;
system "git-diff --color |less -p '^diff .*'"; system "git-diff --color |less -p '^diff .*'";
......
...@@ -10,18 +10,26 @@ use strict; ...@@ -10,18 +10,26 @@ use strict;
die "No 'patches' directory present in the current dir.\n" unless -d 'patches'; die "No 'patches' directory present in the current dir.\n" unless -d 'patches';
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';
open(IN, '<', 'prepare-source.mak') or die "Couldn't open prepare-source.mak: $!\n"; my @extra_files;
$_ = join('', <IN>); 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; close IN;
my @extra_files = m{\n([^\s:]+):.*\n\t\S}g;
my $incl_generated_files = shift if @ARGV && $ARGV[0] eq '--gen'; my $incl_generated_files = shift if @ARGV && $ARGV[0] eq '--gen';
system "git-checkout master" and exit 1; system "git-checkout master" and exit 1;
if ($incl_generated_files) { if ($incl_generated_files) {
die "'a' must not exist in the current directory.\n" if -e 'a'; die "'a' must not exist in the current directory.\n" if -e 'a';
die "'b' must not exist in the current directory.\n" if -e 'b'; die "'b' must not exist in the current directory.\n" if -e 'b';
system "./prepare-source && rsync -a @extra_files a/" and exit 1; system "make gen && rsync -a @extra_files a/" and exit 1;
} }
my $last_touch = time; my $last_touch = time;
...@@ -74,10 +82,6 @@ if ($incl_generated_files) { ...@@ -74,10 +82,6 @@ if ($incl_generated_files) {
system "rm -rf a b"; system "rm -rf a b";
} }
print "-------- master --------\n";
sleep 1 if $last_touch == time;
system "git-checkout master && ./prepare-source";
exit; exit;
...@@ -114,7 +118,7 @@ sub update_patch ...@@ -114,7 +118,7 @@ sub update_patch
} }
if ($incl_generated_files) { if ($incl_generated_files) {
system "./prepare-source && rsync -a @extra_files b/" and exit 1; system "make gen && rsync -a @extra_files b/" and exit 1;
} }
$last_touch = time; $last_touch = time;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment