Browse Source

Merge topic 'vs-flag-order'

4cb5d335 VS: Place source-specific AdditionalOptions after target-wide flags
Brad King 9 years ago
parent
commit
926a22b8b8
2 changed files with 12 additions and 2 deletions
  1. 9 0
      Help/release/dev/vs-flag-order.rst
  2. 3 2
      Source/cmVisualStudioGeneratorOptions.cxx

+ 9 - 0
Help/release/dev/vs-flag-order.rst

@@ -0,0 +1,9 @@
+vs-flag-order
+-------------
+
+* The :ref:`Visual Studio Generators` for VS 2010 and above now place
+  per-source file flags after target-wide flags when they are classified
+  as raw flags with no project file setting (``AdditionalOptions``).
+  This behavior is more consistent with the ordering of flags produced
+  by other generators, and allows flags on more-specific properties
+  (per-source) to override those on more general ones (per-target).

+ 3 - 2
Source/cmVisualStudioGeneratorOptions.cxx

@@ -334,8 +334,9 @@ void cmVisualStudioGeneratorOptions::OutputAdditionalOptions(
       } else {
         fout << "<AdditionalOptions>";
       }
-      fout << cmVisualStudio10GeneratorOptionsEscapeForXML(this->FlagString)
-           << " %(AdditionalOptions)</AdditionalOptions>\n";
+      fout << "%(AdditionalOptions) "
+           << cmVisualStudio10GeneratorOptionsEscapeForXML(this->FlagString)
+           << "</AdditionalOptions>\n";
     } else {
       fout << prefix << "AdditionalOptions=\"";
       fout << cmVisualStudioGeneratorOptionsEscapeForXML(this->FlagString);