[Cmake-commits] CMake branch, next, updated. v3.0.0-rc1-790-g856819b

Brad King brad.king at kitware.com
Mon Mar 10 11:45:33 EDT 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  856819bff1a9b3197ad827cb827867f7b8812e2d (commit)
       via  f1b689b64a96fbf1e6f3b154d1bd4ee28ea3d625 (commit)
      from  78eec9c5ab388ef7cc7a6ccf1fa9db55de314b1f (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=856819bff1a9b3197ad827cb827867f7b8812e2d
commit 856819bff1a9b3197ad827cb827867f7b8812e2d
Merge: 78eec9c f1b689b
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Mon Mar 10 11:45:32 2014 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Mon Mar 10 11:45:32 2014 -0400

    Merge topic 'watcom-VERBOSE-and-ERROR' into next
    
    f1b689b6 Makefile: Improve handling of WMake verbose output and errors


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f1b689b64a96fbf1e6f3b154d1bd4ee28ea3d625
commit f1b689b64a96fbf1e6f3b154d1bd4ee28ea3d625
Author:     Jiri Malak <malak.jiri at gmail.com>
AuthorDate: Sun Mar 9 10:41:06 2014 +0100
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Mon Mar 10 11:15:12 2014 -0400

    Makefile: Improve handling of WMake verbose output and errors
    
    * The '-e' option has nothing to do with verbose output.
      It is now properly handled by .ERASE directive in make file
    
    * The '-s' option sets silent output globally, it cannot be switched off.
      It is now handled only by .SILENT directive in make file directive
      is simply controlled by a conditonal block.
    
    Remove SilentNoColon member variable as it is no longer needed.

diff --git a/Source/cmGlobalWatcomWMakeGenerator.cxx b/Source/cmGlobalWatcomWMakeGenerator.cxx
index 98ce685..671166e 100644
--- a/Source/cmGlobalWatcomWMakeGenerator.cxx
+++ b/Source/cmGlobalWatcomWMakeGenerator.cxx
@@ -43,11 +43,10 @@ void cmGlobalWatcomWMakeGenerator
 cmLocalGenerator *cmGlobalWatcomWMakeGenerator::CreateLocalGenerator()
 {
   cmLocalUnixMakefileGenerator3* lg = new cmLocalUnixMakefileGenerator3;
-  lg->SetSilentNoColon(true);
   lg->SetDefineWindowsNULL(true);
   lg->SetWindowsShell(true);
   lg->SetWatcomWMake(true);
-  lg->SetMakeSilentFlag("-s -h -e");
+  lg->SetMakeSilentFlag("-h");
   lg->SetGlobalGenerator(this);
   lg->SetIgnoreLibPrefix(true);
   lg->SetPassMakeflags(false);
diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx
index f7088c2..935da57 100644
--- a/Source/cmLocalUnixMakefileGenerator3.cxx
+++ b/Source/cmLocalUnixMakefileGenerator3.cxx
@@ -80,7 +80,6 @@ static std::string cmSplitExtension(std::string const& in, std::string& base)
 //----------------------------------------------------------------------------
 cmLocalUnixMakefileGenerator3::cmLocalUnixMakefileGenerator3()
 {
-  this->SilentNoColon = false;
   this->WindowsShell = false;
   this->IncludeDirective = "include";
   this->MakefileVariableSize = 0;
@@ -758,15 +757,17 @@ cmLocalUnixMakefileGenerator3
   depends.push_back(".hpux_make_needs_suffix_list");
   this->WriteMakeRule(makefileStream, 0,
                       ".SUFFIXES", depends, no_commands, false);
-
-  cmGlobalUnixMakefileGenerator3* gg =
-    static_cast<cmGlobalUnixMakefileGenerator3*>(this->GlobalGenerator);
-  // Write special target to silence make output.  This must be after
-  // the default target in case VERBOSE is set (which changes the
-  // name).  The setting of CMAKE_VERBOSE_MAKEFILE to ON will cause a
-  // "VERBOSE=1" to be added as a make variable which will change the
-  // name of this special target.  This gives a make-time choice to
-  // the user.
+  if(this->WatcomWMake)
+    {
+    // Switch on WMake feature, if an error or interrupt occurs during
+    // makefile processing, the current target being made may be deleted
+    // without prompting (the same as command line -e option).
+    makefileStream <<
+      "\n"
+      ".ERASE\n"
+      "\n"
+      ;
+    }
   if(this->Makefile->IsOn("CMAKE_VERBOSE_MAKEFILE"))
     {
     makefileStream
@@ -774,12 +775,22 @@ cmLocalUnixMakefileGenerator3
       << "VERBOSE = 1\n"
       << "\n";
     }
-  if(this->SilentNoColon)
+  if(this->WatcomWMake)
     {
-    makefileStream << "$(VERBOSE).SILENT\n";
+    makefileStream <<
+      "!ifndef VERBOSE\n"
+      ".SILENT\n"
+      "!endif\n"
+      ;
     }
   else
     {
+    // Write special target to silence make output.  This must be after
+    // the default target in case VERBOSE is set (which changes the
+    // name).  The setting of CMAKE_VERBOSE_MAKEFILE to ON will cause a
+    // "VERBOSE=1" to be added as a make variable which will change the
+    // name of this special target.  This gives a make-time choice to
+    // the user.
     this->WriteMakeRule(makefileStream,
                         "Suppress display of executed commands.",
                         "$(VERBOSE).SILENT",
@@ -789,6 +800,8 @@ cmLocalUnixMakefileGenerator3
 
   // Work-around for makes that drop rules that have no dependencies
   // or commands.
+  cmGlobalUnixMakefileGenerator3* gg =
+    static_cast<cmGlobalUnixMakefileGenerator3*>(this->GlobalGenerator);
   std::string hack = gg->GetEmptyRuleHackDepends();
   if(!hack.empty())
     {
diff --git a/Source/cmLocalUnixMakefileGenerator3.h b/Source/cmLocalUnixMakefileGenerator3.h
index 39f213b..7987c96 100644
--- a/Source/cmLocalUnixMakefileGenerator3.h
+++ b/Source/cmLocalUnixMakefileGenerator3.h
@@ -121,12 +121,6 @@ public:
   void SetUnixCD(bool v)  {this->UnixCD = v;}
 
   /**
-   * Set Support Verbose Variable.  If true, then .SILENT will
-   * be not end with :  i.e. .SILENT: or .SILENT
-   */
-  void SetSilentNoColon(bool v)  {this->SilentNoColon = v;}
-
-  /**
    * Set the string used to include one makefile into another default
    * is include.
    */
@@ -339,7 +333,6 @@ private:
   bool DefineWindowsNULL;
   bool UnixCD;
   bool PassMakeflags;
-  bool SilentNoColon;
   bool MakeCommandEscapeTargetTwice;
   bool BorlandMakeCurlyHack;
   //==========================================================================

-----------------------------------------------------------------------

Summary of changes:
 Source/cmGlobalWatcomWMakeGenerator.cxx  |    3 +--
 Source/cmLocalUnixMakefileGenerator3.cxx |   37 ++++++++++++++++++++----------
 Source/cmLocalUnixMakefileGenerator3.h   |    7 ------
 3 files changed, 26 insertions(+), 21 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list