From a9bcc81f821d7c66f623779fa5147e728eb3c388 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 4 May 2024 03:24:41 +0200 Subject: Adding upstream version 3.3.0+dfsg1. Signed-off-by: Daniel Baumann --- cmake/CompilerFlags.cmake | 58 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 cmake/CompilerFlags.cmake (limited to 'cmake/CompilerFlags.cmake') diff --git a/cmake/CompilerFlags.cmake b/cmake/CompilerFlags.cmake new file mode 100644 index 0000000..fe951bb --- /dev/null +++ b/cmake/CompilerFlags.cmake @@ -0,0 +1,58 @@ +include(CheckCCompilerFlag) + +macro (checkCFlag FLAG) + CHECK_C_COMPILER_FLAG("${FLAG}" CFLAG${FLAG}) + if(CFLAG${FLAG}) + string(APPEND CMAKE_C_FLAGS " ${FLAG}") + else() + message(WARNING "compiler does not support ${FLAG}") + endif() +endmacro() + +option(ENABLE_WARNING_VERBOSE "enable -Weveryting (and some exceptions) for compile" ON) +option(ENABLE_WARNING_ERROR "enable -Werror for compile" OFF) + +if (ENABLE_WARNING_VERBOSE) + if (MSVC) + # Remove previous warning definitions, + # NMake is otherwise complaining. + foreach (flags_var_to_scrub + CMAKE_C_FLAGS + CMAKE_C_FLAGS_DEBUG + CMAKE_C_FLAGS_RELEASE + CMAKE_C_FLAGS_RELWITHDEBINFO + CMAKE_C_FLAGS_MINSIZEREL) + string (REGEX REPLACE "(^| )[/-]W[ ]*[1-9]" " " + "${flags_var_to_scrub}" "${${flags_var_to_scrub}}") + endforeach() + + set(C_WARNING_FLAGS + /W4 + /wo4324 + ) + else() + set(C_WARNING_FLAGS + -Weverything + -Wall + -Wpedantic + -Wno-padded + -Wno-cast-align + -Wno-declaration-after-statement + -Wno-unsafe-buffer-usage + -Wno-reserved-identifier + -Wno-covered-switch-default + ) + endif() + + foreach(FLAG ${C_WARNING_FLAGS}) + CheckCFlag(${FLAG}) + endforeach() +endif() + + +if (ENABLE_WARNING_ERROR) + CheckCFlag(-Werror) +endif() + +set(CMAKE_C_FLAGS ${CMAKE_C_FLAGS} CACHE STRING "default CFLAGS") +message("Using CFLAGS ${CMAKE_C_FLAGS}") -- cgit v1.2.3