Re: Dual cache key calculation and build planning modes
- From: Jürg Billeter <j bitron ch>
- To: Tristan Van Berkom <tristan vanberkom codethink co uk>, buildstream-list gnome org
- Subject: Re: Dual cache key calculation and build planning modes
- Date: Thu, 06 Jul 2017 14:45:40 +0200
Hi Tristan,
On Thu, 2017-07-06 at 18:55 +0900, Tristan Van Berkom wrote:
After thinking on this further, I wonder if we're blowing this out of
proportion with regards to worries about how unstable or unpredictable
this can be.
Yes, you're probably right. A non-default build planning mode with
weaker predictability should be acceptable for the use cases developer
testing and GNOME Continuous, at least in the GNOME ecosystem with
mostly stable libraries.
As far as I can see, here are some cases where I anticipate some
breakage:
o When building a C library which does not trigger it's reverse
dependencies to rebuild (but is still the exact desired build plan
according to the project), it can be that the C library I am
rebuilding has changed some macros and expects things to be
recompiled.
If this does not happen, then in any case the C linking interface
should normally remain the same, so either:
A.) A strong build plan would also fail anyway
B.) Its failing purely because of a macro expansion changes
There are additional problematic cases for C libraries. E.g., an
API+ABI break that would cause the application build to fail may result
in silent misbehavior in the worst case. An API+ABI break may be
accidental but it may also be intentional between development
releases.
Similar to macros, changes in inline functions (and static libraries)
would also be missed but that's less likely to be an issue in GNOME.
Cheers,
Jürg
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]