BUG: Fixed generation of XCODE_DEPEND_HELPER.make into proper directory. Cleaned up duplicate code created by recent changes.
This commit is contained in:
parent
1c318150a6
commit
6c421971b9
@ -229,14 +229,7 @@ void cmGlobalXCodeGenerator::Generate()
|
|||||||
for(it = this->ProjectMap.begin(); it!= this->ProjectMap.end(); ++it)
|
for(it = this->ProjectMap.begin(); it!= this->ProjectMap.end(); ++it)
|
||||||
{
|
{
|
||||||
cmLocalGenerator* root = it->second[0];
|
cmLocalGenerator* root = it->second[0];
|
||||||
this->CurrentProject = root->GetMakefile()->GetProjectName();
|
this->SetGenerationRoot(root);
|
||||||
this->SetCurrentLocalGenerator(root);
|
|
||||||
this->OutputDir = this->CurrentMakefile->GetHomeOutputDirectory();
|
|
||||||
this->OutputDir =
|
|
||||||
cmSystemTools::CollapseFullPath(this->OutputDir.c_str());
|
|
||||||
cmSystemTools::SplitPath(this->OutputDir.c_str(),
|
|
||||||
this->ProjectOutputDirectoryComponents);
|
|
||||||
this->CurrentLocalGenerator = root;
|
|
||||||
// add ALL_BUILD, INSTALL, etc
|
// add ALL_BUILD, INSTALL, etc
|
||||||
this->AddExtraTargets(root, it->second);
|
this->AddExtraTargets(root, it->second);
|
||||||
}
|
}
|
||||||
@ -244,19 +237,29 @@ void cmGlobalXCodeGenerator::Generate()
|
|||||||
for(it = this->ProjectMap.begin(); it!= this->ProjectMap.end(); ++it)
|
for(it = this->ProjectMap.begin(); it!= this->ProjectMap.end(); ++it)
|
||||||
{
|
{
|
||||||
cmLocalGenerator* root = it->second[0];
|
cmLocalGenerator* root = it->second[0];
|
||||||
this->CurrentProject = root->GetMakefile()->GetProjectName();
|
this->SetGenerationRoot(root);
|
||||||
this->SetCurrentLocalGenerator(root);
|
|
||||||
this->OutputDir = this->CurrentMakefile->GetHomeOutputDirectory();
|
|
||||||
this->OutputDir =
|
|
||||||
cmSystemTools::CollapseFullPath(this->OutputDir.c_str());
|
|
||||||
cmSystemTools::SplitPath(this->OutputDir.c_str(),
|
|
||||||
this->ProjectOutputDirectoryComponents);
|
|
||||||
this->CurrentLocalGenerator = root;
|
|
||||||
// now create the project
|
// now create the project
|
||||||
this->OutputXCodeProject(root, it->second);
|
this->OutputXCodeProject(root, it->second);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------
|
||||||
|
void cmGlobalXCodeGenerator::SetGenerationRoot(cmLocalGenerator* root)
|
||||||
|
{
|
||||||
|
this->CurrentProject = root->GetMakefile()->GetProjectName();
|
||||||
|
this->SetCurrentLocalGenerator(root);
|
||||||
|
std::string outDir = this->CurrentMakefile->GetHomeOutputDirectory();
|
||||||
|
outDir =cmSystemTools::CollapseFullPath(outDir.c_str());
|
||||||
|
cmSystemTools::SplitPath(outDir.c_str(),
|
||||||
|
this->ProjectOutputDirectoryComponents);
|
||||||
|
|
||||||
|
this->CurrentXCodeHackMakefile =
|
||||||
|
root->GetMakefile()->GetCurrentOutputDirectory();
|
||||||
|
this->CurrentXCodeHackMakefile += "/CMakeScripts";
|
||||||
|
cmSystemTools::MakeDirectory(this->CurrentXCodeHackMakefile.c_str());
|
||||||
|
this->CurrentXCodeHackMakefile += "/XCODE_DEPEND_HELPER.make";
|
||||||
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
void
|
void
|
||||||
cmGlobalXCodeGenerator::AddExtraTargets(cmLocalGenerator* root,
|
cmGlobalXCodeGenerator::AddExtraTargets(cmLocalGenerator* root,
|
||||||
@ -273,10 +276,6 @@ cmGlobalXCodeGenerator::AddExtraTargets(cmLocalGenerator* root,
|
|||||||
|
|
||||||
// Add XCODE depend helper
|
// Add XCODE depend helper
|
||||||
std::string dir = mf->GetCurrentOutputDirectory();
|
std::string dir = mf->GetCurrentOutputDirectory();
|
||||||
this->CurrentXCodeHackMakefile = dir;
|
|
||||||
this->CurrentXCodeHackMakefile += "/CMakeScripts";
|
|
||||||
cmSystemTools::MakeDirectory(this->CurrentXCodeHackMakefile.c_str());
|
|
||||||
this->CurrentXCodeHackMakefile += "/XCODE_DEPEND_HELPER.make";
|
|
||||||
cmCustomCommandLine makecommand;
|
cmCustomCommandLine makecommand;
|
||||||
makecommand.push_back("make");
|
makecommand.push_back("make");
|
||||||
makecommand.push_back("-C");
|
makecommand.push_back("-C");
|
||||||
|
@ -157,6 +157,7 @@ private:
|
|||||||
cmXCodeObject* dependTarget);
|
cmXCodeObject* dependTarget);
|
||||||
void CreateXCodeDependHackTarget(std::vector<cmXCodeObject*>& targets);
|
void CreateXCodeDependHackTarget(std::vector<cmXCodeObject*>& targets);
|
||||||
bool SpecialTargetEmitted(std::string const& tname);
|
bool SpecialTargetEmitted(std::string const& tname);
|
||||||
|
void SetGenerationRoot(cmLocalGenerator* root);
|
||||||
void AddExtraTargets(cmLocalGenerator* root,
|
void AddExtraTargets(cmLocalGenerator* root,
|
||||||
std::vector<cmLocalGenerator*>& gens);
|
std::vector<cmLocalGenerator*>& gens);
|
||||||
cmXCodeObject* CreateBuildPhase(const char* name,
|
cmXCodeObject* CreateBuildPhase(const char* name,
|
||||||
@ -186,7 +187,6 @@ private:
|
|||||||
std::string CurrentReRunCMakeMakefile;
|
std::string CurrentReRunCMakeMakefile;
|
||||||
std::string CurrentXCodeHackMakefile;
|
std::string CurrentXCodeHackMakefile;
|
||||||
std::string CurrentProject;
|
std::string CurrentProject;
|
||||||
std::string OutputDir;
|
|
||||||
std::set<cmStdString> TargetDoneSet;
|
std::set<cmStdString> TargetDoneSet;
|
||||||
std::vector<std::string> CurrentOutputDirectoryComponents;
|
std::vector<std::string> CurrentOutputDirectoryComponents;
|
||||||
std::vector<std::string> ProjectOutputDirectoryComponents;
|
std::vector<std::string> ProjectOutputDirectoryComponents;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user