build: improve ccache support
Set CCACHE_DIR to $(TOPDIR)/.ccache and CCACHE_BASEDIR to $(TOPDIR). This allows to do clean and dirclean. Cache hit rate for test build after dirclean is ~65%. If CCACHE is enabled stats are printed out at the end of building process. CCACHE_DIR config variable allows to override default, which could be useful when sharing cache with many builds. cacheclean make target allows to clean the cache. Changes from v1: - remove ccache directory using CCACHE_DIR variable - remove ccache leftovers from sdk and toolchain make files - introduce CONFIG_CCACHE_DIR variable - introduce cacheclean make target Signed-off-by: Roman Yeryomin <roman@advem.lv>
This commit is contained in:
committed by
Petr Štetiar
parent
23de93a521
commit
2ca084ccaa
3
rules.mk
3
rules.mk
@@ -298,6 +298,9 @@ ifneq ($(CONFIG_CCACHE),)
|
||||
TARGET_CXX:= ccache_cxx
|
||||
HOSTCC:= ccache $(HOSTCC)
|
||||
HOSTCXX:= ccache $(HOSTCXX)
|
||||
export CCACHE_BASEDIR:=$(TOPDIR)
|
||||
export CCACHE_DIR:=$(if $(call qstrip,$(CONFIG_CCACHE_DIR)),$(call qstrip,$(CONFIG_CCACHE_DIR)),$(TOPDIR)/.ccache)
|
||||
export CCACHE_COMPILERCHECK:=%compiler% -dumpmachine; %compiler% -dumpversion
|
||||
endif
|
||||
|
||||
TARGET_CONFIGURE_OPTS = \
|
||||
|
||||
Reference in New Issue
Block a user