On 23/10/2018 15:32, Daniel Silverstone via BuildStream-list wrote:
>
> [Track file dependencies][56] filed by Sander Striker on July 31st 2017 talks
> about attempting to optimise away execution of build steps if we can determine
> that all the inputs which *matter* to the step can be shown to be identical.
Has anyone considered using ccache here? We could minimize the overhead
of cache misses by disabling ccache if there isn't any old artifact in
the CAS for the element being built.
ccache would apply at a different layer. I actually consider recc a better path in that
respect, since the results can be shared.
What #56 is about is avoiding the building of reverse dependencies if none of the files the reverse dependencies depend on were actually changed. For example, libB.bst has a build dependency on libA.bst. During the build of libB.bst only libA_foo.h is used.
Now we track libA.bst, and build all. BuildStream will determine that we need to rebuild libA.bst, and libB.bst (as its dependency will change). Now, after building libA.bst, and prior to building libB.bst, we verify whether any of the actual inputs to libB.bst have actually changed. If the answer is no, then we do not need to rebuild
libB.bst, we can re-use the artifact.
[...]
Regards,
Tiago
Cheers,
Sander
_______________________________________________
BuildStream-list mailing list
BuildStream-list gnome org
https://mail.gnome.org/mailman/listinfo/buildstream-list