[Top][All Lists]

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

Re: speeding up GNU make for LibreOffice by factor ~2 (and dependency fi

From: Daniel Herring
Subject: Re: speeding up GNU make for LibreOffice by factor ~2 (and dependency file parsing by factor ~10)
Date: Fri, 21 Feb 2014 09:04:15 -0500
User-agent: Alpine 2.02 (LRH 1266 2009-07-14)

On Wed, 19 Feb 2014, Bjoern Michaelsen wrote:

It introduces a new "includedepcache" keyword. The first time GNU make runs
past it, it works just like a normal include, except that it tracks the
dependency relations described in the included file and writes them in a
simplified and better to parse format into the file ${includefile}.cache.

The second time GNU make comes past the includedepcache statement, it checks
for the ${includefile}.cache file, and if it is younger than ${includefile},
and if so, it reads that file instead of the ${includefile}.

Here's my summary interpretation of your email.

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.

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.


Is your "includedepcache" keyword intended for such dependency files, or are there other uses cases in mind as well?


reply via email to

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