git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Autoconf/Automake

From
OGOlivier Galibert <galibert@pobox.com>
Date
Jun 15, 2006, 17:48 UTC
Message-ID
<20060615174833.GA32247@dspnet.fr.eu.org>
In-Reply-To
<Pine.LNX.4.64.0606150954430.5498@g5.osdl.org>
On Thu, Jun 15, 2006 at 10:02:10AM -0700, Linus Torvalds wrote:
> These days, there aren't fifteen different versions of UNIX. There's a 
> couple, and it's perfectly ok to actually say "fix your damn system and 
> just install GNU make". It's easier to install GNU make than it is to 
> install autoconf/automake.

You should be careful to separate autoconf and automake. Autoconf is not so bad, and you can make clean, maintainable Makefile.in and config.h.in files with it, because it uses simple substitution. It is quite useful to detect available librairies when some are optional, and also to lightly[1] ensure that prefix and friends will stay the same between make and make install. Also, especially if you hack a little bit to alias 'enable' and 'with', you get a sane interface to optional feature selection. Oh, and to seperate compilation directories too (vpath generation).

OTOH, automake is a BDSM session gone bad. The makefiles it generates are atrocious and outdated, even buggy on some lesser makes, which is quite annoying when what you try to build is gnu make.

The worst of the lot is libtool, though. That one explicitely tries to make your experience as painful as possible. Including, but not limited to, hiding the files in dot-directories so that you try to run gdb on a script, relinking at install time, silently removing flags you want to pass to ld or the compiler because it thinks it knows better, locking C++ shared libraries to the exact compiler version that compiled them through the .la file crap, etc.

So, autoconf can be useful.  The rest should die.
  OG.
[1] As in, you can still override when running make, but if you don't
    override anything you'll get the value you passed to configure every
    time.
Previous: Linus TorvaldsNext: Jakub Narebski
Message 9 of 26 in “Autoconf/Automake”
  1. Pavel RoskinJun 14, 2006
  2. Linus TorvaldsJun 14, 2006
  3. Bertrand JacquinJun 14, 2006
  4. Timo HirvonenJun 14, 2006
  5. Yann DirsonJun 15, 2006
  6. Alex RiesenJun 15, 2006
  7. Yann DirsonJun 15, 2006
  8. Linus TorvaldsJun 15, 2006
  9. Olivier GalibertJun 15, 2006
  10. Jakub NarebskiJun 15, 2006
  11. Olivier GalibertJun 15, 2006
  12. Petr BaudisJun 16, 2006
  13. Jerome LovyJun 16, 2006
  14. Yakov LernerJun 15, 2006
  15. Yann DirsonJun 15, 2006
  16. Linus TorvaldsJun 15, 2006
  17. Johannes SchindelinJun 15, 2006
  18. Nikolai WeibullJun 16, 2006
  19. Phil RichardsJun 15, 2006
  20. Timo HirvonenJun 15, 2006
  21. Johannes SchindelinJun 15, 2006
  22. Yann DirsonJun 15, 2006
  23. Johannes SchindelinJun 15, 2006
  24. Yann DirsonJun 16, 2006
  25. Petr BaudisJun 16, 2006
  26. Petr BaudisJun 16, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.