1Create 2.Xr make 1 3meta files when building, which can provide a reliable incremental build when 4using 5.Xr filemon 4 . 6The meta file is created in OBJDIR as 7.Pa target.meta . 8These meta files track the command that was executed, its output, and the 9current directory. 10The 11.Xr filemon 4 12module is required unless 13.Va NO_FILEMON 14is defined. 15When the module is loaded, any files used by the commands executed are 16tracked as dependencies for the target in its meta file. 17The target is considered out-of-date and rebuilt if any of these 18conditions are true compared to the last build: 19.Bl -bullet -compact 20.It 21The command to execute changes. 22.It 23The current working directory changes. 24.It 25The target's meta file is missing. 26.It 27The target's meta file is missing filemon data when filemon is loaded 28and a previous run did not have it loaded. 29.It 30[requires 31.Xr filemon 4 ] 32Files read, executed or linked to are newer than the target. 33.It 34[requires 35.Xr filemon 4 ] 36Files read, written, executed or linked are missing. 37.El 38The meta files can also be useful for debugging. 39.Pp 40The build hides commands that are executed unless 41.Va NO_SILENT 42is defined. 43Errors cause 44.Xr make 1 45to show some of its environment for further debugging. 46.Pp 47The build operates as it normally would otherwise. 48This option originally invoked a different build system but that was renamed 49to 50.Va WITH_DIRDEPS_BUILD . 51