Previous: User Variables, Up: Generalities


3.6 Programs automake might require

Automake sometimes requires helper programs so that the generated Makefile can do its work properly. There are a fairly large number of them, and we list them here.

Although all of these files are distributed and installed with Automake, a couple of them are maintained separately. The Automake copies are updated before each release, but we mention the original source in case you need more recent versions.

ansi2knr.c
ansi2knr.1
These two files are used by the obsolete de-ANSI-fication support (see ANSI).
compile
This is a wrapper for compilers that do not accept options -c and -o at the same time. It is only used when absolutely required. Such compilers are rare.
config.guess
config.sub
These two programs compute the canonical triplets for the given build, host, or target architecture. These programs are updated regularly to support new architectures and fix probes broken by changes in new kernel versions. Each new release of Automake comes with up-to-date copies of these programs. If your copy of Automake is getting old, you are encouraged to fetch the latest versions of these files from http://savannah.gnu.org/cvs/?group=config before making a release.
config-ml.in
This file is not a program, it is a configure fragment used for multilib support (see Multilibs). This file is maintained in the GCC tree at http://gcc.gnu.org/svn.html.
depcomp
This program understands how to run a compiler so that it will generate not only the desired output but also dependency information that is then used by the automatic dependency tracking feature (see Dependencies).
elisp-comp
This program is used to byte-compile Emacs Lisp code.
install-sh
This is a replacement for the install program that works on platforms where install is unavailable or unusable.
mdate-sh
This script is used to generate a version.texi file. It examines a file and prints some date information about it.
missing
This wraps a number of programs that are typically only required by maintainers. If the program in question doesn't exist, missing prints an informative warning and attempts to fix things so that the build can continue.
mkinstalldirs
This script used to be a wrapper around ‘mkdir -p’, which is not portable. Now we prefer to use ‘install-sh -d’ when configure finds that ‘mkdir -p’ does not work, this makes one less script to distribute.

For backward compatibility mkinstalldirs is still used and distributed when automake finds it in a package. But it is no longer installed automatically, and it should be safe to remove it.

py-compile
This is used to byte-compile Python scripts.
symlink-tree
This program duplicates a tree of directories, using symbolic links instead of copying files. Such operation is performed when building multilibs (see Multilibs). This file is maintained in the GCC tree at http://gcc.gnu.org/svn.html.
texinfo.tex
Not a program, this file is required for ‘make dvi’, ‘make ps’ and ‘make pdf’ to work when Texinfo sources are in the package. The latest version can be downloaded from http://www.gnu.org/software/texinfo/.
ylwrap
This program wraps lex and yacc to rename their output files. It also ensures that, for instance, multiple yacc instances can be invoked in a single directory in parallel.