mirror of
https://github.com/godotengine/buildroot.git
synced 2026-01-05 14:09:53 +03:00
ccache: rework ccache management
* ccache is now a normal package (both for the host and the target). * ccache option is now part of the "Build options" menu. It will automatically build ccache for the host before building anything, and will use it to cache builds for both host compilations and target compilations. * bump ccache to 3.1.3 Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
committed by
Peter Korsgaard
parent
3bbf1c2ea6
commit
17b66affdf
9
package/ccache/Config.in
Normal file
9
package/ccache/Config.in
Normal file
@@ -0,0 +1,9 @@
|
||||
config BR2_PACKAGE_CCACHE
|
||||
bool "ccache"
|
||||
help
|
||||
ccache is a compiler cache. It speeds up recompilation by
|
||||
caching previous compilations and detecting when the same
|
||||
compilation is being done again
|
||||
|
||||
http://samba.ccache.org
|
||||
|
||||
33
package/ccache/ccache.mk
Normal file
33
package/ccache/ccache.mk
Normal file
@@ -0,0 +1,33 @@
|
||||
#############################################################
|
||||
#
|
||||
# ccache
|
||||
#
|
||||
#############################################################
|
||||
|
||||
CCACHE_VERSION = 3.1.3
|
||||
CCACHE_SITE = http://samba.org/ftp/ccache
|
||||
CCACHE_SOURCE = ccache-$(CCACHE_VERSION).tar.bz2
|
||||
|
||||
# When ccache is being built for the host, ccache is not yet
|
||||
# available, so we have to use the special C compiler without the
|
||||
# cache.
|
||||
HOST_CCACHE_CONF_ENV = \
|
||||
CC="$(HOSTCC_NOCCACHE)"
|
||||
|
||||
# We directly hardcode the cache location into the binary, as it is
|
||||
# much easier to handle than passing an environment variable.
|
||||
define HOST_CCACHE_FIX_CCACHE_DIR
|
||||
sed -i 's,getenv("CCACHE_DIR"),"$(CCACHE_CACHE_DIR)",' $(@D)/ccache.c
|
||||
endef
|
||||
|
||||
HOST_CCACHE_POST_CONFIGURE_HOOKS += \
|
||||
HOST_CCACHE_FIX_CCACHE_DIR
|
||||
|
||||
$(eval $(call AUTOTARGETS,package,ccache))
|
||||
$(eval $(call AUTOTARGETS,package,ccache,host))
|
||||
|
||||
ifeq ($(BR2_CCACHE),y)
|
||||
ccache-stats: host-ccache
|
||||
$(Q)$(CCACHE) -s
|
||||
endif
|
||||
|
||||
Reference in New Issue
Block a user