Quote:Original post by markr
Personally, I consider autotools crap and obsolete.
Basically, I run ./configure and see something like
Checking if your compiler works ... yes...
WHY do I care? If my compiler doesn't work, I'll find out soon enough.
Because that is, of course, the
only message you see. That's all configure does, check to see that your compiler works.
It doesn't check to see what libraries you have installed, and it isn't able to switch between prefered versions if equivalents exist.
It can't check if particular header files exist and prevent them being included if they don't exist. After all,
everyone that uses Linux has libxxx installed, so it's fine if you just assume that it's there.
Quote:
Autoconf is a really bad kludgy solution to a problem which doesn't exist any more (i.e. how to make code which builds on a zillion unix flavours).
Phew. Portability problems have been completely resolved. Looks like there was a silver bullet, after all.
Quote:
I don't care if my code doesn't build on Irix, Xenix, Flibbleix, SCO Unix (in fact, I'd prefer it if I didn't), or even Solaris.
And because you don't care about it, nobody else should. Right on!
Quote:
If I'm coding for Linux, I'll assume that people are using Linux. I'll write a Makefile which makes assumptions about every library.
That's certainly the way to write a widely used program. Yes sir. Don't be put off by fact that not even all Linux systems are the same and your program won't work on more esoteric distributions.
Quote:
If I find that I need to build it on several platforms, I'll write one Makefile for each, including the common bits.
That's a
really good idea. After all, there are only a handful of platforms, so it's reasonable to maintain seperate Makefiles for each. And, of course the "platform" is the correct quantum of portability: if a program can be compiled on one Linux, it can be compiled on
all Linuxes, since every installation of every Linux distro is exactly the same.
Quote:
Other issues will be solved as they go. Autotools is way too complicated and sucky.
You're right!
The autotools pointlessly make it easier to write programs that can be compiled on almost any *NIX system, even systems which the original programmer didn't know existed.
They also pointlessly have support for standardised options for make targets, compilation options and installation directories. Those certainly don't help an administrator who needs to install hundreds of packages with particular features enabled into a site-specific filesystem layout.
You are
correct to assume that because you don't personally find autotools useful, nobody else possibly could.
Just in case it isn't clear.
THAT WAS IRONY.