summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalGenerator.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2015-10-06 14:59:00 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2015-10-06 14:59:00 (GMT)
commitc914d2bda278b588c1dca3e0fa5ec97a64c56c3c (patch)
treee10024eaa740ad8edfe5918d2c1e06f72c4523de /Source/cmGlobalGenerator.cxx
parent9d5bfa53e63c894b1c774258882877f57d61638f (diff)
parent616f03114eb41218dc3278e72b52d8de09e40365 (diff)
downloadCMake-c914d2bda278b588c1dca3e0fa5ec97a64c56c3c.zip
CMake-c914d2bda278b588c1dca3e0fa5ec97a64c56c3c.tar.gz
CMake-c914d2bda278b588c1dca3e0fa5ec97a64c56c3c.tar.bz2
Merge topic 'refactor-computation'
616f0311 cmGlobalGenerator: Move path computation to Compute. 9eea0486 cmGlobalGenerator: Do more computation at compute time. 2eca0559 cmGlobalGenerator: De-virtualize Compute(). 21f428f4 VisualStudio: Replace Compute override with AddExtraIDETargets override. a9588e90 VisualStudio10: Initialize the LongestSource at generate time. 4407eee0 cmGlobalGenerator: Call AddExtraIDETargets as a hook of Compute(). a09c545d Xcode: Extract a AddExtraIDETargets method.
Diffstat (limited to 'Source/cmGlobalGenerator.cxx')
-rw-r--r--Source/cmGlobalGenerator.cxx26
1 files changed, 13 insertions, 13 deletions
diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx
index 309884f..05f1029 100644
--- a/Source/cmGlobalGenerator.cxx
+++ b/Source/cmGlobalGenerator.cxx
@@ -1282,12 +1282,7 @@ bool cmGlobalGenerator::Compute()
}
}
- return true;
-}
-
-void cmGlobalGenerator::Generate()
-{
- unsigned int i;
+ this->AddExtraIDETargets();
// Trace the dependencies, after that no custom commands should be added
// because their dependencies might not be handled correctly
@@ -1307,22 +1302,27 @@ void cmGlobalGenerator::Generate()
// Compute the inter-target dependencies.
if(!this->ComputeTargetDepends())
{
- return;
+ return false;
+ }
+
+ for (i = 0; i < this->LocalGenerators.size(); ++i)
+ {
+ this->LocalGenerators[i]->ComputeHomeRelativeOutputPath();
}
+ return true;
+}
+
+void cmGlobalGenerator::Generate()
+{
// Create a map from local generator to the complete set of targets
// it builds by default.
this->InitializeProgressMarks();
this->ProcessEvaluationFiles();
- for (i = 0; i < this->LocalGenerators.size(); ++i)
- {
- this->LocalGenerators[i]->ComputeHomeRelativeOutputPath();
- }
-
// Generate project files
- for (i = 0; i < this->LocalGenerators.size(); ++i)
+ for (unsigned int i = 0; i < this->LocalGenerators.size(); ++i)
{
this->SetCurrentMakefile(this->LocalGenerators[i]->GetMakefile());
this->LocalGenerators[i]->Generate();