Go to the first, previous, next, last section, table of contents.
Since Automake is primarily intended to generate `Makefile.in's for use in GNU programs, it tries hard to interoperate with other GNU tools.
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 recommend 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
insures that these directories exist and are mentioned in
SUBDIRS
.
Automake provides support for GNU Libtool (see section `Introduction' 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. For instance, a `.java' file can define multiple classes; the resulting `.class' file names cannot be predicted without parsing the `.java' file.
There are a few variables which are used when compiling Java sources:
JAVAC
JAVACFLAGS
AM_JAVACFLAGS
JAVACFLAGS
, should be used when it is necessary to put Java
compiler flags into `Makefile.am'.
JAVAROOT
javac
. It defaults to `$(top_builddir)'.
CLASSPATH_ENV
sh
expression which is used to set the
CLASSPATH
environment variable on the javac
command line.
(In the future we will probably handle class path setting differently.)
Automake provides support for Python modules. Automake will turn on
Python support if the AM_PATH_PYTHON
macro is used in
`configure.in'. The `PYTHON' primary is used to hold a list
of `.py' files. Possible prefixes for this primary are
`python_' and `noinst_'. Note that if python_PYTHON
is
defined, then `configure.in' must run AM_PATH_PYTHON
.
Python source files are included in the distribution by default.
AM_PATH_PYTHON
takes a single optional argument. This argument,
if present, is the minimum version of Python which can be used for this
package. If the version of Python found on the system is older than the
required version, then AM_PATH_PYTHON
will cause an error.
AM_PATH_PYTHON
creates several output variables based on the
Python installation found during configuration.
PYTHON
PYTHON_VERSION
sys.version[:3]
.
PYTHON_PREFIX
$prefix
. This term may be used in future work
which needs the contents of Python's sys.prefix
, but general
consensus is to always use the value from configure.
PYTHON_EXEC_PREFIX
$exec_prefix
. This term may be used in future work
which needs the contents of Python's sys.exec_prefix
, but general
consensus is to always use the value from configure.
PYTHON_PLATFORM
sys.platform
. This value is sometimes needed when
building Python extensions.
pythondir
pkgpythondir
pythondir
which is named after the
package. That is, it is `$(pythondir)/$(PACKAGE)'. It is provided
as a convenience.
pyexecdir
pkgpyexecdir
By default Automake will byte-compile all Python source files to both
`.pyc' and `.pyo' forms. If you wish to avoid generating the
optimized byte-code files, simply define the variable PYOFILES
to
be empty. Similarly, if you don't wish to generate the standard
byte-compiled files, define the variable PYCFILES
to be empty.
Go to the first, previous, next, last section, table of contents.