Module Name: src Committed By: rillig Date: Thu Jul 4 17:47:54 UTC 2024
Modified Files: src/usr.bin/make: parse.c var.c src/usr.bin/make/unit-tests: cmd-errors-jobs.exp cmd-errors-jobs.mk cmd-errors-lint.exp cmd-errors.exp cond-late.exp cond-late.mk dep-op-missing.exp directive-dinclude.exp directive-export-gmake.exp directive-for-break.exp directive-for-escape.exp directive-for-generating-endif.exp directive-for-if.exp directive-for-null.exp directive-for.exp directive-hyphen-include.exp directive-sinclude.exp directive-undef.exp directive-undef.mk lint.exp moderrs.exp moderrs.mk opt-debug-lint.exp opt-debug-lint.mk opt-file.exp var-op-expand.exp var-op-expand.mk var-recursive.exp varmisc.exp varmod-assign-shell.exp varmod-assign-shell.mk varmod-assign.exp varmod-assign.mk varmod-edge.exp varmod-edge.mk varmod-gmtime.exp varmod-gmtime.mk varmod-hash.exp varmod-indirect.exp varmod-indirect.mk varmod-localtime.exp varmod-localtime.mk varmod-loop-delete.exp varmod-loop-delete.mk varmod-loop-varname.exp varmod-loop-varname.mk varmod-match-escape.exp varmod-match-escape.mk varmod-match.exp varmod-match.mk varmod-mtime.exp varmod-mtime.mk varmod-range.exp varmod-range.mk varmod-subst-regex.exp varmod-sun-shell.exp varmod-sun-shell.mk varmod-sysv.exp varmod-sysv.mk varmod-to-separator.exp varmod-to-separator.mk varmod.exp varmod.mk varname-dot-newline.exp Log Message: make: add more context information to error messages In case of a parse error or evaluation error, print the variable value in addition to the variable name, to see the effects of previous expression modifiers. In nested make calls, print the current directory at the bottom of a stack trace, as that information is otherwise hard to get in a parallel build spanning multiple directories. To generate a diff of this commit: cvs rdiff -u -r1.731 -r1.732 src/usr.bin/make/parse.c cvs rdiff -u -r1.1127 -r1.1128 src/usr.bin/make/var.c cvs rdiff -u -r1.6 -r1.7 src/usr.bin/make/unit-tests/cmd-errors-jobs.exp \ src/usr.bin/make/unit-tests/cmd-errors-lint.exp \ src/usr.bin/make/unit-tests/cond-late.exp \ src/usr.bin/make/unit-tests/directive-export-gmake.exp cvs rdiff -u -r1.4 -r1.5 src/usr.bin/make/unit-tests/cmd-errors-jobs.mk \ src/usr.bin/make/unit-tests/directive-for-break.exp \ src/usr.bin/make/unit-tests/lint.exp \ src/usr.bin/make/unit-tests/varmod-hash.exp \ src/usr.bin/make/unit-tests/varmod-loop-delete.exp \ src/usr.bin/make/unit-tests/varmod-loop-delete.mk \ src/usr.bin/make/unit-tests/varmod-sun-shell.mk cvs rdiff -u -r1.9 -r1.10 src/usr.bin/make/unit-tests/cmd-errors.exp \ src/usr.bin/make/unit-tests/var-op-expand.exp cvs rdiff -u -r1.7 -r1.8 src/usr.bin/make/unit-tests/cond-late.mk \ src/usr.bin/make/unit-tests/var-recursive.exp \ src/usr.bin/make/unit-tests/varmod-assign-shell.exp \ src/usr.bin/make/unit-tests/varmod-assign-shell.mk \ src/usr.bin/make/unit-tests/varmod-loop-varname.exp \ src/usr.bin/make/unit-tests/varmod-loop-varname.mk cvs rdiff -u -r1.2 -r1.3 src/usr.bin/make/unit-tests/dep-op-missing.exp cvs rdiff -u -r1.3 -r1.4 src/usr.bin/make/unit-tests/directive-dinclude.exp \ src/usr.bin/make/unit-tests/directive-for-generating-endif.exp \ src/usr.bin/make/unit-tests/directive-for-if.exp \ src/usr.bin/make/unit-tests/directive-for-null.exp \ src/usr.bin/make/unit-tests/directive-hyphen-include.exp \ src/usr.bin/make/unit-tests/directive-sinclude.exp cvs rdiff -u -r1.24 -r1.25 \ src/usr.bin/make/unit-tests/directive-for-escape.exp \ src/usr.bin/make/unit-tests/varmod-match.mk cvs rdiff -u -r1.22 -r1.23 src/usr.bin/make/unit-tests/directive-for.exp \ src/usr.bin/make/unit-tests/varmod-assign.mk \ src/usr.bin/make/unit-tests/varmod-gmtime.mk cvs rdiff -u -r1.10 -r1.11 src/usr.bin/make/unit-tests/directive-undef.exp \ src/usr.bin/make/unit-tests/varmod-mtime.mk cvs rdiff -u -r1.14 -r1.15 src/usr.bin/make/unit-tests/directive-undef.mk \ src/usr.bin/make/unit-tests/varmod-localtime.exp \ src/usr.bin/make/unit-tests/varmod-match-escape.mk cvs rdiff -u -r1.37 -r1.38 src/usr.bin/make/unit-tests/moderrs.exp cvs rdiff -u -r1.33 -r1.34 src/usr.bin/make/unit-tests/moderrs.mk cvs rdiff -u -r1.19 -r1.20 src/usr.bin/make/unit-tests/opt-debug-lint.exp \ src/usr.bin/make/unit-tests/varmod-indirect.mk cvs rdiff -u -r1.17 -r1.18 src/usr.bin/make/unit-tests/opt-debug-lint.mk \ src/usr.bin/make/unit-tests/varmod-gmtime.exp cvs rdiff -u -r1.8 -r1.9 src/usr.bin/make/unit-tests/opt-file.exp \ src/usr.bin/make/unit-tests/varmod-mtime.exp \ src/usr.bin/make/unit-tests/varmod-subst-regex.exp cvs rdiff -u -r1.20 -r1.21 src/usr.bin/make/unit-tests/var-op-expand.mk \ src/usr.bin/make/unit-tests/varmisc.exp \ src/usr.bin/make/unit-tests/varmod-match-escape.exp cvs rdiff -u -r1.23 -r1.24 src/usr.bin/make/unit-tests/varmod-assign.exp cvs rdiff -u -r1.18 -r1.19 src/usr.bin/make/unit-tests/varmod-edge.exp \ src/usr.bin/make/unit-tests/varmod-match.exp \ src/usr.bin/make/unit-tests/varmod-sysv.mk cvs rdiff -u -r1.21 -r1.22 src/usr.bin/make/unit-tests/varmod-edge.mk cvs rdiff -u -r1.28 -r1.29 src/usr.bin/make/unit-tests/varmod-indirect.exp cvs rdiff -u -r1.15 -r1.16 src/usr.bin/make/unit-tests/varmod-localtime.mk \ src/usr.bin/make/unit-tests/varmod-to-separator.mk \ src/usr.bin/make/unit-tests/varmod.mk cvs rdiff -u -r1.12 -r1.13 src/usr.bin/make/unit-tests/varmod-range.exp \ src/usr.bin/make/unit-tests/varmod-sysv.exp \ src/usr.bin/make/unit-tests/varmod.exp cvs rdiff -u -r1.11 -r1.12 src/usr.bin/make/unit-tests/varmod-range.mk cvs rdiff -u -r1.5 -r1.6 src/usr.bin/make/unit-tests/varmod-sun-shell.exp \ src/usr.bin/make/unit-tests/varname-dot-newline.exp cvs rdiff -u -r1.13 -r1.14 \ src/usr.bin/make/unit-tests/varmod-to-separator.exp Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.