gpsd-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gpsd-dev] cmake: (was: Re: [PATCH]: Link Python extensions with lib


From: Eric S. Raymond
Subject: Re: [gpsd-dev] cmake: (was: Re: [PATCH]: Link Python extensions with libpython - attempt 3)
Date: Wed, 14 Jan 2015 08:56:44 -0500
User-agent: Mutt/1.5.23 (2014-03-12)

Bernd Zeimetz <address@hidden>:
> There is no need to do so unless you are writing your own modules.
> cmake fortunately just works very well. And in the worst case there
> are debug and trace options....

I don't trust them to be powerful enough.  I think the two-level
design is so wrongheaded that that no amount of cleverness can paper
over its problems.  

I am not making this judgment in a vacuum. Cmake is the third attempt
at a build system based on makefile generation I have worked with; the
first two, autotools and Imake, both functioned reasonably well early
in their lifetimes when the builds they covered were low in
complexity, but became huge defect attractors as average build
complexity increased. I expect cmake to go the same way.

> >Overall I'd call cmake a thoughtful implementation of a design concept
> >(build by cleverly generated makefiles) that is fundamentally wrong and
> >should die with autotoools.
> 
> So you think c-preprocessors and similar things should die, too?

Actually, yes.  I applaud the fact that newer languages don't have macros,
or (in the case of some Lisps) have carefully hygienic macros designed
to make problems traceable.

> Even autotools and libtool would work well if you'd know how to use
> libtool to debug built files.

That was not my experience.  Not at all.  I have been using autotools
since its first release decades ago on dozens of projects, but found
it increasingly horrible until I gave up in disgust.  There is no
coherence or core of good design in autotools anywhere, just an
accumulating and increasingly tweetery pile of hacks and kludges.

I give cmake this much: unlike autotools it has a core that is well
designed if you accept the fundamental premise of a two-level system.
But I reject that premise.

> I'm still considering to stop maintaining gpsd because of all the
> "fun" I had with scons. Never ever run into such a big piece of crap
> during the last 19 years of working with open source software.

I do not understand the basis of your animosity. It seems to me that
the serious issues you've had have all been around distutils not being
designed to run from within another build system.  What is your problem
with scons itself?
-- 
                <a href="http://www.catb.org/~esr/";>Eric S. Raymond</a>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]