From 49a60b70e700e9f0bddc4cb6986d9621423ee2d9 Mon Sep 17 00:00:00 2001
From: Brad King <brad.king@kitware.com>
Date: Wed, 22 Mar 2017 11:17:39 -0400
Subject: MSVC: Exclude future cl 20+ from MSVC14 variable

---
 Modules/Platform/Windows-MSVC.cmake | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/Modules/Platform/Windows-MSVC.cmake b/Modules/Platform/Windows-MSVC.cmake
index 0e90d35..31b26b5 100644
--- a/Modules/Platform/Windows-MSVC.cmake
+++ b/Modules/Platform/Windows-MSVC.cmake
@@ -78,7 +78,9 @@ if(NOT MSVC_VERSION)
   set(MSVC90)
   set(CMAKE_COMPILER_2005)
   set(CMAKE_COMPILER_SUPPORTS_PDBTYPE)
-  if(NOT "${_compiler_version}" VERSION_LESS 19)
+  if(NOT "${_compiler_version}" VERSION_LESS 20)
+    # We no longer provide per-version variables.  Use MSVC_VERSION instead.
+  elseif(NOT "${_compiler_version}" VERSION_LESS 19)
     set(MSVC14 1)
   elseif(NOT "${_compiler_version}" VERSION_LESS 18)
     set(MSVC12 1)
-- 
cgit v0.12


From 712452e33088b1ba02c7dde10f56cd2add81deab Mon Sep 17 00:00:00 2001
From: Brad King <brad.king@kitware.com>
Date: Wed, 22 Mar 2017 11:12:13 -0400
Subject: Help: Clarify MSVC14 docs w.r.t. VS 2017 v141 toolset

Issue: #16735
---
 Help/variable/MSVC14.rst | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Help/variable/MSVC14.rst b/Help/variable/MSVC14.rst
index f67ebc7..16bfe07 100644
--- a/Help/variable/MSVC14.rst
+++ b/Help/variable/MSVC14.rst
@@ -1,5 +1,5 @@
 MSVC14
 ------
 
-``True`` when using the Microsoft Visual Studio ``v140`` toolset
-(``cl`` version 19) or another compiler that simulates it.
+``True`` when using the Microsoft Visual Studio ``v140`` or ``v141``
+toolset (``cl`` version 19) or another compiler that simulates it.
-- 
cgit v0.12


From fecf846701ca3a7de4875f5c4362bc79e21b0a4c Mon Sep 17 00:00:00 2001
From: Brad King <brad.king@kitware.com>
Date: Wed, 22 Mar 2017 11:22:35 -0400
Subject: Help: Document preference of `MSVC_VERSION` over `MSVC##`

Issue: #16735
---
 Help/variable/MSVC.rst   | 2 ++
 Help/variable/MSVC10.rst | 2 ++
 Help/variable/MSVC11.rst | 2 ++
 Help/variable/MSVC12.rst | 2 ++
 Help/variable/MSVC14.rst | 2 ++
 Help/variable/MSVC60.rst | 2 ++
 Help/variable/MSVC70.rst | 2 ++
 Help/variable/MSVC71.rst | 2 ++
 Help/variable/MSVC80.rst | 2 ++
 Help/variable/MSVC90.rst | 2 ++
 10 files changed, 20 insertions(+)

diff --git a/Help/variable/MSVC.rst b/Help/variable/MSVC.rst
index 913ed08..22a087a 100644
--- a/Help/variable/MSVC.rst
+++ b/Help/variable/MSVC.rst
@@ -4,3 +4,5 @@ MSVC
 ``True`` when using Microsoft Visual C++.
 
 Set to ``true`` when the compiler is some version of Microsoft Visual C++.
+
+See also the :variable:`MSVC_VERSION` variable.
diff --git a/Help/variable/MSVC10.rst b/Help/variable/MSVC10.rst
index 98e0493..55c6337 100644
--- a/Help/variable/MSVC10.rst
+++ b/Help/variable/MSVC10.rst
@@ -1,5 +1,7 @@
 MSVC10
 ------
 
+Discouraged.  Use the :variable:`MSVC_VERSION` variable instead.
+
 ``True`` when using the Microsoft Visual Studio ``v100`` toolset
 (``cl`` version 16) or another compiler that simulates it.
diff --git a/Help/variable/MSVC11.rst b/Help/variable/MSVC11.rst
index 42b7b86..17943dc 100644
--- a/Help/variable/MSVC11.rst
+++ b/Help/variable/MSVC11.rst
@@ -1,5 +1,7 @@
 MSVC11
 ------
 
+Discouraged.  Use the :variable:`MSVC_VERSION` variable instead.
+
 ``True`` when using the Microsoft Visual Studio ``v110`` toolset
 (``cl`` version 17) or another compiler that simulates it.
diff --git a/Help/variable/MSVC12.rst b/Help/variable/MSVC12.rst
index 0648f35..a524fab 100644
--- a/Help/variable/MSVC12.rst
+++ b/Help/variable/MSVC12.rst
@@ -1,5 +1,7 @@
 MSVC12
 ------
 
+Discouraged.  Use the :variable:`MSVC_VERSION` variable instead.
+
 ``True`` when using the Microsoft Visual Studio ``v120`` toolset
 (``cl`` version 18) or another compiler that simulates it.
diff --git a/Help/variable/MSVC14.rst b/Help/variable/MSVC14.rst
index 16bfe07..79e0c10 100644
--- a/Help/variable/MSVC14.rst
+++ b/Help/variable/MSVC14.rst
@@ -1,5 +1,7 @@
 MSVC14
 ------
 
+Discouraged.  Use the :variable:`MSVC_VERSION` variable instead.
+
 ``True`` when using the Microsoft Visual Studio ``v140`` or ``v141``
 toolset (``cl`` version 19) or another compiler that simulates it.
diff --git a/Help/variable/MSVC60.rst b/Help/variable/MSVC60.rst
index 14f09cf..14164bf 100644
--- a/Help/variable/MSVC60.rst
+++ b/Help/variable/MSVC60.rst
@@ -1,6 +1,8 @@
 MSVC60
 ------
 
+Discouraged.  Use the :variable:`MSVC_VERSION` variable instead.
+
 ``True`` when using Microsoft Visual C++ 6.0.
 
 Set to ``true`` when the compiler is version 6.0 of Microsoft Visual C++.
diff --git a/Help/variable/MSVC70.rst b/Help/variable/MSVC70.rst
index 76fa96f..ed3b0bb 100644
--- a/Help/variable/MSVC70.rst
+++ b/Help/variable/MSVC70.rst
@@ -1,6 +1,8 @@
 MSVC70
 ------
 
+Discouraged.  Use the :variable:`MSVC_VERSION` variable instead.
+
 ``True`` when using Microsoft Visual C++ 7.0.
 
 Set to ``true`` when the compiler is version 7.0 of Microsoft Visual C++.
diff --git a/Help/variable/MSVC71.rst b/Help/variable/MSVC71.rst
index d69d4fc..0237592 100644
--- a/Help/variable/MSVC71.rst
+++ b/Help/variable/MSVC71.rst
@@ -1,6 +1,8 @@
 MSVC71
 ------
 
+Discouraged.  Use the :variable:`MSVC_VERSION` variable instead.
+
 ``True`` when using Microsoft Visual C++ 7.1.
 
 Set to ``true`` when the compiler is version 7.1 of Microsoft Visual C++.
diff --git a/Help/variable/MSVC80.rst b/Help/variable/MSVC80.rst
index 0d33e82..1533218 100644
--- a/Help/variable/MSVC80.rst
+++ b/Help/variable/MSVC80.rst
@@ -1,5 +1,7 @@
 MSVC80
 ------
 
+Discouraged.  Use the :variable:`MSVC_VERSION` variable instead.
+
 ``True`` when using the Microsoft Visual Studio ``v80`` toolset
 (``cl`` version 14) or another compiler that simulates it.
diff --git a/Help/variable/MSVC90.rst b/Help/variable/MSVC90.rst
index 1716e6f..4981ecf 100644
--- a/Help/variable/MSVC90.rst
+++ b/Help/variable/MSVC90.rst
@@ -1,5 +1,7 @@
 MSVC90
 ------
 
+Discouraged.  Use the :variable:`MSVC_VERSION` variable instead.
+
 ``True`` when using the Microsoft Visual Studio ``v90`` toolset
 (``cl`` version 15) or another compiler that simulates it.
-- 
cgit v0.12