bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bug-make Digest, Vol 135, Issue 17


From: Bjoern Michaelsen
Subject: Re: Bug-make Digest, Vol 135, Issue 17
Date: Mon, 24 Feb 2014 19:00:58 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

Hi Daniel,

On Fri, Feb 21, 2014 at 12:00:49PM -0500, address@hidden wrote:
> LibreOffice uses some form of automatic dependency tracking. You profiled 
> the build and realized that a large fraction of (re)build time was spent 
> while make parsed these dependencies. Thus you developed an efficient 
> binary format that could be used instead of the traditional text files.

Thats about right.

> Here is my question.
> 
> Tools like Automake support automatic dependency tracking.  The main 
> makefile includes one dependency file per target.  The deps are 
> initialized to the empty list, and updated each time the compiler runs.
> 
> http://www.gnu.org/software/automake/manual/html_node/Dependencies.html
> 
> Is your "includedepcache" keyword intended for such dependency files, or 
> are there other uses cases in mind as well?

Yes, in general that is the use case it is intended for. As noted in the other
mail to fully profit from the depcache optimization autotools would likely
first get some prerequisites sorted out:
- not using recursive make[1]
- concating multiple deps files to larger units -- either per link target
  (library, executable) as LibreOffice does, or, matching automakes philosophy
  per directory. Then again, the "per directory" thing is mostly a mood point,
  if automake gets rid of recursion anyway.

HTH,

Bjoern
 
[1] http://aegis.sourceforge.net/auug97.pdf

--
Bjoern Michaelsen
Member, Board of Directors
Key fingerprint = C8BE 3F1F 92CB 2646 17FE  361D DCD9 C191 E48D BF5F
The Document Foundation, Kurfürstendamm 188, 10707 Berlin
Gemeinnützige rechtsfähige Stiftung des bürgerlichen Rechts
Legal details: http://www.documentfoundation.org/imprint



reply via email to

[Prev in Thread] Current Thread [Next in Thread]