According to https://ccache.dev/platform-compiler-language-support.html there is growing support for Windows in ccache. It may be spotty for Visual Studio compilers, but I guess should be better for clang and gcc (BTW also not listed in https://docs.travis-ci.com/user/reference/windows/ as available in the worker).
There are both official builds at https://ccache.dev/download.html and Chocolatey packages at https://chocolatey.org/packages/ccache
This should probably cover also automated caching back of the object files, with CCACHE_DIR preferably also resolving to “$HOME/.ccache” as it defaults on Linux/Unix systems.
Overall, sounds exciting to have more test targets available from the common ecosystem! Thanks!
So is this a request to simply include the ccache
Chocolatey package in the Windows image, or to have a plugin/add-on that will (in addition to instaling ccache
) implicitly configure the build cache settings?
Another good option for a ccache-like tool on Windows is https://github.com/mozilla/sccache which works with MSVC as well as gcc/clang.
I would prefer to keep things simple (for FOSS projects that already know how to use ccache when it is available - e.g. when there is no symlink named same as the chosen compiler, which happens a lot when picking non-default versions, rather than introducing another tool that sources would have to add support for).
I am not sure what the “implicit configuration” encompasses? Is it the creation of a %HOME%/.ccache
directory and an optional config file there? Automatic entry for stashing the cache between builds? Or something more complicated?
I suppose for starters, including the package in Windows image would suffice; so at least projects that know how to choose the compiler they want, wrapped or not by ccache, can do so out of the box.
Thanks,
Jim