From 5aa3fa952b36c5ee415297f60f09f661203ab018 Mon Sep 17 00:00:00 2001 From: Sebastian Ramacher Date: Tue, 6 Oct 2015 22:02:51 +0200 Subject: [PATCH] Detect if -fdiagnostics-color is available Signed-off-by: Sebastian Ramacher --- colors.mk | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/colors.mk b/colors.mk index e341942..774204b 100644 --- a/colors.mk +++ b/colors.mk @@ -1,16 +1,21 @@ # See LICENSE file for license and copyright information -# +ifeq ($(COLOR),1) +# GCC diagnostics colors +DIAGNOSTICS_COLOR_AVAILABLE ?= $(shell ($(CC) -fdiagnostics-color=always -E - /dev/null 2>/dev/null && echo 1) || echo 0) +ifeq ($(DIAGNOSTICS_COLOR_AVAILABLE),1) +CPPFLAGS += -fdiagnostics-color=always +endif + +# colorful output TPUT ?= /usr/bin/tput TPUT_AVAILABLE ?= $(shell ${TPUT} -V 2>/dev/null) ifdef TPUT_AVAILABLE -ifeq ($(COLOR),1) COLOR_NORMAL = `$(TPUT) sgr0` COLOR_ACTION = `$(TPUT) bold``$(TPUT) setaf 3` COLOR_COMMENT = `$(TPUT) bold``$(TPUT) setaf 2` COLOR_BRACKET = `$(TPUT) setaf 4` -CC += -fdiagnostics-color=always define colorecho @echo $(COLOR_BRACKET)" ["$(COLOR_ACTION)$1$(COLOR_BRACKET)"] "$(COLOR_COMMENT)$2$(COLOR_BRACKET) $(COLOR_NORMAL) endef