The NetBSD Project

CVS log for src/usr.bin/make/unit-tests/varname.mk

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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.14 / (download) - annotate - [select for diffs], Sun Nov 19 21:47:52 2023 UTC (4 months, 3 weeks ago) by rillig
Branch: MAIN
CVS Tags: HEAD
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

tests/make: replace 'variable expression' with 'expression'

Each expression is based on a variable, there's no need for the
verbosity.  The wording in make's diagnostics will be changed in a
follow-up commit.

Revision 1.13 / (download) - annotate - [select for diffs], Sat Aug 19 11:09:02 2023 UTC (7 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.12: +2 -2 lines
Diff to previous 1.12 (colored)

make: show realistic invalid line in error message

Previously, the error message 'Invalid line' showed only the expanded
line, which might or might not show the actual problem.  To be more
helpful, add the unexpanded line to the error message in case they
differ.

Remove the special handling of invalid lines that result from merge
conflicts.  RCS is not commonly used anymore, and mentioning CVS was too
specific.  By echoing the whole line, the patterns '<<<<<<' and '>>>>>>'
are clear enough to hint at the problem.

Revision 1.12 / (download) - annotate - [select for diffs], Sat Aug 19 10:52:14 2023 UTC (7 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.11: +2 -2 lines
Diff to previous 1.11 (colored)

make: add more details to error message about invalid lines

Revision 1.11 / (download) - annotate - [select for diffs], Thu Jun 1 20:56:35 2023 UTC (10 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.10: +4 -1 lines
Diff to previous 1.10 (colored)

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.10 / (download) - annotate - [select for diffs], Wed Feb 9 21:09:24 2022 UTC (2 years, 2 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.9: +2 -2 lines
Diff to previous 1.9 (colored)

make: fix mistakes, spelling and typos in comments and manual page

No binary change for -DNDEBUG.

Revision 1.9 / (download) - annotate - [select for diffs], Thu Jan 27 10:42:02 2022 UTC (2 years, 2 months ago) by rillig
Branch: MAIN
Changes since 1.8: +43 -1 lines
Diff to previous 1.8 (colored)

tests/make: test hash code collisions of variable names

In HashEntry_KeyEquals, the line 'return false' was not covered by any
tests before.  Since it is an edge case that two variable names (or
other keys) have the same 32-bit hash code and still differ, better test
for that edge case explicitly since a bug in this place would be rare
and hard to find.

Revision 1.8 / (download) - annotate - [select for diffs], Mon Nov 2 22:59:48 2020 UTC (3 years, 5 months 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.7: +10 -2 lines
Diff to previous 1.7 (colored)

make(1): document test for parsing of variable assignments

Revision 1.7 / (download) - annotate - [select for diffs], Mon Nov 2 22:44:29 2020 UTC (3 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.6: +5 -1 lines
Diff to previous 1.6 (colored)

make(1): document undefined behavior in Parse_IsVar

Sigh.  If only C could be compiled in strict mode that detects these
out-of-bounds memory accesses.

Revision 1.6 / (download) - annotate - [select for diffs], Mon Nov 2 22:29:48 2020 UTC (3 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.5: +4 -5 lines
Diff to previous 1.5 (colored)

make(1): fix test for parsing obscure variable names

I had forgotten the :U modifier.  Without that modifier, there's no
chance that the variable names would come out correctly.

Revision 1.5 / (download) - annotate - [select for diffs], Mon Nov 2 22:16:24 2020 UTC (3 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.4: +28 -3 lines
Diff to previous 1.4 (colored)

make(1): add tests for parsing ob obscure variable names

Revision 1.4 / (download) - annotate - [select for diffs], Sun Oct 18 08:47:54 2020 UTC (3 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.3: +3 -38 lines
Diff to previous 1.3 (colored)

make(1): sort variables in debug output

This way it's easier to see whether an expected variable is missing, or
to compare the values of related variables, since they usually share a
common prefix.  Any sorting criterion is better than the hash code.

Sorting the variables by name changed the order of the output in
varname.mk.  That test didn't test anything meaningful, it was just a
playground to understand and demonstrate the current implementation of
how the variables are stored, therefore it has been removed.

Revision 1.3 / (download) - annotate - [select for diffs], Sat Sep 5 12:59:07 2020 UTC (3 years, 7 months ago) by rillig
Branch: MAIN
Changes since 1.2: +38 -3 lines
Diff to previous 1.2 (colored)

make(1): add test for intentional hash collision for variable names

Hash collisions may slow down make in certain special situations.  There
is no point though in maliciously triggering such a situation since
anyone who can inject values into makefiles can easily run shell
commands using the :!cmd! modifier or similar mechanisms.  Crafting
variable names just to slow down make is thus not an attack vector.

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

make(1): describe the purpose of each newly added unit test dummy

Revision 1.1 / (download) - annotate - [select for diffs], Sun Aug 16 12:07:52 2020 UTC (3 years, 7 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>