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