]> Pileus Git - ~andy/fetchmail/blobdiff - makerelease
Version bump.
[~andy/fetchmail] / makerelease
index 6b7ccfcb9ad1824c751b7a461aed81d845d63fea..eba4d744385ebb051a08eb85f15eceb1cd62a433 100755 (executable)
@@ -4,8 +4,32 @@
 # Dumps a release notice and diffs as a MIME multipart message 
 # in RELEASE_NOTES
 #
-$version=`grep VERS= Makefile.in`;
-$version =~ /VERS=(.*)/;
+$timezone = "-0500";
+
+$diffs = 0;
+$verbose = 0;
+$null = ">/dev/null";
+while ($i = shift @ARGV)
+{
+       if ($i =~ /^(--diffs|-d)$/i)
+       {
+               $diffs = 1;
+               next;
+       }
+
+       if ($i =~ /^(--verbose|-v)$/i)
+       {
+               $verbose = 1;
+               $null = "";
+               next;
+       }
+
+       die "Error: Unknown option: $i\n";
+}
+
+
+$version=`grep 'VERSION *=' Makefile.in`;
+$version =~ /VERSION *= *(.*)/;
 $version = $1;
 $rcsid = $version;
 $rcsid =~ tr/./-/;
@@ -33,30 +57,37 @@ if ($versions[0] eq $rcsid) {
 
 print "Building $version release, RCS ID $rcsid, previous RCS ID $oldid\n";
 
-print "Test-building the software...\n";
-if (system("su -c 'make >/dev/null' esr")) {
+print "### Test-building the software...\n";
+if (system("su -c '(configure --disable-nls; make) $null' esr")) {
        die("Compilation failure\n");
 }
 
-print "Building the distribution...\n";
-if (system("su -c 'make dist >/dev/null' esr")) {
+print "### Building the distribution...\n";
+if (system("su -c 'make dist $null' esr")) {
        die("Distribution-build failure\n");
 }
 
-print "Building the RPMs...\n";
-if (system("make rpm >/dev/null 2>/dev/null && chown esr *.rpm")) {
+print "### Building the RPMs...\n";
+if (system("make rpm $null && chown esr *.rpm")) {
        die("RPM-build failure\n");
 }
 
 open(REPORT, ">PREAMBLE.$$");
 
 print REPORT <<EOF;
-#!/usr/lib/sendmail -t -oem
 From: esr\@thyrsus.com (Eric S. Raymond)
-To: fetchmail-announce\@ccil.org
+To: fetchmail-friends\@ccil.org, fetchmail-announce\@ccil.org
+Reply-To: esr\@thyrsus.com (Eric S. Raymond)
+Subject: The $version release of fetchmail is available
+FCC: ~/postings/outmail
 
 The $version release of fetchmail is now available at the usual locations,
-including http://$ENV{'WWWHOST'}/~esr/fetchmail.  Here are the release notes:
+including <URL:http://$ENV{'WWWVIRTUAL'}/~esr/fetchmail>.
+
+The source archive is available at:
+<URL:http://$ENV{'WWWVIRTUAL'}/~esr/fetchmail/fetchmail-${version}.tar.gz>
+
+Here are the release notes:
 
 EOF
 
@@ -77,35 +108,45 @@ while (<NEWS>) {
 
 $oldrcs = $oldid;
 $oldrcs =~ tr/-/./;
-print REPORT <<EOF;
 
-By popular demand, diffs from the previous release have been omitted.
-EOF
-#Diffs from the previous ($oldrcs) release follow as a MIME attachment.
+if ($diffs) {
+       print REPORT "Diffs from the previous ($oldrcs) release follow as a MIME attachment."
+} else {
+        print REPORT "By popular demand, diffs from the previous release have been omitted."
+}
 
 close(NEWS);
 
 close(REPORT);
-system("~/bin/fortune.pl ~/.randsig >>PREAMBLE.$$");
 
 if ($rcsid eq '<workfile>') {
     system("rcsdiff -u -r$oldid          RCS/* 2>/dev/null >DIFFS.$$");
 } else {
     system("rcsdiff -u -r$oldid -r$rcsid RCS/* 2>/dev/null >DIFFS.$$");
 }
+print "Diff size:";
+system("wc <DIFFS.$$");
 
-rename("PREAMBLE.$$", "RELEASE.NOTES");
+if ($diffs) {
+       system "metasend -b -D 'fetchmail-$rcsid announcement' -m 'text/plain' -e 7bit -f PREAMBLE.$$ -n -D 'diff -u between -$oldrcs $rcsid' -m 'text/plain' -e 7bit -f DIFFS.$$ -o RELEASE.NOTES";
+} else {
+       rename("PREAMBLE.$$", "RELEASE.NOTES");
+}
 system("chown esr RELEASE.NOTES");
 chmod(0700, "RELEASE.NOTES");
-# If we ever want to go back to enclosing diffs.
-#system "metasend -b -D 'fetchmail-$rcsid announcement' -m 'text/plain' -e 7bit -f PREAMBLE.$$ -n -D 'diff -u between -$oldrcs $rcsid' -m 'text/plain' -e 7bit -f DIFFS.$$ -o RELEASE_NOTES";
 
-unlink("PREAMBLE.$$");
+#unlink("PREAMBLE.$$");
 unlink("DIFFS.$$");
 
 print "Building index page...\n";
 system("rm -f index.html; indexgen.sh");
 
+print "Building test server list...\n";
+system("rm -f testservers.html; testservers-gen.sh >testservers.html");
+
+print "Making activity graph...";
+growthplot;
+
 print "Done\n";
 
 # makerelease ends here