aboutsummaryrefslogtreecommitdiffstats
path: root/makerelease
diff options
context:
space:
mode:
Diffstat (limited to 'makerelease')
-rwxr-xr-xmakerelease176
1 files changed, 0 insertions, 176 deletions
diff --git a/makerelease b/makerelease
deleted file mode 100755
index 41ddf038..00000000
--- a/makerelease
+++ /dev/null
@@ -1,176 +0,0 @@
-#!/usr/bin/env perl
-#
-# Make a fetchmail release. Must be run as root, to make RPMs.
-# Dumps a release notice and diffs as a MIME multipart message
-# in RELEASE_NOTES
-#
-use POSIX qw(strftime);
-$timezone = strftime('%z', localtime) || "-0500";
-$tmp = $ENV{TMPDIR} || $ENV{TMP} || $ENV{TEMP} || "/tmp";
-
-$project = "fetchmail";
-$svnrepos = "svn://svn.berlios.de/$project";
-$website = "http://developer.berlios.de/projects/$project";
-$mailfrom = "<$project-devel-owner\@lists.berlios.de> (Fetchmail Development Team)";
-
-# parse options
-$diffs = 0;
-$verbose = 0;
-$null = ">/dev/null";
-$errnull = "2>/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";
-}
-
-# extract version from source
-$version=`grep 'AC_INIT' configure.in`;
-$version =~ /AC_INIT\([^,]*,\[?([0-9.]+)\]?\)/;
-$version = $1;
-die "cannot determine version" unless defined $1;
-$tag = "RELEASE_$version";
-$tag =~ tr/./-/;
-
-# extract existing tags
-open(ID, "svn ls $svnrepos/tags|");
-while (<ID>) {
- if (m{^(RELEASE_.*)/}) {
- unshift(@versions, $1);
- }
-}
-close(ID);
-
-if ($versions[0] eq $tag) {
- $tag = $versions[0];
- $oldtag = $versions[1];
-} else {
- $tag = '<workfile>';
- $oldtag = $versions[0];
-}
-
-$ENV{PATH} .= ":./dist-tools:./dist-tools/shipper:.";
-
-print "Building $version release, tag $tag, previous tag $oldtag\n";
-
-if (-d autom4te.cache) {
- system("rm -rf autom4te.cache")
- and die "Failure in removing autom4te.cache";
-}
-
-if (system("autoreconf -isv")) {
- die("Failure in regenerating autoconf files\n");
-}
-
-if (system("./configure && make clean && make -C po update-po && make clean")) {
- die("Failure in translation-file rebuild\n");
-}
-
-print "### Test-building the software...\n";
-if (system("./configure && make clean && make all check")) {
- die("Compilation failure\n");
-}
-
-print "### Building the distribution...\n";
-if (system("make dist $null")) {
- die("Distribution-build failure\n");
-}
-
-print "### Building the RPMs...\n";
-if (system("buildrpms $project-${version}.tar.gz $null")) {
- die("RPM-build failure\n");
-}
-
-open(REPORT, ">$tmp/$project.PREAMBLE.$$");
-
-print REPORT <<EOF;
-From: $mailfrom
-Subject: The $version release of $project is available
-
-The $version release of $project is now available at the usual locations,
-including <URL:$website>.
-
-The source archive is available at:
-<URL:$website/$project-${version}.tar.gz>
-
-Here are the release notes:
-
-EOF
-
-# Extract the current notes
-open(NEWS, "NEWS");
-while (<NEWS>) {
- if (/^$project/) {
- print REPORT $_;
- last;
- }
-}
-while (<NEWS>) {
- if (/^$project/) {
- last;
- }
- print REPORT $_;
-}
-
-$oldver = $oldtag;
-$oldver =~ tr/-/./;
-$oldver =~ s/^RELEASE_//;
-
-if ($diffs) {
- print REPORT "Diffs from the previous ($oldver) release follow as a MIME attachment."
-} else {
- print REPORT "By popular demand, diffs from the previous release have been omitted."
-}
-
-close(NEWS);
-
-close(REPORT);
-
-if ($tag eq '<workfile>') {
- system("svn diff -r$oldtag $errnull >$tmp/$project.DIFFS.$$");
-} else {
- system("svn diff -r$oldtag -r$tag $errnull >$tmp/$project.DIFFS.$$");
-}
-print "Diff size:";
-system("wc <$tmp/$project.DIFFS.$$");
-
-if ($diffs) {
- system "metasend -b"
- ." -D '$project-$tag announcement' -m 'text/plain' -e 7bit -f $tmp/$project.PREAMBLE.$$"
- ." -n -D 'diff between $oldver and $version' -m 'text/plain' -e 7bit -f $tmp/$project.DIFFS.$$"
- ." -o ANNOUNCE.EMAIL";
-} else {
- rename("$tmp/$project.PREAMBLE.$$", "ANNOUNCE.EMAIL");
-}
-#system("chown esr ANNOUNCE.EMAIL");
-#chmod(0700, "ANNOUNCE.EMAIL");
-
-#unlink("$tmp/$project.PREAMBLE.$$");
-unlink("$tmp/$project.DIFFS.$$");
-
-print "Building index page...\n";
-system("rm -f index.html; indexgen.sh");
-
-if (-r "testsites") {
- print "Building test server list...\n";
- system("rm -f testservers.html; testservers-gen.sh >testservers.html");
-}
-
-print "Making activity graph...";
-system "growthplot";
-
-print "Done\n";
-
-# makerelease ends here