Libtool / autoconf is evil

Aaron Turner synfinatic at gmail.com
Mon May 3 19:15:27 CEST 2010


On Mon, May 3, 2010 at 8:10 AM, Alan DeKok <aland at deployingradius.com> wrote:
> Aaron Turner wrote:
>> FWIW, I've been migrating my project (tcpreplay) from Auto* to Cmake.
>> It's a huge win if you're targeting Win32 (which I know freeradius
>> isn't), but I've been pretty happy with it under various flavors of
>> UNIX as well.  Syntax is sane, it's well maintained and good active
>> community.
>
>  Hmm.. it's also C++ (ugh), and about 300K LoC.  But yes, it works, and
> lots of people use it.

I've never felt the need to hack on Cmake or Autotools so the size or
language choice wasn't a factor.

>  One of my requirements is that *normal* people can do builds with a
> standard Unix SH and Make.  That means the build system should generate
> old-style Makefiles.  I also think that the build system *itself* should
> never be installed.  That way lies madness.

It is annoying you need Cmake install to do a build, but I figure 95%
of my users are installing pre-built packages and the other 5% are
advanced enough to figure it out.  20 years ago when everyone was
building everything from source rather then installing binary
packages, it would of been a deal breaker for me too, but things have
changed sufficiently that I'm willing to accept it.

>  I've had too many problems over the years with a project using a
> "wonderful" build system... that requires me to download it and 40
> dependencies... then the *latest* version of the build system isn't
> compatible with the project, so I have to find an old version of the
> build system...
>
>  autoconf, et. al. are horrible, but they satisfy my requirements, and
> they don't have the problems noted above (except for libtool and
> libltldl, wich should *die*)

Honestly, if Auto* does what you need, then it's probably not worth
moving to another system.  I can't say I was "happy" with
autoconf/automake but it worked and when I got bug reports from users
I was able to fix them without too much effort.

As I said, the reason I moved to Cmake was I wanted a unified build
system for my Win32 port and Cmake allows me to generate standard
Makefile's, and XCode/MSVC++ project files. If it wasn't for that, I'd
still be using Auto* even though I find it impossible to master
regardless of effort- I always felt like I'm just getting by and
there's gotta be a better way of doing things, but I never can figure
it out.


-- 
Aaron Turner
http://synfin.net/         Twitter: @synfinatic
http://tcpreplay.synfin.net/ - Pcap editing and replay tools for Unix & Windows
Those who would give up essential Liberty, to purchase a little temporary
Safety, deserve neither Liberty nor Safety.
    -- Benjamin Franklin
"carpe diem quam minimum credula postero"




More information about the Freeradius-Users mailing list