summaryrefslogtreecommitdiffstats
path: root/Modules
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2021-06-21 13:50:37 (GMT)
committerKitware Robot <kwrobot@kitware.com>2021-06-21 13:50:52 (GMT)
commitcbdd6747ad1528cff8507a81eef6e4e30cd851e8 (patch)
tree50ff69ff893a406746c343942906e7a4c164d84b /Modules
parent28f4686fc61aebcda5cd9007afeeac6879bca44d (diff)
parentf29e1874adbc31c9d4643816d8b520ad4fde3b84 (diff)
downloadCMake-cbdd6747ad1528cff8507a81eef6e4e30cd851e8.zip
CMake-cbdd6747ad1528cff8507a81eef6e4e30cd851e8.tar.gz
CMake-cbdd6747ad1528cff8507a81eef6e4e30cd851e8.tar.bz2
Merge topic 'msvc-isystem'
f29e1874ad Compiler/MSVC: use the `-external:I` flag for system includes 5a5c85dffd Tests/IncludeDirectories: support MSVC in system include tests 399a3204bb Tests/IncludeDirectories: align sibling predicates 20ab49193b Tests/IncludeDirectories: factor out applying flags to targets 809f7b0c3a Tests/IncludeDirectories: fix copy pasta for otherlib b094324948 Tests/IncludeDirectories: Include system headers via angle brackets 8f63f3b04e cmVisualStudio10TargetGenerator: remove unused variable Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Julien Waechter <greenjava@gmail.com> Acked-by: DE-VS wenglor <devs.wenglor@gmail.com> Merge-request: !4766
Diffstat (limited to 'Modules')
-rw-r--r--Modules/Compiler/MSVC-C.cmake6
-rw-r--r--Modules/Compiler/MSVC-CXX.cmake6
2 files changed, 12 insertions, 0 deletions
diff --git a/Modules/Compiler/MSVC-C.cmake b/Modules/Compiler/MSVC-C.cmake
index 9a5104b..73cca36 100644
--- a/Modules/Compiler/MSVC-C.cmake
+++ b/Modules/Compiler/MSVC-C.cmake
@@ -63,3 +63,9 @@ endmacro()
if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 19.05)
set(CMAKE_C_COMPILE_OPTIONS_JMC "-JMC")
endif()
+
+# The `/external:I` flag was made non-experimental in 19.29.30036.3.
+if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 19.29.30036.3)
+ set(CMAKE_INCLUDE_SYSTEM_FLAG_C "-external:I ")
+ set(_CMAKE_INCLUDE_SYSTEM_FLAG_C_WARNING "-external:W0 ")
+endif ()
diff --git a/Modules/Compiler/MSVC-CXX.cmake b/Modules/Compiler/MSVC-CXX.cmake
index f1c7450..09fe851 100644
--- a/Modules/Compiler/MSVC-CXX.cmake
+++ b/Modules/Compiler/MSVC-CXX.cmake
@@ -79,3 +79,9 @@ endif()
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 19.05)
set(CMAKE_CXX_COMPILE_OPTIONS_JMC "-JMC")
endif()
+
+# The `/external:I` flag was made non-experimental in 19.29.30036.3.
+if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 19.29.30036.3)
+ set(CMAKE_INCLUDE_SYSTEM_FLAG_CXX "-external:I ")
+ set(_CMAKE_INCLUDE_SYSTEM_FLAG_CXX_WARNING "-external:W0 ")
+endif ()