[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Premake vs. CMake
- From: "Brandon Van Every" <bvanevery@...>
- Date: Sat, 2 Feb 2008 20:30:06 -0500
On Feb 2, 2008 7:57 PM, Thiago Bastos <tabastos@gmail.com> wrote:
> 2008/2/2, Brandon Van Every <bvanevery@gmail.com>:
>
> > > I don't have much experience with CMake or Premake, but my first
> impressions
> > > are that CMake's script is ugly as hell.
> >
> > Meaning what, you don't like capital letters?
> > You don't like some_command(whatever blah blah blah) ?
> > You don't like typing set(foo blah) instead of foo=blah ?
>
> All the above arguments plus many others? :-)
I guess I'd be interested in the "many others" then. I don't think
minor issues of syntax are a compelling reason to write a new tool.
> > Ok, what's the biggest build system you've worked on to date? And,
> > what would your business model be?
>
> Well, I've setup a couple of cross-platform continuous-integration systems
> for C++ projects. With automated testing, doc generation, installer
> generation, etc. And I've had to develop a couple of custom SCons extensions
> to handle things such as automatic dependency fetching (since this project
> has lots of dependencies that must be automatically deployed to the CI build
> servers whenever they're updated). This build system is reasonably complex,
> although the project cannot be considered "large". The number of lines or
> components in a project are not the only source of complexity for a build
> system. It's much easier to build a project with 1M lines of pure ANSI-C
> than a medium-sized project with tons of dependencies and tricky
> requirements.
Ok, you're technically competent. What would your business model be?
> > The world isn't interested in the
> > work of a few Lua guys who blow off the development and support when
> > it's no longer amusing. Critical mass of community and "who's gonna
> > do the gruntwork" are important long term issues.
>
> Keeping a simple build system in a language familiar to all the developers
> is probably cheaper than having everyone learn CMake
My opinion is, if we actually coughed out some decent basic docs on
the core syntax, we could prove that people are just whining. The
actual sticky spots are semicolons in lists, and escapes. Otherwise,
CMake is a some_call(blah blah blah blah) language, there isn't
anything else to learn.
> (or worse, SCons/Python, which is much more complex).
I don't know about SCons, but Python is deemed simple, and it is far
more popular than Lua. Python's license is good, unlike Ruby. Python
is bigger, slower, and not as easy to embed as Lua. Python considers
whitespace to be significant; I don't know if I'd want to impose that
idea on a build system.
> If I was to develop such a tool, it would not be to please the world
> either, but rather myself and maybe others with similar needs, capisce?
That's not a business model.
> I know, I considered CMake before adopting SCons. But it looked like I could
> not adapt CMake to my needs as much as I could do with SCons.
Did you ask on the CMake mailing list about it?
> As far as I can see, CMake cannot easily replace SCons in
> our case.
What's so special about what you've done with SCons?
Cheers,
Brandon Van Every