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, master has been updated
       via  a4f404d0a5bdb7ce2c403ab65b208703985c4280 (commit)
       via  0c5f78478ee6005f84c53ef7df3182fa208222f8 (commit)
       via  9649c91f830a6fad5c2f84b90f34af10c2edfa15 (commit)
       via  20e9151e6cf47299bb99d85446beb5dc656dba7e (commit)
       via  67200c37b0a124534b3fa74bea9ed057d864ce1e (commit)
       via  e6e189e02bb6e3efafc5d635edf5eb9688291e71 (commit)
       via  f695b6b3bb0347ec47e6457d330237920d6e7cf7 (commit)
       via  5117389931e1c845d81a9b50382d42e0cfb46bdc (commit)
      from  c5bec56611d6f7534670676a81cfc9d9b920afc4 (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 -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a4f404d0a5bdb7ce2c403ab65b208703985c4280
commit a4f404d0a5bdb7ce2c403ab65b208703985c4280
Merge: 0c5f784 f695b6b
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Wed Oct 2 07:52:16 2019 -0400
Commit:     Brad King <brad.k...@kitware.com>
CommitDate: Wed Oct 2 07:52:16 2019 -0400

    Merge branch 'release-3.15'


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0c5f78478ee6005f84c53ef7df3182fa208222f8
commit 0c5f78478ee6005f84c53ef7df3182fa208222f8
Merge: 9649c91 67200c3
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Wed Oct 2 11:50:57 2019 +0000
Commit:     Kitware Robot <kwro...@kitware.com>
CommitDate: Wed Oct 2 07:51:06 2019 -0400

    Merge topic 'xcode-debug-document-versioning'
    
    67200c37b0 xcode: Add XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING property
    
    Acked-by: Kitware Robot <kwro...@kitware.com>
    Merge-request: !3876


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9649c91f830a6fad5c2f84b90f34af10c2edfa15
commit 9649c91f830a6fad5c2f84b90f34af10c2edfa15
Merge: 20e9151 e6e189e
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Wed Oct 2 11:48:45 2019 +0000
Commit:     Kitware Robot <kwro...@kitware.com>
CommitDate: Wed Oct 2 07:48:55 2019 -0400

    Merge topic 'pch-compile-pdb'
    
    e6e189e02b PCH: Report error when setting COMPILE_PDB_NAME property
    
    Acked-by: Kitware Robot <kwro...@kitware.com>
    Merge-request: !3864


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=20e9151e6cf47299bb99d85446beb5dc656dba7e
commit 20e9151e6cf47299bb99d85446beb5dc656dba7e
Merge: c5bec56 5117389
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Wed Oct 2 11:47:16 2019 +0000
Commit:     Kitware Robot <kwro...@kitware.com>
CommitDate: Wed Oct 2 07:47:25 2019 -0400

    Merge topic 'vs-v142-version'
    
    5117389931 VS: Fix support for v142 toolset minor versions
    
    Acked-by: Kitware Robot <kwro...@kitware.com>
    Merge-request: !3874


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=67200c37b0a124534b3fa74bea9ed057d864ce1e
commit 67200c37b0a124534b3fa74bea9ed057d864ce1e
Author:     Gregor Jasny <gja...@googlemail.com>
AuthorDate: Tue Oct 1 20:53:06 2019 +0200
Commit:     Gregor Jasny <gja...@googlemail.com>
CommitDate: Tue Oct 1 23:02:35 2019 +0200

    xcode: Add XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING property

diff --git a/Help/manual/cmake-properties.7.rst 
b/Help/manual/cmake-properties.7.rst
index 8f8cb33..3fe609b 100644
--- a/Help/manual/cmake-properties.7.rst
+++ b/Help/manual/cmake-properties.7.rst
@@ -375,6 +375,7 @@ Properties on Targets
    /prop_tgt/XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN
    /prop_tgt/XCODE_SCHEME_ARGUMENTS
    /prop_tgt/XCODE_SCHEME_DEBUG_AS_ROOT
+   /prop_tgt/XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING
    /prop_tgt/XCODE_SCHEME_DISABLE_MAIN_THREAD_CHECKER
    /prop_tgt/XCODE_SCHEME_DYNAMIC_LIBRARY_LOADS
    /prop_tgt/XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE
diff --git a/Help/manual/cmake-variables.7.rst 
b/Help/manual/cmake-variables.7.rst
index def63e4..0442d89 100644
--- a/Help/manual/cmake-variables.7.rst
+++ b/Help/manual/cmake-variables.7.rst
@@ -234,6 +234,7 @@ Variables that Change Behavior
    /variable/CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY
    /variable/CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER
    /variable/CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN
+   /variable/CMAKE_XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING
    /variable/CMAKE_XCODE_SCHEME_DISABLE_MAIN_THREAD_CHECKER
    /variable/CMAKE_XCODE_SCHEME_DYNAMIC_LIBRARY_LOADS
    /variable/CMAKE_XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE
diff --git a/Help/prop_tgt/XCODE_GENERATE_SCHEME.rst 
b/Help/prop_tgt/XCODE_GENERATE_SCHEME.rst
index 0adb5db..0e182cf 100644
--- a/Help/prop_tgt/XCODE_GENERATE_SCHEME.rst
+++ b/Help/prop_tgt/XCODE_GENERATE_SCHEME.rst
@@ -31,9 +31,10 @@ at target creation time.
 - :prop_tgt:`XCODE_SCHEME_ZOMBIE_OBJECTS`
 
 The following target properties will be applied on the
-"Info" and "Arguments" tab:
+"Info", "Arguments", and "Options" tab:
 
 - :prop_tgt:`XCODE_SCHEME_ARGUMENTS`
 - :prop_tgt:`XCODE_SCHEME_DEBUG_AS_ROOT`
+- :prop_tgt:`XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING`
 - :prop_tgt:`XCODE_SCHEME_ENVIRONMENT`
 - :prop_tgt:`XCODE_SCHEME_EXECUTABLE`
diff --git a/Help/prop_tgt/XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING.rst 
b/Help/prop_tgt/XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING.rst
new file mode 100644
index 0000000..9afeedd
--- /dev/null
+++ b/Help/prop_tgt/XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING.rst
@@ -0,0 +1,13 @@
+XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING
+--------------------------------------
+
+Whether to enable
+``Allow debugging when using document Versions Browser``
+in the Options section of the generated Xcode scheme.
+
+This property is initialized by the value of the variable
+:variable:`CMAKE_XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING`
+if it is set when a target is created.
+
+Please refer to the :prop_tgt:`XCODE_GENERATE_SCHEME` target property
+documentation to see all Xcode schema related properties.
diff --git a/Help/release/dev/xcode-debug-document-versioning.rst 
b/Help/release/dev/xcode-debug-document-versioning.rst
new file mode 100644
index 0000000..15aed4f
--- /dev/null
+++ b/Help/release/dev/xcode-debug-document-versioning.rst
@@ -0,0 +1,7 @@
+xcode-debug-document-versioning
+-------------------------------
+
+* The Xcode generator learnt to set the value of the
+  ``Allow debugging when using document Versions Browser`` schema
+  option with the :prop_tgt:`XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING`
+  target property.
diff --git a/Help/variable/CMAKE_XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING.rst 
b/Help/variable/CMAKE_XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING.rst
new file mode 100644
index 0000000..a264d36
--- /dev/null
+++ b/Help/variable/CMAKE_XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING.rst
@@ -0,0 +1,13 @@
+CMAKE_XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING
+--------------------------------------------
+
+Whether to enable
+``Allow debugging when using document Versions Browser``
+in the Options section of the generated Xcode scheme.
+
+This variable initializes the
+:prop_tgt:`XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING`
+property on all targets.
+
+Please refer to the :prop_tgt:`XCODE_GENERATE_SCHEME` target property
+documentation to see all Xcode schema related properties.
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index ae77d9e..7a2ecc2 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -360,6 +360,7 @@ cmTarget::cmTarget(std::string const& name, 
cmStateEnums::TargetType type,
       initProp("XCODE_GENERATE_SCHEME");
       initProp("XCODE_SCHEME_ADDRESS_SANITIZER");
       initProp("XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN");
+      initProp("XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING");
       initProp("XCODE_SCHEME_THREAD_SANITIZER");
       initProp("XCODE_SCHEME_THREAD_SANITIZER_STOP");
       initProp("XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER");
diff --git a/Source/cmXCodeScheme.cxx b/Source/cmXCodeScheme.cxx
index a1c64ed..afc95f5 100644
--- a/Source/cmXCodeScheme.cxx
+++ b/Source/cmXCodeScheme.cxx
@@ -137,7 +137,9 @@ void cmXCodeScheme::WriteLaunchAction(cmXMLWriter& xout,
   xout.Attribute("launchStyle", "0");
   xout.Attribute("useCustomWorkingDirectory", "NO");
   xout.Attribute("ignoresPersistentStateOnLaunch", "NO");
-  xout.Attribute("debugDocumentVersioning", "YES");
+  WriteLaunchActionBooleanAttribute(xout, "debugDocumentVersioning",
+                                    "XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING",
+                                    true);
   xout.Attribute("debugServiceExtension", "internal");
   xout.Attribute("allowLocationSimulation", "YES");
 
@@ -311,6 +313,21 @@ bool 
cmXCodeScheme::WriteLaunchActionAttribute(cmXMLWriter& xout,
   return false;
 }
 
+bool cmXCodeScheme::WriteLaunchActionBooleanAttribute(
+  cmXMLWriter& xout, const std::string& attrName, const std::string& varName,
+  bool defaultValue)
+{
+  auto property = Target->GetTarget()->GetProperty(varName);
+  bool isOn = (property == nullptr && defaultValue) || cmIsOn(property);
+
+  if (isOn) {
+    xout.Attribute(attrName.c_str(), "YES");
+  } else {
+    xout.Attribute(attrName.c_str(), "NO");
+  }
+  return isOn;
+}
+
 bool cmXCodeScheme::WriteLaunchActionAdditionalOption(
   cmXMLWriter& xout, const std::string& key, const std::string& value,
   const std::string& varName)
@@ -339,7 +356,9 @@ void cmXCodeScheme::WriteProfileAction(cmXMLWriter& xout,
   xout.Attribute("shouldUseLaunchSchemeArgsEnv", "YES");
   xout.Attribute("savedToolIdentifier", "");
   xout.Attribute("useCustomWorkingDirectory", "NO");
-  xout.Attribute("debugDocumentVersioning", "YES");
+  WriteLaunchActionBooleanAttribute(xout, "debugDocumentVersioning",
+                                    "XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING",
+                                    true);
   xout.EndElement();
 }
 
diff --git a/Source/cmXCodeScheme.h b/Source/cmXCodeScheme.h
index 1cc5324..dff5e35 100644
--- a/Source/cmXCodeScheme.h
+++ b/Source/cmXCodeScheme.h
@@ -46,6 +46,11 @@ private:
                                   const std::string& attrName,
                                   const std::string& varName);
 
+  bool WriteLaunchActionBooleanAttribute(cmXMLWriter& xout,
+                                         const std::string& attrName,
+                                         const std::string& varName,
+                                         bool defaultValue);
+
   bool WriteLaunchActionAdditionalOption(cmXMLWriter& xout,
                                          const std::string& attrName,
                                          const std::string& value,

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e6e189e02bb6e3efafc5d635edf5eb9688291e71
commit e6e189e02bb6e3efafc5d635edf5eb9688291e71
Author:     Cristian Adam <cristian.a...@gmail.com>
AuthorDate: Wed Sep 25 00:08:15 2019 +0200
Commit:     Cristian Adam <cristian.a...@gmail.com>
CommitDate: Tue Oct 1 18:33:40 2019 +0200

    PCH: Report error when setting COMPILE_PDB_NAME property
    
    Reusable precompile headers require specific COMPILE_PDB_NAME property
    values. Report error if the user tries to set a different value.

diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx
index a75e2ed..abe483a9 100644
--- a/Source/cmGlobalGenerator.cxx
+++ b/Source/cmGlobalGenerator.cxx
@@ -355,6 +355,42 @@ bool cmGlobalGenerator::CheckTargetsForType() const
   return failed;
 }
 
+bool cmGlobalGenerator::CheckTargetsForPchCompilePdb() const
+{
+  if (!this->GetLanguageEnabled("C") && !this->GetLanguageEnabled("CXX")) {
+    return false;
+  }
+  bool failed = false;
+  for (cmLocalGenerator* generator : this->LocalGenerators) {
+    for (cmGeneratorTarget* target : generator->GetGeneratorTargets()) {
+      if (target->GetType() == cmStateEnums::TargetType::GLOBAL_TARGET ||
+          target->GetType() == cmStateEnums::TargetType::INTERFACE_LIBRARY ||
+          target->GetType() == cmStateEnums::TargetType::UTILITY ||
+          cmIsOn(target->GetProperty("ghs_integrity_app"))) {
+        continue;
+      }
+
+      const std::string reuseFrom =
+        target->GetSafeProperty("PRECOMPILE_HEADERS_REUSE_FROM");
+      const std::string compilePdb =
+        target->GetSafeProperty("COMPILE_PDB_NAME");
+
+      if (!reuseFrom.empty() && reuseFrom != compilePdb) {
+        const std::string e = cmStrCat(
+          "PRECOMPILE_HEADERS_REUSE_FROM property is set on target (\"",
+          target->GetName(),
+          "\"). Reusable precompile headers requires the COMPILE_PDB_NAME"
+          " property to have the value \"",
+          reuseFrom, "\"\n");
+        this->GetCMakeInstance()->IssueMessage(MessageType::FATAL_ERROR, e,
+                                               target->GetBacktrace());
+        failed = true;
+      }
+    }
+  }
+  return failed;
+}
+
 bool cmGlobalGenerator::IsExportedTargetsFile(
   const std::string& filename) const
 {
@@ -1398,6 +1434,10 @@ bool cmGlobalGenerator::Compute()
     return false;
   }
 
+  if (this->CheckTargetsForPchCompilePdb()) {
+    return false;
+  }
+
   for (cmLocalGenerator* localGen : this->LocalGenerators) {
     localGen->ComputeHomeRelativeOutputPath();
   }
diff --git a/Source/cmGlobalGenerator.h b/Source/cmGlobalGenerator.h
index cf9c951..eb5ee27 100644
--- a/Source/cmGlobalGenerator.h
+++ b/Source/cmGlobalGenerator.h
@@ -610,6 +610,7 @@ private:
 
   bool CheckTargetsForMissingSources() const;
   bool CheckTargetsForType() const;
+  bool CheckTargetsForPchCompilePdb() const;
 
   void CreateLocalGenerators();
 
diff --git a/Tests/RunCMake/VS10Project/RunCMakeTest.cmake 
b/Tests/RunCMake/VS10Project/RunCMakeTest.cmake
index dcdd177..44ccd6b 100644
--- a/Tests/RunCMake/VS10Project/RunCMakeTest.cmake
+++ b/Tests/RunCMake/VS10Project/RunCMakeTest.cmake
@@ -26,6 +26,7 @@ run_cmake(VsPackageReferences)
 run_cmake(VsDpiAware)
 run_cmake(VsDpiAwareBadParam)
 run_cmake(VsPrecompileHeaders)
+run_cmake(VsPrecompileHeadersReuseFromCompilePDBName)
 
 if(CMAKE_C_COMPILER_ID STREQUAL "MSVC" AND CMAKE_C_COMPILER_VERSION 
VERSION_GREATER_EQUAL 19.05)
   run_cmake(VsJustMyCode)
diff --git 
a/Tests/RunCMake/VS10Project/VsPrecompileHeadersReuseFromCompilePDBName-result.txt
 
b/Tests/RunCMake/VS10Project/VsPrecompileHeadersReuseFromCompilePDBName-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ 
b/Tests/RunCMake/VS10Project/VsPrecompileHeadersReuseFromCompilePDBName-result.txt
@@ -0,0 +1 @@
+1
diff --git 
a/Tests/RunCMake/VS10Project/VsPrecompileHeadersReuseFromCompilePDBName-stderr.txt
 
b/Tests/RunCMake/VS10Project/VsPrecompileHeadersReuseFromCompilePDBName-stderr.txt
new file mode 100644
index 0000000..2ff57cd
--- /dev/null
+++ 
b/Tests/RunCMake/VS10Project/VsPrecompileHeadersReuseFromCompilePDBName-stderr.txt
@@ -0,0 +1,7 @@
+CMake Error at VsPrecompileHeadersReuseFromCompilePDBName.cmake:6 
\(add_library\):
+  PRECOMPILE_HEADERS_REUSE_FROM property is set on target \("b"\).  Reusable
+  precompile headers requires the COMPILE_PDB_NAME property to have the value
+  "a"
+
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
diff --git 
a/Tests/RunCMake/VS10Project/VsPrecompileHeadersReuseFromCompilePDBName.cmake 
b/Tests/RunCMake/VS10Project/VsPrecompileHeadersReuseFromCompilePDBName.cmake
new file mode 100644
index 0000000..ec11008
--- /dev/null
+++ 
b/Tests/RunCMake/VS10Project/VsPrecompileHeadersReuseFromCompilePDBName.cmake
@@ -0,0 +1,9 @@
+project(VsPrecompileHeadersReuseFromCompilePDBName CXX)
+
+add_library(a SHARED empty.cxx)
+target_precompile_headers(a PRIVATE <windows.h>)
+
+add_library(b SHARED empty.cxx)
+target_precompile_headers(b REUSE_FROM a)
+
+set_target_properties(b PROPERTIES COMPILE_PDB_NAME b)

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

Summary of changes:
 Help/manual/cmake-properties.7.rst                 |  1 +
 Help/manual/cmake-variables.7.rst                  |  1 +
 Help/prop_tgt/XCODE_GENERATE_SCHEME.rst            |  3 +-
 .../XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING.rst     | 13 +++++++
 .../dev/xcode-debug-document-versioning.rst        |  7 ++++
 ...MAKE_XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING.rst | 13 +++++++
 Modules/CMakeDetermineCompilerId.cmake             |  8 ++++-
 Source/cmGlobalGenerator.cxx                       | 40 ++++++++++++++++++++++
 Source/cmGlobalGenerator.h                         |  1 +
 Source/cmGlobalVisualStudioVersionedGenerator.cxx  |  4 ++-
 Source/cmTarget.cxx                                |  1 +
 Source/cmXCodeScheme.cxx                           | 23 +++++++++++--
 Source/cmXCodeScheme.h                             |  5 +++
 Tests/RunCMake/VS10Project/RunCMakeTest.cmake      |  1 +
 ...mpileHeadersReuseFromCompilePDBName-result.txt} |  0
 ...ompileHeadersReuseFromCompilePDBName-stderr.txt |  7 ++++
 ...sPrecompileHeadersReuseFromCompilePDBName.cmake |  9 +++++
 17 files changed, 132 insertions(+), 5 deletions(-)
 create mode 100644 Help/prop_tgt/XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING.rst
 create mode 100644 Help/release/dev/xcode-debug-document-versioning.rst
 create mode 100644 
Help/variable/CMAKE_XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING.rst
 copy Tests/RunCMake/{while/MissingArgument-result.txt => 
VS10Project/VsPrecompileHeadersReuseFromCompilePDBName-result.txt} (100%)
 create mode 100644 
Tests/RunCMake/VS10Project/VsPrecompileHeadersReuseFromCompilePDBName-stderr.txt
 create mode 100644 
Tests/RunCMake/VS10Project/VsPrecompileHeadersReuseFromCompilePDBName.cmake


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
https://cmake.org/mailman/listinfo/cmake-commits

Reply via email to