1 1.1 apb # $Id: varcmd.mk,v 1.1 2014/08/21 13:44:52 apb Exp $ 2 1.1 apb # 3 1.1 apb # Test behaviour of recursive make and vars set on command line. 4 1.1 apb 5 1.1 apb FU=fu 6 1.1 apb FOO?=foo 7 1.1 apb .if !empty(.TARGETS) 8 1.1 apb TAG=${.TARGETS} 9 1.1 apb .endif 10 1.1 apb TAG?=default 11 1.1 apb 12 1.1 apb all: one 13 1.1 apb 14 1.1 apb show: 15 1.1 apb @echo "${TAG} FU=<v>${FU}</v> FOO=<v>${FOO}</v> VAR=<v>${VAR}</v>" 16 1.1 apb 17 1.1 apb one: show 18 1.1 apb @${.MAKE} -f ${MAKEFILE} FU=bar FOO=goo two 19 1.1 apb 20 1.1 apb two: show 21 1.1 apb @${.MAKE} -f ${MAKEFILE} three 22 1.1 apb 23 1.1 apb three: show 24 1.1 apb @${.MAKE} -f ${MAKEFILE} four 25 1.1 apb 26 1.1 apb 27 1.1 apb .ifmake four 28 1.1 apb VAR=Internal 29 1.1 apb .MAKEOVERRIDES+= VAR 30 1.1 apb .endif 31 1.1 apb 32 1.1 apb four: show 33 1.1 apb @${.MAKE} -f ${MAKEFILE} five 34 1.1 apb 35 1.1 apb M = x 36 1.1 apb V.y = is y 37 1.1 apb V.x = is x 38 1.1 apb V := ${V.$M} 39 1.1 apb K := ${V} 40 1.1 apb 41 1.1 apb show-v: 42 1.1 apb @echo '${TAG} v=${V} k=${K}' 43 1.1 apb 44 1.1 apb five: show show-v 45 1.1 apb @${.MAKE} -f ${MAKEFILE} M=y six 46 1.1 apb 47 1.1 apb six: show-v 48 1.1 apb @${.MAKE} -f ${MAKEFILE} V=override show-v 49 1.1 apb 50