]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - tools/regression/execve/Makefile
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / tools / regression / execve / Makefile
1 # $FreeBSD$
2
3 PROG=   doexec
4 NO_MAN=
5
6 RP=     ./${PROG}
7 TD=     ${.CURDIR}/tests
8
9 TESTSCRIPTS=    nonexistshell devnullscript badinterplen goodscript \
10                 scriptarg scriptarg-nospace
11 CLEANFILES=     goodaout truncaout sparseaout empty ${TESTSCRIPTS}
12
13 all:            ${PROG} goodaout ${TESTSCRIPTS}
14
15 .for x in ${TESTSCRIPTS}
16 ${x}: ${TD}/${x}
17         cp ${TD}/${x} .
18         chmod +x ${x}
19 .endfor
20
21 regress:        test-empty test-nonexist test-nonexistshell \
22                 test-devnullscript test-badinterplen test-goodscript \
23                 test-scriptarg test-scriptarg-nospace test-goodaout \
24                 test-truncaout test-sparseaout
25
26 test-empty:     ${PROG}
27         rm -f empty
28         touch empty
29         chmod +x empty
30         ${RP} empty | grep 'Exec format error'
31
32 test-nonexist:  ${PROG}
33         ${RP} ${TD}/nonexistent | grep 'No such file or directory'
34
35 test-nonexistshell: ${PROG} nonexistshell
36         ${RP} nonexistshell | grep 'No such file or directory'
37
38 test-devnullscript: ${PROG} devnullscript
39         ${RP} devnullscript | grep 'Permission denied'
40
41 test-badinterplen: ${PROG} badinterplen
42         ${RP} badinterplen | grep 'No such file or directory'
43
44 test-goodscript: ${PROG} goodscript
45         ${RP} goodscript | grep 'succeeded'
46
47 test-scriptarg: ${PROG} scriptarg
48         ${RP} scriptarg 2>&1 | grep '+ echo succeeded'
49
50 test-scriptarg-nospace: ${PROG} scriptarg-nospace
51         ${RP} scriptarg-nospace 2>&1 | grep '+ echo succeeded'
52
53 goodaout: ${TD}/goodaout.c
54         ${CC} -static -o ${.TARGET} ${TD}/goodaout.c
55
56 test-goodaout: ${PROG} goodaout
57         ${RP} goodaout | grep 'succeeded'
58
59 test-truncaout: ${PROG} goodaout
60         truncate -s 16 truncaout
61         chmod a+x truncaout
62         ${RP} truncaout | grep 'Exec format error'
63
64 test-sparseaout: ${PROG}
65         /bin/rm -rf sparseaout
66         truncate -s 20480 sparseaout
67         chmod a+x sparseaout
68         ${RP} sparseaout | grep 'Exec format error'
69
70 .include <bsd.prog.mk>