948f327ee4
This allows META_FILES option to be renamed META_MODE. Also add META_COOKIE_TOUCH for use in targets that can benefit from a cookie when in meta mode. Differential Revision: https://reviews.freebsd.org/D4153 Reviewed by: bdrewery
38 lines
941 B
Plaintext
38 lines
941 B
Plaintext
.\" $FreeBSD$
|
|
Enable building in meta mode.
|
|
This is an experimental build feature.
|
|
For details see
|
|
http://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
|
|
.Pp
|
|
The build is driven by dirdeps.mk using
|
|
.Va DIRDEPS
|
|
stored in
|
|
Makefile.depend files found in each directory.
|
|
.Pp
|
|
The build can be started from anywhere, and behaves the same.
|
|
The initial instance of
|
|
.Xr make 1
|
|
recursively reads
|
|
.Va DIRDEPS
|
|
from Makefile.depend
|
|
computing a graph of tree dependencies from the current origin.
|
|
Setting
|
|
.Va NO_DIRDEPS
|
|
will skip checking dirdep dependencies and will only build in the current
|
|
directory.
|
|
.Pp
|
|
As each target is made
|
|
.Xr make 1
|
|
produces a meta file which is used to capture (and compare)
|
|
the command line,
|
|
as well as any command output.
|
|
If
|
|
.Xr filemon 4
|
|
is available the meta file will also capture a record of files
|
|
used to produce the target by tracking syscalls.
|
|
.Pp
|
|
The build will hide commands ran unless
|
|
.Va NO_SILENT
|
|
is defined.
|
|
.Pp
|