The NetBSD Project

CVS log for src/usr.bin/make/unit-tests/varmod-match-escape.exp

[BACK] Up to [cvs.NetBSD.org] / src / usr.bin / make / unit-tests

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.25: download - view: text, markup, annotated - select for diffs
Thu Aug 29 20:20:36 2024 UTC (3 months, 1 week ago) by rillig
Branches: MAIN
CVS tags: HEAD
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +6 -3 lines
make: reduce line length in error messages

The error messages for deeply nested parse errors were hard to decipher,
due to the large amount of text.  Split these messages into individual
lines, just as in the backtrace for .include files and .for loops.  This
unified backtrace makes the output more uniform.

Revision 1.24: download - view: text, markup, annotated - select for diffs
Tue Jul 9 17:07:23 2024 UTC (4 months, 4 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +4 -2 lines
make: error out on syntax errors in ':M' and ':N' modifiers

More than a year ago, the warning has been added.  Now it has been
promoted to an error.

Revision 1.23: download - view: text, markup, annotated - select for diffs
Fri Jul 5 19:47:22 2024 UTC (5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +1 -1 lines
make: in error messages for anonymous variables, log the value

Revision 1.22: download - view: text, markup, annotated - select for diffs
Thu Jul 4 20:18:40 2024 UTC (5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +1 -1 lines
make: on error, print the targets to be made

This helps to understand situations with several nested sub-makes in
varying directories.

Revision 1.21: download - view: text, markup, annotated - select for diffs
Thu Jul 4 17:47:54 2024 UTC (5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +2 -2 lines
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.

Revision 1.20: download - view: text, markup, annotated - select for diffs
Sat Jun 15 19:43:56 2024 UTC (5 months, 3 weeks ago) by rillig
Branches: MAIN
CVS tags: perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +2 -2 lines
make: in warnings, move the word "warning" to the front

Revision 1.19: download - view: text, markup, annotated - select for diffs
Sat Apr 20 10:18:55 2024 UTC (7 months, 2 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +3 -3 lines
make: provide more context information for parse/evaluate errors

Revision 1.18: download - view: text, markup, annotated - select for diffs
Fri Jun 23 04:56:54 2023 UTC (17 months, 2 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +2 -0 lines
make: warn about malformed patterns in ':M', ':N' and '.if make(...)'

These patterns shouldn't occur in practice, as their results are tricky
to predict.  Generate a warning for now, and maybe an error later.

Reviewed by sjg@.

Revision 1.17: download - view: text, markup, annotated - select for diffs
Thu Jun 1 20:56:35 2023 UTC (18 months ago) by rillig
Branches: MAIN
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +2 -2 lines
tests/make: force line-based diagnostics to be listed in the tests

This way, contradictions between the intended output and the actual
output are closer together and have a better chance of being spotted.

Revision 1.16: download - view: text, markup, annotated - select for diffs
Thu Mar 3 19:36:35 2022 UTC (2 years, 9 months ago) by rillig
Branches: MAIN
CVS tags: netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +2 -2 lines
make: make debug logging for comparisons less technical

Revision 1.15: download - view: text, markup, annotated - select for diffs
Sat Apr 10 22:09:54 2021 UTC (3 years, 7 months ago) by rillig
Branches: MAIN
CVS tags: cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +0 -6 lines
make: reduce debug logging and memory allocation for ${:U...}

Expressions of the form ${:U...} are often generated by .for loops.
Since these expressions are not generated knowingly by the make user, do
not fill the debug log with them since that would interrupt the normal
reading flow of the -dv log for nested expressions.

Revision 1.14: download - view: text, markup, annotated - select for diffs
Tue Apr 6 01:38:39 2021 UTC (3 years, 8 months ago) by rillig
Branches: MAIN
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +4 -4 lines
make: reduce verbosity of the -dv debug logging for standard cases

The verbosity was already removed from LogBeforeApply, now it is
consistent between LogBeforeApply and LogAfterApply.

Revision 1.13: download - view: text, markup, annotated - select for diffs
Mon Apr 5 13:35:41 2021 UTC (3 years, 8 months ago) by rillig
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +4 -4 lines
make: in debug log, add space between scope and variable name

Without this space, the debug log looked more like line noise, even
though the only punctuation was a single innocent ':'.  From a make
user's perspective, the variable name is a word of its own and should
not be visually glued to its namespace.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Mon Apr 5 13:27:30 2021 UTC (3 years, 8 months ago) by rillig
Branches: MAIN
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +4 -4 lines
make: omit unnecessary details from -dv debug log

When an expression is based on a defined variable, it does not matter
whether the evaluation mode is "eval" or "eval-defined", therefore omit
these details to reduce confusion.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Mon Apr 5 13:14:55 2021 UTC (3 years, 8 months ago) by rillig
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +8 -8 lines
make: be more verbose in -dv debug logging

The previous log output was too brief to be understandable.  Give more
hints by describing each part of the expression when evaluating a
modifier.  Distinguish between parse-only mode and eval mode since in
parse-only mode most of the details are irrelevant.

Revision 1.10: download - view: text, markup, annotated - select for diffs
Mon Apr 5 12:51:35 2021 UTC (3 years, 8 months ago) by rillig
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +4 -20 lines
make: clean up debug logging for ':M' and ':N'

Using square brackets as quotes was confusing since patterns can contain
square brackets themselves.

The debug logging for VarMatch was a bit too detailed.  Having the
"before" and "after" states is enough for all practically relevant
cases.

Revision 1.9: download - view: text, markup, annotated - select for diffs
Sat Apr 3 22:02:59 2021 UTC (3 years, 8 months ago) by rillig
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +16 -16 lines
make: remove VarFlags from debug logging

Before the introduction of ExprDefined, VarFlags contained whether the
expression was defined or not, which was useful to know since the final
value of the expression depends on this information.  The other VarFlags
do not influence the evaluation, so there is no point logging them.

Revision 1.8: download - view: text, markup, annotated - select for diffs
Mon Mar 15 15:39:13 2021 UTC (3 years, 8 months ago) by rillig
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +24 -24 lines
make: change debug log for variable evaluation flags to lowercase

This makes them easier distinguishable from variable names since the
latter are usually uppercase.

No functional change outside debug mode.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Mon Feb 15 18:23:32 2021 UTC (3 years, 9 months ago) by rillig
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +16 -16 lines
make: rename ExprDefined constants for debug logging

Revision 1.6: download - view: text, markup, annotated - select for diffs
Tue Feb 2 16:18:16 2021 UTC (3 years, 10 months ago) by rillig
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +8 -8 lines
make: replace VarExprFlags with VarExprStatus

The combination of !VEF_UNDEF && VEF_DEF was not possible, which made it
rather strange to model this state as a bit set.

The only functional change is the renamed constants in the debug output.

Using ENUM_VALUE_RTTI_2 felt like overengineering since it's harder to
understand than a simple array of names.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Sun Nov 1 19:49:28 2020 UTC (4 years, 1 month ago) by rillig
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +4 -1 lines
make(1): add more tests for the variable modifier :M

Despite its popularity and usefulness, the variable modifier :M is
implemented so weirdly that it's not surprising people get confused
about make's parsing and escaping rules.

Revision 1.4: download - view: text, markup, annotated - select for diffs
Sun Nov 1 19:25:23 2020 UTC (4 years, 1 month ago) by rillig
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +31 -2 lines
make(1): add test for surprising parsing result of the :M modifier

Revision 1.3: download - view: text, markup, annotated - select for diffs
Sun Nov 1 19:02:22 2020 UTC (4 years, 1 month ago) by rillig
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +26 -2 lines
make(1): move test flags to test varmod-match-escape.mk

Revision 1.2: download - view: text, markup, annotated - select for diffs
Sun Oct 25 17:37:36 2020 UTC (4 years, 1 month ago) by sjg
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +2 -0 lines
Skip reading .MAKE.DEPENDFILE if set to
"/dev/null" or anything starting with "no".

Ref: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=223564

Revision 1.1: download - view: text, markup, annotated - select for diffs
Sun Aug 16 20:03:53 2020 UTC (4 years, 3 months ago) by rillig
Branches: MAIN
make(1): move tests for the :M modifier into separate files

The test for the different escaping has been adjusted to actually show
the different parsing results in the test output.  To do this, it had to
get its own file since it needs the -dv debug flag and specialized
post-processing.

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

CVSweb <webmaster@jp.NetBSD.org>