summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2020-09-20 10:50:44 +0200
committerMichele Calgaro <michele.calgaro@yahoo.it>2020-09-20 21:16:12 +0900
commit15a7e4670a8f580545c95e14101f852c9d947998 (patch)
tree7fecac00e7e6af4dae2b8824ea60c127c3781277
parent4397680ce96d859f37f5afbc9bfa07b5a800f199 (diff)
downloadcmake-15a7e4670a8f580545c95e14101f852c9d947998.tar.gz
cmake-15a7e4670a8f580545c95e14101f852c9d947998.zip
Add a global option to force colored output from compiler.
Taken from https://medium.com/@alasher/colored-c-compiler-output-with-ninja-clang-gcc-10bfe7f2b949 Signed-off-by: Slávek Banko <slavek.banko@axis.cz> (cherry picked from commit 0459cbaf3eaf2b123a07d125623db0fc82baa6aa)
-rw-r--r--modules/TDEMacros.cmake13
1 files changed, 13 insertions, 0 deletions
diff --git a/modules/TDEMacros.cmake b/modules/TDEMacros.cmake
index 6e61d4a..8f1110c 100644
--- a/modules/TDEMacros.cmake
+++ b/modules/TDEMacros.cmake
@@ -41,6 +41,19 @@ if( NOT TDE_CMAKE_ROOT )
CACHE FILEPATH "TDE CMake templates" )
endif()
+
+
+ option( FORCE_COLORED_OUTPUT "Always produce ANSI-colored output (GNU/Clang only)." FALSE )
+ if( ${FORCE_COLORED_OUTPUT} )
+ if( "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" )
+ if( NOT "${CMAKE_CXX_COMPILER_VERSION}" VERSION_LESS "4.9" )
+ add_compile_options (-fdiagnostics-color=always)
+ endif()
+ elseif( "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" )
+ add_compile_options (-fcolor-diagnostics)
+ endif()
+ endif()
+
endif()