dep-colon.mk revision 1.3 1 # $NetBSD: dep-colon.mk,v 1.3 2020/10/17 20:10:04 rillig Exp $
2 #
3 # Tests for the : operator in dependency declarations.
4
5 # TODO: Implementation
6
7 # In a dependency declaration line, there may be a shell command after the
8 # sources. It is separated by a semicolon. This "feature" is required by
9 # POSIX. It is seldom used, if at all.
10 all: target1
11 target1: source1; @echo making ${.TARGET} from ${.ALLSRC}
12 source1: .PHONY
13
14 # The semicolon for separating the sources from the creation commands must
15 # appear at the top-level. The semicolons inside the :S;1;2; modifier are
16 # skipped when looking for the semicolon that separates the sources from
17 # the commands.
18 all: target2
19 target2: source${:U1:S;1;2;}; @echo making ${.TARGET} from ${.ALLSRC}
20 source2: .PHONY
21