#! /usr/bin/perl


$err = open (CFG, "config.h");
if (!$err) { $err = open(CFG, "../config.h"); }

if (!$err) {
    print "Can't find config.h.";
    exit(0);
}

while (<CFG>) {
    if (/#define\s+[\w\d]+\s+(.*)\s*(\/\/|\/\*)/) { 
	$_ =~ s/\s*(\/\/|\/\*).*//;
    }

    if (/#define\s+Fosc\s+(.*)/) { $Fosc = $1; }
    elsif (/#define\s+Fcclk\s+(.*)/) { $Fcclk = $1; }
    elsif (/#define\s+Fcco\s+(.*)/) { $Fcco = $1; }
    elsif (/#define\s+Fpclk\s+(.*)/) { $Fpclk = $1; }
    elsif (/#define\s+UART_SPEED\s+(.*)/) { $baud = $1; }
}
close(CFG);

$Fcclk =~ s/([a-zA-Z_]+)/\$\1/g;
$Fcclk = eval($Fcclk);
$Fcco =~ s/([a-zA-Z_]+)/\$\1/g;
$Fcco = eval($Fcco);
$Fpclk =~ s/([a-zA-Z_]+)/\$\1/g;
$Fpclk = eval($Fpclk);
$baud =~ s/([a-zA-Z_]+)/\$\1/g;
$baud = eval($baud);

print $baud;