Browse Source

Merge topic 'vs-csproj-scripts'

aca153b104 VS: Add custom VCEnd labels only in C# projects

Acked-by: Kitware Robot <[email protected]>
Merge-request: !6808
Brad King 4 years ago
parent
commit
3930c354f8

+ 2 - 3
Source/cmLocalVisualStudio7Generator.cxx

@@ -574,8 +574,7 @@ public:
   {
     // If any commands were generated, finish constructing them.
     if (!this->First) {
-      std::string finishScript =
-        this->LG->FinishConstructScript(IsManaged::No);
+      std::string finishScript = this->LG->FinishConstructScript(IsCSharp::No);
       this->Stream << this->LG->EscapeForXML(finishScript) << "\"";
     }
 
@@ -1818,7 +1817,7 @@ void cmLocalVisualStudio7Generator::WriteCustomRule(
     if (this->FortranProject) {
       cmSystemTools::ReplaceString(script, "$(Configuration)", config);
     }
-    script += this->FinishConstructScript(IsManaged::No);
+    script += this->FinishConstructScript(IsCSharp::No);
     /* clang-format off */
     fout << "\t\t\t\t\t<Tool\n"
          << "\t\t\t\t\tName=\"" << customTool << "\"\n"

+ 3 - 3
Source/cmLocalVisualStudioGenerator.cxx

@@ -245,15 +245,15 @@ std::string cmLocalVisualStudioGenerator::ConstructScript(
 }
 
 std::string cmLocalVisualStudioGenerator::FinishConstructScript(
-  IsManaged isManaged, const std::string& newline)
+  IsCSharp isCSharp, const std::string& newline)
 {
   bool useLocal = this->CustomCommandUseLocal();
 
   // Store the script in a string.
   std::string script;
 
-  if (useLocal && isManaged == IsManaged::Yes) {
-    // These aren't generated by default for C# projects.
+  if (useLocal && isCSharp == IsCSharp::Yes) {
+    // This label is not provided by MSBuild for C# projects.
     script += newline;
     script += this->GetReportErrorLabel();
   }

+ 2 - 2
Source/cmLocalVisualStudioGenerator.h

@@ -31,14 +31,14 @@ public:
   virtual ~cmLocalVisualStudioGenerator();
 
   /** Construct a script from the given list of command lines.  */
-  enum class IsManaged
+  enum class IsCSharp
   {
     No,
     Yes
   };
   std::string ConstructScript(cmCustomCommandGenerator const& ccg,
                               const std::string& newline = "\n");
-  std::string FinishConstructScript(IsManaged isManaged,
+  std::string FinishConstructScript(IsCSharp isCSharp,
                                     const std::string& newline = "\n");
 
   /** Label to which to jump in a batch file after a failed step in a

+ 10 - 8
Source/cmVisualStudio10TargetGenerator.cxx

@@ -1571,10 +1571,11 @@ void cmVisualStudio10TargetGenerator::WriteCustomRule(
         }
       }
     }
-    cmLocalVisualStudioGenerator::IsManaged isManaged = (this->Managed)
-      ? cmLocalVisualStudioGenerator::IsManaged::Yes
-      : cmLocalVisualStudioGenerator::IsManaged::No;
-    script += lg->FinishConstructScript(isManaged);
+    cmLocalVisualStudioGenerator::IsCSharp isCSharp =
+      (this->ProjectType == VsProjectType::csproj)
+      ? cmLocalVisualStudioGenerator::IsCSharp::Yes
+      : cmLocalVisualStudioGenerator::IsCSharp::No;
+    script += lg->FinishConstructScript(isCSharp);
     if (this->ProjectType == VsProjectType::csproj) {
       std::string name = "CustomCommand_" + c + "_" +
         cmSystemTools::ComputeStringMD5(sourcePath);
@@ -4308,10 +4309,11 @@ void cmVisualStudio10TargetGenerator::WriteEvent(
     }
   }
   if (!script.empty()) {
-    cmLocalVisualStudioGenerator::IsManaged isManaged = (this->Managed)
-      ? cmLocalVisualStudioGenerator::IsManaged::Yes
-      : cmLocalVisualStudioGenerator::IsManaged::No;
-    script += lg->FinishConstructScript(isManaged);
+    cmLocalVisualStudioGenerator::IsCSharp isCSharp =
+      (this->ProjectType == VsProjectType::csproj)
+      ? cmLocalVisualStudioGenerator::IsCSharp::Yes
+      : cmLocalVisualStudioGenerator::IsCSharp::No;
+    script += lg->FinishConstructScript(isCSharp);
   }
   comment = cmVS10EscapeComment(comment);
   if (this->ProjectType != VsProjectType::csproj) {