1# $NetBSD: opt.mk,v 1.7 2023/02/25 00:07:08 rillig Exp $ 2# 3# Tests for the command line options. 4 5.MAKEFLAGS: -d0 # make stdout line-buffered 6 7all: .IGNORE 8 # The options from the top-level make are passed to the sub-makes via 9 # the environment variable MAKEFLAGS. This is where the " -r -k -d 0" 10 # comes from. See MainParseOption. 11 ${MAKE} -r -f /dev/null -V MAKEFLAGS 12 @echo 13 14 # Just to see how the custom argument parsing code reacts to a syntax 15 # error. The colon is used in the options string, marking an option 16 # that takes arguments. It is not an option by itself, though. 17 ${MAKE} -: 18 @echo 19 20 # See whether a '--' stops handling of command line options, like in 21 # standard getopt programs. Yes, it does, and it treats the 22 # second '-f' as a target to be created. 23 ${MAKE} -r -f /dev/null -- -VAR=value -f /dev/null 24 @echo 25 26 # This is the normal way to print the usage of a command. 27 ${MAKE} -? 28 @echo 29