common/tools/analysis/parse_yarp_files.pl
author Shabe Razvi <shaber@symbian.org>
Fri, 11 Jun 2010 15:56:59 +0100
changeset 1100 561033b10e0f
parent 206 62976b2583f7
permissions -rw-r--r--
Major rework to enable rebuilds of the platform from single sf-build call - Change the way that sources and system model are selected: now property based - Split sources.csv to have publicly available http repos only; internal repos are in sources_rnd.csv - System model output in BOM renamed to system_model.xml rather than canonical_system_definition_{config}.xml to make reuse predictable - Public property configuration public_override_props.ant.xml now used. - Fix all exports to run based upon configuration specified (no export configuration makes SBS assume RVCT is being used, which is not available to all) - sf.production.build MUST be defined and TRUE to enable production build properties, public config is DEFAULT behaviour


my @asYarpFiles = ();
open(FILE, $ARGV[0]);
while ( <FILE> )
{
	if ( m/^[^,]*,[^,]*,([^,]*)/ )
	{
		my $sFile = $1;
		chomp $sFile;
#		print "$sFile\n";
		push(@asYarpFiles, $sFile);
	}
}
close(FILE);
my $nYarpFiles = scalar(@asYarpFiles);
#print "Found $nYarpFiles files to parse\n";

my $nTotalRecipeErrors = 0;
for my $nYarpFile (@asYarpFiles)
{
	my $nRecipeErrors = 0;
#	print "Parsing file $nYarpFile...\n";
	open(FILE, $nYarpFile);
	while ( <FILE> )
	{
		if ( m/^Raptor recipe failures:\s+(\d+)$/ )
		{
#			print "Raptor recipe failures: $1\n";
			$nRecipeErrors = $1;
		}
	}
	close(FILE);
#	print "Recipe errors in $nYarpFile: $nRecipeErrors\n";
	$nTotalRecipeErrors += $nRecipeErrors;
}
#print "Total recipe errors across all files: $nTotalRecipeErrors\n";

print "$nTotalRecipeErrors";