mutter/build/gen-gcov.pl

45 lines
852 B
Perl
Raw Normal View History

#!/usr/bin/perl
use strict;
use warnings;
our $gcov_file = $ARGV[0] or undef;
open my $g, '<', $gcov_file
or die("Unable to open '$gcov_file': $!");
my ($actual, $covered, $uncovered, $percent) = (0, 0, 0, 0);
while (<$g>) {
my $report_line = $_;
chomp($report_line);
$actual += 1;
$actual -= 1 if $report_line =~ / -:/;
$uncovered += 1 if $report_line =~ /#####:/;
}
close($g);
$covered = $actual - $uncovered;
$percent = int(($covered * 100) / $actual);
$gcov_file =~ s/^\.\///g;
$gcov_file =~ s/\.gcov$//g;
my $cover_file = "$gcov_file:";
my $cover_literal = "$covered / $actual";
my $cover_percent = "$percent%";
format ReportLine =
@<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< @>>>>>>>>>>>>> @>>>>>
$cover_file, $cover_literal, $cover_percent
.
$~ = 'ReportLine';
write;
0;