mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-07-28 13:46:32 +00:00
ccache: set COMPILERCHECK to 'none'
This allows ccache to re-use its cache contents even if the compiler binary mtime has changed. It is the simplest approach to solve this problem, and it works for the internal, external and crosstool-ng toolchain backends. Of course, it leaves the user responsible for invalidating the cache when necessary, but there doesn't seem to be a real good solution that allows both to: 1/ keep the cache contents accross builds and re-use it and 2/ invalidate the cache automatically when the compiler chances in an incompatible way. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
parent
7ea11dafff
commit
f044e03776
@ -191,6 +191,13 @@ config BR2_CCACHE
|
|||||||
up future builds. The cache is stored in
|
up future builds. The cache is stored in
|
||||||
$HOME/.buildroot-ccache.
|
$HOME/.buildroot-ccache.
|
||||||
|
|
||||||
|
Note that Buildroot does not try to invalidate the cache
|
||||||
|
contents when the compiler changes in an incompatible
|
||||||
|
way. Therefore, if you make a change to the compiler version
|
||||||
|
and/or configuration, you are responsible for purging the
|
||||||
|
ccache cache by removing the $HOME/.buildroot-ccache
|
||||||
|
directory.
|
||||||
|
|
||||||
config BR2_DEPRECATED
|
config BR2_DEPRECATED
|
||||||
bool "Show packages that are deprecated or obsolete"
|
bool "Show packages that are deprecated or obsolete"
|
||||||
help
|
help
|
||||||
|
@ -25,10 +25,18 @@ HOST_CCACHE_CONF_ENV = \
|
|||||||
# has zero dependency besides the C library.
|
# has zero dependency besides the C library.
|
||||||
HOST_CCACHE_CONF_OPT += ccache_cv_zlib_1_2_3=no
|
HOST_CCACHE_CONF_OPT += ccache_cv_zlib_1_2_3=no
|
||||||
|
|
||||||
# We directly hardcode the cache location into the binary, as it is
|
# We directly hardcode configuration into the binary, as it is much
|
||||||
# much easier to handle than passing an environment variable.
|
# easier to handle than passing an environment variable. Our
|
||||||
|
# configuration is:
|
||||||
|
# - the cache location
|
||||||
|
# - the fact that ccache shouldn't use the compiler binary mtime to
|
||||||
|
# - detect a change in the compiler, because in the context of
|
||||||
|
# - Buildroot, that completely defeats the purpose of ccache. Of
|
||||||
|
# - course, that leaves the user responsible for purging its cache
|
||||||
|
# - when the compiler changes.
|
||||||
define HOST_CCACHE_FIX_CCACHE_DIR
|
define HOST_CCACHE_FIX_CCACHE_DIR
|
||||||
sed -i 's,getenv("CCACHE_DIR"),"$(CCACHE_CACHE_DIR)",' $(@D)/ccache.c
|
sed -i 's,getenv("CCACHE_DIR"),"$(CCACHE_CACHE_DIR)",' $(@D)/ccache.c
|
||||||
|
sed -i 's,getenv("CCACHE_COMPILERCHECK"),"none",' $(@D)/ccache.c
|
||||||
endef
|
endef
|
||||||
|
|
||||||
HOST_CCACHE_POST_CONFIGURE_HOOKS += \
|
HOST_CCACHE_POST_CONFIGURE_HOOKS += \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user