diff options
Diffstat (limited to 'Source/cmake.cxx')
-rw-r--r-- | Source/cmake.cxx | 31 |
1 files changed, 13 insertions, 18 deletions
diff --git a/Source/cmake.cxx b/Source/cmake.cxx index dc1c0d2..45f013f 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -2547,29 +2547,24 @@ int cmake::CheckBuildSystem() return 1; } - // Now that we know the generator used to build the project, use it - // to check the dependency integrity. - const char* genName = mf->GetDefinition("CMAKE_DEPENDS_GENERATOR"); - if (!genName || genName[0] == '\0') + if(this->ClearBuildSystem) { - genName = "Unix Makefiles"; - } - // this global generator is never set to the cmake object so it is never - // deleted, so make it an auto_ptr - std::auto_ptr<cmGlobalGenerator> ggd(this->CreateGlobalGenerator(genName)); - if (ggd.get()) - { - // Check the dependencies in case source files were removed. - std::auto_ptr<cmLocalGenerator> lgd(ggd->CreateLocalGenerator()); - lgd->SetGlobalGenerator(ggd.get()); + // Get the generator used for this build system. + const char* genName = mf->GetDefinition("CMAKE_DEPENDS_GENERATOR"); + if(!genName || genName[0] == '\0') + { + genName = "Unix Makefiles"; + } - if(this->ClearBuildSystem) + // Create the generator and use it to clear the dependencies. + std::auto_ptr<cmGlobalGenerator> + ggd(this->CreateGlobalGenerator(genName)); + if(ggd.get()) { + std::auto_ptr<cmLocalGenerator> lgd(ggd->CreateLocalGenerator()); + lgd->SetGlobalGenerator(ggd.get()); lgd->ClearDependencies(mf, verbose); } - - // Check for multiple output pairs. - ggd->CheckMultipleOutputs(mf, verbose); } // Get the set of dependencies and outputs. |