Skip to content

Commit a603c82

Browse files
davidbenagl
authored andcommitted
Bump minimum GCC version and note impending VS2015 deprecation.
GCC 6.1 was released more than five years ago, April 27, 2016. We can thus drop some bits in the CMake files. https://gcc.gnu.org/releases.html https://gcc.gnu.org/develop.html#num_scheme Also note in BUILDING.md that VS2015 will no longer be supported next year. Then we can cycle our CQ to testing VS2017 + VS2019. (We're currently not testing VS2019 at all, though so far it hasn't been an issue.) I've been running into some VS2015-only C++ issues around conversions, so once we stop testing it, I expect it'll break. Change-Id: I7a3020df2acd61d57409108aa4d99c840b5ca994 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/48925 Reviewed-by: Adam Langley <[email protected]>
1 parent 006f20a commit a603c82

File tree

2 files changed

+5
-14
lines changed

2 files changed

+5
-14
lines changed

BUILDING.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,10 @@ most recent stable version of each tool.
3131
`CMAKE_ASM_NASM_COMPILER`.
3232

3333
* C and C++ compilers with C++11 support are required. On Windows, MSVC 14
34-
(Visual Studio 2015) or later with Platform SDK 8.1 or later are supported.
35-
Recent versions of GCC (4.8+) and Clang should work on non-Windows
34+
(Visual Studio 2015) or later with Platform SDK 8.1 or later are supported,
35+
but newer versions are recommended. We will drop support for Visual Studio
36+
2015 in March 2022, five years after the release of Visual Studio 2017.
37+
Recent versions of GCC (6.1+) and Clang should work on non-Windows
3638
platforms, and maybe on Windows too.
3739

3840
* The most recent stable version of [Go](https://golang.org/dl/) is required.

CMakeLists.txt

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ endif()
117117
if(CMAKE_COMPILER_IS_GNUCXX OR CLANG)
118118
# Note clang-cl is odd and sets both CLANG and MSVC. We base our configuration
119119
# primarily on our normal Clang one.
120-
set(C_CXX_FLAGS "-Werror -Wformat=2 -Wsign-compare -Wmissing-field-initializers -Wwrite-strings -Wvla")
120+
set(C_CXX_FLAGS "-Werror -Wformat=2 -Wsign-compare -Wmissing-field-initializers -Wwrite-strings -Wvla -Wshadow")
121121
if(MSVC)
122122
# clang-cl sets different default warnings than clang. It also treats -Wall
123123
# as -Weverything, to match MSVC. Instead -W3 is the alias for -Wall.
@@ -172,11 +172,6 @@ if(CMAKE_COMPILER_IS_GNUCXX OR CLANG)
172172
if(CLANG)
173173
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wmissing-prototypes")
174174
endif()
175-
176-
if(CMAKE_COMPILER_IS_GNUCXX AND "4.8" VERSION_GREATER CMAKE_C_COMPILER_VERSION)
177-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-array-bounds")
178-
endif()
179-
180175
elseif(MSVC)
181176
set(MSVC_DISABLED_WARNINGS_LIST
182177
"C4061" # enumerator 'identifier' in switch of enum 'enumeration' is not
@@ -254,12 +249,6 @@ if(WIN32)
254249
add_definitions("-D_STL_EXTRA_DISABLED_WARNINGS=4774 4987")
255250
endif()
256251

257-
if((CMAKE_COMPILER_IS_GNUCXX AND CMAKE_C_COMPILER_VERSION VERSION_GREATER "4.7.99") OR
258-
CLANG)
259-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wshadow")
260-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wshadow")
261-
endif()
262-
263252
if(CMAKE_COMPILER_IS_GNUCXX)
264253
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11")
265254
endif()

0 commit comments

Comments
 (0)