132 lines
4.4 KiB
Perl
132 lines
4.4 KiB
Perl
#! /usr/bin/perl -w
|
|
use warnings;
|
|
use File::Copy::Recursive qw(fcopy rcopy dircopy fmove rmove dirmove);
|
|
|
|
open FH, '..\Xbox_BuildVer.h' or die $!;
|
|
|
|
my $lineno=1;
|
|
my $index;
|
|
|
|
while(<FH>)
|
|
{
|
|
$lineno++;
|
|
|
|
$index = rindex($_,'#define VER_PRODUCTBUILD ');
|
|
my($line) = $_;
|
|
chomp($line);
|
|
if($index>-1)
|
|
{
|
|
@build = split(/ +/, $line);
|
|
|
|
$buildnum = sprintf("%4d", $build[2]);
|
|
$buildnum=~ tr/ /0/;
|
|
}
|
|
}
|
|
|
|
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
|
|
|
|
##print 'Build num is Minecraft_', $year-100,'.',$mon+1,'.',$mday,'.',$buildnum;
|
|
|
|
$buildname=sprintf("Minecraft_%02d.%02d.%02d.%s_Release", $year-100,$mon+1,$mday,$buildnum);
|
|
$builddir=sprintf("c:/MinecraftReleaseBuilds/%s",$buildname);
|
|
|
|
|
|
print $builddir;
|
|
|
|
## now create the build directories
|
|
|
|
$dir = 'c:/MinecraftReleaseBuilds/';
|
|
|
|
unless(-d $dir)
|
|
{
|
|
mkdir $dir or die;
|
|
}
|
|
|
|
$dir = 'c:/MinecraftReleaseBuilds/pdbs/';
|
|
|
|
unless(-d $dir)
|
|
{
|
|
mkdir $dir or die;
|
|
}
|
|
|
|
$dir = 'c:/MinecraftReleaseBuilds/Zips/';
|
|
|
|
unless(-d $dir)
|
|
{
|
|
mkdir $dir or die;
|
|
}
|
|
|
|
unless(-d $builddir)
|
|
{
|
|
mkdir $builddir or die;
|
|
}
|
|
|
|
$builddir=sprintf("c:/MinecraftReleaseBuilds/%s/Docs",$buildname);
|
|
unless(-d $builddir)
|
|
{
|
|
mkdir $builddir or die;
|
|
}
|
|
|
|
$builddir=sprintf("c:/MinecraftReleaseBuilds/%s/Minecraft360",$buildname);
|
|
unless(-d $builddir)
|
|
{
|
|
mkdir $builddir or die;
|
|
}
|
|
|
|
$builddir=sprintf("c:/MinecraftReleaseBuilds/%s/Minecraft360/Saves",$buildname);
|
|
unless(-d $builddir)
|
|
{
|
|
mkdir $builddir or die;
|
|
}
|
|
|
|
## Now copy the files in
|
|
|
|
## docs
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/%s/Docs/4J Minecraft XBLA Design Changes & Additions v1.0.docx",$buildname);
|
|
fcopy('../Docs/4J Minecraft XBLA Design Changes & Additions v1.0.docx',$target) or die $!;
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/%s/Docs/Minecraft_XBLA_TIS_Nov2011.xls",$buildname);
|
|
fcopy('../Docs/Minecraft_XBLA_TIS_Nov2011.xls',$target) or die $!;
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/%s/Docs/Minecraft_XBLA_TIS_Nov2011_Asia_SYA111511.xls",$buildname);
|
|
fcopy('../Docs/Minecraft_XBLA_TIS_Nov2011_Asia_SYA111511.xls',$target) or die $!;
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/%s/Docs/Minecraft_XBLA_TIS_Nov2011_EU.xls",$buildname);
|
|
fcopy('../Docs/Minecraft_XBLA_TIS_Nov2011_EU.xls',$target) or die $!;
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/%s/Docs/Xbox Live Avatar Items - Minecraft.xlsx",$buildname);
|
|
fcopy('../Docs/Xbox Live Avatar Items - Minecraft.xlsx',$target) or die $!;
|
|
|
|
## xex
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/%s/Minecraft360/Minecraft_Release.xex",$buildname);
|
|
fcopy('../../Release/Minecraft.Client.xex',$target) or die $!;
|
|
|
|
## game data
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/%s/Minecraft360/res/",$buildname);
|
|
rcopy('../res/',$target) or die $!;
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/%s/Minecraft360/Tutorial/TutorialLevel.mcs",$buildname);
|
|
rcopy('../Tutorial/TutorialLevel.mcs',$target) or die $!;
|
|
##$target=sprintf("c:/MinecraftReleaseBuilds/%s/Minecraft360/Trial/TrialLevel.mcs",$buildname);
|
|
##rcopy('../Trial/TrialLevel.mcs',$target) or die $!;
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/%s/Minecraft360/584111F70AAAAAAA",$buildname);
|
|
rcopy('../584111F70AAAAAAA',$target) or die $!;
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/%s/Minecraft360/AvatarAwards",$buildname);
|
|
rcopy('../AvatarAwards',$target) or die $!;
|
|
|
|
## release files
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/pdbs/%s/Release/Default.exe",$buildname);
|
|
fcopy('../../Release/Minecraft.Client.exe',$target) or die $!;
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/pdbs/%s/Release/Default.pdb",$buildname);
|
|
fcopy('../../Release/Minecraft.Client.pdb',$target) or die $!;
|
|
$target=sprintf("c:/MinecraftReleaseBuilds/pdbs/%s/Release/Default.xdb",$buildname);
|
|
fcopy('../../Release/Minecraft.Client.xdb',$target) or die $!;
|
|
|
|
# Cheat save
|
|
$target=sprintf("c:/MinecraftSubmissionBuilds/%s/Test/Cheats/Content/E0000C2E8D782D00/584111F7/00000001/Save2012 11718 748.bin",$buildname);
|
|
fcopy('../Cheats/E0000C2E8D782D00/584111F7/00000001/Save2012 11718 748.bin',$target) or die $!;
|
|
$target=sprintf("c:/MinecraftSubmissionBuilds/%s/Test/Cheats/Content/E0000C2E8D782D00/FFFE07D1/00010000/E0000C2E8D782D00",$buildname);
|
|
fcopy('../Cheats/E0000C2E8D782D00/FFFE07D1/00010000/E0000C2E8D782D00',$target) or die $!;
|
|
|
|
open FH, "+>", 'zipthebuild.cmd' or die $!;
|
|
|
|
$zipline = sprintf("\"C:\\Program Files (x86)\\winzip\\wzzip\" -p -r -ex c:\\MinecraftReleaseBuilds\\Zips\\%s.zip c:\\MinecraftReleaseBuilds\\%s\\*",$buildname,$buildname);
|
|
|
|
print FH $zipline;
|
|
close FH;
|