manibuilder: Switch to a per-image ccache
We used to have one big, shared ccache dir used by almost all images.
This doesn't scale well when we already know that parallel builds
(for different architectures, for instance) don't have a chance to
hit the same cache entries. Also, newer versions of ccache seem to
have a problem with this setup (Debian Bookworm and Fedora 37, to be
investigated).
We pass a per-image identifier `${IDENT}` into the build and place
the cache in `/ccache/${IDENT}`. However, the configuration is kept
in the default location, e.g. `~/.ccache/ccache.conf`. We can't
configure this via ENV variables easily, because some distributions
override them.
We used to have the default 5GiB ccache limit. Now with the growing
list of images, we set a 32MiB limit per image. This should keep us
within 5GiB for a while.
Change-Id: I082f95aee050efad85867b309d363f61bfea751e
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/flashrom-stable/+/73471
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/util/manibuilder/Dockerfile.anita b/util/manibuilder/Dockerfile.anita
index 3bfe062..b90311f 100644
--- a/util/manibuilder/Dockerfile.anita
+++ b/util/manibuilder/Dockerfile.anita
@@ -11,6 +11,8 @@
RUN git clone https://github.com/gson1703/anita.git
RUN cd anita && python setup.py install
+RUN mkdir -p -m 1777 /ccache
+
ARG DISK_SIZE=1G
ARG INSTALL_MEM=128M
ARG INST_IMG=http://ftp.de.netbsd.org/pub/NetBSD/NetBSD-7.1/amd64/