[U-Boot] [PATCH 1/2] common: Add CCACHE variable to allow use of ccache

Marek Vasut marex at denx.de
Mon May 20 19:25:14 CEST 2013


Prefix HOSTCC and CC with CCACHE variable to allow easy use of ccache.
In case the user wants to use ccache, exporting CCACHE=ccache will do
the trick. It is of course possible to either make the cross-compiler
name into a shellscript which invokes the ccache and the compiler, but
setting this variable makes use of ccache easier and more convenient.

Using ccache becomes convenient when using MAKEALL for large build
tests, where the speedup after building the cache for the first time
is about 4-6 times.

Signed-off-by: Marek Vasut <marex at denx.de>
Cc: Tom Rini <trini at ti.com>
---
 config.mk |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/config.mk b/config.mk
index 1fd109f..d59ded2 100644
--- a/config.mk
+++ b/config.mk
@@ -98,6 +98,8 @@ else
 HOSTCC		= gcc
 endif
 
+HOSTCC		:= $(CCACHE) $(HOSTCC)
+
 ifeq ($(HOSTOS),cygwin)
 HOSTCFLAGS	+= -ansi
 endif
@@ -140,13 +142,13 @@ binutils-version = $(shell $(SHELL) $(SRCTREE)/tools/binutils-version.sh $(AS))
 #
 # Include the make variables (CC, etc...)
 #
-AS	= $(CROSS_COMPILE)as
+AS	= $(CCACHE) $(CROSS_COMPILE)as
 
 # Always use GNU ld
 LD	= $(shell if $(CROSS_COMPILE)ld.bfd -v > /dev/null 2>&1; \
 		then echo "$(CROSS_COMPILE)ld.bfd"; else echo "$(CROSS_COMPILE)ld"; fi;)
 
-CC	= $(CROSS_COMPILE)gcc
+CC	= $(CCACHE) $(CROSS_COMPILE)gcc
 CPP	= $(CC) -E
 AR	= $(CROSS_COMPILE)ar
 NM	= $(CROSS_COMPILE)nm
@@ -320,7 +322,7 @@ endif
 
 #########################################################################
 
-export	HOSTCC HOSTCFLAGS HOSTLDFLAGS PEDCFLAGS HOSTSTRIP CROSS_COMPILE \
+export	HOSTCC HOSTCFLAGS HOSTLDFLAGS PEDCFLAGS HOSTSTRIP CROSS_COMPILE CCACHE \
 	AS LD CC CPP AR NM STRIP OBJCOPY OBJDUMP MAKE
 export	CONFIG_SYS_TEXT_BASE PLATFORM_CPPFLAGS PLATFORM_RELFLAGS CPPFLAGS CFLAGS AFLAGS
 
-- 
1.7.10.4



More information about the U-Boot mailing list