Module Name: src Committed By: rillig Date: Sat Dec 12 01:42:33 UTC 2020
Modified Files: src/usr.bin/make: job.c job.h Log Message: make(1): in jobs mode, extract writing of shell commands Right now, the test sh-flags.mk demonstrates many variants to configure echoing of the shell commands (-s, .SILENT, '@'), error handling (-i, .IGNORE, '-') and whether the commands are run (-n, -N, .MAKE, .RECURSIVE, '+'). Even more variants are possible by configuring the shell to have error control. None of the built-in shell definitions has error control, so it is unlikely that anybody uses them, but who knows. Being able to configure these details at 3 levels is good, but what makes all this really hard to understand is that some of these switches interact in non-obvious ways. For example, in jobs mode, a single command can change job->ignerr (in JobPrintSpecialsEchoCtl), which will affect all further commands of that job. The goal of this refactoring is to make the code easier to understand by making the switches on the job level constant and by moving all modifications to them to the ShellWriter. To generate a diff of this commit: cvs rdiff -u -r1.370 -r1.371 src/usr.bin/make/job.c cvs rdiff -u -r1.67 -r1.68 src/usr.bin/make/job.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.