Up warning level to /W4 /WX for MSVC-like compilers

Also adds a CMake option, UTPP_AMPLIFY_WARNINGS, that can be turned
OFF to disable the new behavior.
This commit is contained in:
Patrick Johnmeyer 2016-08-27 08:26:05 -05:00
parent 83dbcc076d
commit 7c15942751

View file

@ -7,6 +7,9 @@ option(UTPP_USE_PLUS_SIGN
option(UTPP_INCLUDE_TESTS_IN_BUILD
"Set this to OFF if you do not wish to automatically build or run unit tests as part of the default cmake --build"
ON)
option(UTPP_AMPLIFY_WARNINGS
"Set this to OFF if you wish to use CMake default warning levels; should generally only use to work around support issues for your specific compiler"
ON)
if(MSVC14 OR MSVC12)
# has the support we need
@ -23,6 +26,15 @@ else()
endif()
endif()
# up warning level for project
if (${UTPP_AMPLIFY_WARNINGS})
# instead of getting compiler specific, we're going to try making an assumption that an existing /W# means
# we are dealing with an MSVC or MSVC-like compiler (e.g. Intel on Windows)
if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]")
string(REGEX REPLACE "/W[0-4]" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /WX")
endif()
endif()
# get the main sources
file(GLOB headers_ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} UnitTest++/*.h)
file(GLOB sources_ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} UnitTest++/*.cpp)