BUG: Avoid duplicate conversion to output path.

This commit is contained in:
Brad King 2006-10-10 13:47:50 -04:00
parent cdcbe2587a
commit f0c79a0030
2 changed files with 13 additions and 18 deletions

View File

@ -464,9 +464,6 @@ cmGlobalUnixMakefileGenerator3
std::string makeTarget = lg->GetMakefile()->GetStartOutputDirectory();
makeTarget += "/";
makeTarget += pass;
makeTarget = lg->Convert(makeTarget.c_str(),
cmLocalGenerator::HOME_OUTPUT,
cmLocalGenerator::MAKEFILE);
// The directory-level rule should depend on the target-level rules
// for all targets in the directory.
@ -502,9 +499,6 @@ cmGlobalUnixMakefileGenerator3
std::string subdir = slg->GetMakefile()->GetStartOutputDirectory();
subdir += "/";
subdir += pass;
subdir = slg->Convert(subdir.c_str(),
cmLocalGenerator::HOME_OUTPUT,
cmLocalGenerator::MAKEFILE);
depends.push_back(subdir);
}

View File

@ -1465,10 +1465,11 @@ void cmLocalUnixMakefileGenerator3
std::vector<std::string> commands;
// Write the all rule.
std::string dir = this->Makefile->GetStartOutputDirectory();
dir += "/all";
std::string dir;
std::string recursiveTarget = this->Makefile->GetStartOutputDirectory();
recursiveTarget += "/all";
dir = this->Convert(dir.c_str(),HOME_OUTPUT,MAKEFILE);
dir = this->Convert(recursiveTarget.c_str(),HOME_OUTPUT,MAKEFILE);
depends.push_back("cmake_check_build_system");
@ -1487,7 +1488,7 @@ void cmLocalUnixMakefileGenerator3
std::string mf2Dir = cmake::GetCMakeFilesDirectoryPostSlash();
mf2Dir += "Makefile2";
commands.push_back(this->GetRecursiveMakeCall(mf2Dir.c_str(),
dir.c_str()));
recursiveTarget.c_str()));
this->CreateCDCommand(commands,
this->Makefile->GetHomeOutputDirectory(),
this->Makefile->GetStartOutputDirectory());
@ -1504,13 +1505,13 @@ void cmLocalUnixMakefileGenerator3
depends, commands, true);
// Write the clean rule.
dir = this->Makefile->GetStartOutputDirectory();
dir += "/clean";
dir = this->Convert(dir.c_str(),HOME_OUTPUT,MAKEFILE);
recursiveTarget = this->Makefile->GetStartOutputDirectory();
recursiveTarget += "/clean";
dir = this->Convert(recursiveTarget.c_str(),HOME_OUTPUT,MAKEFILE);
commands.clear();
depends.clear();
commands.push_back(this->GetRecursiveMakeCall(mf2Dir.c_str(),
dir.c_str()));
recursiveTarget.c_str()));
this->CreateCDCommand(commands,
this->Makefile->GetHomeOutputDirectory(),
this->Makefile->GetStartOutputDirectory());
@ -1523,9 +1524,9 @@ void cmLocalUnixMakefileGenerator3
depends, commands, true);
// Write the preinstall rule.
dir = this->Makefile->GetStartOutputDirectory();
dir += "/preinstall";
dir = this->Convert(dir.c_str(), HOME_OUTPUT,MAKEFILE);
recursiveTarget = this->Makefile->GetStartOutputDirectory();
recursiveTarget += "/preinstall";
dir = this->Convert(recursiveTarget.c_str(), HOME_OUTPUT,MAKEFILE);
commands.clear();
depends.clear();
const char* noall =
@ -1541,7 +1542,7 @@ void cmLocalUnixMakefileGenerator3
depends.push_back("cmake_check_build_system");
}
commands.push_back
(this->GetRecursiveMakeCall(mf2Dir.c_str(), dir.c_str()));
(this->GetRecursiveMakeCall(mf2Dir.c_str(), recursiveTarget.c_str()));
this->CreateCDCommand(commands,
this->Makefile->GetHomeOutputDirectory(),
this->Makefile->GetStartOutputDirectory());