Add colored diagnostics when building LLVM with cmake + ninja + clang
authorArnaud A. de Grandmaison <arnaud.adegm@gmail.com>
Wed, 29 May 2013 20:41:35 +0000 (20:41 +0000)
committerArnaud A. de Grandmaison <arnaud.adegm@gmail.com>
Wed, 29 May 2013 20:41:35 +0000 (20:41 +0000)
When invoked from Ninja, clang does not detect that it can use colors : see https://github.com/martine/ninja/issues/174

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182878 91177308-0d34-0410-b5e6-96231b3b80d8

cmake/modules/HandleLLVMOptions.cmake

index f8a017dcaef246d40fa5611b40b992a84a648441..2939fa2afa2d26afb32730717faf54e196aad0f4 100644 (file)
@@ -266,3 +266,10 @@ endif()
 add_llvm_definitions( -D__STDC_CONSTANT_MACROS )
 add_llvm_definitions( -D__STDC_FORMAT_MACROS )
 add_llvm_definitions( -D__STDC_LIMIT_MACROS )
+
+# clang doesn't print colored diagnostics when invoked from Ninja
+if (UNIX AND
+    CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND
+    CMAKE_GENERATOR STREQUAL "Ninja")
+  append("-fcolor-diagnostics" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
+endif()