ENH: SetupPathConversions is now called automatically on demand.
This commit is contained in:
parent
9a5a051f21
commit
2f2b5b2503
|
@ -597,7 +597,6 @@ std::string cmGlobalUnixMakefileGenerator3
|
|||
lg->GetMakefile()->MakeStartDirectoriesCurrent();
|
||||
}
|
||||
|
||||
lg->SetupPathConversions();
|
||||
makeCommand += " \"";
|
||||
std::string tname = targetName;
|
||||
if(fast)
|
||||
|
|
|
@ -48,6 +48,7 @@ cmLocalGenerator::cmLocalGenerator()
|
|||
this->Configured = false;
|
||||
this->EmitUniversalBinaryFlags = true;
|
||||
this->RelativePathsConfigured = false;
|
||||
this->PathConversionsSetup = false;
|
||||
}
|
||||
|
||||
cmLocalGenerator::~cmLocalGenerator()
|
||||
|
@ -80,9 +81,7 @@ void cmLocalGenerator::Configure()
|
|||
this->Makefile->ConfigureSubDirectory(*sdi);
|
||||
}
|
||||
}
|
||||
|
||||
this->SetupPathConversions();
|
||||
|
||||
|
||||
// Check whether relative paths should be used for optionally
|
||||
// relative paths.
|
||||
this->UseRelativePaths = this->Makefile->IsOn("CMAKE_USE_RELATIVE_PATHS");
|
||||
|
@ -2014,6 +2013,13 @@ std::string cmLocalGenerator::Convert(const char* source,
|
|||
OutputFormat output,
|
||||
bool optional)
|
||||
{
|
||||
// Make sure the relative path conversion components are set.
|
||||
if(!this->PathConversionsSetup)
|
||||
{
|
||||
this->SetupPathConversions();
|
||||
this->PathConversionsSetup = true;
|
||||
}
|
||||
|
||||
// Convert the path to a relative path.
|
||||
std::string result = source;
|
||||
|
||||
|
|
|
@ -102,9 +102,6 @@ public:
|
|||
OutputFormat output = UNCHANGED,
|
||||
bool optional = false);
|
||||
|
||||
///! Call this prior to using Convert
|
||||
void SetupPathConversions();
|
||||
|
||||
/**
|
||||
* Convert the given path to an output path that is optionally
|
||||
* relative based on the cache option CMAKE_USE_RELATIVE_PATHS. The
|
||||
|
@ -279,6 +276,7 @@ protected:
|
|||
void ConfigureRelativePaths();
|
||||
std::string FindRelativePathTopSource();
|
||||
std::string FindRelativePathTopBinary();
|
||||
void SetupPathConversions();
|
||||
|
||||
cmMakefile *Makefile;
|
||||
cmGlobalGenerator *GlobalGenerator;
|
||||
|
@ -314,6 +312,7 @@ protected:
|
|||
std::string RelativePathTopSource;
|
||||
std::string RelativePathTopBinary;
|
||||
bool RelativePathsConfigured;
|
||||
bool PathConversionsSetup;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -1210,7 +1210,6 @@ int cmake::ExecuteCMakeCommand(std::vector<std::string>& args)
|
|||
lgd->GetMakefile()->SetStartDirectory(startDir.c_str());
|
||||
lgd->GetMakefile()->SetStartOutputDirectory(startOutDir.c_str());
|
||||
lgd->GetMakefile()->MakeStartDirectoriesCurrent();
|
||||
lgd->SetupPathConversions();
|
||||
|
||||
// Actually scan dependencies.
|
||||
return lgd->ScanDependencies(depInfo.c_str())? 0 : 2;
|
||||
|
|
Loading…
Reference in New Issue