# Copyright (c) 2009 Symbian Foundation Ltd
# This component and the accompanying materials are made available
# under the terms of the License "Eclipse Public License v1.0"
# which accompanies this distribution, and is available
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
#
# Initial Contributors:
# Symbian Foundation Ltd - initial contribution.
#
# Contributors:
#
# Description:
# Extract releaseable (whatlog) information from Raptor log files
use strict;
use releaseables;
use FindBin;
use lib $FindBin::Bin;
use XML::SAX;
use RaptorSAXHandler;
use Getopt::Long;
our $basedir = '.';
my $help = 0;
GetOptions((
'basedir=s' => \$basedir,
'help!' => \$help
));
my @logfiles = @ARGV;
$help = 1 if (!@logfiles);
if ($help)
{
print "Extract releaseable (whatlog) information from Raptor log files\n";
print "Usage: perl releaseables.pl [OPTIONS] FILE1 FILE2 ...\n";
print "where OPTIONS are:\n";
print "\t--basedir=DIR Generate output under DIR (defaults to current dir)\n";
exit(0);
}
my $releaseablesdir = "$::basedir/releaseables";
$releaseablesdir =~ s,/,\\,g; # this is because rmdir doens't cope correctly with the forward slashes
system("rmdir /S /Q $releaseablesdir") if (-d "$releaseablesdir");
mkdir("$releaseablesdir");
my $saxhandler = RaptorSAXHandler->new();
$saxhandler->add_observer('releaseables', $releaseables::reset_status);
my $parser = XML::SAX::ParserFactory->parser(Handler=>$saxhandler);
for (@logfiles)
{
$parser->parse_uri($_);
}