[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 01/12] gitlab: enable ccache for many build jobs
From: |
Michael Tokarev |
Subject: |
Re: [PATCH v2 01/12] gitlab: enable ccache for many build jobs |
Date: |
Fri, 25 Aug 2023 10:46:29 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.14.0 |
24.08.2023 19:38, Alex Bennée wrote:
From: Daniel P. Berrangé <berrange@redhat.com>
The `ccache` tool can be very effective at reducing compilation times
when re-running pipelines with only minor changes each time. For example
a fresh 'build-system-fedora' job will typically take 20 minutes on the
gitlab.com shared runners. With ccache this is reduced to as little as
6 minutes.
I've been using ccache when building qemu in debian, for quite a while.
The problem here, in the way qemu build system works, is that the cache
is hugely dependent on the path to the source. You change just one char
in there (/build/qemu/v8.1.0/ => /build/qemu/v8.1.1) and whole cache becomes
unusable, it all gets compiled anew. This is because qemu build sys uses
absolute file names when building, and this is detected by ccache, so
the source dir gets mixed into the hash together with gcc version and
other things.
Dunno how well this will work in the qemu ci though.
/mjt
- [PATCH v2 00/12] gdbstub and testing fixes for 8.2, Alex Bennée, 2023/08/24
- [PATCH v2 03/12] tests/tcg: remove quoting for info output, Alex Bennée, 2023/08/24
- [PATCH v2 05/12] .gitlab-ci.d/cirrus.yml: Update FreeBSD to v13.2, Alex Bennée, 2023/08/24
- [PATCH v2 04/12] docs/style: permit inline loop variables, Alex Bennée, 2023/08/24
- [PATCH v2 08/12] gdbstub: fixes cases where wrong threads were reported to GDB on SIGINT, Alex Bennée, 2023/08/24
- [PATCH v2 06/12] tests: remove test-gdbstub.py, Alex Bennée, 2023/08/24
- [PATCH v2 07/12] tests/tcg: clean-up gdb confirm/pagination settings, Alex Bennée, 2023/08/24