#!/usr/bin/perl -w
#
# Script for checking out the Wings source from CVS.
#
# $Id: wings_src_rel,v 1.4 2004/04/30 06:28:25 bjorng Exp $
#
use strict;
my $WINGS = "https://svn.sourceforge.net/svnroot/wings/trunk";

my $cmd;
my $ver;

if (@ARGV) {
    $ver = shift;
    $ver =~ m/^\d+/ or die "$0: '$ver' does not look like a version number\n";
}

#
# Check current directory.
#
my @garbage;
while (<wings*>) {
    next unless -d $_;
    push @garbage, $_;
}

if (@garbage) {
    $cmd = "rm -rf @garbage";
    system $cmd;
}

#
# Extract from Subversion and pack.
#

$cmd = "svn export $WINGS wings";
system $cmd;

my $vsn_file = "wings/vsn.mk";
my $vsn;

if (defined $ver) {
    open(VSN, ">$vsn_file") or die "$0: Could not write $vsn_file\n";
    print VSN "WINGS_VSN=$ver\n";
    close VSN;
}

open(VSN, $vsn_file) or die "$0: Could not find $vsn_file\n";
while (<VSN>) {
    next if m/^\s*$/;
    chomp;
    if (m/^WINGS_VSN=(.*)/) {
	$vsn = $1;
	last;
    }
}
close VSN;

my $name = "wings-$vsn";
my $tar = "${name}.tar";
unlink $tar;
rename("wings", $name);
mkdir "$name/ebin";
mkdir "$name/patches";
system "tar cf $tar $name";
unlink "$tar.bz2";
system "bzip2 $tar";
