[OpenWrt-Devel] [PATCH] build: improve ccache support

Felix Fietkau nbd at nbd.name
Mon Jun 1 14:22:43 EDT 2020

On 2020-06-01 19:11, Michael Jones wrote:
> On Mon, Jun 1, 2020 at 10:33 AM Roman Yeryomin <roman at advem.lv
> <mailto:roman at advem.lv>> wrote:
>     Set CCACHE_DIR to $(TOPDIR)/.ccache and CCACHE_BASEDIR to $(TOPDIR).
>     This allows to do clean and dirclean. Cache hit rate for test build
>     after dirclean is ~65%.
>     If CCACHE is enabled stats are printed out at the end of building
>     process.
>     Signed-off-by: Roman Yeryomin <roman at advem.lv <mailto:roman at advem.lv>>
> This certainly looks like an improvement.
> However, there is an important usage case that this change doesn't address.
> Frequently when I am working on OpenWRT related things, I have many
> different workspaces all tied to the same git repository hosted
> externally. The reason for this is to allow multiple builds to live and
> run independently.
> Having the CCACHE_DIR be located *inside* the repository doesn't share
> the cache between multiple workspaces.
> So can the CCACHE_DIR be made configurable at build time based on the
> .config file? Perhaps it can default to this, and only be set to the
> value in .config if provided? For my purposes, I would always set the
> CCACHE_DIR to a path that all of my workspaces use.
I don't think there's a need for that config option. You could simply
add a .ccache symlink in your source dir and point it to your shared
cache. I do the same with dl on my trees.

- Felix

openwrt-devel mailing list
openwrt-devel at lists.openwrt.org

More information about the openwrt-devel mailing list