#!/usr/bin/env perl

#########################################################################
#
# mairix - message index builder and finder for maildir folders.
#
# Copyright (C) Richard P. Curnow  2005,2006
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of version 2 of the GNU General Public License as
# published by the Free Software Foundation.
# 
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
# 
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
# =======================================================================

#########################################################################

$version = shift || die "Usage : $0 <version>\n";
$subdir = "mairix-${version}";

unless (-d "RELEASES") {
  mkdir "RELEASES", 0755;
}

system ("git tag -s $version");
die "git tag failed" if ($? != 0);
if (-d "RELEASES/$subdir") {
  system ("rm -rf RELEASES/$subdir");
}

system ("git archive --format=tar --prefix=RELEASES/${subdir}/ ${version} | tar xf -");
die "git archive failed" if ($? != 0);

chdir "RELEASES" or die "Cannot get into RELEASES";
$here = qx/pwd/;
chomp $here;
chdir $subdir or die "Cannot get into $subdir";

open (OUT, ">version.txt");
print OUT $version."\n";
close OUT;

open (IN, "<mairix.spec.sample");
open (OUT, ">mairix.spec");
while (<IN>) {
  s/\@\@VERSION\@\@/$version/;
  print OUT;
}
close (IN);
close (OUT);


unlink "make_release";
unlink "mairix.spec.sample";
unlink ".gitignore";
unlink "dfasyn/.gitignore";

chdir $here;
system ("tar cvf - $subdir | gzip -9 > ${subdir}.tar.gz");
system ("gpg -b -a -o ${subdir}-tar-gz-asc.txt ${subdir}.tar.gz");


