Autotools

Autotools (or GNU Autotools; also called the GNU Build System) is a collective name for autoconf, automake, and libtool, which together constitute a toolkit used to help create source packages, and compile and install such packages, on a wide variety of Unix-like computer systems.

Autotools is sometimes considered to include additional utilities beyond the "big three" listed above, such as pkg-config or gettext.

Autotools is frequently criticized for being overly complicated and messy. But its flexibility and portability have proven difficult to replicate, so unfortunately there is often no better option available.

Discussion
Autotools uses shell scripting, make, M4, Perl. Most of the Autotools components necessary to build a particular software package from source will be included in that source package; though if the included scripts find a local copy of Autotools, they may decide to use parts of it instead (with consequences that could be good or bad).

Files
Characteristic filenames used by Autotools include the following: aclocal.m4 AUTHORS ChangeLog compile config.h.in config.guess config.sub configure configure.ac COPYING COPYING.LESSER COPYING.LIB depcomp INSTALL install-sh libtool.m4 ltmain.sh lt*.m4 Makefile.am Makefile.in missing NEWS README TODO

Related formats

 * Bourne shell script
 * M4
 * Makefile
 * Perl

Links

 * Autoconf
 * Automake
 * GNU Libtool
 * GNU Build System
 * Autoconf
 * Automake
 * GNU Libtool
 * Autotools Mythbuster

Commentary and criticism

 * Stop the autoconf insanity! Why we need a new build system.
 * Autotools must die (Eric Raymond blog post)
 * The GNU Configure and Build System (Ian Lance Taylor blog post)
 * Did you call them autocrap tools? (from archive.org)
 * Yes we still needs autotools