xref: /openbsd/regress/usr.bin/apply/Makefile (revision 76f6aa52)
1*76f6aa52Stobias# $OpenBSD: Makefile,v 1.1 2018/03/27 10:00:16 tobias Exp $
2*76f6aa52Stobias
3*76f6aa52StobiasAPPLY?=		apply
4*76f6aa52StobiasCLEANFILES=	*.res
5*76f6aa52Stobias
6*76f6aa52StobiasREGRESS_TARGETS=t1 t2 t3 t4 t5 t6
7*76f6aa52Stobias
8*76f6aa52Stobias# .in: input file
9*76f6aa52Stobias# .out: desired output
10*76f6aa52Stobias
11*76f6aa52Stobias# t1: uses arguments multiple times (from FreeBSD bin/95079)
12*76f6aa52Stobias# t2: overflows ARG_MAX (from FreeBSD bin/95079)
13*76f6aa52Stobias# t3: debugs -0 call
14*76f6aa52Stobias# t4: debugs -2 call
15*76f6aa52Stobias# t5: uses magic character '&'
16*76f6aa52Stobias# t6: uses magic character ' ' with command starting with a number
17*76f6aa52Stobias
18*76f6aa52Stobiast1:
19*76f6aa52Stobias	@echo ${*}
20*76f6aa52Stobias	@(${APPLY} "echo %1 %1 %1 %1" `cat ${*}.in` > ${*}.res)
21*76f6aa52Stobias	@cmp -s ${*}.out ${.CURDIR}/${*}.res || \
22*76f6aa52Stobias	    (echo "XXX ${*} failed" && false)
23*76f6aa52Stobias
24*76f6aa52Stobiast2:
25*76f6aa52Stobias	@echo ${*}
26*76f6aa52Stobias	@ARG_MAX=`getconf ARG_MAX`;\
27*76f6aa52Stobias	    ARG_MAX_HALF=$$((ARG_MAX / 2)); \
28*76f6aa52Stobias	    ! ${APPLY} "echo %1 %1 %1" \
29*76f6aa52Stobias	    `jot $$ARG_MAX_HALF 1 1 | tr -d '\n'` > ${*}.res 2>&1
30*76f6aa52Stobias
31*76f6aa52Stobiast3:
32*76f6aa52Stobias	@echo ${*}
33*76f6aa52Stobias	@(${APPLY} -0 -d who 1 2 3 4 5 > ${*}.res)
34*76f6aa52Stobias	@cmp -s ${*}.out ${.CURDIR}/${*}.res || \
35*76f6aa52Stobias	    (echo "XXX ${*} failed" && false)
36*76f6aa52Stobias
37*76f6aa52Stobiast4:
38*76f6aa52Stobias	@echo ${*}
39*76f6aa52Stobias	@(${APPLY} -2 -d cmp a1 b1 a2 b2 a3 b3 > ${*}.res)
40*76f6aa52Stobias	@cmp -s ${*}.out ${.CURDIR}/${*}.res || \
41*76f6aa52Stobias	    (echo "XXX ${*} failed" && false)
42*76f6aa52Stobias
43*76f6aa52Stobiast5:
44*76f6aa52Stobias	@echo ${*}
45*76f6aa52Stobias	@(${APPLY} -a "&" "echo &2 &1" hello world > ${*}.res)
46*76f6aa52Stobias	@cmp -s ${*}.out ${.CURDIR}/${*}.res || \
47*76f6aa52Stobias	    (echo "XXX ${*} failed" && false)
48*76f6aa52Stobias
49*76f6aa52Stobiast6:
50*76f6aa52Stobias	@echo ${*}
51*76f6aa52Stobias	@(${APPLY} -a " " -d "2to3  1" test.py > ${*}.res)
52*76f6aa52Stobias	@cmp -s ${*}.out ${.CURDIR}/${*}.res || \
53*76f6aa52Stobias	    (echo "XXX ${*} failed" && false)
54*76f6aa52Stobias
55*76f6aa52Stobias.include <bsd.regress.mk>
56