Module Name: src Committed By: rillig Date: Thu Oct 31 09:12:14 UTC 2024
Modified Files: src/usr.bin/make: parse.c src/usr.bin/make/unit-tests: Makefile deptgt-order.exp deptgt.exp directive-export-impl.exp directive-for-escape.exp include-main.exp opt-debug-parse.exp suff-incomplete.exp suff-main-several.exp suff-rebuild.exp var-eval-short.exp varmod-indirect.exp varmod-loop.exp varname-dot-shell.exp Log Message: make: in the debug log, always qualify line number with filename Previously, to find out the filename corresponding to a line number from a 'Parsing' line, it was necessary to find the preceding 'SetFilenameVars' line, which was unnecessarily time-consuming and distracting. The 'filename:line' format matches the one used in PrintStackTrace, and it differs from the one used in PrintLocation, as the former format is more common in other tools. Most of the affected unit tests only use the 'Parsing' lines to give additional context to their debug log, so no structural changes there. To generate a diff of this commit: cvs rdiff -u -r1.735 -r1.736 src/usr.bin/make/parse.c cvs rdiff -u -r1.351 -r1.352 src/usr.bin/make/unit-tests/Makefile cvs rdiff -u -r1.5 -r1.6 src/usr.bin/make/unit-tests/deptgt-order.exp cvs rdiff -u -r1.18 -r1.19 src/usr.bin/make/unit-tests/deptgt.exp \ src/usr.bin/make/unit-tests/directive-export-impl.exp cvs rdiff -u -r1.31 -r1.32 \ src/usr.bin/make/unit-tests/directive-for-escape.exp \ src/usr.bin/make/unit-tests/var-eval-short.exp cvs rdiff -u -r1.13 -r1.14 src/usr.bin/make/unit-tests/include-main.exp \ src/usr.bin/make/unit-tests/suff-main-several.exp cvs rdiff -u -r1.11 -r1.12 src/usr.bin/make/unit-tests/opt-debug-parse.exp cvs rdiff -u -r1.7 -r1.8 src/usr.bin/make/unit-tests/suff-incomplete.exp cvs rdiff -u -r1.8 -r1.9 src/usr.bin/make/unit-tests/suff-rebuild.exp cvs rdiff -u -r1.30 -r1.31 src/usr.bin/make/unit-tests/varmod-indirect.exp cvs rdiff -u -r1.21 -r1.22 src/usr.bin/make/unit-tests/varmod-loop.exp \ src/usr.bin/make/unit-tests/varname-dot-shell.exp Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/usr.bin/make/parse.c diff -u src/usr.bin/make/parse.c:1.735 src/usr.bin/make/parse.c:1.736 --- src/usr.bin/make/parse.c:1.735 Thu Aug 29 20:20:35 2024 +++ src/usr.bin/make/parse.c Thu Oct 31 09:12:13 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: parse.c,v 1.735 2024/08/29 20:20:35 rillig Exp $ */ +/* $NetBSD: parse.c,v 1.736 2024/10/31 09:12:13 rillig Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -105,7 +105,7 @@ #include "pathnames.h" /* "@(#)parse.c 8.3 (Berkeley) 3/19/94" */ -MAKE_RCSID("$NetBSD: parse.c,v 1.735 2024/08/29 20:20:35 rillig Exp $"); +MAKE_RCSID("$NetBSD: parse.c,v 1.736 2024/10/31 09:12:13 rillig Exp $"); /* Detects a multiple-inclusion guard in a makefile. */ typedef enum { @@ -2617,7 +2617,8 @@ ReadHighLevelLine(void) if (line == NULL) return NULL; - DEBUG2(PARSE, "Parsing line %u: %s\n", curFile->lineno, line); + DEBUG3(PARSE, "Parsing %s:%u: %s\n", + curFile->name.str, curFile->lineno, line); if (curFile->guardState != GS_NO && ((curFile->guardState == GS_START && line[0] != '.') || curFile->guardState == GS_DONE)) Index: src/usr.bin/make/unit-tests/Makefile diff -u src/usr.bin/make/unit-tests/Makefile:1.351 src/usr.bin/make/unit-tests/Makefile:1.352 --- src/usr.bin/make/unit-tests/Makefile:1.351 Sun Aug 18 13:40:51 2024 +++ src/usr.bin/make/unit-tests/Makefile Thu Oct 31 09:12:13 2024 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.351 2024/08/18 13:40:51 rillig Exp $ +# $NetBSD: Makefile,v 1.352 2024/10/31 09:12:13 rillig Exp $ # # Unit tests for make(1) # @@ -508,7 +508,7 @@ SED_CMDS.deptgt-phony= ${STD_SED_CMDS.dd SED_CMDS.dir= ${STD_SED_CMDS.dd} SED_CMDS.directive-include-guard= \ -e '/\.MAKEFLAGS/d' \ - -e '/^Parsing line/d' \ + -e '/^Parsing .*:[1-9][0-9]*:/d' \ -e '/^SetFilenameVars:/d' \ -e '/^ParseDependency/d' \ -e '/^ParseEOF:/d' Index: src/usr.bin/make/unit-tests/deptgt-order.exp diff -u src/usr.bin/make/unit-tests/deptgt-order.exp:1.5 src/usr.bin/make/unit-tests/deptgt-order.exp:1.6 --- src/usr.bin/make/unit-tests/deptgt-order.exp:1.5 Tue Dec 28 16:11:00 2021 +++ src/usr.bin/make/unit-tests/deptgt-order.exp Thu Oct 31 09:12:13 2024 @@ -1,9 +1,9 @@ -Parsing line 15: .ORDER: three one +Parsing deptgt-order.mk:15: .ORDER: three one ParseDependency(.ORDER: three one) # .ORDER forces 'three' to be made before 'one' # three, unmade, type OP_DEPENDS|OP_PHONY|OP_HAS_COMMANDS, flags none # one, unmade, type OP_DEPENDS|OP_PHONY, flags none -Parsing line 16: .MAKEFLAGS: -d0 +Parsing deptgt-order.mk:16: .MAKEFLAGS: -d0 ParseDependency(.MAKEFLAGS: -d0) : 'Making two out of one.' : 'Making three out of two.' Index: src/usr.bin/make/unit-tests/deptgt.exp diff -u src/usr.bin/make/unit-tests/deptgt.exp:1.18 src/usr.bin/make/unit-tests/deptgt.exp:1.19 --- src/usr.bin/make/unit-tests/deptgt.exp:1.18 Thu Aug 29 20:20:36 2024 +++ src/usr.bin/make/unit-tests/deptgt.exp Thu Oct 31 09:12:13 2024 @@ -1,12 +1,12 @@ make: "deptgt.mk" line 11: warning: Extra target '.PHONY' ignored make: "deptgt.mk" line 30: Unassociated shell command ": command3 # parse error, since targets == NULL" -Parsing line 36: ${:U}: empty-source +Parsing deptgt.mk:36: ${:U}: empty-source ParseDependency(: empty-source) -Parsing line 37: : command for empty targets list -Parsing line 38: : empty-source +Parsing deptgt.mk:37: : command for empty targets list +Parsing deptgt.mk:38: : empty-source ParseDependency(: empty-source) -Parsing line 39: : command for empty targets list -Parsing line 40: .MAKEFLAGS: -d0 +Parsing deptgt.mk:39: : command for empty targets list +Parsing deptgt.mk:40: .MAKEFLAGS: -d0 ParseDependency(.MAKEFLAGS: -d0) make: "deptgt.mk" line 45: Unknown modifier "Z" while evaluating "${:U:Z}:" with value "" Index: src/usr.bin/make/unit-tests/directive-export-impl.exp diff -u src/usr.bin/make/unit-tests/directive-export-impl.exp:1.18 src/usr.bin/make/unit-tests/directive-export-impl.exp:1.19 --- src/usr.bin/make/unit-tests/directive-export-impl.exp:1.18 Sun Apr 14 12:30:47 2024 +++ src/usr.bin/make/unit-tests/directive-export-impl.exp Thu Oct 31 09:12:13 2024 @@ -1,8 +1,8 @@ -Parsing line 21: UT_VAR= <${REF}> +Parsing directive-export-impl.mk:21: UT_VAR= <${REF}> Global: UT_VAR = <${REF}> -Parsing line 28: .export UT_VAR +Parsing directive-export-impl.mk:28: .export UT_VAR Global: .MAKE.EXPORTED = UT_VAR -Parsing line 32: : ${UT_VAR:N*} +Parsing directive-export-impl.mk:32: : ${UT_VAR:N*} Var_Parse: ${UT_VAR:N*} (eval-defined) Var_Parse: ${REF}> (eval-defined) Evaluating modifier ${UT_VAR:N...} on value "<>" @@ -10,7 +10,7 @@ Pattern for ':N' is "*" ModifyWords: split "<>" into 1 word Result of ${UT_VAR:N*} is "" ParseDependency(: ) -Parsing line 42: .if ${:!echo "\$UT_VAR"!} != "<>" +Parsing directive-export-impl.mk:42: .if ${:!echo "\$UT_VAR"!} != "<>" CondParser_Eval: ${:!echo "\$UT_VAR"!} != "<>" Var_Parse: ${:!echo "\$UT_VAR"!} != "<>" (eval-defined) Evaluating modifier ${:!...} on value "" (eval-defined, undefined) @@ -25,7 +25,7 @@ Var_Parse: ${UT_VAR} (eval) Var_Parse: ${REF}> (eval) Result of ${:!echo "\$UT_VAR"!} is "<>" (eval-defined, defined) Comparing "<>" != "<>" -Parsing line 50: : ${UT_VAR:N*} +Parsing directive-export-impl.mk:50: : ${UT_VAR:N*} Var_Parse: ${UT_VAR:N*} (eval-defined) Var_Parse: ${REF}> (eval-defined) Evaluating modifier ${UT_VAR:N...} on value "<>" @@ -33,9 +33,9 @@ Pattern for ':N' is "*" ModifyWords: split "<>" into 1 word Result of ${UT_VAR:N*} is "" ParseDependency(: ) -Parsing line 54: REF= defined +Parsing directive-export-impl.mk:54: REF= defined Global: REF = defined -Parsing line 58: .if ${:!echo "\$UT_VAR"!} != "<defined>" +Parsing directive-export-impl.mk:58: .if ${:!echo "\$UT_VAR"!} != "<defined>" CondParser_Eval: ${:!echo "\$UT_VAR"!} != "<defined>" Var_Parse: ${:!echo "\$UT_VAR"!} != "<defined>" (eval-defined) Evaluating modifier ${:!...} on value "" (eval-defined, undefined) @@ -50,10 +50,10 @@ Var_Parse: ${UT_VAR} (eval) Var_Parse: ${REF}> (eval) Result of ${:!echo "\$UT_VAR"!} is "<defined>" (eval-defined, defined) Comparing "<defined>" != "<defined>" -Parsing line 62: all: +Parsing directive-export-impl.mk:62: all: ParseDependency(all:) Global: .ALLTARGETS = all -Parsing line 63: .MAKEFLAGS: -d0 +Parsing directive-export-impl.mk:63: .MAKEFLAGS: -d0 ParseDependency(.MAKEFLAGS: -d0) Global: .MAKEFLAGS = -r -k -d cpv -d Global: .MAKEFLAGS = -r -k -d cpv -d 0 Index: src/usr.bin/make/unit-tests/directive-for-escape.exp diff -u src/usr.bin/make/unit-tests/directive-for-escape.exp:1.31 src/usr.bin/make/unit-tests/directive-for-escape.exp:1.32 --- src/usr.bin/make/unit-tests/directive-for-escape.exp:1.31 Thu Aug 29 20:20:36 2024 +++ src/usr.bin/make/unit-tests/directive-for-escape.exp Thu Oct 31 09:12:13 2024 @@ -106,7 +106,7 @@ make: "directive-for-escape.mk" line 223 For: end for 1 For: loop body with i = " ": -Parsing line 236: .for i in "${.newline}" +Parsing directive-for-escape.mk:236: .for i in "${.newline}" For: end for 1 Parse_PushInput: .for loop in directive-for-escape.mk, line 236 make: "directive-for-escape.mk" line 236: newline in .for value @@ -116,11 +116,11 @@ For: loop body with i = " ": : ${:U" "} SetFilenameVars: ${.PARSEDIR} = <some-dir> ${.PARSEFILE} = `directive-for-escape.mk' -Parsing line 237: : ${:U" "} +Parsing directive-for-escape.mk:237: : ${:U" "} ParseDependency(: " ") ParseEOF: returning to file directive-for-escape.mk, line 239 SetFilenameVars: ${.PARSEDIR} = <some-dir> ${.PARSEFILE} = `directive-for-escape.mk' -Parsing line 239: .MAKEFLAGS: -d0 +Parsing directive-for-escape.mk:239: .MAKEFLAGS: -d0 ParseDependency(.MAKEFLAGS: -d0) For: end for 1 For: loop body with i = #: Index: src/usr.bin/make/unit-tests/var-eval-short.exp diff -u src/usr.bin/make/unit-tests/var-eval-short.exp:1.31 src/usr.bin/make/unit-tests/var-eval-short.exp:1.32 --- src/usr.bin/make/unit-tests/var-eval-short.exp:1.31 Thu Aug 29 20:20:36 2024 +++ src/usr.bin/make/unit-tests/var-eval-short.exp Thu Oct 31 09:12:13 2024 @@ -1,7 +1,7 @@ make: "var-eval-short.mk" line 46: In the :@ modifier, the variable name "${FAIL}" must not contain a dollar while parsing "${:Uword:@${FAIL}@expr@}" make: "var-eval-short.mk" line 46: Malformed conditional '0 && ${:Uword:@${FAIL}@expr@}' -Parsing line 159: .if 0 && ${0:?${FAIL}then:${FAIL}else} +Parsing var-eval-short.mk:159: .if 0 && ${0:?${FAIL}then:${FAIL}else} CondParser_Eval: 0 && ${0:?${FAIL}then:${FAIL}else} Var_Parse: ${0:?${FAIL}then:${FAIL}else} (parse) Parsing modifier ${0:?...} @@ -10,9 +10,9 @@ Modifier part: "${FAIL}then" Var_Parse: ${FAIL}else} (parse) Modifier part: "${FAIL}else" Result of ${0:?${FAIL}then:${FAIL}else} is "" (parse, defined) -Parsing line 167: DEFINED= defined +Parsing var-eval-short.mk:167: DEFINED= defined Global: DEFINED = defined -Parsing line 168: .if 0 && ${DEFINED:L:?${FAIL}then:${FAIL}else} +Parsing var-eval-short.mk:168: .if 0 && ${DEFINED:L:?${FAIL}then:${FAIL}else} CondParser_Eval: 0 && ${DEFINED:L:?${FAIL}then:${FAIL}else} Var_Parse: ${DEFINED:L:?${FAIL}then:${FAIL}else} (parse) Parsing modifier ${DEFINED:L} @@ -23,7 +23,7 @@ Modifier part: "${FAIL}then" Var_Parse: ${FAIL}else} (parse) Modifier part: "${FAIL}else" Result of ${DEFINED:?${FAIL}then:${FAIL}else} is "defined" (parse, regular) -Parsing line 170: .MAKEFLAGS: -d0 +Parsing var-eval-short.mk:170: .MAKEFLAGS: -d0 ParseDependency(.MAKEFLAGS: -d0) Global: .MAKEFLAGS = -r -k -d cpv -d Global: .MAKEFLAGS = -r -k -d cpv -d 0 Index: src/usr.bin/make/unit-tests/include-main.exp diff -u src/usr.bin/make/unit-tests/include-main.exp:1.13 src/usr.bin/make/unit-tests/include-main.exp:1.14 --- src/usr.bin/make/unit-tests/include-main.exp:1.13 Thu Jun 1 20:56:35 2023 +++ src/usr.bin/make/unit-tests/include-main.exp Thu Oct 31 09:12:13 2024 @@ -2,13 +2,13 @@ make: "include-main.mk" line 15: main-be make: "include-main.mk" line 23: main-before-for-ok make: "include-sub.inc" line 4: sub-before-ok make: "include-sub.inc" line 14: sub-before-for-ok -Parsing line 5: . info subsub-ok +Parsing include-subsub.inc:5: . info subsub-ok make: "include-subsub.inc" line 5: subsub-ok in .for loop from include-sub.inc:31 with i = include in .for loop from include-sub.inc:30 with i = nested in .for loop from include-sub.inc:29 with i = deeply in include-main.mk:29 -Parsing line 6: .MAKEFLAGS: -d0 +Parsing include-subsub.inc:6: .MAKEFLAGS: -d0 ParseDependency(.MAKEFLAGS: -d0) make: "include-sub.inc" line 38: sub-after-ok make: "include-sub.inc" line 45: sub-after-for-ok Index: src/usr.bin/make/unit-tests/suff-main-several.exp diff -u src/usr.bin/make/unit-tests/suff-main-several.exp:1.13 src/usr.bin/make/unit-tests/suff-main-several.exp:1.14 --- src/usr.bin/make/unit-tests/suff-main-several.exp:1.13 Thu Jul 4 20:18:40 2024 +++ src/usr.bin/make/unit-tests/suff-main-several.exp Thu Oct 31 09:12:13 2024 @@ -1,11 +1,11 @@ -Parsing line 8: .1.2 .1.3 .1.4: +Parsing suff-main-several.mk:8: .1.2 .1.3 .1.4: ParseDependency(.1.2 .1.3 .1.4:) Setting main node to ".1.2" -Parsing line 9: : Making ${.TARGET} from ${.IMPSRC}. -Parsing line 14: next-main: +Parsing suff-main-several.mk:9: : Making ${.TARGET} from ${.IMPSRC}. +Parsing suff-main-several.mk:14: next-main: ParseDependency(next-main:) -Parsing line 15: : Making ${.TARGET} -Parsing line 19: .SUFFIXES: .1 .2 .3 .4 +Parsing suff-main-several.mk:15: : Making ${.TARGET} +Parsing suff-main-several.mk:19: .SUFFIXES: .1 .2 .3 .4 ParseDependency(.SUFFIXES: .1 .2 .3 .4) Adding suffix ".1" Adding suffix ".2" @@ -26,42 +26,42 @@ defining transformation from `.1' to `.4 inserting ".1" (1) at end of list inserting ".4" (4) at end of list Setting main node to "next-main" -Parsing line 24: .SUFFIXES: +Parsing suff-main-several.mk:24: .SUFFIXES: ParseDependency(.SUFFIXES:) Clearing all suffixes -Parsing line 32: .SUFFIXES: .4 .3 .2 .1 +Parsing suff-main-several.mk:32: .SUFFIXES: .4 .3 .2 .1 ParseDependency(.SUFFIXES: .4 .3 .2 .1) Adding suffix ".4" Adding suffix ".3" Adding suffix ".2" Adding suffix ".1" -Parsing line 33: .SUFFIXES: +Parsing suff-main-several.mk:33: .SUFFIXES: ParseDependency(.SUFFIXES:) Clearing all suffixes -Parsing line 34: .SUFFIXES: .1 .2 .3 .4 +Parsing suff-main-several.mk:34: .SUFFIXES: .1 .2 .3 .4 ParseDependency(.SUFFIXES: .1 .2 .3 .4) Adding suffix ".1" Adding suffix ".2" Adding suffix ".3" Adding suffix ".4" -Parsing line 35: .SUFFIXES: +Parsing suff-main-several.mk:35: .SUFFIXES: ParseDependency(.SUFFIXES:) Clearing all suffixes -Parsing line 36: .SUFFIXES: .4 .3 .2 .1 +Parsing suff-main-several.mk:36: .SUFFIXES: .4 .3 .2 .1 ParseDependency(.SUFFIXES: .4 .3 .2 .1) Adding suffix ".4" Adding suffix ".3" Adding suffix ".2" Adding suffix ".1" -Parsing line 38: suff-main-several.1: +Parsing suff-main-several.mk:38: suff-main-several.1: ParseDependency(suff-main-several.1:) -Parsing line 39: : Making ${.TARGET} out of nothing. -Parsing line 40: next-main: suff-main-several.{2,3,4} +Parsing suff-main-several.mk:39: : Making ${.TARGET} out of nothing. +Parsing suff-main-several.mk:40: next-main: suff-main-several.{2,3,4} ParseDependency(next-main: suff-main-several.{2,3,4}) Target "next-main" depends on "suff-main-several.{2,3,4}" # next-main, unmade, type OP_DEPENDS|OP_HAS_COMMANDS, flags none # suff-main-several.{2,3,4}, unmade, type none, flags none -Parsing line 42: .MAKEFLAGS: -d0 -dg1 +Parsing suff-main-several.mk:42: .MAKEFLAGS: -d0 -dg1 ParseDependency(.MAKEFLAGS: -d0 -dg1) #*** Input graph: # .1.2, unmade, type OP_TRANSFORM, flags none Index: src/usr.bin/make/unit-tests/opt-debug-parse.exp diff -u src/usr.bin/make/unit-tests/opt-debug-parse.exp:1.11 src/usr.bin/make/unit-tests/opt-debug-parse.exp:1.12 --- src/usr.bin/make/unit-tests/opt-debug-parse.exp:1.11 Sun Apr 14 12:30:47 2024 +++ src/usr.bin/make/unit-tests/opt-debug-parse.exp Thu Oct 31 09:12:13 2024 @@ -1,28 +1,28 @@ -Parsing line 16: .for var in value +Parsing opt-debug-parse.mk:16: .for var in value Parse_PushInput: .for loop in opt-debug-parse.mk, line 16 SetFilenameVars: ${.PARSEDIR} = <some-dir> ${.PARSEFILE} = `opt-debug-parse.mk' -Parsing line 21: .info trace with multi-line .for loop head +Parsing opt-debug-parse.mk:21: .info trace with multi-line .for loop head make: "opt-debug-parse.mk" line 21: trace with multi-line .for loop head in .for loop from opt-debug-parse.mk:16 with var = value ParseEOF: returning to file opt-debug-parse.mk, line 23 SetFilenameVars: ${.PARSEDIR} = <some-dir> ${.PARSEFILE} = `opt-debug-parse.mk' -Parsing line 26: .include "/dev/null" +Parsing opt-debug-parse.mk:26: .include "/dev/null" Parse_PushInput: file /dev/null, line 1 SetFilenameVars: ${.PARSEDIR} = <some-dir> ${.PARSEFILE} = `null' SetFilenameVars: ${.INCLUDEDFROMDIR} = <some-dir> ${.INCLUDEDFROMFILE} = `opt-debug-parse.mk' ParseEOF: returning to file opt-debug-parse.mk, line 27 SetFilenameVars: ${.PARSEDIR} = <some-dir> ${.PARSEFILE} = `opt-debug-parse.mk' -Parsing line 31: .for a b c in 1 2 3 ${:U4 5 6} +Parsing opt-debug-parse.mk:31: .for a b c in 1 2 3 ${:U4 5 6} Parse_PushInput: .for loop in opt-debug-parse.mk, line 31 SetFilenameVars: ${.PARSEDIR} = <some-dir> ${.PARSEFILE} = `opt-debug-parse.mk' -Parsing line 34: .info trace +Parsing opt-debug-parse.mk:34: .info trace make: "opt-debug-parse.mk" line 34: trace in .for loop from opt-debug-parse.mk:31 with a = 1, b = 2, c = 3 -Parsing line 34: .info trace +Parsing opt-debug-parse.mk:34: .info trace make: "opt-debug-parse.mk" line 34: trace in .for loop from opt-debug-parse.mk:31 with a = 4, b = 5, c = 6 ParseEOF: returning to file opt-debug-parse.mk, line 36 SetFilenameVars: ${.PARSEDIR} = <some-dir> ${.PARSEFILE} = `opt-debug-parse.mk' -Parsing line 38: .MAKEFLAGS: -d0 +Parsing opt-debug-parse.mk:38: .MAKEFLAGS: -d0 ParseDependency(.MAKEFLAGS: -d0) exit status 0 Index: src/usr.bin/make/unit-tests/suff-incomplete.exp diff -u src/usr.bin/make/unit-tests/suff-incomplete.exp:1.7 src/usr.bin/make/unit-tests/suff-incomplete.exp:1.8 --- src/usr.bin/make/unit-tests/suff-incomplete.exp:1.7 Sat May 25 22:08:35 2024 +++ src/usr.bin/make/unit-tests/suff-incomplete.exp Thu Oct 31 09:12:13 2024 @@ -1,17 +1,17 @@ -Parsing line 9: .SUFFIXES: +Parsing suff-incomplete.mk:9: .SUFFIXES: ParseDependency(.SUFFIXES:) Clearing all suffixes -Parsing line 11: .SUFFIXES: .a .b .c +Parsing suff-incomplete.mk:11: .SUFFIXES: .a .b .c ParseDependency(.SUFFIXES: .a .b .c) Adding suffix ".a" Adding suffix ".b" Adding suffix ".c" -Parsing line 17: .a.b: +Parsing suff-incomplete.mk:17: .a.b: ParseDependency(.a.b:) defining transformation from `.a' to `.b' inserting ".a" (1) at end of list inserting ".b" (2) at end of list -Parsing line 21: .a.c: ${.PREFIX}.dependency +Parsing suff-incomplete.mk:21: .a.c: ${.PREFIX}.dependency deleting incomplete transformation from `.a' to `.b' ParseDependency(.a.c: ${.PREFIX}.dependency) defining transformation from `.a' to `.c' @@ -20,10 +20,10 @@ inserting ".c" (3) at end of list Target ".a.c" depends on "${.PREFIX}.dependency" # .a.c, unmade, type OP_DEPENDS|OP_TRANSFORM, flags none # ${.PREFIX}.dependency, unmade, type none, flags none -Parsing line 23: .DEFAULT: +Parsing suff-incomplete.mk:23: .DEFAULT: transformation .a.c complete ParseDependency(.DEFAULT:) -Parsing line 24: : Making ${.TARGET} from ${.IMPSRC} all ${.ALLSRC} by default. +Parsing suff-incomplete.mk:24: : Making ${.TARGET} from ${.IMPSRC} all ${.ALLSRC} by default. transformation .DEFAULT complete Wildcard expanding "all"... SuffFindDeps "all" Index: src/usr.bin/make/unit-tests/suff-rebuild.exp diff -u src/usr.bin/make/unit-tests/suff-rebuild.exp:1.8 src/usr.bin/make/unit-tests/suff-rebuild.exp:1.9 --- src/usr.bin/make/unit-tests/suff-rebuild.exp:1.8 Tue Dec 28 15:49:00 2021 +++ src/usr.bin/make/unit-tests/suff-rebuild.exp Thu Oct 31 09:12:13 2024 @@ -1,36 +1,36 @@ -Parsing line 10: .SUFFIXES: +Parsing suff-rebuild.mk:10: .SUFFIXES: ParseDependency(.SUFFIXES:) Clearing all suffixes -Parsing line 12: .SUFFIXES: .a .b .c +Parsing suff-rebuild.mk:12: .SUFFIXES: .a .b .c ParseDependency(.SUFFIXES: .a .b .c) Adding suffix ".a" Adding suffix ".b" Adding suffix ".c" -Parsing line 14: suff-rebuild-example.a: +Parsing suff-rebuild.mk:14: suff-rebuild-example.a: ParseDependency(suff-rebuild-example.a:) Adding "suff-rebuild-example.a" to all targets. -Parsing line 15: : Making ${.TARGET} out of nothing. -Parsing line 17: .a.b: +Parsing suff-rebuild.mk:15: : Making ${.TARGET} out of nothing. +Parsing suff-rebuild.mk:17: .a.b: ParseDependency(.a.b:) defining transformation from `.a' to `.b' inserting ".a" (1) at end of list inserting ".b" (2) at end of list -Parsing line 18: : Making ${.TARGET} from ${.IMPSRC}. -Parsing line 19: .b.c: +Parsing suff-rebuild.mk:18: : Making ${.TARGET} from ${.IMPSRC}. +Parsing suff-rebuild.mk:19: .b.c: transformation .a.b complete ParseDependency(.b.c:) defining transformation from `.b' to `.c' inserting ".b" (2) at end of list inserting ".c" (3) at end of list -Parsing line 20: : Making ${.TARGET} from ${.IMPSRC}. -Parsing line 21: .c: +Parsing suff-rebuild.mk:20: : Making ${.TARGET} from ${.IMPSRC}. +Parsing suff-rebuild.mk:21: .c: transformation .b.c complete ParseDependency(.c:) defining transformation from `.c' to `' inserting ".c" (3) at end of list inserting "" (0) at end of list -Parsing line 22: : Making ${.TARGET} from ${.IMPSRC}. -Parsing line 44: .SUFFIXES: .c .b .a +Parsing suff-rebuild.mk:22: : Making ${.TARGET} from ${.IMPSRC}. +Parsing suff-rebuild.mk:44: .SUFFIXES: .c .b .a transformation .c complete ParseDependency(.SUFFIXES: .c .b .a) Adding ".END" to all targets. Index: src/usr.bin/make/unit-tests/varmod-indirect.exp diff -u src/usr.bin/make/unit-tests/varmod-indirect.exp:1.30 src/usr.bin/make/unit-tests/varmod-indirect.exp:1.31 --- src/usr.bin/make/unit-tests/varmod-indirect.exp:1.30 Thu Aug 29 20:20:36 2024 +++ src/usr.bin/make/unit-tests/varmod-indirect.exp Thu Oct 31 09:12:13 2024 @@ -13,11 +13,11 @@ make: "varmod-indirect.mk" line 164: Unk while evaluating variable "UNDEF" with value "" make: "varmod-indirect.mk" line 167: before make: "varmod-indirect.mk" line 167: after -Parsing line 176: _:= before ${UNDEF} after +Parsing varmod-indirect.mk:176: _:= before ${UNDEF} after Global: _ = # (empty) Var_Parse: ${UNDEF} after (eval-keep-dollar-and-undefined) Global: _ = before ${UNDEF} after -Parsing line 179: _:= before ${UNDEF:${:US,a,a,}} after +Parsing varmod-indirect.mk:179: _:= before ${UNDEF:${:US,a,a,}} after Var_Parse: ${UNDEF:${:US,a,a,}} after (eval-keep-dollar-and-undefined) Indirect modifier "S,a,a," from "${:US,a,a,}" Evaluating modifier ${UNDEF:S...} on value "" (eval-keep-dollar-and-undefined, undefined) @@ -26,11 +26,11 @@ Modifier part: "a" ModifyWords: split "" into 1 word Result of ${UNDEF:S,a,a,} is "" (eval-keep-dollar-and-undefined, undefined) Global: _ = before ${UNDEF:S,a,a,} after -Parsing line 189: _:= before ${UNDEF:${:U}} after +Parsing varmod-indirect.mk:189: _:= before ${UNDEF:${:U}} after Var_Parse: ${UNDEF:${:U}} after (eval-keep-dollar-and-undefined) Indirect modifier "" from "${:U}" Global: _ = before ${UNDEF:} after -Parsing line 195: _:= before ${UNDEF:${:UZ}} after +Parsing varmod-indirect.mk:195: _:= before ${UNDEF:${:UZ}} after Var_Parse: ${UNDEF:${:UZ}} after (eval-keep-dollar-and-undefined) Indirect modifier "Z" from "${:UZ}" Evaluating modifier ${UNDEF:Z} on value "" (eval-keep-dollar-and-undefined, undefined) @@ -38,7 +38,7 @@ make: "varmod-indirect.mk" line 195: Unk while evaluating variable "UNDEF" with value "" Result of ${UNDEF:Z} is error (eval-keep-dollar-and-undefined, undefined) Global: _ = before ${UNDEF:Z} after -Parsing line 197: .MAKEFLAGS: -d0 +Parsing varmod-indirect.mk:197: .MAKEFLAGS: -d0 ParseDependency(.MAKEFLAGS: -d0) Global: .MAKEFLAGS = -r -k -d 0 -d pv -d Global: .MAKEFLAGS = -r -k -d 0 -d pv -d 0 Index: src/usr.bin/make/unit-tests/varmod-loop.exp diff -u src/usr.bin/make/unit-tests/varmod-loop.exp:1.21 src/usr.bin/make/unit-tests/varmod-loop.exp:1.22 --- src/usr.bin/make/unit-tests/varmod-loop.exp:1.21 Sat Jun 1 05:08:48 2024 +++ src/usr.bin/make/unit-tests/varmod-loop.exp Thu Oct 31 09:12:13 2024 @@ -1,12 +1,12 @@ -Parsing line 89: USE_8_DOLLARS= ${:U1:@var@${8_DOLLARS}@} ${8_DOLLARS} $$$$$$$$ -Parsing line 90: .if ${USE_8_DOLLARS} != "\$\$\$\$ \$\$\$\$ \$\$\$\$" +Parsing varmod-loop.mk:89: USE_8_DOLLARS= ${:U1:@var@${8_DOLLARS}@} ${8_DOLLARS} $$$$$$$$ +Parsing varmod-loop.mk:90: .if ${USE_8_DOLLARS} != "\$\$\$\$ \$\$\$\$ \$\$\$\$" CondParser_Eval: ${USE_8_DOLLARS} != "\$\$\$\$ \$\$\$\$ \$\$\$\$" Comparing "$$$$ $$$$ $$$$" != "$$$$ $$$$ $$$$" -Parsing line 94: SUBST_CONTAINING_LOOP:= ${USE_8_DOLLARS} -Parsing line 116: .if ${SUBST_CONTAINING_LOOP} != "\$\$ \$\$\$\$ \$\$\$\$" +Parsing varmod-loop.mk:94: SUBST_CONTAINING_LOOP:= ${USE_8_DOLLARS} +Parsing varmod-loop.mk:116: .if ${SUBST_CONTAINING_LOOP} != "\$\$ \$\$\$\$ \$\$\$\$" CondParser_Eval: ${SUBST_CONTAINING_LOOP} != "\$\$ \$\$\$\$ \$\$\$\$" Comparing "$$ $$$$ $$$$" != "$$ $$$$ $$$$" -Parsing line 119: .MAKEFLAGS: -d0 +Parsing varmod-loop.mk:119: .MAKEFLAGS: -d0 ParseDependency(.MAKEFLAGS: -d0) :varname-overwriting-target: :x1y x2y x3y: :: mod-loop-dollar:1: Index: src/usr.bin/make/unit-tests/varname-dot-shell.exp diff -u src/usr.bin/make/unit-tests/varname-dot-shell.exp:1.21 src/usr.bin/make/unit-tests/varname-dot-shell.exp:1.22 --- src/usr.bin/make/unit-tests/varname-dot-shell.exp:1.21 Sun Apr 14 12:30:48 2024 +++ src/usr.bin/make/unit-tests/varname-dot-shell.exp Thu Oct 31 09:12:13 2024 @@ -1,34 +1,34 @@ -Parsing line 10: ORIG_SHELL:= ${.SHELL} +Parsing varname-dot-shell.mk:10: ORIG_SHELL:= ${.SHELL} Global: ORIG_SHELL = # (empty) Var_Parse: ${.SHELL} (eval-keep-dollar-and-undefined) Global: ignoring delete '.SHELL' as it is not found Command: .SHELL = (details omitted) Global: ORIG_SHELL = (details omitted) -Parsing line 12: .SHELL= overwritten +Parsing varname-dot-shell.mk:12: .SHELL= overwritten Global: ignoring '.SHELL = overwritten' due to a command line variable of the same name -Parsing line 13: .if ${.SHELL} != ${ORIG_SHELL} +Parsing varname-dot-shell.mk:13: .if ${.SHELL} != ${ORIG_SHELL} CondParser_Eval: ${.SHELL} != ${ORIG_SHELL} Var_Parse: ${.SHELL} != ${ORIG_SHELL} (eval-defined) Var_Parse: ${ORIG_SHELL} (eval-defined) Comparing "(details omitted)" != "(details omitted)" -Parsing line 19: .MAKEFLAGS: .SHELL+=appended +Parsing varname-dot-shell.mk:19: .MAKEFLAGS: .SHELL+=appended ParseDependency(.MAKEFLAGS: .SHELL+=appended) Command: ignoring '.SHELL += appended' as it is read-only -Parsing line 20: .if ${.SHELL} != ${ORIG_SHELL} +Parsing varname-dot-shell.mk:20: .if ${.SHELL} != ${ORIG_SHELL} CondParser_Eval: ${.SHELL} != ${ORIG_SHELL} Var_Parse: ${.SHELL} != ${ORIG_SHELL} (eval-defined) Var_Parse: ${ORIG_SHELL} (eval-defined) Comparing "(details omitted)" != "(details omitted)" -Parsing line 27: .undef .SHELL +Parsing varname-dot-shell.mk:27: .undef .SHELL Global: ignoring delete '.SHELL' as it is not found -Parsing line 28: .SHELL= newly overwritten +Parsing varname-dot-shell.mk:28: .SHELL= newly overwritten Global: ignoring '.SHELL = newly overwritten' due to a command line variable of the same name -Parsing line 29: .if ${.SHELL} != ${ORIG_SHELL} +Parsing varname-dot-shell.mk:29: .if ${.SHELL} != ${ORIG_SHELL} CondParser_Eval: ${.SHELL} != ${ORIG_SHELL} Var_Parse: ${.SHELL} != ${ORIG_SHELL} (eval-defined) Var_Parse: ${ORIG_SHELL} (eval-defined) Comparing "(details omitted)" != "(details omitted)" -Parsing line 33: .MAKEFLAGS: -d0 +Parsing varname-dot-shell.mk:33: .MAKEFLAGS: -d0 ParseDependency(.MAKEFLAGS: -d0) Global: .MAKEFLAGS = -r -k -d cpv -d Global: .MAKEFLAGS = -r -k -d cpv -d 0