104 lines
2.6 KiB
Perl
Executable File
104 lines
2.6 KiB
Perl
Executable File
#!/usr/bin/perl
|
|
|
|
use strict;
|
|
|
|
my @filelist = qw(Announcers/instructions.txt
|
|
BackgroundTransitions
|
|
BackgroundEffects
|
|
BGAnimations/instructions.txt
|
|
CDTitles/instructions.txt
|
|
Characters/default
|
|
Courses/instructions.txt
|
|
Courses/Samples
|
|
Packages/instructions.txt
|
|
NoteSkins/instructions.txt
|
|
NoteSkins/common/default
|
|
NoteSkins/dance/default
|
|
NoteSkins/dance/flat
|
|
NoteSkins/dance/note
|
|
NoteSkins/dance/solo
|
|
NoteSkins/pump/Classic
|
|
NoteSkins/pump/default
|
|
RandomMovies/instructions.txt
|
|
Songs/instructions.txt
|
|
Themes/instructions.txt
|
|
Themes/default
|
|
Data/Translations.xml
|
|
Data/AI.ini
|
|
Data/splash.png
|
|
README-FIRST.html
|
|
NEWS
|
|
StepMania.app);
|
|
my @docs = qw(Copying.txt ChangeLog.txt);
|
|
|
|
die "usage: $0 path version\n" if @ARGV < 2;
|
|
my $srcdir = $ARGV[0];
|
|
my $destdir = "StepMania-$ARGV[1]";
|
|
my $smdir = "$destdir/StepMania";
|
|
my $scripts = `dirname $0`;
|
|
|
|
chomp $scripts;
|
|
|
|
if (-e $destdir)
|
|
{
|
|
print "Removing $destdir.\n";
|
|
system(("rm", "-rf", "$destdir")) == 0 or die "$0: rm -rf failed: $!\n";
|
|
}
|
|
|
|
mkdir $destdir;
|
|
mkdir $smdir;
|
|
foreach (@filelist)
|
|
{
|
|
my $file = "$srcdir/$_";
|
|
my @parts = split /\//;
|
|
|
|
if (@parts > 1)
|
|
{
|
|
pop @parts;
|
|
my $dir = "$smdir/" . join '/', @parts;
|
|
my @args = ("mkdir", "-p", $dir);
|
|
|
|
system(@args) == 0 or die "$0: mkdir -p failed: $!\n";
|
|
}
|
|
|
|
my @args = ("cp", "-r", $file, "$smdir/$_");
|
|
|
|
system(@args) == 0 or die "$0: cp -r failed: $!\n";
|
|
}
|
|
foreach (@docs)
|
|
{
|
|
my @args = ("cp", "$srcdir/Docs/$_", "$smdir/$_");
|
|
|
|
system(@args) == 0 or die "$0: cp -v failed: $!\n";
|
|
}
|
|
#clean up CVS directories
|
|
my @args = ('find', $smdir, '-name', 'CVS', '-prune', '-exec', 'rm',
|
|
'-rf', '{}', ';');
|
|
system(@args) == 0 or die "$0: failed to clean up CVS directories: $!\n";
|
|
system(("strip", "-x", "$smdir/StepMania.app/Contents/MacOS/StepMania"));
|
|
|
|
my $rscdir = "Install_Resources";
|
|
|
|
if (-e $rscdir)
|
|
{
|
|
print "Removing $rscdir.\n";
|
|
system(("rm", "-rf", "$rscdir")) == 0 or die "$0: rm -rf failed: $!\n";
|
|
}
|
|
|
|
# Make the resources directory now
|
|
mkdir $rscdir;
|
|
system(("cp", "$srcdir/README-FIRST.html", "$rscdir/ReadMe.html")) == 0
|
|
or die "$0: cp failed: $!\n";
|
|
system(("cp", "$srcdir/Docs/Copying.txt", "$rscdir/License.txt")) == 0
|
|
or die "$0: cp failed $!\n";
|
|
system(("cp", "$scripts/postinstall", $rscdir)) == 0
|
|
or die "$0: cp failed $!\n";
|
|
|
|
# build the package
|
|
# my $tool = "/Developer/Applications/Utilities/PackageMaker.app/"
|
|
# . "Contents/MacOS/PackageMaker";
|
|
# @args = ($tool, "-build", "-p", "$destdir.pkg", "-f", $destdir,
|
|
# "-r", $rscdir);
|
|
# system(@args) == 0 or die "$0: system @args failed: $!\n";
|
|
print "Success.\n";
|