build: Have color output depend on a common switch DISABLE_COLOR

This commit is contained in:
Dennis Klein 2021-06-26 02:58:59 +02:00
parent 52685997d0
commit 551d8d9f1c

View File

@ -119,11 +119,11 @@ set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g ${_warnings} -DNDEBUG ${_sanitizers}"
unset(_warnings) unset(_warnings)
unset(_sanitizers) unset(_sanitizers)
if(CMAKE_GENERATOR STREQUAL "Ninja" AND if(DISABLE_COLOR)
((CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.9) OR set(CMAKE_COLOR_MAKEFILE OFF)
(CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.5))) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdiagnostics-color=never")
# Force colored warnings in Ninja's output, if the compiler has -fdiagnostics-color support. else()
# Rationale in https://github.com/ninja-build/ninja/issues/814 set(CMAKE_COLOR_MAKEFILE ON)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdiagnostics-color=always") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdiagnostics-color=always")
endif() endif()