X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/6d12a859bc99ae8fa52ef889c2b818fbf7df7198..f041b025573c494d19215134fe4f39e729a59d76:/packaging/release-rsync diff --git a/packaging/release-rsync b/packaging/release-rsync index 8ce661b7..e70691e5 100755 --- a/packaging/release-rsync +++ b/packaging/release-rsync @@ -31,33 +31,65 @@ my $note = <; -chomp $version; +print "Checking out the latest rsync into $releasedir...\n"; + +mkdir($releasedir, 0755) or die $! unless -d $releasedir; +chdir($releasedir) or die $!; + +system "rm -rf rsync rsync-*"; + +system "cvs checkout -P rsync"; + +chdir('rsync') or die $!; + +my($version, $lastversion); +open(IN, 'configure.in') or die $!; +while () { + if (/^RSYNC_VERSION=(.*)/) { + $version = $lastversion = $1; + last; + } +} +close IN; + +$lastversion =~ s/(\d+)cvs$/ $1 - 1 /e; +$version =~ s/cvs/pre1/ || $version =~ s/pre(\d+)/ 'pre' . ($1 + 1) /e; + +print "\nPlease enter the version number of this release: [$version] "; +chomp($_ = ); +if ($_ eq '.') { + $version =~ s/pre\d+//; +} elsif ($_ ne '') { + $version = $_; +} $version =~ s/[-.]*pre[-.]*/pre/; +$lastversion =~ s/(\d+)pre\d+$/ $1 - 1 /e unless $version =~ /pre/; + my $cvstag = "release-$version"; $cvstag =~ s/[.]/-/g; $cvstag =~ s/pre/-pre/; -print "Enter the previous version to produce a patch against: "; -my $lastversion = ; -chomp $lastversion; +print "Enter the previous version to produce a patch against: [$lastversion] "; +chomp($_ = ); +$lastversion = $_ if $_ ne ''; $lastversion =~ s/[-.]*pre[-.]*/pre/; -print "Please enter the RPM release number of this release (default 1): "; -my $release = ; -chomp $release; -$release = 1 if $release eq ''; +my $release = 1; +print "Please enter the RPM release number of this release: [$release] "; +chomp($_ = ); +$release = $_ if $_ ne ''; my $diffdir; if ($lastversion =~ /pre/) { @@ -84,8 +116,6 @@ print < "; $_ = ; -mkdir($releasedir, 0755) or die $! unless -d $releasedir; -chdir($releasedir) or die $!; - -system "rm -rf rsync rsync-$version rsync-$lastversion"; - -system "cvs checkout -P rsync"; - -chdir('rsync') or die $!; - print $dots; system "./prepare-source && touch proto.h"; @@ -148,27 +169,29 @@ system "patches/verify-patches -un -an"; system "cvs -q diff | egrep -v '^(===============|RCS file: |retrieving revision |Index: )' | less -p '^diff .*'"; -if ($live) { - print < "; $_ = ; system "cvs commit -m 'Preparing for release of $version'"; system "cvs tag -F $cvstag ."; } else { - print "\n**** Skipping cvs commit and tagging in TESTMODE ****\n"; + print "** Skipping prompt in TESTMODE **\n"; } print <