freebsd-dev/external/bsd/bmake/dist/unit-tests/varcmd
2012-06-20 00:41:31 +00:00

50 lines
719 B
Plaintext

# $Id: varcmd,v 1.3 2008/05/15 04:30:47 sjg Exp $
#
# Test behaviour of recursive make and vars set on command line.
FU=fu
FOO?=foo
.if !empty(.TARGETS)
TAG=${.TARGETS}
.endif
TAG?=default
all: one
show:
@echo "${TAG} FU=<v>${FU}</v> FOO=<v>${FOO}</v> VAR=<v>${VAR}</v>"
one: show
@${.MAKE} -f ${MAKEFILE} FU=bar FOO=goo two
two: show
@${.MAKE} -f ${MAKEFILE} three
three: show
@${.MAKE} -f ${MAKEFILE} four
.ifmake four
VAR=Internal
.MAKEOVERRIDES+= VAR
.endif
four: show
@${.MAKE} -f ${MAKEFILE} five
M = x
V.y = is y
V.x = is x
V := ${V.$M}
K := ${V}
show-v:
@echo '${TAG} v=${V} k=${K}'
five: show show-v
@${.MAKE} -f ${MAKEFILE} M=y six
six: show-v
@${.MAKE} -f ${MAKEFILE} V=override show-v