X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=CMakeLists.txt;h=6d801b7dcc292e64d6506446a6f070399285d5a9;hb=ad24a3cb96810d8d41c40608048fa08bda94e89f;hp=397737a95627966f3c6d9427fae62bd63330c526;hpb=5c6f3c50c6b6303cb0e311b68adf32680106d905;p=xonotic%2Fnetradiant.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 397737a9..6d801b7d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -63,15 +63,46 @@ endif () #----------------------------------------------------------------------- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions -fno-rtti") -macro(addflags args) +macro(addflags_c args) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${args}") +endmacro() +macro(addflags_cxx args) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${args}") endmacro() +macro(addflags args) + addflags_c("${args}") + addflags_cxx("${args}") +endmacro() addflags("-fno-strict-aliasing") if (NOT WIN32) addflags("-fvisibility=hidden") endif () +if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") + addflags("-Werror") + addflags("-pedantic-errors") +endif () + +addflags("-Wall") +addflags("-Wextra") +addflags("-pedantic") + +addflags("-Wno-sign-compare") +addflags("-Wno-write-strings") +addflags("-Wno-unused-function") +addflags("-Wno-unused-variable") +addflags("-Wno-unused-parameter") +addflags("-Wno-deprecated-declarations") +addflags("-Wno-unused-but-set-variable") +addflags("-Wno-missing-field-initializers") + +addflags_c("-Wno-int-conversion") +addflags_c("-Wno-pointer-to-int-cast") +addflags_c("-Wno-incompatible-pointer-types") + +addflags_cxx("-Wno-reorder") +addflags_cxx("-Wno-delete-non-virtual-dtor") + set(CMAKE_POSITION_INDEPENDENT_CODE 1) set(GTK_TARGET 2 CACHE STRING "GTK target") add_definitions(-DGTK_TARGET=${GTK_TARGET})