Merge pull request #72 from alainmarcel/alainmarcel-patch-1
Command line options and help fixes
diff --git a/src/CommandLine/CommandLineParser.cpp b/src/CommandLine/CommandLineParser.cpp
index e64a826..ab0af8c 100644
--- a/src/CommandLine/CommandLineParser.cpp
+++ b/src/CommandLine/CommandLineParser.cpp
@@ -66,7 +66,7 @@
" -f <file> Accepts a file containing command line arguments",
" -v <file> Library file",
" -y <path> Library directory",
- " +incdir+<dir>+... Specifies include paths",
+ " +incdir+<dir>[+<dir>...] Specifies include paths",
" -Idir Specifies include paths",
" +libext+<extname>+... Specifies the library extensions",
" <file>.v Verilog File",
@@ -75,7 +75,7 @@
" +librescan Lib Rescan option (ignored)",
" +libverbose Lib Verbose option (ignored)",
" +nolibcell No Lib Cell option (ignored)",
- " +define+macro_name=definition+...",
+ " +define+<name>=<value>[+<name>=<value>...]",
" Defines a macro and optionally its value",
" -L <libName> Defines library compilation order",
" -map <mapFile> Specifies a library mapping file (multiple -map "
@@ -146,7 +146,10 @@
" -nonote Filters out NOTE messages",
" -nowarning Filters out WARNING messages",
" -o <path> Turns on all compilation stages, produces all "
- "outputs under that path"};
+ "outputs under that path",
+ " --help This help",
+ " --version Surelog version"
+};
std::string printStringArray(const std::vector<std::string>& array) {
std::string report;
@@ -174,7 +177,7 @@
std::string copyrights = printStringArray(copyright);
m_errors->printToLogFile(banners);
m_errors->printToLogFile(copyrights);
- std::string version = "VERSION: " + m_versionNumber + +"\n" +
+ std::string version = "VERSION: " + m_versionNumber +"\n" +
"BUILT : " + std::string(__DATE__) + "\n";
std::string date = "DATE : " + currentDateTime() + "\n";
std::string cmd = "COMMAND:";
@@ -187,17 +190,6 @@
m_errors->printToLogFile(cmd);
}
-void CommandLineParser::printBanner() {
- std::string banners = printStringArray(banner);
- std::cout << banners;
-}
-
-void CommandLineParser::printFooter() {
- std::string footers = "\n";
- footers += printStringArray(footer);
- std::cout << footers;
-}
-
void CommandLineParser::logFooter() {
std::string footers = "\n";
footers += printStringArray(footer);
@@ -396,14 +388,20 @@
}
processArgs_(cmd_line, all_arguments);
for (unsigned int i = 0; i < all_arguments.size(); i++) {
- if (all_arguments[i] == "-help" || all_arguments[i] == "-h") {
+ if (all_arguments[i] == "-help" || all_arguments[i] == "-h" ||
+ all_arguments[i] == "--help") {
m_help = true;
std::string help = printStringArray(helpText);
m_errors->init();
logBanner(argc, argv);
- printBanner();
std::cout << help;
- m_errors->printToLogFile(help);
+ return true;
+ }
+ if (all_arguments[i] == "--version") {
+ std::string version = "VERSION: " + m_versionNumber +"\n" +
+ "BUILT : " + std::string(__DATE__) + "\n";
+ std::cout << version << std::flush;
+ m_help = true;
return true;
}
if (all_arguments[i] == "-nobuiltin") {
@@ -830,9 +828,6 @@
m_errors->init();
logBanner(argc, argv);
- if (!m_muteStdout) {
- printBanner();
- }
Location loc(m_logFileId);
Error err(ErrorDefinition::CMD_CREATING_LOG_FILE, loc);
m_errors->addError(err);
diff --git a/src/CommandLine/CommandLineParser.hpp b/src/CommandLine/CommandLineParser.hpp
index 0704410..7121567 100644
--- a/src/CommandLine/CommandLineParser.hpp
+++ b/src/CommandLine/CommandLineParser.hpp
@@ -89,14 +89,12 @@
bool muteStdout() { return m_muteStdout; }
bool verbose() { return m_verbose; }
bool profile() { return m_profile; }
- int getDebugLevel() { return m_debugLevel; }
+ int getDebugLevel() { return m_debugLevel; }
bool getDebugAstModel() { return m_debugAstModel; }
bool getDebugInstanceTree() { return m_debugInstanceTree; }
bool getDebugLibraryDef() { return m_debugLibraryDef; }
bool getDebugIncludeFileInfo() { return m_debugIncludeFileInfo; }
bool help() { return m_help; }
- void printBanner();
- void printFooter();
void logBanner(int argc, const char** argv);
void logFooter();
static std::string getVersionNumber() { return m_versionNumber; }
diff --git a/src/ErrorReporting/Report.cpp b/src/ErrorReporting/Report.cpp
index 8d71757..6470ddf 100644
--- a/src/ErrorReporting/Report.cpp
+++ b/src/ErrorReporting/Report.cpp
@@ -104,8 +104,6 @@
}
}
- clp->printBanner();
-
std::cout << "|-------|------------------|-------------------|" << std::endl;
std::cout << "| | FILE UNIT COMP | ALL COMPILATION |" << std::endl;
std::cout << "|-------|------------------|-------------------|" << std::endl;
@@ -154,7 +152,6 @@
}
}
- clp->printFooter();
int nbFatal = atoi(readUnitResult.m_nbFatal.c_str()) +
atoi(readAllResult.m_nbFatal.c_str());
// m.unlock();
diff --git a/src/main.cpp b/src/main.cpp
index 2cb5e10..7856bf7 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -65,8 +65,6 @@
{
noFatalErrors = false;
}
- if (!clp->muteStdout ())
- clp->printFooter ();
clp->logFooter();
if (diff_comp_mode && fileunit)
{