Dear all,

It is now clear that scons can cut down overall building time by 1/3
or even 1/2, but a trivial null build will take from 24s to 4m.

This is because scons is an 'overall' build process. It gathers all
file information (checking contents rather than time stamp) and decide
what to do. Autotools' recursive-make approach only cares about
current and sub directories, and is faster in this regard. (BTW, use
scons -u to build only a subdirectory).

I am too new to scons to give a full solution here. Here are some of
my opinions:

1. The check content (md5) approach is better than autotools since
time stamp can be easily changed and may trigger unnecessary rebuilds.
Using scons should reduce the chance of such a waste of time. Note
that one can let scons check time stamp, this should reduce starting
time a bit.

2. Currently, I use the default settings of scons (like copying files
to build directory) to ganrantee correct build. I will try to change
to non-copy if things go well.

3. Waf is a KDE variant of scons. It is a product of insufficient
communication between KDE and scons developers. I personally hate such
branched projects since they make users (us) difficult to choose (like
emacs/xemacs) and may lead to wasted efforts (like klyx?) Waf aims to
fix many concerns of scons, one of which is the starting time. I will
give waf a try later.

I will also ask the scons-user list for an opinion.

Cheers,
Bo

Reply via email to