[llvm-commits] [llvm] r86955 - in /llvm/trunk: Makefile.config.in autoconf/configure.ac configure include/llvm/Config/config.h.in

Óscar Fuentes ofv at wanadoo.es
Thu Nov 12 10:33:56 PST 2009


Óscar Fuentes <ofv at wanadoo.es> writes:

> Rafael Espindola <espindola at google.com>
> writes:
>
>> I did 1 or 2 builds with cmake and the build time looks similar. cmake
>> itself is much faster than configure.
>>
>> I do care about the generated Makefiles because recursive makes are
>> slow in the case only one file has changed. It should be possible to
>> convert the current build to use non recursive makes, but I have no
>> idea if cmake supports that.
>
> Hmmm...
>
> touch ../head/tools/opt.cpp
>
> time make -j4   (on the toplevel build directory)
>
> For cmake: 3.9 seconds
> For configure: 4.8 seconds

Of course the hand-made makefiles LLVM uses are recursive too, but I
think that 4 seconds for checking the dependencies of all those targets
*and* building opt is pretty fast :-)

When make is invoked with all targets updated (i.e. nothing needs a
rebuild) the cmake makefiles are consintly faster than the LLVM ones
(2.2 seconds vs 1.4 seconds,  make -j4)

This may be the cause of the specific way the LLVM makefiles are
written, and possibly non-recursive makefiles could be even faster, but
we are pretty fast now. And who would write and maintain those
non-recursive makefiles? :-)

So recursive makefiles is no argument against cmake right now, IMO.

-- 
Óscar




More information about the llvm-commits mailing list