Browse Source

Merge topic 'cmake_automoc_relaxed_mode_deprecation'

df6adb02c0 Autogen: Deprecation release notes for CMAKE_AUTOMOC_RELAXED_MODE
5bf07b9cfc Help: Mark CMAKE_AUTOMOC_RELAXED_MODE as deprecated
b5ad572ac1 Autogen: Deprecation message for CMAKE_AUTOMOC_RELAXED_MODE

Acked-by: Kitware Robot <[email protected]>
Merge-request: !3381
Brad King 6 years ago
parent
commit
22aabdfde0

+ 5 - 0
Help/release/dev/cmake_automoc_relaxed_mode.rst

@@ -0,0 +1,5 @@
+cmake_automoc_relaxed_mode
+--------------------------
+
+* The variable :variable:`CMAKE_AUTOMOC_RELAXED_MODE` is considered
+  deprecated.  Support still exists but will be removed in future versions.

+ 2 - 0
Help/variable/CMAKE_AUTOMOC_RELAXED_MODE.rst

@@ -1,6 +1,8 @@
 CMAKE_AUTOMOC_RELAXED_MODE
 --------------------------
 
+.. deprecated:: 3.15
+
 Switch between strict and relaxed automoc mode.
 
 By default, :prop_tgt:`AUTOMOC` behaves exactly as described in the

+ 13 - 0
Source/cmQtAutoGenInitializer.cxx

@@ -407,6 +407,19 @@ bool cmQtAutoGenInitializer::InitCustomTargets()
         }
       }
     }
+
+    // CMAKE_AUTOMOC_RELAXED_MODE deprecation warning
+    if (this->Moc.Enabled) {
+      if (cmSystemTools::IsOn(
+            makefile->GetDefinition("CMAKE_AUTOMOC_RELAXED_MODE"))) {
+        std::string msg = "AUTOMOC: CMAKE_AUTOMOC_RELAXED_MODE is "
+                          "deprecated an will be removed in the future.  ";
+        msg += "Consider disabling it and converting the target ";
+        msg += this->Target->GetName();
+        msg += " to regular mode.";
+        makefile->IssueMessage(MessageType::AUTHOR_WARNING, msg);
+      }
+    }
   }
 
   // Init rcc specific settings

+ 4 - 4
Source/cmQtAutoMocUic.cxx

@@ -708,7 +708,7 @@ bool cmQtAutoMocUic::JobEvaluateT::MocEvalSource(
         msg += Quoted(sourceFile.FileName);
         msg += "!\nBetter include ";
         msg += Quoted(sourceBase + ".moc");
-        msg += " for compatibility with strict mode.\n";
+        msg += " for compatibility with regular mode.\n";
         msg += "This is a CMAKE_AUTOMOC_RELAXED_MODE warning.\n";
         Log().WarningFile(GenT::MOC, sourceFile.FileName, msg);
       }
@@ -770,7 +770,7 @@ bool cmQtAutoMocUic::JobEvaluateT::MocEvalSource(
         msg += Quoted(header->FileName);
         msg += "!\nBetter include ";
         msg += Quoted("moc_" + incKey.Base + ".cpp");
-        msg += " for a compatibility with strict mode.\n";
+        msg += " for a compatibility with regular mode.\n";
         msg += "This is a CMAKE_AUTOMOC_RELAXED_MODE warning.\n";
         Log().WarningFile(GenT::MOC, sourceFile.FileName, msg);
       } else {
@@ -782,7 +782,7 @@ bool cmQtAutoMocUic::JobEvaluateT::MocEvalSource(
         msg += Quoted(header->FileName);
         msg += "!\nBetter include ";
         msg += Quoted("moc_" + incKey.Base + ".cpp");
-        msg += " for compatibility with strict mode.\n";
+        msg += " for compatibility with regular mode.\n";
         msg += "This is a CMAKE_AUTOMOC_RELAXED_MODE warning.\n";
         Log().WarningFile(GenT::MOC, sourceFile.FileName, msg);
       }
@@ -797,7 +797,7 @@ bool cmQtAutoMocUic::JobEvaluateT::MocEvalSource(
       // Check if this is the sources own .moc file
       bool const ownMoc = (incKey.Base == sourceBase);
       if (!ownMoc) {
-        // Don't allow <BASE>.moc include other than own in strict mode
+        // Don't allow <BASE>.moc include other than own in regular mode
         std::string msg = "The file includes the moc file ";
         msg += Quoted(incKey.Key);
         msg += ",\nwhich seems to be the moc file from a different "