You can support compiling a software package for several architectures simultaneously from the same copy of the source code. The object files for each architecture are kept in their own directory.
To support doing this,
make uses the
VPATH variable to
find the files that are in the source directory. GNU
most other recent
make programs can do this. Older
programs do not support
VPATH; when using them, the source code
must be in the same directory as the object files.
VPATH, each `Makefile.in' should contain two
lines that look like:
srcdir = @[email protected] VPATH = @[email protected]
Do not set
VPATH to the value of another variable, for example
`VPATH = $(srcdir)', because some versions of
make do not do
variable substitutions on the value of
configure substitutes in the correct value for
it produces `Makefile'.
Do not use the
$<, which expands to the
pathname of the file in the source directory (found with
except in implicit rules. (An implicit rule is one such as `.c.o',
which tells how to create a `.o' file from a `.c' file.) Some
make do not set
$< in explicit rules; they
expand it to an empty value.
Instead, `Makefile' command lines should always refer to source files by prefixing them with `$(srcdir)/'. For example:
time.info: time.texinfo $(MAKEINFO) $(srcdir)/time.texinfo
Go to the first, previous, next, last section, table of contents.