Go to the first, previous, next, last section, table of contents.

Other GNU Tools

Since Automake is primarily intended to generate `Makefile.in's for use in GNU programs, it tries hard to interoperate with other GNU tools.

Emacs Lisp

Automake provides some support for Emacs Lisp. The `LISP' primary is used to hold a list of `.el' files. Possible prefixes for this primary are `lisp_' and `noinst_'. Note that if lisp_LISP is defined, then `configure.in' must run AM_PATH_LISPDIR (see section Autoconf macros supplied with Automake).

By default Automake will byte-compile all Emacs Lisp source files using the Emacs found by AM_PATH_LISPDIR. If you wish to avoid byte-compiling, simply define the variable `ELCFILES' to be empty. Byte-compiled Emacs Lisp files are not portable among all versions of Emacs, so it makes sense to turn this off if you expect sites to have more than one version of Emacs installed. Furthermore, many packages don't actually benefit from byte-compilation. Still, we recommand that you leave it enabled by default. It is probably better for sites with strange setups to cope for themselves than to make the installation less nice for everybody else.


If AM_GNU_GETTEXT is seen in `configure.in', then Automake turns on support for GNU gettext, a message catalog system for internationalization (see section `GNU Gettext' in GNU gettext utilities).

The gettext support in Automake requires the addition of two subdirectories to the package, `intl' and `po'. Automake ensure that these directories exist and are mentioned in SUBDIRS.

Furthermore, Automake checks that the definition of `ALL_LINGUAS' in `configure.in' corresponds to all the valid `.po' files, and nothing more.


Automake provides some automatic support for writing Guile modules. Automake will turn on Guile support if the AM_INIT_GUILE_MODULE macro is used in `configure.in'.

Right now Guile support just means that the AM_INIT_GUILE_MODULE macro is understood to mean:

As the Guile module code matures, no doubt the Automake support will grow as well.


Automake provides support for GNU Libtool (see section `The Libtool Manual' in The Libtool Manual) with the `LTLIBRARIES' primary. See section Building a Shared Library.


Automake provides some minimal support for Java compilation with the `JAVA' primary.

Any `.java' files listed in a `_JAVA' variable will be compiled with JAVAC at build time. By default, `.class' files are not included in the distribution.

Currently Automake enforces the restriction that only one `_JAVA' primary can be used in a given `Makefile.am'. The reason for this restriction is that, in general, it isn't possible to know which `.class' files were generated from which `.java' files -- so it would be impossible to know which files to install where.

Go to the first, previous, next, last section, table of contents.