Next: , Previous: General Operation, Up: Generalities

3.2 Strictness

While Automake is intended to be used by maintainers of GNU packages, it does make some effort to accommodate those who wish to use it, but do not want to use all the GNU conventions.

To this end, Automake supports three levels of strictness—the strictness indicating how stringently Automake should check standards conformance.

The valid strictness levels are:

Automake will check for only those things that are absolutely required for proper operations. For instance, whereas GNU standards dictate the existence of a NEWS file, it will not be required in this mode. This strictness will also turn off some warnings by default (among them, portability warnings). The name comes from the fact that Automake is intended to be used for GNU programs; these relaxed rules are not the standard mode of operation.
Automake will check—as much as possible—for compliance to the GNU standards for packages. This is the default.
Automake will check for compliance to the as-yet-unwritten Gnits standards. These are based on the GNU standards, but are even more detailed. Unless you are a Gnits standards contributor, it is recommended that you avoid this option until such time as the Gnits standard is actually published (which may never happen).

See Gnits, for more information on the precise implications of the strictness level.

Automake also has a special (and today deprecated) “cygnus” mode that is similar to strictness but handled differently. This mode is useful for packages that are put into a “Cygnus” style tree (e.g., older versions of the GCC and gdb trees). See Cygnus, for more information on this mode. Please note that this mode is deprecated and will be removed in the next major Automake release (1.13); you must avoid its use in new packages, and should stop using it in existing packages as well.