head	1.9;
access;
symbols
	netbsd-11-0-RC6:1.9
	netbsd-11-0-RC5:1.9
	netbsd-11-0-RC4:1.9
	netbsd-11-0-RC3:1.9
	netbsd-11-0-RC2:1.9
	netbsd-11-0-RC1:1.9
	perseant-exfatfs-base-20250801:1.9
	netbsd-11:1.9.0.2
	netbsd-11-base:1.9
	netbsd-10-1-RELEASE:1.6
	perseant-exfatfs-base-20240630:1.7
	perseant-exfatfs:1.7.0.2
	perseant-exfatfs-base:1.7
	netbsd-10-0-RELEASE:1.6
	netbsd-10-0-RC6:1.6
	netbsd-10-0-RC5:1.6
	netbsd-10-0-RC4:1.6
	netbsd-10-0-RC3:1.6
	netbsd-10-0-RC2:1.6
	netbsd-10-0-RC1:1.6
	netbsd-10:1.6.0.2
	netbsd-10-base:1.6
	cjep_sun2x-base1:1.5
	cjep_sun2x:1.5.0.4
	cjep_sun2x-base:1.5
	cjep_staticlib_x-base1:1.5
	cjep_staticlib_x:1.5.0.2
	cjep_staticlib_x-base:1.5;
locks; strict;
comment	@# @;


1.9
date	2025.03.30.09.51.50;	author rillig;	state Exp;
branches;
next	1.8;
commitid	veGmSzVhPiW2G4PF;

1.8
date	2024.07.04.20.18.40;	author rillig;	state Exp;
branches;
next	1.7;
commitid	75IS4XOhTa8VOygF;

1.7
date	2023.06.01.20.56.35;	author rillig;	state Exp;
branches
	1.7.2.1;
next	1.6;
commitid	j3tIvMRlxolKQhrE;

1.6
date	2022.01.22.16.23.56;	author rillig;	state Exp;
branches;
next	1.5;
commitid	P3nHWTMw6l7sgEpD;

1.5
date	2020.11.15.20.20.58;	author rillig;	state Exp;
branches;
next	1.4;
commitid	XVSvahyacE1wu1wC;

1.4
date	2020.11.11.07.13.42;	author rillig;	state Exp;
branches;
next	1.3;
commitid	wGg594W1JeVqgrvC;

1.3
date	2020.08.30.14.25.45;	author rillig;	state Exp;
branches;
next	1.2;
commitid	Jb15yF4JkLIj06mC;

1.2
date	2020.08.29.19.07.32;	author rillig;	state Exp;
branches;
next	1.1;
commitid	PWuyR02cgJsSAZlC;

1.1
date	2020.08.16.12.07.51;	author rillig;	state Exp;
branches;
next	;
commitid	coEgPk3hgfeYGhkC;

1.7.2.1
date	2025.08.02.05.58.34;	author perseant;	state Exp;
branches;
next	;
commitid	23j6GFaDws3O875G;


desc
@@


1.9
log
@make: use '"filename" line 123' for locations instead of 'filename:123'

The format 'filename:123' is commonly used for identifying a location in
a file. Text editors recognize it and allow quick navigation through it.
The previous format was specific to make and would have required custom
support in editors.

The new format was already used in stack traces, except for the first
line. Now all lines use the same format.
@
text
@make: directive-ifmake.mk:14: ok: positive condition works
make: directive-ifmake.mk:26: ok: negation works
make: directive-ifmake.mk:36: ok: double negation works
make: directive-ifmake.mk:44: ok: both mentioned
make: directive-ifmake.mk:52: ok: only those mentioned
make: directive-ifmake.mk:63: Targets can even be added at parse time.
make: directive-ifmake.mk:82: ok
: first
: second
: late-target
make: don't know how to make !edge (continuing)

Stop.
make: stopped making "first second late-target !edge" in unit-tests
exit status 1
@


1.8
log
@make: on error, print the targets to be made

This helps to understand situations with several nested sub-makes in
varying directories.
@
text
@d1 7
a7 7
make: "directive-ifmake.mk" line 14: ok: positive condition works
make: "directive-ifmake.mk" line 26: ok: negation works
make: "directive-ifmake.mk" line 36: ok: double negation works
make: "directive-ifmake.mk" line 44: ok: both mentioned
make: "directive-ifmake.mk" line 52: ok: only those mentioned
make: "directive-ifmake.mk" line 63: Targets can even be added at parse time.
make: "directive-ifmake.mk" line 82: ok
@


1.7
log
@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.
@
text
@d14 1
a14 1
make: stopped in unit-tests
@


1.7.2.1
log
@Sync with HEAD
@
text
@d1 7
a7 7
make: directive-ifmake.mk:14: ok: positive condition works
make: directive-ifmake.mk:26: ok: negation works
make: directive-ifmake.mk:36: ok: double negation works
make: directive-ifmake.mk:44: ok: both mentioned
make: directive-ifmake.mk:52: ok: only those mentioned
make: directive-ifmake.mk:63: Targets can even be added at parse time.
make: directive-ifmake.mk:82: ok
d14 1
a14 1
make: stopped making "first second late-target !edge" in unit-tests
@


1.6
log
@tests/make: explore edge cases involving .ifmake
@
text
@d1 7
a7 7
make: "directive-ifmake.mk" line 13: ok: positive condition works
make: "directive-ifmake.mk" line 24: ok: negation works
make: "directive-ifmake.mk" line 33: ok: double negation works
make: "directive-ifmake.mk" line 40: ok: both mentioned
make: "directive-ifmake.mk" line 47: ok: only those mentioned
make: "directive-ifmake.mk" line 57: Targets can even be added at parse time.
make: "directive-ifmake.mk" line 75: ok
@


1.5
log
@make(1): update and add comments in tests

As a result of the new comments, some line numbers have changed in the
output of the tests.  No other changes.
@
text
@d11 5
a15 1
exit status 0
@


1.4
log
@make(1): add test to cover the If_Eval call in EvalNotEmpty
@
text
@d1 7
a7 7
make: "directive-ifmake.mk" line 10: ok: positive condition works
make: "directive-ifmake.mk" line 21: ok: negation works
make: "directive-ifmake.mk" line 27: ok: double negation works
make: "directive-ifmake.mk" line 34: ok: both mentioned
make: "directive-ifmake.mk" line 41: ok: only those mentioned
make: "directive-ifmake.mk" line 51: Targets can even be added at parse time.
make: "directive-ifmake.mk" line 69: ok
@


1.3
log
@make(1): extend test for .ifmake and .MAKEFLAGS
@
text
@d1 7
a7 6
make: "directive-ifmake.mk" line 8: ok: positive condition works
make: "directive-ifmake.mk" line 19: ok: negation works
make: "directive-ifmake.mk" line 25: ok: double negation works
make: "directive-ifmake.mk" line 32: ok: both mentioned
make: "directive-ifmake.mk" line 39: ok: only those mentioned
make: "directive-ifmake.mk" line 49: Targets can even be added at parse time.
@


1.2
log
@make(1): add test for the .ifmake directive
@
text
@d6 1
d9 1
@


1.1
log
@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.
@
text
@d1 7
@

