164 lines
2.5 KiB
Makefile
164 lines
2.5 KiB
Makefile
# $NetBSD: directives.mk,v 1.5 2020/07/28 20:57:59 rillig Exp $
|
|
#
|
|
# Tests for parsing directives, in the same order as in the manual page.
|
|
#
|
|
# Each test group has 10 lines, to keep the line numbers in directives.exp
|
|
# stable.
|
|
#
|
|
# no tests for .error since it exits immediately, see ParseMessage.
|
|
|
|
.info begin .export tests
|
|
.expor # misspelled
|
|
.export # oops: missing argument
|
|
.export VARNAME
|
|
.exporting works # oops: misspelled
|
|
|
|
|
|
|
|
|
|
|
|
.info begin .export-env tests
|
|
.export-en # oops: misspelled
|
|
.export-env
|
|
.export-environment # oops: misspelled
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.info begin .export-literal tests
|
|
.export-litera # oops: misspelled
|
|
.export-literal # oops: missing argument
|
|
.export-literal VARNAME
|
|
.export-literally # oops: misspelled
|
|
|
|
|
|
|
|
|
|
|
|
.info begin .info tests
|
|
.inf # misspelled
|
|
.info # oops: message should be "missing parameter"
|
|
.info message
|
|
.info indented message
|
|
.information
|
|
.information message # oops: misspelled
|
|
.info.man: # not a message, but a suffix rule
|
|
|
|
|
|
.info begin .undef tests
|
|
.unde # misspelled
|
|
.undef # oops: missing argument
|
|
.undefined # oops: misspelled
|
|
.undef VARNAME
|
|
|
|
|
|
|
|
|
|
|
|
.info begin .unexport tests
|
|
.unexpor # misspelled
|
|
.unexport # oops: missing argument
|
|
.unexport VARNAME # ok
|
|
.unexporting works # oops: misspelled
|
|
|
|
|
|
|
|
|
|
|
|
.info begin .unexport-env tests
|
|
.unexport-en # misspelled
|
|
.unexport-env # ok
|
|
.unexport-environment # oops: misspelled
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.info begin .warning tests
|
|
.warn # misspelled
|
|
.warnin # misspelled
|
|
.warning # oops: should be "missing argument"
|
|
.warning message # ok
|
|
.warnings # misspelled
|
|
.warnings messages # oops
|
|
|
|
|
|
|
|
.info begin .elif misspellings tests, part 1
|
|
.if 1
|
|
.elif 1 # ok
|
|
.elsif 1 # oops: misspelled
|
|
.elseif 1 # oops: misspelled
|
|
.endif
|
|
|
|
|
|
|
|
|
|
.info begin .elif misspellings tests, part 2
|
|
.if 0
|
|
.elif 0 # ok
|
|
.elsif 0 # oops: misspelled
|
|
.elseif 0 # oops: misspelled
|
|
.endif
|
|
|
|
|
|
|
|
|
|
.info begin .elif misspellings tests, part 3
|
|
.if 0
|
|
.elsif 0 # oops: misspelled
|
|
.endif
|
|
.if 0
|
|
.elseif 0 # oops: misspelled
|
|
.endif
|
|
|
|
|
|
|
|
.info which branch is taken on misspelling after false?
|
|
.if 0
|
|
.elsif 1
|
|
.info 1 taken
|
|
.elsif 2
|
|
.info 2 taken
|
|
.else
|
|
.info else taken
|
|
.endif
|
|
|
|
.info which branch is taken on misspelling after true?
|
|
.if 1
|
|
.elsif 1
|
|
.info 1 taken
|
|
.elsif 2
|
|
.info 2 taken
|
|
.else
|
|
.info else taken
|
|
.endif
|
|
|
|
.indented none
|
|
. indented 2 spaces
|
|
. indented tab
|
|
.${:Uinfo} directives cannot be indirect
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.include "nonexistent.mk"
|
|
.include "/dev/null" # size 0
|
|
# including a directory technically succeeds, but shouldn't.
|
|
#.include "." # directory
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.info end of the tests
|
|
|
|
all:
|
|
@:
|