print "Regenerating $ehrd/docs/doxygen ...\n\n";
my $doxy_bin = `which doxygen`;
chomp $doxy_bin;
die "Cannot run doxygen binary, please make sure it is installed and is in the path.\n" unless(-r $doxy_bin);
my $doxy_filter = "$erd/ensembl/misc-scripts/doxygen_filter/ensembldoxygenfilter.pl";
die "Cannot run the Ensembl-Doxygen Perl filter at '$doxy_filter', please make sure Ensembl core API is intalled properly.\n" unless(-x $doxy_filter);
my @cmds = (
"rm -rf $ehrd/docs/doxygen",
"doxygen -g -",
"echo 'PROJECT_NAME = ensembl-hive'",
"echo 'PROJECT_NUMBER = $code_ver'",
"echo 'OUTPUT_DIRECTORY = $ehrd/docs'",
"echo 'STRIP_FROM_PATH = $ehrd'",
"echo 'INPUT = $ehrd'",
"echo 'INPUT_FILTER = $doxy_filter'",
"echo 'HTML_OUTPUT = doxygen'",
"echo 'EXTENSION_MAPPING = pm=C pl=C'",
"echo 'EXTRACT_ALL = YES'",
"echo 'FILE_PATTERNS = *.pm *.pl README.md'",
"echo 'USE_MDFILE_AS_MAINPAGE = README.md'",
"echo 'ENABLE_PREPROCESSING = NO'",
"echo 'RECURSIVE = YES'",
"echo 'EXAMPLE_PATTERNS = *'",
"echo 'HTML_TIMESTAMP = NO'",
"echo 'HTML_DYNAMIC_SECTIONS = YES'",
"echo 'GENERATE_TREEVIEW = YES'",
"echo 'GENERATE_LATEX = NO'",
"echo 'CLASS_DIAGRAMS = NO'",
"echo 'HAVE_DOT = YES'",
"echo 'CALL_GRAPH = YES'",
"echo 'CALLER_GRAPH = YES'",
);
my $full_cmd = '('.join(' ; ', @cmds).") | doxygen -";
print "Running the following command:\n\t$full_cmd\n\n";
system( $full_cmd );
}