uh_parser/uh.pl
changeset 293 a02973783e64
parent 282 83443e6675cd
child 294 60fee4a35d67
equal deleted inserted replaced
292:4629129243a0 293:a02973783e64
   183 			print "WARNING: recipe_failure with component field empty at $csv_file line $csv_linenum. Skipping\n";
   183 			print "WARNING: recipe_failure with component field empty at $csv_file line $csv_linenum. Skipping\n";
   184 			next;
   184 			next;
   185 		}
   185 		}
   186 		if ($failure->{component})
   186 		if ($failure->{component})
   187 		{
   187 		{
   188 			if ($failure->{component} =~ m,/((os|mw|app|tools|ostools|adaptation|unknown)/[a-zA-Z]+),)
   188 			$failure_package = RaptorCommon::get_package_subpath($failure->{component});
   189 			{
   189 			if (!$failure_package)
   190 				$failure_package = $1;
       
   191 			}
       
   192 			else
       
   193 			{
   190 			{
   194 				print "WARNING: summary line with wrong component path at $csv_file line $csv_linenum. Skipping\n";
   191 				print "WARNING: summary line with wrong component path at $csv_file line $csv_linenum. Skipping\n";
   195 				next;
   192 				next;
   196 			}
   193 			}
   197 		}
   194 		}
   293 {
   290 {
   294 	my $mustlink = print_package_specific_summary($package);
   291 	my $mustlink = print_package_specific_summary($package);
   295 	if ($mustlink)
   292 	if ($mustlink)
   296 	{
   293 	{
   297 		my $packagesummaryhtml = $package;
   294 		my $packagesummaryhtml = $package;
   298 		$packagesummaryhtml =~ s,/,_,;
   295 		$packagesummaryhtml =~ s,/,_,g;
   299 		$packagesummaryhtml .= ".html";
   296 		$packagesummaryhtml .= ".html";
   300 		my $packageline = "<tr><td><a href='$packagesummaryhtml'>$package</a></td>";
   297 		my $packageline = "<tr><td><a href='$packagesummaryhtml'>$package</a></td>";
   301 		for (@severities)
   298 		for (@severities)
   302 		{
   299 		{
   303 			my $failuresbyseverity = 0;
   300 			my $failuresbyseverity = 0;
   335 
   332 
   336 sub print_category_specific_summary
   333 sub print_category_specific_summary
   337 {
   334 {
   338 	my ($category, $failures_by_severity) = @_;
   335 	my ($category, $failures_by_severity) = @_;
   339 	
   336 	
   340 	my $filenamebase = $category;
   337 	my $filenamebase = $category; 
   341 	$filenamebase =~ s,/,_,;
   338 	$filenamebase =~ s,/,_,g;
   342 	
   339 	
   343 	open(SPECIFIC, ">$outputdir/$filenamebase.html");
   340 	open(SPECIFIC, ">$outputdir/$filenamebase.html");
   344 	print SPECIFIC "FAILURES FOR CATEGORY $category<br/>\n";
   341 	print SPECIFIC "FAILURES FOR CATEGORY $category<br/>\n";
   345 		
   342 		
   346 	for my $severity (@severities)
   343 	for my $severity (@severities)
   374 {
   371 {
   375 	my ($package) = @_;
   372 	my ($package) = @_;
   376 	
   373 	
   377 	my $anyfailures = 0;
   374 	my $anyfailures = 0;
   378 	
   375 	
   379 	my $filenamebase = $package;
   376 	my $filenamebase = $package; 
   380 	$filenamebase =~ s,/,_,;
   377 	$filenamebase =~ s,/,_,g;
   381 	
   378 	
   382 	if (defined $recipe_failures_by_package_severity->{$package})
   379 	if (defined $recipe_failures_by_package_severity->{$package})
   383 	{
   380 	{
   384 		$anyfailures = 1;
   381 		$anyfailures = 1;
   385 		
   382 		
   420 	if ($missing)
   417 	if ($missing)
   421 	{
   418 	{
   422 		$missing_by_package->{$package} = 0;
   419 		$missing_by_package->{$package} = 0;
   423 		
   420 		
   424 		my $missinglistfile = $package;
   421 		my $missinglistfile = $package;
   425 		$missinglistfile =~ s,/,_,;
   422 		$missinglistfile =~ s,/,_,g;
   426 		$missinglistfile .= "_missing.txt";
   423 		$missinglistfile .= "_missing.txt";
   427 		if (open(MISSINGLIST, "$::raptorbitsdir/$missinglistfile"))
   424 		if (open(MISSINGLIST, "$::raptorbitsdir/$missinglistfile"))
   428 		{
   425 		{
   429 			my @list = ();
   426 			my @list = ();
   430 			while(<MISSINGLIST>)
   427 			while(<MISSINGLIST>)
   505 	
   502 	
   506 	my $allpackages = {};
   503 	my $allpackages = {};
   507 	
   504 	
   508 	for my $bldinf (keys %{$allbldinfs})
   505 	for my $bldinf (keys %{$allbldinfs})
   509 	{
   506 	{
   510 		# normalize bldinf path
   507 		RaptorCommon::normalize_bldinf_path(\$bldinf);
   511 		$bldinf = lc($bldinf);
       
   512 		$bldinf =~ s,^[A-Za-z]:,,;
       
   513 		$bldinf =~ s,[\\],/,g;
       
   514 		
   508 		
   515 		my $package = '';
   509 		my $package = '';
   516 		if ($bldinf =~ m,/((os|mw|app|tools|ostools|adaptation|unknown)/[a-zA-Z]+),)
   510 		print "bldinf: $bldinf\n";
   517 		{
   511 		$package = RaptorCommon::get_package_subpath($bldinf);
   518 			$package = $1;
   512 		print "package: $package\n";
   519 		}
   513 		if (!$package)
   520 		else
       
   521 		{
   514 		{
   522 			print "WARNING: can't understand bldinf attribute of recipe: $bldinf. Won't dump to failed recipes file.\n";
   515 			print "WARNING: can't understand bldinf attribute of recipe: $bldinf. Won't dump to failed recipes file.\n";
   523 		}
   516 		}
   524 		
   517 		
   525 		$allpackages->{$package} = 1;
   518 		$allpackages->{$package} = 1;