opendocument-app / conan-odr-index

1 stars 1 forks source link

Implement ccache in CI #4

Open ViliusSutkus89 opened 2 weeks ago

ViliusSutkus89 commented 2 weeks ago

Currently we do have ccache installed in CI, but I've noticed it is not being used image

If we split have different ccaches for each package/version/min SDK, all the ccache will definitely not fit inside the allowed GitHub actions cache size.

I suggest we do another manually dispatched workflow - ccache-writer, which iterates over every package, every version and builds for every ABI and every min SDK. This way there's only one cache and all the regular builds are just only readers. Different package versions usually share a lot of the same code. Different min SDK uses different compiler wrapper, but it's worth trying.

ccache-writer could only be implemented once ccache is enabled for our builds. Haven't spent the time to figure out how to yet.

andiwand commented 1 week ago

I didn't find any examples on how to use ccache with conan. Potentially it is as easy as how you specified the compilers manually and add ccache in front. I think that is definitely worth trying as it provides a more low level cache which might even hit if significant parts of the software changed

ViliusSutkus89 commented 1 week ago

If we add ccache compiler the same way we're setting up CC/CXX for Autotools, we are never getting rid of those ugly block in profiles 😂

andiwand commented 1 week ago

Yeah that might not be great but I don't see a way around this. I don't think conan has some kind of ccache support