1 1.7 rillig # $NetBSD: directive-else.mk,v 1.7 2020/12/14 22:17:11 rillig Exp $ 2 1.1 rillig # 3 1.2 rillig # Tests for the .else directive. 4 1.7 rillig # 5 1.7 rillig # Since 2020-11-13, an '.else' followed by extraneous text generates a parse 6 1.7 rillig # error in -dL (lint) mode. 7 1.7 rillig # 8 1.7 rillig # Since 2020-12-15, an '.else' followed by extraneous text always generates 9 1.7 rillig # a parse error. 10 1.1 rillig 11 1.3 rillig .if 0 12 1.4 rillig . warning must not be reached 13 1.7 rillig # The .else directive does not take any arguments. 14 1.3 rillig .else 123 15 1.4 rillig . info ok 16 1.3 rillig .endif 17 1.3 rillig 18 1.3 rillig .if 1 19 1.4 rillig . info ok 20 1.7 rillig # The .else directive does not take any arguments. 21 1.3 rillig .else 123 22 1.4 rillig . warning must not be reached 23 1.3 rillig .endif 24 1.3 rillig 25 1.3 rillig # An .else without a corresponding .if is an error. 26 1.3 rillig .else 27 1.3 rillig 28 1.3 rillig # Accidental extra .else directives are detected too. 29 1.3 rillig .if 0 30 1.4 rillig . warning must not be reached 31 1.3 rillig .else 32 1.4 rillig . info ok 33 1.3 rillig .else 34 1.4 rillig . info After an extra .else, everything is skipped. 35 1.3 rillig .endif 36 1.1 rillig 37 1.5 rillig # An .else may have a comment. This comment does not count as an argument, 38 1.5 rillig # therefore no parse error. 39 1.5 rillig .if 0 40 1.5 rillig .else # comment 41 1.5 rillig .endif 42 1.5 rillig 43 1.5 rillig # A variable expression does count as an argument, even if it is empty. 44 1.5 rillig .if 0 45 1.5 rillig .else ${:U} 46 1.5 rillig .endif 47 1.5 rillig 48 1.1 rillig all: 49 1.1 rillig @:; 50