automake: Introduction
1
1 1 Introduction
1 **************
1
1 Automake is a tool for automatically generating ‘Makefile.in’s from
1 files called ‘Makefile.am’. Each ‘Makefile.am’ is basically a series of
1 ‘make’ variable definitions(1), with rules being thrown in occasionally.
1 The generated ‘Makefile.in’s are compliant with the GNU Makefile
1 standards.
1
11 The GNU Makefile Standards Document (⇒(standards)Makefile
Conventions) is long, complicated, and subject to change. The goal of
1 Automake is to remove the burden of Makefile maintenance from the back
1 of the individual GNU maintainer (and put it on the back of the Automake
1 maintainers).
1
1 The typical Automake input file is simply a series of variable
1 definitions. Each such file is processed to create a ‘Makefile.in’.
1
1 Automake does constrain a project in certain ways; for instance, it
11 assumes that the project uses Autoconf (⇒Introduction
(autoconf)Top.), and enforces certain restrictions on the ‘configure.ac’
1 contents.
1
1 Automake requires ‘perl’ in order to generate the ‘Makefile.in’s.
1 However, the distributions created by Automake are fully GNU
1 standards-compliant, and do not require ‘perl’ in order to be built.
1
1 For more information on bug reports, ⇒Reporting Bugs.
1
1 ---------- Footnotes ----------
1
1 (1) These variables are also called “make macros” in Make
1 terminology, however in this manual we reserve the term “macro” for
1 Autoconf’s macros.
1