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 ;)
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.