#!/usr/bin/perl

use CGI;
use Mysql;

use Env qw(LSBUSER LSBDBPASSWD LSBDB LSBDBHOST);

$Dbh = Mysql->connect($LSBDBHOST,$LSBDB,$LSBUSER, $LSBDBPASSWD) || die $Mysql::db_errstr;

$select = "SELECT DISTINCT * FROM DynamicEntries ";
$select.= "LEFT JOIN Architecture ON Aid=DEarch ";
$select.= "WHERE DEstatus='Included' ";
$select.= "ORDER BY DEname,Aid ";

#print $select;

$sth = $Dbh->query($select) || die $Dbh->errmsg();

print "/* Generated file - Do Not Edit */\n";
print "#include \"elfchk.h\"\n";
print "#include \"dynamic.h\"\n\n";

print "struct DynamicInfo DynamicInfo[] = {\n";
for(1..$sth->numrows) {
	%entry=$sth->fetchhash;
	if( $entry{'Aname'} ne "All" ) {
		print "#if ".$entry{'Asymbol'}."\n";
	}
	printf "\t{\"%s\",",$entry{'DEname'};
	printf "%s,",$entry{'DEname'};
	printf "check%s},\n",$entry{'DEname'};
	if( $entry{'Aname'} ne "All" ) {
		print "#endif /* ".$entry{'Asymbol'}." */\n";
	}
}
print "\t};\n\n";
print "int numDynamicInfo = sizeof(DynamicInfo)/sizeof(struct DynamicInfo);\n";

