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.10 / (download) - annotate - [select for diffs], Wed Feb 9 21:09:24 2022 UTC (11 months, 3 weeks ago) by rillig
Branch: MAIN
CVS Tags: netbsd-10-base, netbsd-10, HEAD
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 (12 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 (2 years, 3 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 (2 years, 3 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 (2 years, 3 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 (2 years, 3 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 (2 years, 3 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 (2 years, 4 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 (2 years, 5 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 (2 years, 5 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>