parent
644048f7a8
commit
334aa05c68
@ -1,11 +0,0 @@
|
||||
--- a/Modules/FindMPEG2.cmake
|
||||
+++ b/Modules/FindMPEG2.cmake
|
||||
@@ -34,7 +34,7 @@
|
||||
|
||||
#some native mpeg2 installations will depend
|
||||
#on libSDL, if found, add it in.
|
||||
- INCLUDE( FindSDL.cmake )
|
||||
+ INCLUDE( FindSDL )
|
||||
IF(SDL_FOUND)
|
||||
SET( MPEG2_LIBRARIES ${MPEG2_LIBRARIES} ${SDL_LIBRARY})
|
||||
ENDIF(SDL_FOUND)
|
@ -1,31 +0,0 @@
|
||||
--- a/Source/cmFindPackageCommand.cxx
|
||||
+++ b/Source/cmFindPackageCommand.cxx
|
||||
@@ -218,6 +218,7 @@
|
||||
"UNIX (U), or Apple (A) conventions.\n"
|
||||
" <prefix>/ (W)\n"
|
||||
" <prefix>/(cmake|CMake)/ (W)\n"
|
||||
+ " <prefix>/(share|lib)/cmake/<name>*/ (U)\n"
|
||||
" <prefix>/(share|lib)/<name>*/ (U)\n"
|
||||
" <prefix>/(share|lib)/<name>*/(cmake|CMake)/ (U)\n"
|
||||
"On systems supporting OS X Frameworks and Application Bundles "
|
||||
@@ -1710,6 +1711,20 @@
|
||||
common.push_back("lib");
|
||||
common.push_back("share");
|
||||
|
||||
+ // PREFIX/(share|lib)/cmake/(Foo|foo|FOO).*/
|
||||
+ {
|
||||
+ cmFindPackageFileList lister(this);
|
||||
+ lister
|
||||
+ / cmFileListGeneratorFixed(prefix)
|
||||
+ / cmFileListGeneratorEnumerate(common)
|
||||
+ / cmFileListGeneratorFixed("cmake")
|
||||
+ / cmFileListGeneratorProject(this->Names);
|
||||
+ if(lister.Search())
|
||||
+ {
|
||||
+ return true;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
// PREFIX/(share|lib)/(Foo|foo|FOO).*/
|
||||
{
|
||||
cmFindPackageFileList lister(this);
|
@ -1,510 +0,0 @@
|
||||
date: 2008-10-10 18:23:35 +0300; author: king; state: Exp; lines: +115 -12; commitid: pFogEk9NmHzoT5mt;
|
||||
ENH: Improve generated documentation formatting
|
||||
|
||||
Applying patch provided in issue #7797.
|
||||
|
||||
Fixes to man-pages:
|
||||
* Character '-' must be espaced as '\-'
|
||||
* Surround preformatted text with '.nf' and '.fi' to adjust filling
|
||||
* Give every page a NAME section for indexing by mandb
|
||||
* Pass the man page filename without extension to .TH in its header
|
||||
|
||||
Also added a title to the HTML header.
|
||||
|
||||
The patch can be retrieved from upstream CVS with:
|
||||
$ cvs diff -u -D "2008-10-10 18:23 +0300" -D "2008-10-10 18:24 +0300"
|
||||
|
||||
"File version" hunks were removed for the patch to apply.
|
||||
--- a/Source/cmDocumentation.cxx
|
||||
+++ b/Source/cmDocumentation.cxx
|
||||
@@ -202,6 +202,26 @@
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
+#define DOCUMENT_INTRO(type, default_name, desc) \
|
||||
+ static char const *cmDocumentation##type##Intro[2] = { default_name, desc };
|
||||
+#define GET_DOCUMENT_INTRO(type) cmDocumentation##type##Intro
|
||||
+
|
||||
+DOCUMENT_INTRO(Modules, "cmakemodules",
|
||||
+ "Reference of available CMake modules.");
|
||||
+DOCUMENT_INTRO(CustomModules, "cmakecustommodules",
|
||||
+ "Reference of available CMake custom modules.");
|
||||
+DOCUMENT_INTRO(Policies, "cmakepolicies",
|
||||
+ "Reference of CMake policies.");
|
||||
+DOCUMENT_INTRO(Properties, "cmakeprops",
|
||||
+ "Reference of CMake properties.");
|
||||
+DOCUMENT_INTRO(Variables, "cmakevars",
|
||||
+ "Reference of CMake variables.");
|
||||
+DOCUMENT_INTRO(Commands, "cmakecommands",
|
||||
+ "Reference of available CMake commands.");
|
||||
+DOCUMENT_INTRO(CompatCommands, "cmakecompat",
|
||||
+ "Reference of CMake compatibility commands.");
|
||||
+
|
||||
+//----------------------------------------------------------------------------
|
||||
cmDocumentation::cmDocumentation()
|
||||
:CurrentFormatter(0)
|
||||
{
|
||||
@@ -321,7 +341,27 @@
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
-bool cmDocumentation::PrintDocumentation(Type ht, std::ostream& os)
|
||||
+void cmDocumentation::AddDocumentIntroToPrint(const char* intro[2])
|
||||
+{
|
||||
+ const char* docname;
|
||||
+ if (intro && (docname = this->GetDocName(false)))
|
||||
+ {
|
||||
+ cmDocumentationSection* section;
|
||||
+ std::string desc("");
|
||||
+
|
||||
+ desc += docname;
|
||||
+ desc += " - ";
|
||||
+ desc += intro[1];
|
||||
+
|
||||
+ section = new cmDocumentationSection("Introduction", "NAME");
|
||||
+ section->Append(0, desc.c_str(), 0);
|
||||
+ this->PrintSections.push_back(section);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+//----------------------------------------------------------------------------
|
||||
+bool cmDocumentation::PrintDocumentation(Type ht, std::ostream& os,
|
||||
+ const char* docname)
|
||||
{
|
||||
if ((this->CurrentFormatter->GetForm() != HTMLForm)
|
||||
&& (this->CurrentFormatter->GetForm() != DocbookForm)
|
||||
@@ -330,6 +370,16 @@
|
||||
this->PrintVersion(os);
|
||||
}
|
||||
|
||||
+ // Handle Document Name. docname==0 disables intro.
|
||||
+ this->SetDocName("");
|
||||
+ if (docname)
|
||||
+ {
|
||||
+ if (*docname)
|
||||
+ this->SetDocName(docname);
|
||||
+ else // empty string was given. select default if possible
|
||||
+ this->SetDocName(this->GetDefaultDocName(ht));
|
||||
+ }
|
||||
+
|
||||
switch (ht)
|
||||
{
|
||||
case cmDocumentation::Usage:
|
||||
@@ -595,6 +645,7 @@
|
||||
// given stream.
|
||||
std::ofstream* fout = 0;
|
||||
std::ostream* s = &os;
|
||||
+ std::string docname("");
|
||||
if(i->Filename.length() > 0)
|
||||
{
|
||||
fout = new std::ofstream(i->Filename.c_str(), std::ios::out);
|
||||
@@ -606,10 +657,14 @@
|
||||
{
|
||||
result = false;
|
||||
}
|
||||
+ if(i->Filename != "-")
|
||||
+ {
|
||||
+ docname = cmSystemTools::GetFilenameWithoutLastExtension(i->Filename);
|
||||
+ }
|
||||
}
|
||||
|
||||
// Print this documentation type to the stream.
|
||||
- if(!this->PrintDocumentation(i->HelpType, *s) || !*s)
|
||||
+ if(!this->PrintDocumentation(i->HelpType, *s, docname.c_str()) || !*s)
|
||||
{
|
||||
result = false;
|
||||
}
|
||||
@@ -634,7 +689,7 @@
|
||||
cmDocumentation::Form cmDocumentation::GetFormFromFilename(
|
||||
const std::string& filename)
|
||||
{
|
||||
- std::string ext = cmSystemTools::GetFilenameExtension(filename);
|
||||
+ std::string ext = cmSystemTools::GetFilenameLastExtension(filename);
|
||||
ext = cmSystemTools::UpperCase(ext);
|
||||
if ((ext == ".HTM") || (ext == ".HTML"))
|
||||
{
|
||||
@@ -870,6 +925,12 @@
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
+void cmDocumentation::SetDocName(const char *docname)
|
||||
+{
|
||||
+ this->DocName = docname?docname:"";
|
||||
+}
|
||||
+
|
||||
+//----------------------------------------------------------------------------
|
||||
void cmDocumentation::SetSection(const char *name,
|
||||
cmDocumentationSection *section)
|
||||
{
|
||||
@@ -1233,7 +1294,7 @@
|
||||
bool cmDocumentation::PrintDocumentationFull(std::ostream& os)
|
||||
{
|
||||
this->CreateFullDocumentation();
|
||||
- this->CurrentFormatter->PrintHeader(GetNameString(), os);
|
||||
+ this->CurrentFormatter->PrintHeader(GetNameString(), GetNameString(), os);
|
||||
this->Print(os);
|
||||
this->CurrentFormatter->PrintFooter(os);
|
||||
return true;
|
||||
@@ -1244,11 +1305,12 @@
|
||||
{
|
||||
this->ClearSections();
|
||||
this->CreateModulesSection();
|
||||
+ this->AddDocumentIntroToPrint(GET_DOCUMENT_INTRO(Modules));
|
||||
this->AddSectionToPrint("Description");
|
||||
this->AddSectionToPrint("Modules");
|
||||
this->AddSectionToPrint("Copyright");
|
||||
this->AddSectionToPrint("See Also");
|
||||
- this->CurrentFormatter->PrintHeader(this->GetNameString(), os);
|
||||
+ this->CurrentFormatter->PrintHeader(GetDocName(), GetNameString(), os);
|
||||
this->Print(os);
|
||||
this->CurrentFormatter->PrintFooter(os);
|
||||
return true;
|
||||
@@ -1259,13 +1321,14 @@
|
||||
{
|
||||
this->ClearSections();
|
||||
this->CreateCustomModulesSection();
|
||||
+ this->AddDocumentIntroToPrint(GET_DOCUMENT_INTRO(CustomModules));
|
||||
this->AddSectionToPrint("Description");
|
||||
this->AddSectionToPrint("Custom CMake Modules");
|
||||
// the custom modules are most probably not under Kitware's copyright, Alex
|
||||
// this->AddSectionToPrint("Copyright");
|
||||
this->AddSectionToPrint("See Also");
|
||||
|
||||
- this->CurrentFormatter->PrintHeader(this->GetNameString(), os);
|
||||
+ this->CurrentFormatter->PrintHeader(GetDocName(), GetNameString(), os);
|
||||
this->Print(os);
|
||||
this->CurrentFormatter->PrintFooter(os);
|
||||
return true;
|
||||
@@ -1275,12 +1338,13 @@
|
||||
bool cmDocumentation::PrintDocumentationPolicies(std::ostream& os)
|
||||
{
|
||||
this->ClearSections();
|
||||
+ this->AddDocumentIntroToPrint(GET_DOCUMENT_INTRO(Policies));
|
||||
this->AddSectionToPrint("Description");
|
||||
this->AddSectionToPrint("Policies");
|
||||
this->AddSectionToPrint("Copyright");
|
||||
this->AddSectionToPrint("See Also");
|
||||
|
||||
- this->CurrentFormatter->PrintHeader(this->GetNameString(), os);
|
||||
+ this->CurrentFormatter->PrintHeader(GetDocName(), GetNameString(), os);
|
||||
this->Print(os);
|
||||
this->CurrentFormatter->PrintFooter(os);
|
||||
return true;
|
||||
@@ -1290,6 +1354,7 @@
|
||||
bool cmDocumentation::PrintDocumentationProperties(std::ostream& os)
|
||||
{
|
||||
this->ClearSections();
|
||||
+ this->AddDocumentIntroToPrint(GET_DOCUMENT_INTRO(Properties));
|
||||
this->AddSectionToPrint("Properties Description");
|
||||
for (std::vector<std::string>::iterator i =
|
||||
this->PropertySections.begin();
|
||||
@@ -1299,7 +1364,7 @@
|
||||
}
|
||||
this->AddSectionToPrint("Copyright");
|
||||
this->AddSectionToPrint("Standard See Also");
|
||||
- this->CurrentFormatter->PrintHeader(this->GetNameString(), os);
|
||||
+ this->CurrentFormatter->PrintHeader(GetDocName(), GetNameString(), os);
|
||||
this->Print(os);
|
||||
this->CurrentFormatter->PrintFooter(os);
|
||||
return true;
|
||||
@@ -1309,6 +1374,7 @@
|
||||
bool cmDocumentation::PrintDocumentationVariables(std::ostream& os)
|
||||
{
|
||||
this->ClearSections();
|
||||
+ this->AddDocumentIntroToPrint(GET_DOCUMENT_INTRO(Variables));
|
||||
for (std::vector<std::string>::iterator i =
|
||||
this->VariableSections.begin();
|
||||
i != this->VariableSections.end(); ++i)
|
||||
@@ -1317,7 +1383,7 @@
|
||||
}
|
||||
this->AddSectionToPrint("Copyright");
|
||||
this->AddSectionToPrint("Standard See Also");
|
||||
- this->CurrentFormatter->PrintHeader(this->GetNameString(), os);
|
||||
+ this->CurrentFormatter->PrintHeader(GetDocName(), GetNameString(), os);
|
||||
this->Print(os);
|
||||
this->CurrentFormatter->PrintFooter(os);
|
||||
return true;
|
||||
@@ -1327,10 +1393,11 @@
|
||||
bool cmDocumentation::PrintDocumentationCurrentCommands(std::ostream& os)
|
||||
{
|
||||
this->ClearSections();
|
||||
+ this->AddDocumentIntroToPrint(GET_DOCUMENT_INTRO(Commands));
|
||||
this->AddSectionToPrint("Commands");
|
||||
this->AddSectionToPrint("Copyright");
|
||||
this->AddSectionToPrint("Standard See Also");
|
||||
- this->CurrentFormatter->PrintHeader(this->GetNameString(), os);
|
||||
+ this->CurrentFormatter->PrintHeader(GetDocName(), GetNameString(), os);
|
||||
this->Print(os);
|
||||
this->CurrentFormatter->PrintFooter(os);
|
||||
return true;
|
||||
@@ -1340,11 +1407,12 @@
|
||||
bool cmDocumentation::PrintDocumentationCompatCommands(std::ostream& os)
|
||||
{
|
||||
this->ClearSections();
|
||||
+ this->AddDocumentIntroToPrint(GET_DOCUMENT_INTRO(CompatCommands));
|
||||
this->AddSectionToPrint("Compatibility Commands Description");
|
||||
this->AddSectionToPrint("Compatibility Commands");
|
||||
this->AddSectionToPrint("Copyright");
|
||||
this->AddSectionToPrint("Standard See Also");
|
||||
- this->CurrentFormatter->PrintHeader(GetNameString(), os);
|
||||
+ this->CurrentFormatter->PrintHeader(GetDocName(), GetNameString(), os);
|
||||
this->Print(os);
|
||||
this->CurrentFormatter->PrintFooter(os);
|
||||
return true;
|
||||
@@ -1466,6 +1534,41 @@
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
+const char* cmDocumentation::GetDocName(bool fallbackToNameString) const
|
||||
+{
|
||||
+ if (this->DocName.length() > 0)
|
||||
+ {
|
||||
+ return this->DocName.c_str();
|
||||
+ }
|
||||
+ else if (fallbackToNameString)
|
||||
+ {
|
||||
+ return this->GetNameString();
|
||||
+ }
|
||||
+ else
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+//----------------------------------------------------------------------------
|
||||
+#define CASE_DEFAULT_DOCNAME(doctype) \
|
||||
+ case cmDocumentation::doctype : \
|
||||
+ return GET_DOCUMENT_INTRO(doctype)[0];
|
||||
+const char* cmDocumentation::GetDefaultDocName(Type ht) const
|
||||
+{
|
||||
+ switch (ht)
|
||||
+ {
|
||||
+ CASE_DEFAULT_DOCNAME(Modules)
|
||||
+ CASE_DEFAULT_DOCNAME(CustomModules)
|
||||
+ CASE_DEFAULT_DOCNAME(Policies)
|
||||
+ CASE_DEFAULT_DOCNAME(Properties)
|
||||
+ CASE_DEFAULT_DOCNAME(Variables)
|
||||
+ CASE_DEFAULT_DOCNAME(Commands)
|
||||
+ CASE_DEFAULT_DOCNAME(CompatCommands)
|
||||
+ default: break;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+//----------------------------------------------------------------------------
|
||||
bool cmDocumentation::IsOption(const char* arg) const
|
||||
{
|
||||
return ((arg[0] == '-') || (strcmp(arg, "/V") == 0) ||
|
||||
--- a/Source/cmDocumentation.h
|
||||
+++ b/Source/cmDocumentation.h
|
||||
@@ -61,7 +61,7 @@
|
||||
bool PrintRequestedDocumentation(std::ostream& os);
|
||||
|
||||
/** Print help of the given type. */
|
||||
- bool PrintDocumentation(Type ht, std::ostream& os);
|
||||
+ bool PrintDocumentation(Type ht, std::ostream& os, const char* docname=0);
|
||||
|
||||
/** Set the program name for standard document generation. */
|
||||
void SetName(const char* name);
|
||||
@@ -124,6 +124,7 @@
|
||||
|
||||
private:
|
||||
void SetForm(Form f);
|
||||
+ void SetDocName(const char* docname);
|
||||
|
||||
bool CreateSingleModule(const char* fname,
|
||||
const char* moduleName,
|
||||
@@ -134,6 +135,8 @@
|
||||
bool CreateCustomModulesSection();
|
||||
void CreateFullDocumentation();
|
||||
|
||||
+ void AddDocumentIntroToPrint(const char* intro[2]);
|
||||
+
|
||||
bool PrintCopyright(std::ostream& os);
|
||||
bool PrintVersion(std::ostream& os);
|
||||
bool PrintDocumentationGeneric(std::ostream& os, const char *section);
|
||||
@@ -157,9 +160,12 @@
|
||||
|
||||
|
||||
const char* GetNameString() const;
|
||||
+ const char* GetDocName(bool fallbackToNameString = true) const;
|
||||
+ const char* GetDefaultDocName(Type ht) const;
|
||||
bool IsOption(const char* arg) const;
|
||||
|
||||
std::string NameString;
|
||||
+ std::string DocName;
|
||||
std::map<std::string,cmDocumentationSection*> AllSections;
|
||||
|
||||
std::string SeeAlsoString;
|
||||
--- a/Source/cmDocumentationFormatter.cxx
|
||||
+++ b/Source/cmDocumentationFormatter.cxx
|
||||
@@ -118,7 +118,8 @@
|
||||
{
|
||||
return "module";
|
||||
}
|
||||
- else if(name.find("Name") != name.npos)
|
||||
+ else if(name.find("Name") != name.npos ||
|
||||
+ name.find("Introduction") != name.npos)
|
||||
{
|
||||
return "name";
|
||||
}
|
||||
--- a/Source/cmDocumentationFormatter.h
|
||||
+++ b/Source/cmDocumentationFormatter.h
|
||||
@@ -52,7 +52,9 @@
|
||||
|
||||
virtual cmDocumentationEnums::Form GetForm() const = 0;
|
||||
|
||||
- virtual void PrintHeader(const char* /*name*/, std::ostream& /*os*/) {}
|
||||
+ virtual void PrintHeader(const char* /*docname*/,
|
||||
+ const char* /*appname*/,
|
||||
+ std::ostream& /*os*/) {}
|
||||
virtual void PrintFooter(std::ostream& /*os*/) {}
|
||||
virtual void PrintSection(std::ostream& os,
|
||||
const cmDocumentationSection& section,
|
||||
--- a/Source/cmDocumentationFormatterDocbook.cxx
|
||||
+++ b/Source/cmDocumentationFormatterDocbook.cxx
|
||||
@@ -229,8 +229,9 @@
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
-void cmDocumentationFormatterDocbook::PrintHeader(const char* name,
|
||||
- std::ostream& os)
|
||||
+void cmDocumentationFormatterDocbook::PrintHeader(const char* docname,
|
||||
+ const char* appname,
|
||||
+ std::ostream& os)
|
||||
{
|
||||
// this one is used to ensure that we don't create multiple link targets
|
||||
// with the same name. We can clear it here since we are at the
|
||||
@@ -244,7 +245,7 @@
|
||||
"<!ENTITY % English \"INCLUDE\"> ]>\n"
|
||||
"<article>\n"
|
||||
"<articleinfo>\n"
|
||||
- "<title>" << name << "</title>\n"
|
||||
+ "<title>" << docname << " - " << appname << "</title>\n"
|
||||
"</articleinfo>\n";
|
||||
}
|
||||
|
||||
--- a/Source/cmDocumentationFormatterDocbook.h
|
||||
+++ b/Source/cmDocumentationFormatterDocbook.h
|
||||
@@ -31,7 +31,8 @@
|
||||
virtual cmDocumentationEnums::Form GetForm() const
|
||||
{ return cmDocumentationEnums::DocbookForm;}
|
||||
|
||||
- virtual void PrintHeader(const char* name, std::ostream& os);
|
||||
+ virtual void PrintHeader(const char* docname, const char* appname,
|
||||
+ std::ostream& os);
|
||||
virtual void PrintFooter(std::ostream& os);
|
||||
virtual void PrintSection(std::ostream& os,
|
||||
const cmDocumentationSection& section,
|
||||
--- a/Source/cmDocumentationFormatterHTML.cxx
|
||||
+++ b/Source/cmDocumentationFormatterHTML.cxx
|
||||
@@ -202,10 +202,13 @@
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
-void cmDocumentationFormatterHTML::PrintHeader(const char* /*name*/,
|
||||
+void cmDocumentationFormatterHTML::PrintHeader(const char* docname,
|
||||
+ const char* appname,
|
||||
std::ostream& os)
|
||||
{
|
||||
- os << "<html><body>\n";
|
||||
+ os << "<html><head><title>";
|
||||
+ os << docname << " - " << appname;
|
||||
+ os << "</title></head><body>\n";
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
--- a/Source/cmDocumentationFormatterHTML.h
|
||||
+++ b/Source/cmDocumentationFormatterHTML.h
|
||||
@@ -30,7 +30,8 @@
|
||||
virtual cmDocumentationEnums::Form GetForm() const
|
||||
{ return cmDocumentationEnums::HTMLForm;}
|
||||
|
||||
- virtual void PrintHeader(const char* name, std::ostream& os);
|
||||
+ virtual void PrintHeader(const char* docname, const char* appname,
|
||||
+ std::ostream& os);
|
||||
virtual void PrintFooter(std::ostream& os);
|
||||
virtual void PrintSection(std::ostream& os,
|
||||
const cmDocumentationSection& section,
|
||||
--- a/Source/cmDocumentationFormatterMan.cxx
|
||||
+++ b/Source/cmDocumentationFormatterMan.cxx
|
||||
@@ -57,30 +57,44 @@
|
||||
}
|
||||
}
|
||||
|
||||
+void cmDocumentationFormatterMan::EscapeText(std::string& man_text)
|
||||
+{
|
||||
+ cmSystemTools::ReplaceString(man_text, "\\", "\\\\");
|
||||
+ cmSystemTools::ReplaceString(man_text, "-", "\\-");
|
||||
+}
|
||||
+
|
||||
void cmDocumentationFormatterMan::PrintPreformatted(std::ostream& os,
|
||||
const char* text)
|
||||
{
|
||||
std::string man_text = text;
|
||||
- cmSystemTools::ReplaceString(man_text, "\\", "\\\\");
|
||||
- os << man_text << "\n";
|
||||
+ this->EscapeText(man_text);
|
||||
+ os << ".nf\n" << man_text;
|
||||
+ if (*text && man_text.at(man_text.length()-1) != '\n')
|
||||
+ os << "\n";
|
||||
+ os << ".fi\n";
|
||||
}
|
||||
|
||||
void cmDocumentationFormatterMan::PrintParagraph(std::ostream& os,
|
||||
const char* text)
|
||||
{
|
||||
std::string man_text = text;
|
||||
- cmSystemTools::ReplaceString(man_text, "\\", "\\\\");
|
||||
+ this->EscapeText(man_text);
|
||||
os << man_text << "\n\n";
|
||||
}
|
||||
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
-void cmDocumentationFormatterMan::PrintHeader(const char* name,
|
||||
+void cmDocumentationFormatterMan::PrintHeader(const char* docname,
|
||||
+ const char* appname,
|
||||
std::ostream& os)
|
||||
{
|
||||
- os << ".TH " << name << " 1 \""
|
||||
+ std::string s_docname(docname), s_appname(appname);
|
||||
+
|
||||
+ this->EscapeText(s_docname);
|
||||
+ this->EscapeText(s_appname);
|
||||
+ os << ".TH " << s_docname << " 1 \""
|
||||
<< cmSystemTools::GetCurrentDateTime("%B %d, %Y").c_str()
|
||||
- << "\" \"" << name
|
||||
+ << "\" \"" << s_appname
|
||||
<< " " << cmVersion::GetCMakeVersion()
|
||||
<< "\"\n";
|
||||
}
|
||||
--- a/Source/cmDocumentationFormatterMan.h
|
||||
+++ b/Source/cmDocumentationFormatterMan.h
|
||||
@@ -30,12 +30,16 @@
|
||||
virtual cmDocumentationEnums::Form GetForm() const
|
||||
{ return cmDocumentationEnums::ManForm;}
|
||||
|
||||
- virtual void PrintHeader(const char* name, std::ostream& os);
|
||||
+ virtual void PrintHeader(const char* docname, const char* appname,
|
||||
+ std::ostream& os);
|
||||
virtual void PrintSection(std::ostream& os,
|
||||
const cmDocumentationSection& section,
|
||||
const char* name);
|
||||
virtual void PrintPreformatted(std::ostream& os, const char* text);
|
||||
virtual void PrintParagraph(std::ostream& os, const char* text);
|
||||
+
|
||||
+private:
|
||||
+ void EscapeText(std::string& man_text);
|
||||
};
|
||||
|
||||
#endif
|
||||
--- a/Source/kwsys/SystemTools.cxx
|
||||
+++ b/Source/kwsys/SystemTools.cxx
|
||||
@@ -3382,7 +3382,7 @@
|
||||
|
||||
/**
|
||||
* Return file extension of a full filename (dot included).
|
||||
- * Warning: this is the shortest extension (for example: .tar.gz)
|
||||
+ * Warning: this is the shortest extension (for example: .gz of .tar.gz)
|
||||
*/
|
||||
kwsys_stl::string SystemTools::GetFilenameLastExtension(const kwsys_stl::string& filename)
|
||||
{
|
@ -1,510 +0,0 @@
|
||||
date: 2008-10-09 22:30:07 +0300; author: king; state: Exp; lines: +29 -30; commitid: jdAfWT6Sw8VXhZlt;
|
||||
ENH: Fix optional use of relative paths.
|
||||
|
||||
These changes refactor cmLocalGenerator methods Convert and
|
||||
ConvertToOutputForExisting to support references inside the build tree
|
||||
using relative paths. After this commit, all tests pass with Makefile
|
||||
generators when relative paths are enabled by default. See issue #7779.
|
||||
|
||||
The patch can be retrieved from upstream CVS with:
|
||||
$ cvs diff -u -D "2008-10-09 22:30 +0300" -D "2008-10-09 22:31 +0300"
|
||||
|
||||
"File version" hunks were removed for the patch to apply. Also one hunk
|
||||
was unfuzzed.
|
||||
--- a/Source/cmLocalGenerator.cxx
|
||||
+++ b/Source/cmLocalGenerator.cxx
|
||||
@@ -1074,22 +1074,54 @@
|
||||
s = expandedInput;
|
||||
}
|
||||
|
||||
-
|
||||
-std::string
|
||||
-cmLocalGenerator::ConvertToOutputForExisting(const char* p)
|
||||
+//----------------------------------------------------------------------------
|
||||
+std::string
|
||||
+cmLocalGenerator::ConvertToOutputForExistingCommon(const char* remote,
|
||||
+ std::string const& result)
|
||||
{
|
||||
- std::string ret = p;
|
||||
- if(this->WindowsShell && ret.find(' ') != ret.npos
|
||||
- && cmSystemTools::FileExists(p))
|
||||
+ // If this is a windows shell, the result has a space, and the path
|
||||
+ // already exists, we can use a short-path to reference it without a
|
||||
+ // space.
|
||||
+ if(this->WindowsShell && result.find(' ') != result.npos &&
|
||||
+ cmSystemTools::FileExists(remote))
|
||||
{
|
||||
- if(cmSystemTools::GetShortPath(p, ret))
|
||||
+ std::string tmp;
|
||||
+ if(cmSystemTools::GetShortPath(remote, tmp))
|
||||
{
|
||||
- return this->Convert(ret.c_str(), NONE, SHELL, true);
|
||||
+ return this->Convert(tmp.c_str(), NONE, SHELL, true);
|
||||
}
|
||||
}
|
||||
- return this->Convert(p, START_OUTPUT, SHELL, true);
|
||||
+
|
||||
+ // Otherwise, leave it unchanged.
|
||||
+ return result;
|
||||
+}
|
||||
+
|
||||
+//----------------------------------------------------------------------------
|
||||
+std::string
|
||||
+cmLocalGenerator::ConvertToOutputForExisting(const char* remote,
|
||||
+ RelativeRoot local)
|
||||
+{
|
||||
+ // Perform standard conversion.
|
||||
+ std::string result = this->Convert(remote, local, SHELL, true);
|
||||
+
|
||||
+ // Consider short-path.
|
||||
+ return this->ConvertToOutputForExistingCommon(remote, result);
|
||||
+}
|
||||
+
|
||||
+//----------------------------------------------------------------------------
|
||||
+std::string
|
||||
+cmLocalGenerator::ConvertToOutputForExisting(RelativeRoot remote,
|
||||
+ const char* local)
|
||||
+{
|
||||
+ // Perform standard conversion.
|
||||
+ std::string result = this->Convert(remote, local, SHELL, true);
|
||||
+
|
||||
+ // Consider short-path.
|
||||
+ const char* remotePath = this->GetRelativeRootPath(remote);
|
||||
+ return this->ConvertToOutputForExistingCommon(remotePath, result);
|
||||
}
|
||||
|
||||
+//----------------------------------------------------------------------------
|
||||
const char* cmLocalGenerator::GetIncludeFlags(const char* lang)
|
||||
{
|
||||
if(!lang)
|
||||
@@ -1983,7 +2015,21 @@
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
-std::string cmLocalGenerator::Convert(const char* source,
|
||||
+const char* cmLocalGenerator::GetRelativeRootPath(RelativeRoot relroot)
|
||||
+{
|
||||
+ switch (relroot)
|
||||
+ {
|
||||
+ case HOME: return this->Makefile->GetHomeDirectory();
|
||||
+ case START: return this->Makefile->GetStartDirectory();
|
||||
+ case HOME_OUTPUT: return this->Makefile->GetHomeOutputDirectory();
|
||||
+ case START_OUTPUT: return this->Makefile->GetStartOutputDirectory();
|
||||
+ default: break;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+//----------------------------------------------------------------------------
|
||||
+std::string cmLocalGenerator::Convert(const char* source,
|
||||
RelativeRoot relative,
|
||||
OutputFormat output,
|
||||
bool optional)
|
||||
@@ -2031,7 +2077,15 @@
|
||||
break;
|
||||
}
|
||||
}
|
||||
- // Now convert it to an output path.
|
||||
+ return this->ConvertToOutputFormat(result.c_str(), output);
|
||||
+}
|
||||
+
|
||||
+//----------------------------------------------------------------------------
|
||||
+std::string cmLocalGenerator::ConvertToOutputFormat(const char* source,
|
||||
+ OutputFormat output)
|
||||
+{
|
||||
+ std::string result = source;
|
||||
+ // Convert it to an output path.
|
||||
if (output == MAKEFILE)
|
||||
{
|
||||
result = cmSystemTools::ConvertToOutputPath(result.c_str());
|
||||
@@ -2064,6 +2118,40 @@
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
+std::string cmLocalGenerator::Convert(RelativeRoot remote,
|
||||
+ const char* local,
|
||||
+ OutputFormat output,
|
||||
+ bool optional)
|
||||
+{
|
||||
+ const char* remotePath = this->GetRelativeRootPath(remote);
|
||||
+ if(local && (!optional || this->UseRelativePaths))
|
||||
+ {
|
||||
+ std::vector<std::string> components;
|
||||
+ std::string result;
|
||||
+ switch(remote)
|
||||
+ {
|
||||
+ case HOME:
|
||||
+ case HOME_OUTPUT:
|
||||
+ case START:
|
||||
+ case START_OUTPUT:
|
||||
+ cmSystemTools::SplitPath(local, components);
|
||||
+ result = this->ConvertToRelativePath(components, remotePath);
|
||||
+ break;
|
||||
+ case FULL:
|
||||
+ result = remotePath;
|
||||
+ break;
|
||||
+ case NONE:
|
||||
+ break;
|
||||
+ }
|
||||
+ return this->ConvertToOutputFormat(result.c_str(), output);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ return this->ConvertToOutputFormat(remotePath, output);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+//----------------------------------------------------------------------------
|
||||
std::string cmLocalGenerator::FindRelativePathTopSource()
|
||||
{
|
||||
// Relative path conversion within a single tree managed by CMake is
|
||||
--- a/Source/cmLocalGenerator.h
|
||||
+++ b/Source/cmLocalGenerator.h
|
||||
@@ -108,10 +108,18 @@
|
||||
*/
|
||||
enum RelativeRoot { NONE, FULL, HOME, START, HOME_OUTPUT, START_OUTPUT };
|
||||
enum OutputFormat { UNCHANGED, MAKEFILE, SHELL };
|
||||
- std::string Convert(const char* source,
|
||||
- RelativeRoot relative,
|
||||
+ std::string ConvertToOutputFormat(const char* source, OutputFormat output);
|
||||
+ std::string Convert(const char* remote, RelativeRoot local,
|
||||
OutputFormat output = UNCHANGED,
|
||||
bool optional = false);
|
||||
+ std::string Convert(RelativeRoot remote, const char* local,
|
||||
+ OutputFormat output = UNCHANGED,
|
||||
+ bool optional = false);
|
||||
+
|
||||
+ /**
|
||||
+ * Get path for the specified relative root.
|
||||
+ */
|
||||
+ const char* GetRelativeRootPath(RelativeRoot relroot);
|
||||
|
||||
/**
|
||||
* Convert the given path to an output path that is optionally
|
||||
@@ -162,7 +170,13 @@
|
||||
std::string GetRealLocation(const char* inName, const char* config);
|
||||
|
||||
///! for existing files convert to output path and short path if spaces
|
||||
- std::string ConvertToOutputForExisting(const char* p);
|
||||
+ std::string ConvertToOutputForExisting(const char* remote,
|
||||
+ RelativeRoot local = START_OUTPUT);
|
||||
+
|
||||
+ /** For existing path identified by RelativeRoot convert to output
|
||||
+ path and short path if spaces. */
|
||||
+ std::string ConvertToOutputForExisting(RelativeRoot remote,
|
||||
+ const char* local = 0);
|
||||
|
||||
/** Called from command-line hook to clear dependencies. */
|
||||
virtual void ClearDependencies(cmMakefile* /* mf */,
|
||||
@@ -386,6 +400,9 @@
|
||||
|
||||
unsigned int BackwardsCompatibility;
|
||||
bool BackwardsCompatibilityFinal;
|
||||
+private:
|
||||
+ std::string ConvertToOutputForExistingCommon(const char* remote,
|
||||
+ std::string const& result);
|
||||
};
|
||||
|
||||
#endif
|
||||
--- a/Source/cmLocalUnixMakefileGenerator3.cxx
|
||||
+++ b/Source/cmLocalUnixMakefileGenerator3.cxx
|
||||
@@ -360,7 +360,7 @@
|
||||
);
|
||||
this->CreateCDCommand(commands,
|
||||
this->Makefile->GetHomeOutputDirectory(),
|
||||
- this->Makefile->GetStartOutputDirectory());
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
}
|
||||
|
||||
// Write the rule to the makefile.
|
||||
@@ -404,7 +404,7 @@
|
||||
(makefile2.c_str(),localName.c_str()));
|
||||
this->CreateCDCommand(commands,
|
||||
this->Makefile->GetHomeOutputDirectory(),
|
||||
- this->Makefile->GetStartOutputDirectory());
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
this->WriteMakeRule(ruleFileStream, "Convenience name for target.",
|
||||
localName.c_str(), depends, commands, true);
|
||||
|
||||
@@ -432,7 +432,7 @@
|
||||
(makefileName.c_str(), makeTargetName.c_str()));
|
||||
this->CreateCDCommand(commands,
|
||||
this->Makefile->GetHomeOutputDirectory(),
|
||||
- this->Makefile->GetStartOutputDirectory());
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
this->WriteMakeRule(ruleFileStream, "fast build rule for target.",
|
||||
localName.c_str(), depends, commands, true);
|
||||
|
||||
@@ -450,7 +450,7 @@
|
||||
(makefile2.c_str(), makeTargetName.c_str()));
|
||||
this->CreateCDCommand(commands,
|
||||
this->Makefile->GetHomeOutputDirectory(),
|
||||
- this->Makefile->GetStartOutputDirectory());
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
this->WriteMakeRule(ruleFileStream,
|
||||
"Manual pre-install relink rule for target.",
|
||||
localName.c_str(), depends, commands, true);
|
||||
@@ -835,7 +835,7 @@
|
||||
{
|
||||
this->CreateCDCommand(commands,
|
||||
this->Makefile->GetHomeOutputDirectory(),
|
||||
- this->Makefile->GetStartOutputDirectory());
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
}
|
||||
this->WriteMakeRule(makefileStream,
|
||||
"Special rule to run CMake to check the build system "
|
||||
@@ -953,12 +953,13 @@
|
||||
void
|
||||
cmLocalUnixMakefileGenerator3
|
||||
::AppendCustomCommands(std::vector<std::string>& commands,
|
||||
- const std::vector<cmCustomCommand>& ccs)
|
||||
+ const std::vector<cmCustomCommand>& ccs,
|
||||
+ cmLocalGenerator::RelativeRoot relative)
|
||||
{
|
||||
for(std::vector<cmCustomCommand>::const_iterator i = ccs.begin();
|
||||
i != ccs.end(); ++i)
|
||||
{
|
||||
- this->AppendCustomCommand(commands, *i, true);
|
||||
+ this->AppendCustomCommand(commands, *i, true, relative);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -966,7 +967,8 @@
|
||||
void
|
||||
cmLocalUnixMakefileGenerator3
|
||||
::AppendCustomCommand(std::vector<std::string>& commands,
|
||||
- const cmCustomCommand& cc, bool echo_comment)
|
||||
+ const cmCustomCommand& cc, bool echo_comment,
|
||||
+ cmLocalGenerator::RelativeRoot relative)
|
||||
{
|
||||
// Optionally create a command to display the custom command's
|
||||
// comment text. This is used for pre-build, pre-link, and
|
||||
@@ -1072,8 +1074,7 @@
|
||||
}
|
||||
|
||||
// Setup the proper working directory for the commands.
|
||||
- this->CreateCDCommand(commands1, dir,
|
||||
- this->Makefile->GetHomeOutputDirectory());
|
||||
+ this->CreateCDCommand(commands1, dir, relative);
|
||||
|
||||
// push back the custom commands
|
||||
commands.insert(commands.end(), commands1.begin(), commands1.end());
|
||||
@@ -1610,9 +1611,11 @@
|
||||
this->AppendCustomDepends(depends,
|
||||
glIt->second.GetPostBuildCommands());
|
||||
this->AppendCustomCommands(commands,
|
||||
- glIt->second.GetPreBuildCommands());
|
||||
+ glIt->second.GetPreBuildCommands(),
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
this->AppendCustomCommands(commands,
|
||||
- glIt->second.GetPostBuildCommands());
|
||||
+ glIt->second.GetPostBuildCommands(),
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
std::string targetName = glIt->second.GetName();
|
||||
this->WriteMakeRule(ruleFileStream, targetString.c_str(),
|
||||
targetName.c_str(), depends, commands, true);
|
||||
@@ -1674,7 +1677,7 @@
|
||||
recursiveTarget.c_str()));
|
||||
this->CreateCDCommand(commands,
|
||||
this->Makefile->GetHomeOutputDirectory(),
|
||||
- this->Makefile->GetStartOutputDirectory());
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
{
|
||||
cmOStringStream progCmd;
|
||||
progCmd << "$(CMAKE_COMMAND) -E cmake_progress_start "; // # 0
|
||||
@@ -1696,7 +1699,7 @@
|
||||
recursiveTarget.c_str()));
|
||||
this->CreateCDCommand(commands,
|
||||
this->Makefile->GetHomeOutputDirectory(),
|
||||
- this->Makefile->GetStartOutputDirectory());
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
this->WriteMakeRule(ruleFileStream, "The main clean target", "clean",
|
||||
depends, commands, true);
|
||||
commands.clear();
|
||||
@@ -1726,7 +1729,7 @@
|
||||
(this->GetRecursiveMakeCall(mf2Dir.c_str(), recursiveTarget.c_str()));
|
||||
this->CreateCDCommand(commands,
|
||||
this->Makefile->GetHomeOutputDirectory(),
|
||||
- this->Makefile->GetStartOutputDirectory());
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
this->WriteMakeRule(ruleFileStream, "Prepare targets for installation.",
|
||||
"preinstall", depends, commands, true);
|
||||
depends.clear();
|
||||
@@ -1747,7 +1750,7 @@
|
||||
commands.push_back(runRule);
|
||||
this->CreateCDCommand(commands,
|
||||
this->Makefile->GetHomeOutputDirectory(),
|
||||
- this->Makefile->GetStartOutputDirectory());
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
this->WriteMakeRule(ruleFileStream, "clear depends",
|
||||
"depend",
|
||||
depends, commands, true);
|
||||
@@ -2126,8 +2129,10 @@
|
||||
//----------------------------------------------------------------------------
|
||||
void cmLocalUnixMakefileGenerator3
|
||||
::CreateCDCommand(std::vector<std::string>& commands, const char *tgtDir,
|
||||
- const char *retDir)
|
||||
+ cmLocalGenerator::RelativeRoot relRetDir)
|
||||
{
|
||||
+ const char* retDir = this->GetRelativeRootPath(relRetDir);
|
||||
+
|
||||
// do we need to cd?
|
||||
if (!strcmp(tgtDir,retDir))
|
||||
{
|
||||
@@ -2140,18 +2145,12 @@
|
||||
// back because the shell keeps the working directory between
|
||||
// commands.
|
||||
std::string cmd = "cd ";
|
||||
- cmd += this->ConvertToOutputForExisting(tgtDir);
|
||||
+ cmd += this->ConvertToOutputForExisting(tgtDir, relRetDir);
|
||||
commands.insert(commands.begin(),cmd);
|
||||
-
|
||||
- // Change back to the starting directory. Any trailing slash must be
|
||||
- // removed to avoid problems with Borland Make.
|
||||
- std::string back = retDir;
|
||||
- if(back.size() && back[back.size()-1] == '/')
|
||||
- {
|
||||
- back = back.substr(0, back.size()-1);
|
||||
- }
|
||||
+
|
||||
+ // Change back to the starting directory.
|
||||
cmd = "cd ";
|
||||
- cmd += this->ConvertToOutputForExisting(back.c_str());
|
||||
+ cmd += this->ConvertToOutputForExisting(relRetDir, tgtDir);
|
||||
commands.push_back(cmd);
|
||||
}
|
||||
else
|
||||
@@ -2163,7 +2162,7 @@
|
||||
for (; i != commands.end(); ++i)
|
||||
{
|
||||
std::string cmd = "cd ";
|
||||
- cmd += this->ConvertToOutputForExisting(tgtDir);
|
||||
+ cmd += this->ConvertToOutputForExisting(tgtDir, relRetDir);
|
||||
cmd += " && ";
|
||||
cmd += *i;
|
||||
*i = cmd;
|
||||
--- a/Source/cmLocalUnixMakefileGenerator3.h
|
||||
+++ b/Source/cmLocalUnixMakefileGenerator3.h
|
||||
@@ -197,7 +197,8 @@
|
||||
|
||||
// create a command that cds to the start dir then runs the commands
|
||||
void CreateCDCommand(std::vector<std::string>& commands,
|
||||
- const char *targetDir, const char *returnDir);
|
||||
+ const char *targetDir,
|
||||
+ cmLocalGenerator::RelativeRoot returnDir);
|
||||
|
||||
static std::string ConvertToQuotedOutputPath(const char* p);
|
||||
|
||||
@@ -321,10 +322,14 @@
|
||||
void AppendCustomDepend(std::vector<std::string>& depends,
|
||||
const cmCustomCommand& cc);
|
||||
void AppendCustomCommands(std::vector<std::string>& commands,
|
||||
- const std::vector<cmCustomCommand>& ccs);
|
||||
+ const std::vector<cmCustomCommand>& ccs,
|
||||
+ cmLocalGenerator::RelativeRoot relative =
|
||||
+ cmLocalGenerator::HOME_OUTPUT);
|
||||
void AppendCustomCommand(std::vector<std::string>& commands,
|
||||
const cmCustomCommand& cc,
|
||||
- bool echo_comment=false);
|
||||
+ bool echo_comment=false,
|
||||
+ cmLocalGenerator::RelativeRoot relative =
|
||||
+ cmLocalGenerator::HOME_OUTPUT);
|
||||
void AppendCleanCommand(std::vector<std::string>& commands,
|
||||
const std::vector<std::string>& files,
|
||||
cmTarget& target, const char* filename =0);
|
||||
--- a/Source/cmMakefileExecutableTargetGenerator.cxx
|
||||
+++ b/Source/cmMakefileExecutableTargetGenerator.cxx
|
||||
@@ -435,7 +435,7 @@
|
||||
this->LocalGenerator->CreateCDCommand
|
||||
(commands1,
|
||||
this->Makefile->GetStartOutputDirectory(),
|
||||
- this->Makefile->GetHomeOutputDirectory());
|
||||
+ cmLocalGenerator::HOME_OUTPUT);
|
||||
commands.insert(commands.end(), commands1.begin(), commands1.end());
|
||||
commands1.clear();
|
||||
|
||||
@@ -449,7 +449,7 @@
|
||||
commands1.push_back(symlink);
|
||||
this->LocalGenerator->CreateCDCommand(commands1,
|
||||
this->Makefile->GetStartOutputDirectory(),
|
||||
- this->Makefile->GetHomeOutputDirectory());
|
||||
+ cmLocalGenerator::HOME_OUTPUT);
|
||||
commands.insert(commands.end(), commands1.begin(), commands1.end());
|
||||
commands1.clear();
|
||||
}
|
||||
--- a/Source/cmMakefileLibraryTargetGenerator.cxx
|
||||
+++ b/Source/cmMakefileLibraryTargetGenerator.cxx
|
||||
@@ -591,7 +591,7 @@
|
||||
this->LocalGenerator->CreateCDCommand
|
||||
(commands1,
|
||||
this->Makefile->GetStartOutputDirectory(),
|
||||
- this->Makefile->GetHomeOutputDirectory());
|
||||
+ cmLocalGenerator::HOME_OUTPUT);
|
||||
commands.insert(commands.end(), commands1.begin(), commands1.end());
|
||||
commands1.clear();
|
||||
}
|
||||
@@ -872,7 +872,7 @@
|
||||
this->LocalGenerator->CreateCDCommand
|
||||
(commands1,
|
||||
this->Makefile->GetStartOutputDirectory(),
|
||||
- this->Makefile->GetHomeOutputDirectory());
|
||||
+ cmLocalGenerator::HOME_OUTPUT);
|
||||
commands.insert(commands.end(), commands1.begin(), commands1.end());
|
||||
commands1.clear();
|
||||
|
||||
@@ -888,7 +888,7 @@
|
||||
commands1.push_back(symlink);
|
||||
this->LocalGenerator->CreateCDCommand(commands1,
|
||||
this->Makefile->GetStartOutputDirectory(),
|
||||
- this->Makefile->GetHomeOutputDirectory());
|
||||
+ cmLocalGenerator::HOME_OUTPUT);
|
||||
commands.insert(commands.end(), commands1.begin(), commands1.end());
|
||||
commands1.clear();
|
||||
}
|
||||
--- a/Source/cmMakefileTargetGenerator.cxx
|
||||
+++ b/Source/cmMakefileTargetGenerator.cxx
|
||||
@@ -567,7 +567,7 @@
|
||||
if(this->LocalGenerator->UseRelativePaths)
|
||||
{
|
||||
sourceFile = this->Convert(sourceFile.c_str(),
|
||||
- cmLocalGenerator::HOME_OUTPUT);
|
||||
+ cmLocalGenerator::START_OUTPUT);
|
||||
}
|
||||
sourceFile = this->Convert(sourceFile.c_str(),
|
||||
cmLocalGenerator::NONE,
|
||||
@@ -614,7 +614,7 @@
|
||||
this->LocalGenerator->CreateCDCommand
|
||||
(compileCommands,
|
||||
this->Makefile->GetStartOutputDirectory(),
|
||||
- this->Makefile->GetHomeOutputDirectory());
|
||||
+ cmLocalGenerator::HOME_OUTPUT);
|
||||
commands.insert(commands.end(),
|
||||
compileCommands.begin(), compileCommands.end());
|
||||
|
||||
@@ -725,7 +725,7 @@
|
||||
this->LocalGenerator->CreateCDCommand
|
||||
(preprocessCommands,
|
||||
this->Makefile->GetStartOutputDirectory(),
|
||||
- this->Makefile->GetHomeOutputDirectory());
|
||||
+ cmLocalGenerator::HOME_OUTPUT);
|
||||
commands.insert(commands.end(),
|
||||
preprocessCommands.begin(),
|
||||
preprocessCommands.end());
|
||||
@@ -781,7 +781,7 @@
|
||||
this->LocalGenerator->CreateCDCommand
|
||||
(assemblyCommands,
|
||||
this->Makefile->GetStartOutputDirectory(),
|
||||
- this->Makefile->GetHomeOutputDirectory());
|
||||
+ cmLocalGenerator::HOME_OUTPUT);
|
||||
commands.insert(commands.end(),
|
||||
assemblyCommands.begin(),
|
||||
assemblyCommands.end());
|
||||
@@ -895,7 +895,7 @@
|
||||
this->LocalGenerator->CreateCDCommand
|
||||
(commands,
|
||||
this->Makefile->GetStartOutputDirectory(),
|
||||
- this->Makefile->GetHomeOutputDirectory());
|
||||
+ cmLocalGenerator::HOME_OUTPUT);
|
||||
|
||||
// Write the rule.
|
||||
this->LocalGenerator->WriteMakeRule(*this->BuildFileStream, 0,
|
Loading…
Reference in new issue