[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

7. Introducing GNU Automake

The primary goal of Automake is to generate ‘Makefile.in’s compliant with the GNU Makefile Standards. Along the way, it tries to remove boilerplate and drudgery. It also helps the ‘Makefile’ writer by implementing features (for instance automatic dependency tracking and parallel make support) that most maintainers don’t have the patience to implement by hand. It also implements some best practices as well as workarounds for vendor make bugs – both of which require arcane knowledge not generally available.

A secondary goal for Automake is that it work well with other free software, and, specifically, GNU tools. For example, Automake has support for Dejagnu-based test suites.

Chances are that you don’t care about the GNU Coding Standards. That’s okay. You’ll still appreciate the convenience that Automake provides, and you’ll find that the GNU standards compliance feature, for the most part, assists rather than impedes.

Automake helps the maintainer with five large tasks, and countless minor ones. The basic functional areas are:

  1. Build
  2. Check
  3. Clean
  4. Install and uninstall
  5. Distribution

We cover the first three items in this chapter, and the others in later chapters. Before we get into the details, let’s talk a bit about some general principles of Automake.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]

This document was generated by Ben Elliston on July 10, 2015 using texi2html 1.82.