From e84f5bec0b0074138275262b1b6afad0e8901b98 Mon Sep 17 00:00:00 2001 From: Erik Frojdh Date: Mon, 11 Oct 2021 19:56:39 +0200 Subject: [PATCH] disable Wstringop-truncation for servers --- CMakeLists.txt | 6 ++++++ cmake/SlsAddFlag.cmake | 10 ++++++++++ 2 files changed, 16 insertions(+) create mode 100644 cmake/SlsAddFlag.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index 23f4fad04..34318be56 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,6 +7,9 @@ set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG") cmake_policy(SET CMP0074 NEW) include(cmake/project_version.cmake) +#functions to add compiler flags +include(cmake/SlsAddFlag.cmake) + # Include additional modules that are used unconditionally include(GNUInstallDirs) @@ -142,6 +145,9 @@ elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") endif() + +sls_add_flag_if_available("-Wno-stringop-truncation" slsProjectCSettings) + if(SLS_USE_SANITIZER) target_compile_options(slsProjectOptions INTERFACE -fsanitize=address,undefined -fno-omit-frame-pointer) target_link_libraries(slsProjectOptions INTERFACE -fsanitize=address,undefined) diff --git a/cmake/SlsAddFlag.cmake b/cmake/SlsAddFlag.cmake new file mode 100644 index 000000000..9d2a1e794 --- /dev/null +++ b/cmake/SlsAddFlag.cmake @@ -0,0 +1,10 @@ +include(CheckCXXCompilerFlag) +function(sls_add_flag_if_available flag target) + check_cxx_compiler_flag(${flag} flag_supported) + if(flag_supported) + target_compile_options(${target} INTERFACE ${flag}) + message("Adding: ${flag} to ${target}") + else() + message("Flag: ${flag} not supported") + endif() +endfunction() \ No newline at end of file