- http://www.idryman.org/blog/2016/03/10/autoconf-tutorial-1/
- http://www.gnu.org/s/autoconf/manual/autoconf.html
Those who do not understand Autoconf are condemned to reinvent it, poorly.
I doubt that…
# notes on autoconf: fuck my life!
(copied from GNU documents)
Files used in preparing a software package for distribution, when using just Autoconf:
{your source files} --> [autoscan*] --> [configure.scan] --> configure.ac
configure.ac --.
| .------> autoconf* -----> configure
[aclocal.m4] --+---+
| `-----> [autoheader*] --> [config.h.in]
[acsite.m4] ---'
Additionally, if you use Automake, the following additional productions come into play:
[acinclude.m4] --.
|
[local macros] --+--> aclocal* --> aclocal.m4
|
configure.ac ----'
configure.ac --.
+--> automake* --> Makefile.in
Makefile.am ---'
Files used in configuring a software package:
.-------------> [config.cache]
configure* ------------+-------------> config.log
|
[config.h.in] -. v .-> [config.h] -.
+--> config.status* -+ +--> make*
Makefile.in ---' `-> Makefile ---'
autoconf creates configure
script, which produces
Makefile
(s), ususally one in each subdirectory of package- (optionally) a C header file, containing
#define
directives config.status
script: which recreates files aboveconfig.log
for debugging
# GNU’s build (fuck-you) system
- autoconf : produces
configure
script - automake
- libtool : handles requirements for building shared libraries
- gnulib : grabbing files fro mgnulib into own source tree.
# libtool
# License (same as GNU’s):
This manual (4 December 2023) is for GNU Autoconf (version 2.72), a package for
creating scripts to configure source code packages using templates and an M4
macro package.
Copyright © 1992–1996, 1998–2017, 2020–2023 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document under
the terms of the GNU Free Documentation License, Version 1.3 or any later
version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover texts, and no Back-Cover Texts. A copy of the
license is included in the section entitled “GNU Free Documentation License.”