summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalXCodeGenerator.cxx
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2015-07-25 17:03:51 (GMT)
committerStephen Kelly <steveire@gmail.com>2015-07-30 06:28:31 (GMT)
commit5edb3354854bd2de4f9ea0e2c4af4069f46a4830 (patch)
treee53fccb422a5056fa070010a346a3b97b886034d /Source/cmGlobalXCodeGenerator.cxx
parentff1019bfac1380681989242fa904c2d9fe13fd38 (diff)
downloadCMake-5edb3354854bd2de4f9ea0e2c4af4069f46a4830.zip
CMake-5edb3354854bd2de4f9ea0e2c4af4069f46a4830.tar.gz
CMake-5edb3354854bd2de4f9ea0e2c4af4069f46a4830.tar.bz2
cmGlobalGenerator: Virtualize the Compute step and override it.
Diffstat (limited to 'Source/cmGlobalXCodeGenerator.cxx')
-rw-r--r--Source/cmGlobalXCodeGenerator.cxx13
1 files changed, 12 insertions, 1 deletions
diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx
index ffa4c5d..7dea107 100644
--- a/Source/cmGlobalXCodeGenerator.cxx
+++ b/Source/cmGlobalXCodeGenerator.cxx
@@ -378,8 +378,13 @@ cmGlobalXCodeGenerator::CreateLocalGenerator(cmLocalGenerator* parent,
}
//----------------------------------------------------------------------------
-void cmGlobalXCodeGenerator::Generate()
+bool cmGlobalXCodeGenerator::Compute()
{
+ if (!cmGlobalGenerator::Compute())
+ {
+ return false;
+ }
+
std::map<std::string, std::vector<cmLocalGenerator*> >::iterator it;
// make sure extra targets are added before calling
// the parent generate which will call trace depends
@@ -390,11 +395,17 @@ void cmGlobalXCodeGenerator::Generate()
// add ALL_BUILD, INSTALL, etc
this->AddExtraTargets(root, it->second);
}
+ return true;
+}
+
+void cmGlobalXCodeGenerator::Generate()
+{
this->cmGlobalGenerator::Generate();
if(cmSystemTools::GetErrorOccuredFlag())
{
return;
}
+ std::map<std::string, std::vector<cmLocalGenerator*> >::iterator it;
for(it = this->ProjectMap.begin(); it!= this->ProjectMap.end(); ++it)
{
cmLocalGenerator* root = it->second[0];