xref: /freebsd/contrib/bmake/unit-tests/suff-transform-select.mk (revision 06b9b3e0ad0dc3f0166b3e8f26ced68c271cf527)
1*06b9b3e0SSimon J. Gerraty# $NetBSD: suff-transform-select.mk,v 1.3 2020/11/23 14:47:12 rillig Exp $
2956e45f6SSimon J. Gerraty#
3956e45f6SSimon J. Gerraty# https://gnats.netbsd.org/49086, issue 10:
4956e45f6SSimon J. Gerraty# Explicit dependencies affect transformation rule selection.
5956e45f6SSimon J. Gerraty#
6956e45f6SSimon J. Gerraty# If issue10.e is wanted and both issue10.d and issue10.f are available,
7956e45f6SSimon J. Gerraty# make should choose the .d.e rule, because .d is before .f in .SUFFIXES.
8956e45f6SSimon J. Gerraty# The bug was that if issue10.d had an explicit dependency on issue10.f,
9956e45f6SSimon J. Gerraty# it would choose .f.e instead.
10956e45f6SSimon J. Gerraty
11*06b9b3e0SSimon J. Gerraty.MAKEFLAGS: -ds
12*06b9b3e0SSimon J. Gerraty
13956e45f6SSimon J. Gerraty_!=	rm -f issue10.*
14956e45f6SSimon J. Gerraty
15956e45f6SSimon J. Gerratyall: issue10.e
16956e45f6SSimon J. Gerraty
17956e45f6SSimon J. Gerraty.c.d .d.c .d .d.e .e.d:
18956e45f6SSimon J. Gerraty	: 'Making ${.TARGET} from ${.IMPSRC} (first set).'
19956e45f6SSimon J. Gerraty
20956e45f6SSimon J. Gerraty.SUFFIXES: .c .d .e .f .g
21956e45f6SSimon J. Gerraty
22956e45f6SSimon J. Gerraty.e .e.f .f.e:
23956e45f6SSimon J. Gerraty	: 'Making ${.TARGET} from ${.IMPSRC} (second set).'
24956e45f6SSimon J. Gerraty
25956e45f6SSimon J. Gerratyissue10.d issue10.f:
26956e45f6SSimon J. Gerraty	: 'Making ${.TARGET} out of nothing.'
27956e45f6SSimon J. Gerraty
28956e45f6SSimon J. Gerraty# XXX: see suff-bug-endless, which must be fixed first.
29956e45f6SSimon J. Gerraty#.MAKEFLAGS: -dg1
30*06b9b3e0SSimon J. Gerraty
31*06b9b3e0SSimon J. Gerraty# Before 24-11-2020, resolving all.e ran into an endless loop.
32