Line 1... |
Line 1... |
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
# $Id: isemsg_filter 406 2011-08-14 21:06:44Z mueller $
|
# $Id: isemsg_filter 450 2012-01-05 23:21:41Z mueller $
|
#
|
#
|
# Copyright 2011- by Walter F.J. Mueller
|
# Copyright 2011-2012 by Walter F.J. Mueller
|
#
|
#
|
# This program is free software; you may redistribute and/or modify it under
|
# This program is free software; you may redistribute and/or modify it under
|
# the terms of the GNU General Public License as published by the Free
|
# the terms of the GNU General Public License as published by the Free
|
# Software Foundation, either version 2, or at your option any later version.
|
# Software Foundation, either version 2, or at your option any later version.
|
#
|
#
|
Line 12... |
Line 12... |
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
# for complete details.
|
# for complete details.
|
#
|
#
|
# Revision History:
|
# Revision History:
|
# Date Rev Version Comment
|
# Date Rev Version Comment
|
|
# 2012-01-04 450 1.1 preliminary check for par 'all constraints met'
|
# 2011-08-14 406 1.0 Initial version
|
# 2011-08-14 406 1.0 Initial version
|
#
|
#
|
|
|
use 5.005; # require Perl 5.005 or higher
|
use 5.005; # require Perl 5.005 or higher
|
use strict; # require strict checking
|
use strict; # require strict checking
|
Line 144... |
Line 145... |
}
|
}
|
}
|
}
|
}
|
}
|
|
|
close (FFILE);
|
close (FFILE);
|
|
|
return 0;
|
return 0;
|
}
|
}
|
|
|
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
sub read_log {
|
sub read_log {
|
Line 159... |
Line 161... |
open (LFILE, $lognam) or die "can't open for read $lognam: $!";
|
open (LFILE, $lognam) or die "can't open for read $lognam: $!";
|
|
|
my $msgorig = "";
|
my $msgorig = "";
|
my $msgflat = "";
|
my $msgflat = "";
|
my $inmsg = 0;
|
my $inmsg = 0;
|
|
my $parallmet = 0;
|
|
|
while () {
|
while () {
|
chomp;
|
chomp;
|
|
|
|
$parallmet = 1 if ($type eq "par" && m/All c/);
|
|
|
if (m{^(INFO|WARNING|ERROR):}) {
|
if (m{^(INFO|WARNING|ERROR):}) {
|
if ($inmsg) {push @mlist, [$msgorig, $msgflat, 0];}
|
if ($inmsg) {push @mlist, [$msgorig, $msgflat, 0];}
|
$inmsg = 1;
|
$inmsg = 1;
|
$msgorig = $_;
|
$msgorig = $_;
|
$msgflat = $_;
|
$msgflat = $_;
|
Line 182... |
Line 188... |
|
|
if ($inmsg) {push @mlist, [$msgorig, $msgflat, 0];}
|
if ($inmsg) {push @mlist, [$msgorig, $msgflat, 0];}
|
|
|
close (LFILE);
|
close (LFILE);
|
|
|
|
if ($type eq "par" && $parallmet==0) {
|
|
printf "!! ----------------------------------- !!\n";
|
|
printf "!! par: FAILED TO REACH TIMING CLOSURE !!\n";
|
|
printf "!! ----------------------------------- !!\n";
|
|
}
|
|
|
return 0;
|
return 0;
|
}
|
}
|
|
|
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
|
|