11590Srgrimes# $Id: cond1.mk,v 1.1.1.1 2014/08/30 18:57:18 sjg Exp $
21590Srgrimes
31590Srgrimes# hard code these!
41590SrgrimesTEST_UNAME_S= NetBSD
51590SrgrimesTEST_UNAME_M= sparc
61590SrgrimesTEST_MACHINE= i386
71590Srgrimes
81590Srgrimes.if ${TEST_UNAME_S}
91590SrgrimesOk=var,
101590Srgrimes.endif
111590Srgrimes.if ("${TEST_UNAME_S}")
121590SrgrimesOk+=(\"var\"),
131590Srgrimes.endif
141590Srgrimes.if (${TEST_UNAME_M} != ${TEST_MACHINE})
151590SrgrimesOk+=(var != var),
161590Srgrimes.endif
171590Srgrimes.if ${TEST_UNAME_M} != ${TEST_MACHINE}
181590SrgrimesOk+= var != var,
191590Srgrimes.endif
201590Srgrimes.if !((${TEST_UNAME_M} != ${TEST_MACHINE}) && defined(X))
211590SrgrimesOk+= !((var != var) && defined(name)),
221590Srgrimes.endif
231590Srgrimes# from bsd.obj.mk
241590SrgrimesMKOBJ?=no
251590Srgrimes.if ${MKOBJ} == "no"
261590Srgrimeso= no
271590SrgrimesOk+= var == "quoted",
281590Srgrimes.else
291590Srgrimes.if defined(notMAKEOBJDIRPREFIX) || defined(norMAKEOBJDIR)
301590Srgrimes.if defined(notMAKEOBJDIRPREFIX)
311590Srgrimeso=${MAKEOBJDIRPREFIX}${__curdir}
321590Srgrimes.else
331590Srgrimeso= ${MAKEOBJDIR}
341590Srgrimes.endif
3519234Swollman.endif
361590Srgrimeso= o
3719234Swollman.endif
3819234Swollman
3936916Speter# repeat the above to check we get the same result
401590Srgrimes.if ${MKOBJ} == "no"
411590Srgrimeso2= no
421590Srgrimes.else
431590Srgrimes.if defined(notMAKEOBJDIRPREFIX) || defined(norMAKEOBJDIR)
441590Srgrimes.if defined(notMAKEOBJDIRPREFIX)
451590Srgrimeso2=${MAKEOBJDIRPREFIX}${__curdir}
4614543Sdg.else
471590Srgrimeso2= ${MAKEOBJDIR}
481590Srgrimes.endif
491590Srgrimes.endif
501590Srgrimeso2= o
511590Srgrimes.endif
5236916Speter
531590SrgrimesPRIMES=2 3 5 7 11
541590SrgrimesNUMBERS=1 2 3 4 5
551590Srgrimes
561590Srgrimesn=2
571590Srgrimes.if ${PRIMES:M$n} == ""
581590SrgrimesX=not
591590Srgrimes.else
601590SrgrimesX=
611590Srgrimes.endif
621590Srgrimes
631590Srgrimes.if ${MACHINE_ARCH} == no-such
641590SrgrimesA=one
651590Srgrimes.else
661590Srgrimes.if ${MACHINE_ARCH} == not-this
671590Srgrimes.if ${MACHINE_ARCH} == something-else
681590SrgrimesA=unlikely
691590Srgrimes.else
701590SrgrimesA=no
711590Srgrimes.endif
721590Srgrimes.endif
731590SrgrimesA=other
741590Srgrimes# We expect an extra else warning - we're not skipping here
751590Srgrimes.else
761590SrgrimesA=this should be an error
771590Srgrimes.endif
781590Srgrimes
791590Srgrimes.if $X != ""
801590Srgrimes.if $X == not
811590SrgrimesB=one
821590Srgrimes.else
831590SrgrimesB=other
841590Srgrimes# We expect an extra else warning - we are skipping here
851590Srgrimes.else
861590SrgrimesB=this should be an error
871590Srgrimes.endif
881590Srgrimes.else
891590SrgrimesB=unknown
901590Srgrimes.endif
911590Srgrimes
921590Srgrimes.if "quoted" == quoted
931590SrgrimesC=clever
941590Srgrimes.else
951590SrgrimesC=dim
961590Srgrimes.endif
971590Srgrimes
981590Srgrimes.if defined(nosuch) && ${nosuch:Mx} != ""
991590Srgrimes# this should not happen
1001590Srgrimes.info nosuch is x
1011590Srgrimes.endif
1021590Srgrimes
1031590Srgrimesall:
1041590Srgrimes	@echo "$n is $X prime"
1051590Srgrimes	@echo "A='$A' B='$B' C='$C' o='$o,${o2}'"
1061590Srgrimes	@echo "Passed:${.newline} ${Ok:S/,/${.newline}/}"
1071590Srgrimes	@echo "${NUMBERS:@n@$n is ${("${PRIMES:M$n}" == ""):?not:} prime${.newline}@}"
1081590Srgrimes	@echo "${"${DoNotQuoteHere:U0}" > 0:?OK:No}"
1091590Srgrimes	@echo "${${NoSuchNumber:U42} > 0:?OK:No}"
1101590Srgrimes