Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


On 04/04/13 20:47, Bjoern Michaelsen wrote:
Hi,

On Thu, Apr 04, 2013 at 02:11:35PM -0400, Terrence Enger wrote:
I just changed vcl/source/window/builder.cxx and did top-level make.
The make had 184 [build LNK] steps.  Is this to be expected?

We could evade that with build order only deps (signified :|, see
http://www.gnu.org/software/make/manual/html_node/Prerequisite-Types.html ) and
with (simplified):

 $(call gb_Library_get_target,a) :| $(call gb_Library_get_target,b)
 $(call gb_Library_get_target,a) : $(call gb_Library_get_headers_target,b)
 $(call gb_Library_get_target,b) : some object from lib b : some cxx from lib b

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.



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.