2015-11-14 03:24:48 +00:00
|
|
|
.\" $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
|
2016-04-12 03:37:42 +00:00
|
|
|
and child directories.
|
|
|
|
.Va NO_DIRDEPS_BELOW
|
|
|
|
will skip building any dirdeps and only build the current directory.
|
2015-11-14 03:24:48 +00:00
|
|
|
.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
|