rebuilt 1 .cxx, linked 184 libraries

Michael Stahl mstahl at redhat.com
Thu Apr 4 13:04:24 PDT 2013


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.




More information about the LibreOffice mailing list