Commit b78888fe authored by Brad King's avatar Brad King
Browse files

ENH: Added configuration of name of executable in man page header and version banner.

parent f86ffd72
......@@ -102,6 +102,7 @@ int main(int argc, char** argv)
cmake hcm;
std::vector<cmDocumentationEntry> commands;
hcm.GetCommandDocumentation(commands);
doc.SetName("ccmake");
doc.SetNameSection(cmDocumentationName);
doc.SetUsageSection(cmDocumentationUsage);
doc.SetDescriptionSection(cmDocumentationDescription);
......
......@@ -112,6 +112,7 @@ BOOL CMakeSetup::InitInstance()
std::vector<cmDocumentationEntry> generators;
hcm.GetCommandDocumentation(commands);
hcm.GetGeneratorDocumentation(generators);
doc.SetName("CMakeSetup");
doc.SetNameSection(cmDocumentationName);
doc.SetUsageSection(cmDocumentationUsage);
doc.SetDescriptionSection(cmDocumentationDescription);
......
......@@ -73,7 +73,7 @@ const cmDocumentationEntry cmDocumentationMailingList[] =
const cmDocumentationEntry cmDocumentationAuthor[] =
{
{0,
"This manual page was generated by \"cmake --help-man\".", 0},
"This manual page was generated by the \"--help-man\" option.", 0},
{0,0,0}
};
......@@ -151,7 +151,7 @@ void cmDocumentation::PrintCopyright(std::ostream& os)
//----------------------------------------------------------------------------
void cmDocumentation::PrintVersion(std::ostream& os)
{
os << "CMake version " CMake_VERSION_FULL "\n";
os << this->GetNameString() << " version " CMake_VERSION_FULL "\n";
}
//----------------------------------------------------------------------------
......@@ -327,6 +327,12 @@ void cmDocumentation::Print(Form f, std::ostream& os)
}
}
//----------------------------------------------------------------------------
void cmDocumentation::SetName(const char* name)
{
this->NameString = name?name:"";
}
//----------------------------------------------------------------------------
void cmDocumentation::SetNameSection(const cmDocumentationEntry* section)
{
......@@ -806,9 +812,9 @@ void cmDocumentation::PrintDocumentationHTML(std::ostream& os)
void cmDocumentation::PrintDocumentationMan(std::ostream& os)
{
this->CreateManDocumentation();
os << ".TH CMake 1 \""
os << ".TH " << this->GetNameString() << " 1 \""
<< cmSystemTools::GetCurrentDateTime("%B %d, %Y").c_str()
<< "\" \"CMake " CMake_VERSION_FULL "\"\n";
<< "\" \"" << this->GetNameString() << " " CMake_VERSION_FULL "\"\n";
this->Print(ManForm, os);
}
......@@ -944,3 +950,16 @@ void cmDocumentation::SetSection(const cmDocumentationEntry* header,
cmDocumentationEntry empty = {0,0,0};
vec.push_back(empty);
}
//----------------------------------------------------------------------------
const char* cmDocumentation::GetNameString()
{
if(this->NameString.length() > 0)
{
return this->NameString.c_str();
}
else
{
return "CMake";
}
}
......@@ -50,6 +50,10 @@ public:
void PrintDocumentation(Type ht, std::ostream& os);
/** Set the program name for standard document generation. */
void SetName(const char* name);
/** Set the program name section for standard document
* generation. */
void SetNameSection(const cmDocumentationEntry*);
/** Set the program usage for standard document generation. */
......@@ -134,7 +138,9 @@ private:
const cmDocumentationEntry* section,
const cmDocumentationEntry* footer,
std::vector<cmDocumentationEntry>&);
const char* GetNameString();
std::string NameString;
std::vector<cmDocumentationEntry> NameSection;
std::vector<cmDocumentationEntry> UsageSection;
std::vector<cmDocumentationEntry> DescriptionSection;
......
......@@ -113,6 +113,7 @@ int do_cmake(int ac, char** av)
std::vector<cmDocumentationEntry> generators;
hcm.GetCommandDocumentation(commands);
hcm.GetGeneratorDocumentation(generators);
doc.SetName("cmake");
doc.SetNameSection(cmDocumentationName);
doc.SetUsageSection(cmDocumentationUsage);
doc.SetDescriptionSection(cmDocumentationDescription);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment