[cfe-dev] [LLVMdev] RFC: Upcoming Build System Changes

David A. Greene greened at obbligato.org
Tue Nov 1 15:23:02 PDT 2011


Nico Weber <thakis at chromium.org> writes:

> On Tue, Nov 1, 2011 at 3:09 PM, David A. Greene <greened at obbligato.org> wrote:
>> Óscar Fuentes <ofv at wanadoo.es> writes:
>>
>>> Okay, we can get rid of recursive make. However, as pointed out
>>> elsewhere, removing recursive make will not make a difference on the
>>> LLVM build. What David Greene says probably is related to difference
>>> sizes among his compiler and LLVM.
>
> I doubt that's true: Chromium's empty build is faster than llvm's
> (only tried the make build, not the cmake build), and chromium's code
> base is considerably larger.

Here's the dirty little secret.  At Cray we incorporated LLVM into our
build system.  We don't use the autoconf+make stuff at all for our
compiler build.  We do use the "official" LLVM way to build the LLVM
tree so we can use the tools (opt, llc, etc.).

And guess what?  A non-recursive build of all the Cray components (and
it's a huge source base, at least as large as LLVM and probably larger)
+ most of LLVM (we don't build all targets) is much faster than a build
of just the LLVM tree using the "official" recursive make way.  I
believe that to be true both for an empty build AND a full rebuild,
though I would have to gather hard data to be sure about the latter.

Autoconf is another matter.  Autoconf is horribly slow.  But we are not
getting rid of autoconf, unfortunately.  :)

                              -Dave




More information about the cfe-dev mailing list