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