summaryrefslogtreecommitdiff
path: root/bin/vc_filter.pl
blob: 0a497380245c59f721bbc135b3cafec4dd94ffc1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# $Id$
#
# A perl script that filers length VC output into a concise html report.

# Define html tags.
$header = "<html><head>
<title>Error/Warning Summary of Daily Build</title>
</head>

<body bgcolor=\"white\">
<h1>Error/Warning Summary of Daily Build</h1><TT>\n";
$trailer = "</TT></body></html>";

$kosher_b = "";
$kosher_e = "";

$in_sin_b = "<FONT COLOR=\"RED\">";
$in_sin_e = "</FONT>";

$new_build_b = "<P>";
$new_build_e = "";

# Get filename.
$fname = $ARGV[0];
open (fp, "$fname");

print $header ;

while ($line = <fp>)
{
    print "$new_build_b $line $new_build_e<BR>" if ($line =~/^--------------------Configuration:/);

    if ($line =~/^[A-Z_a-z0-9.]+ - [0-9]+ error\(s\), +[0-9]+ warning\(s\)/)
    {
        if ($line =~/0 error\(s\), 0 warning\(s\)/)
        {
            print "$kosher_b $line $kosher_e<BR>";
        }
        else
        {
            print "$in_sin_b $line $in_sin_e<BR>";
        }
    }

    print "$in_sin_b $line $in_sin_e<BR>"
        if ($line =~/^[-A-Z_a-z0-9.\/\\:]+\([0-9]+\) : / ||
            $line =~/^[-A-Z_a-z0-9.\/\\:]+.*, line [0-9]+: / ||
            $line =~/^[-A-Z_a-z0-9.\\:]+\.obj : / ||
            $line =~/^fatal error/ ||
            $line =~/^Error executing/ ||
            $line =~/^4NT: / ||
            $line =~/^LINK : /);

}

print $trailer;