Previous: , Up: General ideas   [Contents][Index]


3.7 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.

ar-lib

This is a wrapper primarily for the Microsoft lib archiver, to make it more POSIX-like.

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, with the Microsoft C/C++ Compiler as the most notable exception. This wrapper also makes the following common options available for that compiler, while performing file name translation where needed: -I, -L, -l, -Wl, and -Xlinker.

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 https://savannah.gnu.org/git/?group=config before making a release.

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 Automatic dependency tracking).

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, or seems too old, missing will print an informative warning before failing out, to provide the user with more context and information.

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.

test-driver

This implements the default test driver offered by the parallel testsuite harness.

texinfo.tex

When Texinfo sources are in the package, this file is required for ‘make dvi’, ‘make ps’ and ‘make pdf’. The latest version can be downloaded from https://www.gnu.org/software/texinfo/. A working TeX distribution, or at least a tex program, is also required. Furthermore, ‘make dist’ invokes ‘make dvi’, so these become requirements for making a distribution with Texinfo sources.

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.


Previous: Variables reserved for the user, Up: General ideas   [Contents][Index]