[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 05/10] .travis.yml: Improve ccache use
From: |
Philippe Mathieu-Daudé |
Subject: |
[Qemu-devel] [PATCH 05/10] .travis.yml: Improve ccache use |
Date: |
Tue, 3 Sep 2019 15:26:44 +0200 |
From: Philippe Mathieu-Daudé <address@hidden>
Per https://ccache.dev/manual/latest.html:
By default, ccache tries to give as few false cache hits as
possible. However, in certain situations it’s possible that
you know things that ccache can’t take for granted.
[The CCACHE_SLOPINESS environment variable] makes it possible
to tell ccache to relax some checks in order to increase the
hit rate.
We can relax the ctime/mtime header checks:
- include_file_ctime
By default, ccache also will not cache a file if it
includes a header whose ctime is too new. This option
disables that check.
- include_file_mtime
By default, ccache will not cache a file if it includes
a header whose mtime is too new. This option disables
that check.
We also add a call to clear the cache statistics before running
the build, and display them when the build finishes.
See https://docs.travis-ci.com/user/caching/#ccache-cache
Suggested-by: Paolo Bonzini <address@hidden>
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
---
.travis.yml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/.travis.yml b/.travis.yml
index a3db5b3f63..fccc1e091d 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -70,6 +70,9 @@ env:
- TEST_CMD="make check -j3 V=1"
# This is broadly a list of "mainline" softmmu targets which have support
across the major distros
-
MAIN_SOFTMMU_TARGETS="aarch64-softmmu,arm-softmmu,i386-softmmu,mips-softmmu,mips64-softmmu,ppc64-softmmu,riscv64-softmmu,s390x-softmmu,x86_64-softmmu"
+ - CCACHE_SLOPPINESS="include_file_ctime,include_file_mtime"
+ - CCACHE_MAXSIZE=1G
+
git:
# we want to do this ourselves
@@ -77,10 +80,13 @@ git:
before_script:
+ - command -v ccache && ccache --zero-stats
- mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
- ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exit
1; }
script:
- make -j3 && travis_retry ${TEST_CMD}
+after_script:
+ - command -v ccache && ccache --show-stats
matrix:
--
2.20.1
- [Qemu-devel] [PATCH 00/10] travis: Use caching when possible, Philippe Mathieu-Daudé, 2019/09/03
- [Qemu-devel] [PATCH 01/10] .travis.yml: Enable multiple caching features, Philippe Mathieu-Daudé, 2019/09/03
- [Qemu-devel] [PATCH 02/10] .travis.yml: Increase cache timeout from 3min to 20min, Philippe Mathieu-Daudé, 2019/09/03
- [Qemu-devel] [PATCH 03/10] .travis.yml: Cache Python PIP packages, Philippe Mathieu-Daudé, 2019/09/03
- [Qemu-devel] [PATCH 04/10] .travis.yml: Cache Avocado cache, Philippe Mathieu-Daudé, 2019/09/03
- [Qemu-devel] [PATCH 05/10] .travis.yml: Improve ccache use,
Philippe Mathieu-Daudé <=
- [Qemu-devel] [PATCH 06/10] .travis.yml: Enable ccache on OSX, Philippe Mathieu-Daudé, 2019/09/03
- [Qemu-devel] [PATCH 07/10] .travis.yml: Document how the build matrix use caches, Philippe Mathieu-Daudé, 2019/09/03
- [Qemu-devel] [PATCH 08/10] .travis.yml: Cache Linux/GCC 'debug profile' jobs together, Philippe Mathieu-Daudé, 2019/09/03
- [Qemu-devel] [PATCH 09/10] .travis.yml: Cache Linux/GCC 'non-debug profile' jobs together, Philippe Mathieu-Daudé, 2019/09/03
- [Qemu-devel] [PATCH 10/10] .travis.yml: Cache Linux/Clang jobs together, Philippe Mathieu-Daudé, 2019/09/03
- Re: [Qemu-devel] [PATCH 00/10] travis: Use caching when possible, Alex Bennée, 2019/09/04