From 8cc7fb1e171a42e419a196b683e56791d354df64 Mon Sep 17 00:00:00 2001 From: Alexander Shaduri Date: Mon, 1 Mar 2021 16:21:42 +0400 Subject: [PATCH] Disable compiler warnings unless explicitly enabled, to avoid compilation failures on older systems without specific warning flags. --- src/build_config/compiler_options.cmake | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/build_config/compiler_options.cmake b/src/build_config/compiler_options.cmake index 2e4f61a..2ae2180 100644 --- a/src/build_config/compiler_options.cmake +++ b/src/build_config/compiler_options.cmake @@ -77,15 +77,20 @@ add_compile_definitions(_FILE_OFFSET_BITS=64) # Enable compiler warnings -if (${CMAKE_CXX_COMPILER_ID} STREQUAL Clang - OR ${CMAKE_CXX_COMPILER_ID} STREQUAL GNU - OR ${CMAKE_CXX_COMPILER_ID} STREQUAL AppleClang) - add_compile_options(-Wall -Wextra - -Wcast-qual -Wconversion -Wfloat-equal -Wnon-virtual-dtor -Woverloaded-virtual - -Wpointer-arith -Wshadow -Wsign-compare -Wsign-promo -Wundef -Wwrite-strings - ) -elseif (${CMAKE_CXX_COMPILER_ID} STREQUAL MSVC) - add_compile_options(/W4) +option(APP_COMPILER_ENABLE_WARNINGS "Enable compiler warnings" OFF) + +# Warnings are for latest versions of compilers, for developers only. +if (APP_COMPILER_ENABLE_WARNINGS) + if (${CMAKE_CXX_COMPILER_ID} STREQUAL Clang + OR ${CMAKE_CXX_COMPILER_ID} STREQUAL GNU + OR ${CMAKE_CXX_COMPILER_ID} STREQUAL AppleClang) + add_compile_options(-Wall -Wextra + -Wcast-qual -Wconversion -Wfloat-equal -Wnon-virtual-dtor -Woverloaded-virtual + -Wpointer-arith -Wshadow -Wsign-compare -Wsign-promo -Wundef -Wwrite-strings + ) + elseif (${CMAKE_CXX_COMPILER_ID} STREQUAL MSVC) + add_compile_options(/W4) + endif() endif()