vcpkg/ports/libressl/0002-suppress-msvc-warnings.patch

48 lines
1.9 KiB
Diff
Raw Normal View History

diff --git a/CMakeLists.txt b/CMakeLists.txt
index a6a7554..b20fd4b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -111,6 +111,11 @@ if(WIN32)
set(PLATFORM_LIBS ${PLATFORM_LIBS} ws2_32 bcrypt)
endif()
+if(MSVC AND MSVC_VERSION GREATER_EQUAL 1912)
+ message(STATUS "Setting /Qspectre switch")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /Qspectre")
+endif()
+
if(MSVC)
add_definitions(-Dinline=__inline)
message(STATUS "Using [${CMAKE_C_COMPILER_ID}] compiler")
@@ -123,16 +128,29 @@ if(MSVC)
"C4127" # conditional expression is constant
"C4146" # unary minus operator applied to unsigned type,
# result still unsigned
+ "C4242" # 'identifier' : conversion from 'type1' to 'type2',
+ # possible loss of data
"C4244" # 'argument' : conversion from 'type1' to 'type2',
# possible loss of data
"C4245" # 'conversion' : conversion from 'type1' to 'type2',
# signed/unsigned mismatch
+ "C4255" # 'function' : no function prototype given:
+ # converting '()' to '(void)'
"C4267" # 'var' : conversion from 'size_t' to 'type',
# possible loss of data
+ "C4388" # 'expression': signed/unsigned mismatch
"C4389" # 'operator' : signed/unsigned mismatch
+ "C4464" # relative include path contains '..'
+ "C4668" # 'symbol' is not defined as a preprocessor macro,
+ # replacing with '0' for 'directives'
"C4706" # assignment within conditional expression
+ "C4710" # 'function' : function not inlined
+ "C4711" # function 'function' selected for inline expansion
+ "C4820" # 'bytes' bytes padding added after construct 'member_name'
"C4996" # The POSIX name for this item is deprecated.
# Instead, use the ISO C and C++ conformant name
+ "C5045" # Compiler will insert Spectre mitigation for memory load
+ # if /Qspectre switch specified
)
elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
add_definitions(-D_CRT_SUPPRESS_RESTRICT)