[openbeos] [ANN] Jam Updated
- From: "Ingo Weinhold" <bonefish@xxxxxxxxxxxxxxx>
- To: "OBOS" <openbeos@xxxxxxxxxxxxx>
- Date: Wed, 20 Nov 2002 01:46:09 CET (+0100)
Hi,
I commited some changes to our modified jam (current/src/tools/jam),
intended to reduce the build time overhead caused by jam. Here they
are:
* As you certainly know, jam has the nice feature to automatically scan
source files for included files (recursively) in order to be able to
recompile a file, also when only one of the files it includes has been
modified. I imported some code by Matt Armstrong that introduces a
cache for the dependencies found by header scanning. This speeds up the
process significantly.
* I implemented a cache for the Jamfiles (BTW, almost 300 in our build
system). On my machine I win a few seconds.
* I removed an superfluous statement in jam's code for execution of
rules under on a target. Some more seconds...
Concrete numbers: When running jam on my machine on an already up to
date tree, the old version needs ca. 70 seconds to find out, that
nothing has to be done, the new one needs only about 35 seconds once
the caches have been build. When supplying an invalid target (so that
jam does not even need to do header scanning) the time drops from ca.
20 to 10 seconds (the measured times heavily depend on what the file
system has cached though).
Note: Run a `cvs up' on your tree -- Jamrules has been modified and the
cache files are stored in the newly created directory current/build.
That's also where the file BuildConfig is expected to reside now --
move your old BuildConfig or re-run ./configure.
Have fun.
CU, Ingo
Other related posts:
- » [openbeos] [ANN] Jam Updated