@@ -151,11 +151,18 @@ macro(CassConfigureShared prefix)
151151 if ("${prefix} " STREQUAL "DSE" )
152152 set (STATIC_COMPILE_FLAGS "${STATIC_COMPILE_FLAGS} -DCASS_BUILDING" )
153153 endif ()
154- if ("${CMAKE_CXX_COMPILER_ID} " STREQUAL "Clang" OR
155- "${CMAKE_CXX_COMPILER_ID} " STREQUAL "GNU" )
154+ if ("${CMAKE_CXX_COMPILER_ID} " STREQUAL "Clang" )
155+ set_property (
156+ TARGET ${PROJECT_LIB_NAME}
157+ APPEND PROPERTY COMPILE_FLAGS "${STATIC_COMPILE_FLAGS} -Wconversion -Wno-sign-conversion -Wno-shorten-64-to-32 -Wno-undefined-var-template -Werror" )
158+ elseif ("${CMAKE_CXX_COMPILER_ID} " STREQUAL "GNU" ) # To many superfluous warnings generated with GCC when using -Wconversion (see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=40752)
156159 set_property (
157160 TARGET ${PROJECT_LIB_NAME}
158161 APPEND PROPERTY COMPILE_FLAGS "${STATIC_COMPILE_FLAGS} -Werror" )
162+ elseif ("${CMAKE_CXX_COMPILER_ID} " STREQUAL "MSVC" )
163+ set_property (
164+ TARGET ${PROJECT_LIB_NAME}
165+ APPEND PROPERTY COMPILE_FLAGS "${STATIC_COMPILE_FLAGS} /we4800" )
159166 endif ()
160167endmacro ()
161168
@@ -181,11 +188,18 @@ macro(CassConfigureStatic prefix)
181188 if ("${prefix} " STREQUAL "DSE" )
182189 set (STATIC_COMPILE_FLAGS "${STATIC_COMPILE_FLAGS} -DCASS_STATIC" )
183190 endif ()
184- if ("${CMAKE_CXX_COMPILER_ID} " STREQUAL "Clang" OR
185- "${CMAKE_CXX_COMPILER_ID} " STREQUAL "GNU" )
191+ if ("${CMAKE_CXX_COMPILER_ID} " STREQUAL "Clang" )
192+ set_property (
193+ TARGET ${PROJECT_LIB_NAME_STATIC}
194+ APPEND PROPERTY COMPILE_FLAGS "${STATIC_COMPILE_FLAGS} -Wconversion -Wno-sign-conversion -Wno-shorten-64-to-32 -Wno-undefined-var-template -Werror" )
195+ elseif ("${CMAKE_CXX_COMPILER_ID} " STREQUAL "GNU" ) # To many superfluous warnings generated with GCC when using -Wconversion (see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=40752)
186196 set_property (
187197 TARGET ${PROJECT_LIB_NAME_STATIC}
188198 APPEND PROPERTY COMPILE_FLAGS "${STATIC_COMPILE_FLAGS} -Werror" )
199+ elseif ("${CMAKE_CXX_COMPILER_ID} " STREQUAL "MSVC" )
200+ set_property (
201+ TARGET ${PROJECT_LIB_NAME_STATIC}
202+ APPEND PROPERTY COMPILE_FLAGS "${STATIC_COMPILE_FLAGS} /we4800" )
189203 endif ()
190204
191205 # Update the CXX flags to indicate the use of the static library
@@ -874,7 +888,6 @@ macro(CassSetCompilerFlags)
874888 # TODO(mpenick): Fix these "possible loss of data" warnings
875889 add_definitions (/wd4244)
876890 add_definitions (/wd4267)
877- add_definitions (/wd4800) # Performance warning due to automatic compiler casting from int to bool
878891
879892 # Add preprocessor definitions for proper compilation
880893 add_definitions (-D_CRT_SECURE_NO_WARNINGS) # Remove warnings for not using safe functions (TODO: Fix codebase to be more secure for Visual Studio)
0 commit comments