Bump the minimum supported MSVC version to VS2019
This aligns with https://github.com/google/oss-policies-info/pull/8 and https://github.com/grpc/grpc/pull/32614. VS2019 adds a C11 mode, which is useful for us, because it means stdalign.h works correctly. Also bump the minimum Windows SDK to https://devblogs.microsoft.com/cppblog/c11-and-c17-standard-support-arriving-in-msvc/. If you have a new MSVC, CMake will enable C11 mode by default. But if C11 mode is enabled but your Windows SDK is too old, things break. After this change, the CI will include some redundant configurations. All the VS2017 configurations will start testing on VS2019, so the VS2019-specific configurations won't do anything. I'll follow this up with a change to bump those to VS2022, where we're currently missing coverage. Update-Note: BoringSSL now requires VS2019 or later and no longer supports VS2017. VS2017 has been past its "mainstream end date" for over a year now, per https://learn.microsoft.com/en-us/lifecycle/products/visual-studio-2017 Change-Id: I3f359e8ea7c9428ddaa9fcc4ffead2ef903398be Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/59665 Reviewed-by: Adam Langley <agl@google.com> Commit-Queue: David Benjamin <davidben@google.com>
This commit is contained in:
parent
a972b78d1b
commit
2aae3f58b4
@ -32,9 +32,9 @@ most recent stable version of each tool.
|
||||
|
||||
* C and C++ compilers with C++14 support are required. If using a C compiler
|
||||
other than MSVC, C11 support is also requried. On Windows, MSVC from
|
||||
Visual Studio 2017 or later with Platform SDK 8.1 or later are supported,
|
||||
but newer versions are recommended. Recent versions of GCC (6.1+) and Clang
|
||||
should work on non-Windows platforms, and maybe on Windows too.
|
||||
Visual Studio 2019 or later with Windows 10 SDK 2104 or later are supported,
|
||||
but using the latest versions is recommended. Recent versions of GCC (6.1+)
|
||||
and Clang should work on non-Windows platforms, and maybe on Windows too.
|
||||
|
||||
* The most recent stable version of [Go](https://golang.org/dl/) is required.
|
||||
Note Go is exempt from the five year support window. If not found by CMake,
|
||||
|
@ -203,11 +203,6 @@ elseif(MSVC)
|
||||
set(MSVC_DISABLED_WARNINGS_LIST
|
||||
"C4100" # 'exarg' : unreferenced formal parameter
|
||||
"C4127" # conditional expression is constant
|
||||
# C4204 and C4221 are C89-only restrictions which were dropped in C99, but
|
||||
# VS2017 warns about it. They can be removed when we require VS2019.
|
||||
"C4204" # nonstandard extension used: non-constant aggregate initializer
|
||||
"C4221" # nonstandard extension used : 'identifier' : cannot be
|
||||
# initialized using address of automatic variable
|
||||
"C4244" # 'function' : conversion from 'int' to 'uint8_t',
|
||||
# possible loss of data
|
||||
"C4267" # conversion from 'size_t' to 'int', possible loss of data
|
||||
|
@ -19,7 +19,7 @@ vars = {
|
||||
'checkout_sde': False,
|
||||
'checkout_nasm': False,
|
||||
'checkout_libcxx': False,
|
||||
'vs_version': '2017',
|
||||
'vs_version': '2019',
|
||||
|
||||
# Run the following command to see the latest builds in CIPD:
|
||||
# cipd describe PACKAGE_NAME -version latest
|
||||
|
Loading…
x
Reference in New Issue
Block a user