From bd7dd6d414303e8fc4da786107f4292768d87638 Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 24 Aug 2018 07:31:01 -0400 Subject: cmake: Declare VariableWatch member only when used --- Source/cmake.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Source/cmake.h b/Source/cmake.h index 86e06df..4b4c67c 100644 --- a/Source/cmake.h +++ b/Source/cmake.h @@ -297,8 +297,10 @@ public: ///! this is called by generators to update the progress void UpdateProgress(const char* msg, float prog); +#if defined(CMAKE_BUILD_WITH_CMAKE) ///! Get the variable watch object cmVariableWatch* GetVariableWatch() { return this->VariableWatch; } +#endif void GetGeneratorDocumentation(std::vector&); @@ -493,8 +495,6 @@ protected: void GenerateGraphViz(const char* fileName) const; - cmVariableWatch* VariableWatch; - private: ProgressCallbackType ProgressCallback; void* ProgressCallbackClientData; @@ -525,6 +525,10 @@ private: std::string GraphVizFile; InstalledFilesMap InstalledFiles; +#if defined(CMAKE_BUILD_WITH_CMAKE) + cmVariableWatch* VariableWatch; +#endif + cmState* State; cmStateSnapshot CurrentSnapshot; cmMessenger* Messenger; -- cgit v0.12 From fb73edf70cc1aea44eac27c8827e616c650bbe7d Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 24 Aug 2018 08:15:51 -0400 Subject: cmake: Drop unnecessary working mode checks In `cmake::Run` we return before `Configure` or `Generate` when not working in normal mode so they do not need mode checks. While at it, remove a long-outdated comment about when to save the cache. --- Source/cmake.cxx | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/Source/cmake.cxx b/Source/cmake.cxx index 5bb1f22..1bf8f7d 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -1262,10 +1262,7 @@ int cmake::ActualConfigure() this->UpdateConversionPathTable(); this->CleanupCommandsAndMacros(); - int res = 0; - if (this->GetWorkingMode() == NORMAL_MODE) { - res = this->DoPreConfigureChecks(); - } + int res = this->DoPreConfigureChecks(); if (res < 0) { return -2; } @@ -1431,11 +1428,8 @@ int cmake::ActualConfigure() "CMakeLists.txt ?"); } - // only save the cache if there were no fatal errors - if (this->GetWorkingMode() == NORMAL_MODE) { - this->State->SaveVerificationScript(this->GetHomeOutputDirectory()); - this->SaveCache(this->GetHomeOutputDirectory()); - } + this->State->SaveVerificationScript(this->GetHomeOutputDirectory()); + this->SaveCache(this->GetHomeOutputDirectory()); if (cmSystemTools::GetErrorOccuredFlag()) { return -1; } @@ -1588,7 +1582,7 @@ int cmake::Run(const std::vector& args, bool noconfigure) } int ret = this->Configure(); - if (ret || this->GetWorkingMode() != NORMAL_MODE) { + if (ret) { #if defined(CMAKE_HAVE_VS_GENERATORS) if (!this->VSSolutionFile.empty() && this->GlobalGenerator) { // CMake is running to regenerate a Visual Studio build tree @@ -1634,9 +1628,8 @@ int cmake::Generate() // Save the cache again after a successful Generate so that any internal // variables created during Generate are saved. (Specifically target GUIDs // for the Visual Studio and Xcode generators.) - if (this->GetWorkingMode() == NORMAL_MODE) { - this->SaveCache(this->GetHomeOutputDirectory()); - } + this->SaveCache(this->GetHomeOutputDirectory()); + return 0; } -- cgit v0.12