1*4f1223e8SApple OSS Distributions# -*- mode: makefile;-*- 2*4f1223e8SApple OSS Distributions# 3*4f1223e8SApple OSS Distributions# Copyright (C) 2020 Apple Inc. All rights reserved. 4*4f1223e8SApple OSS Distributions# 5*4f1223e8SApple OSS Distributions# MakeInc.color defines macros used to enable 6*4f1223e8SApple OSS Distributions# colored output of the build log. 7*4f1223e8SApple OSS Distributions# 8*4f1223e8SApple OSS Distributions 9*4f1223e8SApple OSS Distributionsdefine _setup_build_log_colors 10*4f1223e8SApple OSS Distributionsifeq ($${XNU_LOGCOLORS},y) 11*4f1223e8SApple OSS Distributions LOGCOLORS ?= y 12*4f1223e8SApple OSS Distributionsendif 13*4f1223e8SApple OSS Distributionsifeq ($$(LOGCOLORS),y) 14*4f1223e8SApple OSS Distributions # Get a nice list of device code names associated with the build platform 15*4f1223e8SApple OSS Distributions ifndef CDevs 16*4f1223e8SApple OSS Distributions #ifdef EMBEDDED_DEVICE_MAP 17*4f1223e8SApple OSS Distributions # export CDevs := $$(shell $$(EMBEDDED_DEVICE_MAP) -db $$(EDM_DBPATH) -list -query "SELECT DISTINCT TargetType FROM Targets WHERE KernelPlatform = '$$(CURRENT_MACHINE_CONFIG_LC)'" | tr '[\r\n]' ':' | sed 's,:$$$$,,') 18*4f1223e8SApple OSS Distributions #endif 19*4f1223e8SApple OSS Distributions endif 20*4f1223e8SApple OSS Distributions ifndef MACHINE_PFX 21*4f1223e8SApple OSS Distributions export _MACHINE := $$(CURRENT_MACHINE_CONFIG_LC) 22*4f1223e8SApple OSS Distributions ifeq ($$(CURRENT_MACHINE_CONFIG),NONE) 23*4f1223e8SApple OSS Distributions export _MACHINE := $$(subst OSX,,$$(PLATFORM)) 24*4f1223e8SApple OSS Distributions endif 25*4f1223e8SApple OSS Distributions export MACHINE_PFX := $$(shell __A="$$(CURRENT_ARCH_CONFIG_LC)"; \ 26*4f1223e8SApple OSS Distributions __As=$$$$((6-$$$${\#__A})); \ 27*4f1223e8SApple OSS Distributions printf "%-.6s%*.*s %9.9s" \ 28*4f1223e8SApple OSS Distributions "$$$${__A}" \ 29*4f1223e8SApple OSS Distributions $$$${__As} $$$${__As} " " \ 30*4f1223e8SApple OSS Distributions "$$(_MACHINE)") 31*4f1223e8SApple OSS Distributions endif 32*4f1223e8SApple OSS Distributions override LOG_PFX_LEN := 30 33*4f1223e8SApple OSS Distributions override LOG_PFX_LEN_ADJ := $$(shell __TMP="$$(MACHINE_PFX)"; \ 34*4f1223e8SApple OSS Distributions printf "%d" $$$$(($$(LOG_PFX_LEN) - $$$${\#__TMP} - 3))) 35*4f1223e8SApple OSS Distributions MACHINE_PFX_COL = $$(shell printf "\\033[1m%s\\033[m" "$$(MACHINE_PFX)") 36*4f1223e8SApple OSS Distributions # Turn off colored output 37*4f1223e8SApple OSS Distributions Color0:=$$(shell printf "\\033[m") 38*4f1223e8SApple OSS Distributions # Start a host command: bold text 39*4f1223e8SApple OSS Distributions ColorH:=$$(shell printf "\\033[1m") 40*4f1223e8SApple OSS Distributions # Start a compilation-related command: blue text 41*4f1223e8SApple OSS Distributions ColorC:=$$(shell printf "[$$(MACHINE_PFX_COL)] \\033[1;34m") 42*4f1223e8SApple OSS Distributions # Start a MIG command: green text 43*4f1223e8SApple OSS Distributions ColorM:=$$(shell printf "[$$(MACHINE_PFX_COL)] \\033[1;32m") 44*4f1223e8SApple OSS Distributions # Start a linking command: purple text 45*4f1223e8SApple OSS Distributions ColorL:=$$(shell printf "[$$(MACHINE_PFX_COL)] \\033[1;35m") 46*4f1223e8SApple OSS Distributions # Start a filename 47*4f1223e8SApple OSS Distributions ColorF:=$$(shell printf "") 48*4f1223e8SApple OSS Distributions # Start a linked file name: italic text 49*4f1223e8SApple OSS Distributions ColorLF:=$$(shell printf "\\033[3m") 50*4f1223e8SApple OSS Distributions # Error strings: red text 51*4f1223e8SApple OSS Distributions ColorErr:=$$(shell printf "\033[31m") 52*4f1223e8SApple OSS Distributionsendif 53*4f1223e8SApple OSS Distributionsendef 54*4f1223e8SApple OSS Distributions 55*4f1223e8SApple OSS Distributions# vim: set ft=make: 56