rebuilt 1 .cxx, linked 184 libraries

Michael Stahl mstahl at redhat.com
Mon Apr 8 04:04:26 PDT 2013


On 05/04/13 16:29, Lubos Lunak wrote:
> On Thursday 04 of April 2013, Michael Stahl wrote:
>> On 04/04/13 20:47, Bjoern Michaelsen wrote:

>>> This would make library a being rebuild only if one of the 'public',
>>> delivered headers of library b changed but not otherwise. And it would
>>> make sure, that if both library a and b need to be rebuild, a will always
>>> be rebuild after b.
>>
>> but it has the significant problem that you can remove implementations
>> of the public API of library a without noticing it (which you would when
>> library b fails to link), thus making incremental builds unsound.
> 
>  Significant? That scenario is already broken on its own. If a library changes 
> its API, that means its headers need to change as well, thus the dependent 
> library will eventually need to be relinked. If that's not the case, the 
> change itself is broken.

of course.  that's why your build should break if you do that.

>  Moreover, this scenario is nowadays still somewhat likely, if one rebuild 
> just a specific module, instead running toplevel make - how many of us do 
> that after each change? I for sure don't, and won't as long as it takes that 
> much time it takes.

hopefully it should take quite a bit less time with
https://gerrit.libreoffice.org/#/c/3272/ and still run all unit tests ;)




More information about the LibreOffice mailing list