The NetBSD Project

CVS log for src/usr.bin/make/unit-tests/opt-debug-lint.mk

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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.16 / (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.15: +3 -3 lines
Diff to previous 1.15 (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.15 / (download) - annotate - [select for diffs], Thu Jun 1 20:56:35 2023 UTC (10 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.14: +8 -1 lines
Diff to previous 1.14 (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.14 / (download) - annotate - [select for diffs], Sun Mar 14 10:57:12 2021 UTC (3 years, 1 month 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, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Changes since 1.13: +10 -7 lines
Diff to previous 1.13 (colored)

make: fix wrong expression evaluation in -dL mode

The modifier ':C' now only compiles the regular expression if the result
of the expression is actually needed.

Several other modifiers have the same bug of evaluating the expression
in cases where this is not needed.  It just doesn't show up because they
don't have any noticeable side effects, other than wasting CPU time.
This affects irrelevant conditions as well.

Revision 1.13 / (download) - annotate - [select for diffs], Sun Mar 14 10:45:51 2021 UTC (3 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.12: +14 -3 lines
Diff to previous 1.12 (colored)

make: demonstrate wrong expression evaluation in -dL mode

Revision 1.12 / (download) - annotate - [select for diffs], Sun Dec 20 19:10:53 2020 UTC (3 years, 3 months ago) by rillig
Branch: MAIN
Changes since 1.11: +12 -3 lines
Diff to previous 1.11 (colored)

make(1): remove wrong error message for indirect modifier in lint mode

Revision 1.11 / (download) - annotate - [select for diffs], Sat Oct 24 08:50:17 2020 UTC (3 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.10: +2 -2 lines
Diff to previous 1.10 (colored)

make(1): use consistent indentation in variable assignments

Initial work by "pkglint -F *.mk", manually adjusted in a few places.

Revision 1.10 / (download) - annotate - [select for diffs], Mon Oct 5 19:27:48 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.9: +13 -1 lines
Diff to previous 1.9 (colored)

make(1): revert previous commit

It had accidentally reverted all the work from the past few days.

Revision 1.9 / (download) - annotate - [select for diffs], Mon Oct 5 19:24:29 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.8: +0 -12 lines
Diff to previous 1.8 (colored)

make(1): fix double-free bug in -DCLEANUP mode (since 2020-10-02)

The bug had been introduced with dir.c 1.155 on 2020-10-02 22:20:25.  In
that commit, openDirectories was replaced with a combination of a list
with a hash table, for more efficient lookup by name.

Upon cleanup, OpenDirs_Done is called, which in turn called
Dir_ClearPath.  Dir_ClearPath takes full ownership of the given list and
empties it.  This was no problem before since afterwards the list was
empty and calling Lst_Free just frees the remaining list pointer.

With OpenDirs, this list was combined with a hash table, and the hash
table contains the list nodes, assuming that the OpenDirs functions have
full ownership of both the list and the hash table.  This assumption was
generally correct, except for the one moment during cleanup where full
ownership of the list was passed to Dir_ClearPath, while the hash table
still contained pointers to the (now freed) list nodes.  This by itself
was not a problem since the hash table would be freed afterwards.  But
as part of Dir_ClearPath, OpenDirs_Remove was called, which looked up
the freed directory by name and now found the freed list node, trying to
free it again.  Boom.

Fixed by replacing the call to Dir_ClearPath with code that only frees
the directories, without giving up control over the list.

Revision 1.8 / (download) - annotate - [select for diffs], Sat Oct 3 12:26:11 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.7: +13 -1 lines
Diff to previous 1.7 (colored)

make(1): add test for variable modifiers without delimiter

Revision 1.7 / (download) - annotate - [select for diffs], Mon Sep 14 21:55:53 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.6: +1 -4 lines
Diff to previous 1.6 (colored)

make(1): fix wrong error for undefined variables in lint mode

Revision 1.6 / (download) - annotate - [select for diffs], Mon Sep 14 21:52:49 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.5: +13 -1 lines
Diff to previous 1.5 (colored)

make(1): add test for wrong error in lint mode for undefined variable

Revision 1.5 / (download) - annotate - [select for diffs], Mon Sep 14 21:23:58 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.4: +6 -1 lines
Diff to previous 1.4 (colored)

make(1): in lint mode, allow undefined variables in dependency lines

This is needed to get past the first few seconds in a src/build.sh run.

The nest obstacle is src/tools/Makefile.gnuhost:30, where the variable
MODULE is undefined even though that file says in line 3 that MODULE is
expected to be set.  It has been saying this since 2001, but since make
didn't have the corresponding check enabled, this didn't break the
build.

Revision 1.4 / (download) - annotate - [select for diffs], Mon Sep 14 07:13:29 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.3: +6 -5 lines
Diff to previous 1.3 (colored)

make(1): remove obsolete comments from tests

Revision 1.3 / (download) - annotate - [select for diffs], Sun Sep 13 20:21:24 2020 UTC (3 years, 7 months ago) by rillig
Branch: MAIN
Changes since 1.2: +10 -1 lines
Diff to previous 1.2 (colored)

make(1): in lint mode, report undefined variables in conditions

Revision 1.2 / (download) - annotate - [select for diffs], Sun Sep 13 19:28:46 2020 UTC (3 years, 7 months ago) by rillig
Branch: MAIN
Changes since 1.1: +29 -2 lines
Diff to previous 1.1 (colored)

make(1): in lint mode, improve error handling for undefined variables

It's a first step for improving the error message that make prints.

Revision 1.1 / (download) - annotate - [select for diffs], Sat Sep 5 06:20:51 2020 UTC (3 years, 7 months ago) by rillig
Branch: MAIN

make(1): add tests for each debug option

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>