[coreboot] [PATCH]ccache aware romcc

Patrick Georgi patrick at georgi-clan.de
Thu Mar 25 18:02:25 CET 2010


most of the tree was already ccache aware, with one exception: romcc.
This hurt, as on the non-CAR boards, this is a large non-parallelizable
part of the total build time.

This patch changes romcc to:
- accept -c and -S (and ignores them as that's already the only mode it
- send -E output (preprocessor only) to stdout except if a filename is
given (by testing if it's set to the current default of auto.inc)

With these, ccache3.0pre0 (the version I tried) is capable of cache
romcc output.

The Makefile changes in this patch make use of that, if "ccache" is
found in $PATH (necessary as we use various paths for our romcc), and
runs ccache $(obj)/romcc, using the "content" compiler version
verification (which hashes the compiler executable) for romcc.

Thus when romcc is changed, ccache doesn't use cached files but requests
new builds.

On my test system, abuild of a romcc board (thomson/ip1000) goes down
from 9 to 3 seconds when using 4 parallel build jobs.

Signed-off-by: Patrick Georgi <patrick.georgi at coresystems.de>

More information about the coreboot mailing list