[LLVMdev] [cfe-dev] RFC: Upcoming Build System Changes
daniel at zuster.org
Fri Oct 28 10:59:36 PDT 2011
On Fri, Oct 28, 2011 at 10:50 AM, Jeffrey Yasskin <jyasskin at google.com> wrote:
> On Fri, Oct 28, 2011 at 10:25 AM, Daniel Dunbar <daniel at zuster.org> wrote:
>> * I don't think CMake is good enough. I agree it solves problems, but
>> I want to use great tools, not ones that work. In particular:
>> (c) This doesn't solve any other nice problems:
>> (i) It doesn't make it easier to play with other build
>> systems (like Ninja, or gyp).
> Speaking of ninja and gyp, gyp is actually a build system generator
> like what you're proposing, while ninja is a replacement `make`
> intended for use with build system generators. What are the reasons
> you want to write a new generator rather than using gyp?
Writing gyp files directly still doesn't solve the "explicitly
specifying the LLVM domain specific component organization problem".
Gyp is written in Python, and while I haven't looked at the code, I
imagine it could be tied in tightly (i.e., programmatically) if that
proved interesting -- that would give us all the features of gyp with
a concise LLVM specific component description syntax.
> I believe someone's now written a ninja backend for cmake, although
> I'm not sure where they put it, so cmake might actually provide an
> easier way to play with ninja than your new system. Similarly, cmake's
> xcode generator is nominally open source
> How come there's no interest in improving it?
I don't generally believe it is tractable to generate great project
files for a specific project from a generic configuration language.
> Not that I really want to defend cmake. I hate its language as much as anyone.
More information about the llvm-dev