enable more clang warnings
This commit is contained in:
@@ -19,7 +19,7 @@ if ( WIN32 )
|
||||
list(APPEND ADDITIONAL_CMAKE_EXE_LINKER_FLAGS "/LARGEADDRESSAWARE" )
|
||||
list(APPEND ADDITIONAL_CMAKE_SHARED_LINKER_FLAGS "/LARGEADDRESSAWARE" )
|
||||
list(APPEND ADDITIONAL_CMAKE_MODULE_LINKER_FLAGS "/LARGEADDRESSAWARE" )
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
||||
@@ -45,10 +45,12 @@ endif( WIN32 )
|
||||
|
||||
if (UNIX)
|
||||
|
||||
set ( ADDITIONAL_CXX_FLAGS )
|
||||
set ( ADDITIONAL_CXX_DEBUG_FLAGS )
|
||||
set ( ADDITIONAL_CXX_RELEASE_FLAGS )
|
||||
set ( ADDITIONAL_CXX_RELWITHDEBINFO_FLAGS )
|
||||
|
||||
set ( ADDITIONAL_C_FLAGS )
|
||||
set ( ADDITIONAL_C_DEBUG_FLAGS )
|
||||
set ( ADDITIONAL_C_RELEASE_FLAGS )
|
||||
set ( ADDITIONAL_C_RELWITHDEBINFO_FLAGS )
|
||||
@@ -58,19 +60,13 @@ if (UNIX)
|
||||
################################################################################
|
||||
|
||||
# add our standard flags for Template inclusion
|
||||
list(APPEND ADDITIONAL_CXX_DEBUG_FLAGS "-DINCLUDE_TEMPLATES" )
|
||||
list(APPEND ADDITIONAL_CXX_RELEASE_FLAGS "-DINCLUDE_TEMPLATES" )
|
||||
list(APPEND ADDITIONAL_CXX_RELWITHDEBINFO_FLAGS "-DINCLUDE_TEMPLATES" )
|
||||
list(APPEND ADDITIONAL_CXX_FLAGS "-DINCLUDE_TEMPLATES" )
|
||||
list(APPEND ADDITIONAL_C_FLAGS "-DINCLUDE_TEMPLATES" )
|
||||
|
||||
# add our standard flags for Template inclusion
|
||||
list(APPEND ADDITIONAL_C_DEBUG_FLAGS "-DINCLUDE_TEMPLATES" )
|
||||
list(APPEND ADDITIONAL_C_RELEASE_FLAGS "-DINCLUDE_TEMPLATES" )
|
||||
list(APPEND ADDITIONAL_C_RELWITHDEBINFO_FLAGS "-DINCLUDE_TEMPLATES" )
|
||||
|
||||
################################################################################
|
||||
# OS Defines
|
||||
################################################################################
|
||||
|
||||
|
||||
if (APPLE)
|
||||
add_definitions( -DARCH_DARWIN )
|
||||
endif()
|
||||
@@ -91,7 +87,7 @@ if (UNIX)
|
||||
################################################################################
|
||||
# Warnings
|
||||
################################################################################
|
||||
|
||||
|
||||
# Add the standard compiler warnings
|
||||
if ( NOT COMPILER_WARNINGS )
|
||||
|
||||
@@ -104,18 +100,27 @@ if (UNIX)
|
||||
set ( COMPILER_WARNINGS "" CACHE STRINGLIST "This list contains the warning flags used during compilation " )
|
||||
ELSE ()
|
||||
set ( COMPILER_WARNINGS "-W" "-Wall" "-Wno-unused" "-Wextra" "-Wno-variadic-macros" CACHE STRINGLIST "This list contains the warning flags used during compilation " )
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
endif ( NOT COMPILER_WARNINGS )
|
||||
|
||||
list(APPEND ADDITIONAL_CXX_DEBUG_FLAGS ${COMPILER_WARNINGS} )
|
||||
list(APPEND ADDITIONAL_CXX_RELEASE_FLAGS ${COMPILER_WARNINGS} )
|
||||
list(APPEND ADDITIONAL_CXX_RELWITHDEBINFO_FLAGS ${COMPILER_WARNINGS} )
|
||||
|
||||
list(APPEND ADDITIONAL_C_DEBUG_FLAGS ${COMPILER_WARNINGS} )
|
||||
list(APPEND ADDITIONAL_C_RELEASE_FLAGS ${COMPILER_WARNINGS} )
|
||||
list(APPEND ADDITIONAL_C_RELWITHDEBINFO_FLAGS ${COMPILER_WARNINGS} )
|
||||
|
||||
list(APPEND ADDITIONAL_CXX_FLAGS ${COMPILER_WARNINGS} )
|
||||
list(APPEND ADDITIONAL_C_FLAGS ${COMPILER_WARNINGS} )
|
||||
|
||||
|
||||
if ("${CMAKE_CXX_COMPILER}" MATCHES ".*clang.*")
|
||||
list(APPEND ADDITIONAL_CXX_FLAGS "-Weverything")
|
||||
# list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-c++98-compat")
|
||||
# list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-padded")
|
||||
# list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-old-style-cast")
|
||||
# list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-documentation-unknown-command")
|
||||
# list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-unreachable-code-return")
|
||||
# enable later:
|
||||
# list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-sign-conversion")
|
||||
# list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-deprecated")
|
||||
# list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-weak-vtables")
|
||||
endif()
|
||||
|
||||
################################################################################
|
||||
# STL Vector checks
|
||||
################################################################################
|
||||
@@ -147,43 +152,49 @@ if (UNIX)
|
||||
################################################################################
|
||||
|
||||
# Add the debug flags
|
||||
foreach( flag ${ADDITIONAL_CXX_DEBUG_FLAGS} )
|
||||
if( NOT CMAKE_CXX_FLAGS_DEBUG MATCHES "${flag}" )
|
||||
foreach( flag ${ADDITIONAL_CXX_FLAGS} ${ADDITIONAL_CXX_DEBUG_FLAGS} )
|
||||
list (FIND ${CMAKE_CXX_FLAGS_DEBUG} ${flag} _index)
|
||||
if (${_index} EQUAL -1)
|
||||
set( CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${flag} ")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
# Add the release flags
|
||||
foreach( flag ${ADDITIONAL_CXX_RELEASE_FLAGS} )
|
||||
if( NOT CMAKE_CXX_FLAGS_RELEASE MATCHES "${flag}" )
|
||||
foreach( flag ${ADDITIONAL_CXX_FLAGS} ${ADDITIONAL_CXX_RELEASE_FLAGS} )
|
||||
list (FIND ${CMAKE_CXX_FLAGS_RELEASE} ${flag} _index)
|
||||
if (${_index} EQUAL -1)
|
||||
set( CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${flag} ")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
# Add the release with debug info flags
|
||||
foreach( flag ${ADDITIONAL_CXX_RELWITHDEBINFO_FLAGS} )
|
||||
if( NOT CMAKE_CXX_FLAGS_RELWITHDEBINFO MATCHES "${flag}" )
|
||||
foreach( flag ${ADDITIONAL_CXX_FLAGS} ${ADDITIONAL_CXX_RELWITHDEBINFO_FLAGS} )
|
||||
list (FIND ${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${flag} _index)
|
||||
if (${_index} EQUAL -1)
|
||||
set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${flag} ")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
# Add the debug flags
|
||||
foreach( flag ${ADDITIONAL_C_DEBUG_FLAGS} )
|
||||
if( NOT CMAKE_C_FLAGS_DEBUG MATCHES "${flag}" )
|
||||
foreach( flag ${ADDITIONAL_C_FLAGS} ${ADDITIONAL_C_DEBUG_FLAGS} )
|
||||
list (FIND ${CMAKE_C_FLAGS_DEBUG} ${flag} _index)
|
||||
if (${_index} EQUAL -1)
|
||||
set( CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${flag} ")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
# Add the release flags
|
||||
foreach( flag ${ADDITIONAL_C_RELEASE_FLAGS} )
|
||||
if( NOT CMAKE_C_FLAGS_RELEASE MATCHES "${flag}" )
|
||||
foreach( flag ${ADDITIONAL_C_FLAGS} ${ADDITIONAL_C_RELEASE_FLAGS} )
|
||||
list (FIND ${CMAKE_C_FLAGS_RELEASE} ${flag} _index)
|
||||
if (${_index} EQUAL -1)
|
||||
set( CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} ${flag} ")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
# Add the release with debug info flags
|
||||
foreach( flag ${ADDITIONAL_C_RELWITHDEBINFO_FLAGS} )
|
||||
if( NOT CMAKE_C_FLAGS_RELWITHDEBINFO MATCHES "${flag}" )
|
||||
foreach( flag ${ADDITIONAL_C_FLAGS} ${ADDITIONAL_C_RELWITHDEBINFO_FLAGS} )
|
||||
list (FIND ${CMAKE_C_FLAGS_RELWITHDEBINFO} ${flag} _index)
|
||||
if (${_index} EQUAL -1)
|
||||
set( CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} ${flag} ")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
Reference in New Issue
Block a user