]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - tools/build/options/WITH_META_MODE
Import NetBSD's blacklist source from vendor tree
[FreeBSD/FreeBSD.git] / tools / build / options / WITH_META_MODE
1 .\" $FreeBSD$
2 Creates
3 .Xr make 1
4 meta files when building, which can provide a reliable incremental build when
5 using
6 .Xr filemon 4 .
7 The meta file is created in the OBJDIR as
8 .Pa target.meta .
9 These meta files track the command ran, its output, and the current directory.
10 When the
11 .Xr filemon 4
12 module is loaded, any files used by the commands executed will be tracked as
13 dependencies for the target in its meta file.
14 The target will be considered out-of-date and rebuilt if any of the following
15 are true compared to the last build:
16 .Bl -bullet -compact
17 .It
18 The command to execute changes.
19 .It
20 The current working directory changes.
21 .It
22 The target's meta file is missing, if it had
23 .Sy .META
24 as a dependency.
25 .It
26 [requires
27 .Xr filemon 4 ]
28 Files read, executed or linked to are newer than the target.
29 .It
30 [requires
31 .Xr filemon 4 ]
32 Files read, written, executed or linked are missing.
33 .El
34 The meta files can also be useful for debugging.
35 .Pp
36 The build will hide commands ran unless
37 .Va NO_SILENT
38 is defined.
39 .Pp
40 The build operates as it normally would otherwise.
41 This option originally invoked a different build system but that was renamed
42 to
43 .Va WITH_DIRDEPS_BUILD .