1 1.9 sjg # $NetBSD: varname-dot-makeflags.mk,v 1.9 2025/05/18 21:46:23 sjg Exp $ 2 1.1 rillig # 3 1.1 rillig # Tests for the special .MAKEFLAGS variable, which collects almost all 4 1.1 rillig # command line arguments and passes them on to any child processes via 5 1.1 rillig # the environment variable MAKEFLAGS (without leading '.'). 6 1.2 rillig # 7 1.2 rillig # See also: 8 1.2 rillig # varname-dot-makeoverrides.mk 9 1.2 rillig 10 1.8 rillig # expect+1: MAKEFLAGS=<undefined> 11 1.6 rillig .info MAKEFLAGS=<${MAKEFLAGS:Uundefined}> 12 1.8 rillig # expect+1: .MAKEFLAGS=< -r -k> 13 1.6 rillig .info .MAKEFLAGS=<${.MAKEFLAGS}> 14 1.8 rillig # expect+1: .MAKEOVERRIDES=<> 15 1.6 rillig .info .MAKEOVERRIDES=<${.MAKEOVERRIDES:Uundefined}> 16 1.6 rillig 17 1.6 rillig # Append an option with argument, a plain option and a variable assignment. 18 1.6 rillig .MAKEFLAGS: -DVARNAME -r VAR=value 19 1.6 rillig 20 1.7 rillig # expect+1: MAKEFLAGS=<undefined> 21 1.6 rillig .info MAKEFLAGS=<${MAKEFLAGS:Uundefined}> 22 1.7 rillig # expect+1: .MAKEFLAGS=< -r -k -D VARNAME -r> 23 1.6 rillig .info .MAKEFLAGS=<${.MAKEFLAGS}> 24 1.7 rillig # expect+1: .MAKEOVERRIDES=< VAR> 25 1.6 rillig .info .MAKEOVERRIDES=<${.MAKEOVERRIDES}> 26 1.2 rillig 27 1.7 rillig # After parsing, the environment variable 'MAKEFLAGS' is set based on the 28 1.7 rillig # special variables '.MAKEFLAGS' and '.MAKEOVERRIDES'. 29 1.6 rillig runtime: 30 1.2 rillig @echo '$@: MAKEFLAGS=<'${MAKEFLAGS:Q}'>' 31 1.6 rillig @echo '$@: .MAKEFLAGS=<'${.MAKEFLAGS:Q}'>' 32 1.6 rillig @echo '$@: .MAKEOVERRIDES=<'${.MAKEOVERRIDES:Q}'>' 33