The NetBSD Project

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

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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.19 / (download) - annotate - [select for diffs], Sun Jan 7 11:42:22 2024 UTC (3 months, 1 week ago) by rillig
Branch: MAIN
CVS Tags: HEAD
Changes since 1.18: +7 -0 lines
Diff to previous 1.18 (colored)

tests/make: test the '::=' modifier in target scope

Revision 1.18 / (download) - annotate - [select for diffs], Fri Dec 29 15:47:03 2023 UTC (3 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.17: +25 -0 lines
Diff to previous 1.17 (colored)

tests/make: test the '::=' assignment modifier

Revision 1.17 / (download) - annotate - [select for diffs], Tue Nov 30 20:48:01 2021 UTC (2 years, 4 months ago) by rillig
Branch: 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
Changes since 1.16: +0 -12 lines
Diff to previous 1.16 (colored)

tests/make: convert tests for modifier '::=' to parse time

This puts the expected result of the expressions closer to the
expressions, making the tests self-contained.

The error messages that used to produce trailing spaces have been fixed
in var.c 1.853 from 2021-02-23. The error message now encloses the
variable name in quotes.

Revision 1.16 / (download) - annotate - [select for diffs], Tue Apr 6 01:38:39 2021 UTC (3 years ago) by rillig
Branch: MAIN
CVS Tags: cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Changes since 1.15: +1 -1 lines
Diff to previous 1.15 (colored)

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.15 / (download) - annotate - [select for diffs], Mon Apr 5 13:35:41 2021 UTC (3 years ago) by rillig
Branch: MAIN
Changes since 1.14: +6 -6 lines
Diff to previous 1.14 (colored)

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.14 / (download) - annotate - [select for diffs], Mon Apr 5 13:27:30 2021 UTC (3 years ago) by rillig
Branch: MAIN
Changes since 1.13: +1 -1 lines
Diff to previous 1.13 (colored)

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.13 / (download) - annotate - [select for diffs], Mon Apr 5 13:14:55 2021 UTC (3 years ago) by rillig
Branch: MAIN
Changes since 1.12: +1 -1 lines
Diff to previous 1.12 (colored)

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.12 / (download) - annotate - [select for diffs], Sat Apr 3 22:02:59 2021 UTC (3 years ago) by rillig
Branch: MAIN
Changes since 1.11: +2 -2 lines
Diff to previous 1.11 (colored)

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.11 / (download) - annotate - [select for diffs], Mon Mar 15 18:56:38 2021 UTC (3 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.10: +3 -6 lines
Diff to previous 1.10 (colored)

make: fix double varname expansion in the variable modifier '::='

This is an edge case that doesn't occur in practice since pretty much
nobody dares to use variable names that contain an actual '$' in their
name.  This is not about the fairly common VAR.${param} (as written in
the makefile), but instead about the variable whose name is literally
'VAR.${param}'.

The test demonstrates that after the fix, the variable name is taken
exactly as-is for the simple assignment modifier '::='.  There are no
such tests for the modifiers '::+=', '::!=' and '::?=', but that's ok.
The code in ApplyModifier_Assign would look assymetrical and suspicious
enough if one of these modifiers would expand its variable name and the
others wouldn't.

Revision 1.10 / (download) - annotate - [select for diffs], Mon Mar 15 18:46:05 2021 UTC (3 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.9: +17 -0 lines
Diff to previous 1.9 (colored)

tests/make: demonstrate that the modifier '::=' expands the varname

Revision 1.9 / (download) - annotate - [select for diffs], Tue Feb 23 16:07:14 2021 UTC (3 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.8: +2 -2 lines
Diff to previous 1.8 (colored)

make: improve error message for bad modifier in variable expression

The improvement is especially noteable for variable expressions based on
the empty variable, see moderrs.exp:103.

Revision 1.8 / (download) - annotate - [select for diffs], Tue Feb 23 15:19:41 2021 UTC (3 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.7: +1 -1 lines
Diff to previous 1.7 (colored)

make: improve error message for unknown modifier

Back in 1995, the modifiers were all single-character, and it made sense
to print only the first character.  Nowadays, with ':S', ':@var@...@',
'::=' and several others, a little more context is useful to see where
the exact error is.  The actual modifier is still guessed, and the guess
may be wrong as soon as backslashes get involved, but it is still better
than before.

Revision 1.7 / (download) - annotate - [select for diffs], Tue Feb 23 00:04:48 2021 UTC (3 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.6: +1 -1 lines
Diff to previous 1.6 (colored)

make: add quotes around variable name in an error message

Revision 1.6 / (download) - annotate - [select for diffs], Sun Oct 18 21:36:22 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.5: +1 -1 lines
Diff to previous 1.5 (colored)

make(1): explain existing tests for the ::= assignment modifiers

Revision 1.5 / (download) - annotate - [select for diffs], Tue Aug 25 21:16:53 2020 UTC (3 years, 7 months ago) by rillig
Branch: MAIN
Changes since 1.4: +1 -1 lines
Diff to previous 1.4 (colored)

make(1): fix error message for ::!= modifier with shell error

It's just too easy to confuse st->val and val.

Revision 1.4 / (download) - annotate - [select for diffs], Tue Aug 25 21:07:39 2020 UTC (3 years, 7 months ago) by rillig
Branch: MAIN
Changes since 1.3: +3 -0 lines
Diff to previous 1.3 (colored)

make(1): add test for ::!= modifier with shell error

Revision 1.3 / (download) - annotate - [select for diffs], Tue Aug 25 20:49:40 2020 UTC (3 years, 7 months ago) by rillig
Branch: MAIN
Changes since 1.2: +10 -0 lines
Diff to previous 1.2 (colored)

make(1): move test for the ::= modifier to varmod-assign

Revision 1.2 / (download) - annotate - [select for diffs], Sun Aug 16 12:48:55 2020 UTC (3 years, 8 months ago) by rillig
Branch: MAIN
Changes since 1.1: +12 -0 lines
Diff to previous 1.1 (colored)

make(1): move tests for the :gmtime and ::= modifiers to separate files

Revision 1.1 / (download) - annotate - [select for diffs], Sun Aug 16 12:07:51 2020 UTC (3 years, 8 months ago) by rillig
Branch: MAIN

make(1): add dummies for fine-grained tests, one per single feature

The test names have been derived from the current manual page.

All these tests are dummies right now, and the code from the existing
tests will be moved into the new tests step by step.

This is done to prevent modmisc, escape, varmod-edge and varmisc from
growing without any bounds, and to reduce the side-effects of one test
to the others.

This form allows you to request diff's 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.




CVSweb <webmaster@jp.NetBSD.org>