浏览代码

find_package: Avoid printing debug output header multiple times

Brad King 3 年之前
父节点
当前提交
d634d20397

+ 4 - 11
Source/cmFindPackageCommand.cxx

@@ -237,7 +237,6 @@ bool cmFindPackageCommand::InitialPass(std::vector<std::string> const& args)
   // Process debug mode
   this->DebugMode = this->ComputeIfDebugModeWanted() ||
     this->Makefile->GetCMakeInstance()->GetDebugFindPkgOutput(this->Name);
-  this->DebugBuffer.clear();
 
   // Parse the arguments.
   enum Doing
@@ -610,15 +609,14 @@ bool cmFindPackageCommand::InitialPass(std::vector<std::string> const& args)
         loadedPackage = true;
       }
     }
-
-    if (this->DebugMode) {
-      this->DebugMessage(this->DebugBuffer);
-      this->DebugBuffer.clear();
-    }
   }
 
   this->AppendSuccessInformation();
 
+  if (!this->DebugBuffer.empty()) {
+    this->DebugMessage(this->DebugBuffer);
+  }
+
   return loadedPackage;
 }
 
@@ -947,11 +945,6 @@ bool cmFindPackageCommand::HandlePackageMode(
     result = false;
   }
 
-  if (this->DebugMode) {
-    this->DebugMessage(this->DebugBuffer);
-    this->DebugBuffer.clear();
-  }
-
   // package not found
   if (result && !found) {
     // warn if package required or neither quiet nor in config mode

+ 0 - 4
Tests/RunCMake/find_package/FromPATHEnv-stderr.txt

@@ -76,9 +76,5 @@
     [^
 ]*/Tests/RunCMake/find_package/PackageRoot/ResolvedConfig.cmake
 
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Debug Log at FromPATHEnv.cmake:[0-9]+ \(find_package\):
 Call Stack \(most recent call first\):
   CMakeLists.txt:[0-9]+ \(include\)$

+ 0 - 4
Tests/RunCMake/find_package/FromPATHEnvDebugPkg-stderr.txt

@@ -76,9 +76,5 @@
     [^
 ]*/Tests/RunCMake/find_package/PackageRoot/ResolvedConfig.cmake
 
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Debug Log at FromPATHEnvDebugPkg.cmake:[0-9]+ \(find_package\):
 Call Stack \(most recent call first\):
   CMakeLists.txt:[0-9]+ \(include\)$