> This patch enables the `--enable-sccache` flag to enable build caching
> using sccache. Specifically, if the toolchain is one among gcc, clang,
> or MSVC and if the sccache version is 0.10 and above, then the build
> prefixes all compiler invocations with the path to the sccache binary.
>
> Since sccache is incompatible with ccache and precompiled headers, this
> patch makes the build fail if either ccache or precompiled headers are
> enabled in addition to sccache at the same time.
>
> Validated this patch on {Linux, Windows, macOS} x {x64, aarch64}
> machines. In the best-case scenario (i.e. when there are no changes to
> the source files), the time required to run the "make images" step is
> roughly cut in half. Side note: the individual machines have very
> different configurations, so build times _across_ machines aren't
> comparable.
>
> - Windows/x64: 2,107s -> 848s
> - Windows/ARM64: 1,264s -> 748s
> - macOS/x64: 808s -> 243s
> - macOS/AArch64: 480s -> 142s
> - Linux/x64: 225s -> 111s
> - Linux/AArch64: 364s -> 246s
>
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK
> Interim AI Policy](https://openjdk.org/legal/ai).
Ashay Rane has updated the pull request incrementally with one additional
commit since the last revision:
Add comment explaining why we can't use `UTIL_FIXUP_PATH()`.
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/32059/files
- new: https://git.openjdk.org/jdk/pull/32059/files/358405c3..76294b00
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=32059&range=02
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=32059&range=01-02
Stats: 5 lines in 1 file changed: 5 ins; 0 del; 0 mod
Patch: https://git.openjdk.org/jdk/pull/32059.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/32059/head:pull/32059
PR: https://git.openjdk.org/jdk/pull/32059