1179062Sjb# $FreeBSD$
2179062Sjb
3179062SjbTESTSRCDIR=	${.CURDIR}/../../../cddl/contrib/opensolaris/cmd/dtrace/test
4211567SrpauloCFLAGS+=	-w
5179062SjbDTEST=		${TESTSRCDIR}/cmd/scripts/dtest.pl -n
6179062Sjb
7179062SjbIGNORE=		\
8211567Srpaulo	${TESTSRCDIR}/tst/common/aggs/tst.subr.d			\
9211567Srpaulo	${TESTSRCDIR}/tst/common/buffering/tst.cputime.ksh		\
10211567Srpaulo	${TESTSRCDIR}/tst/common/buffering/tst.ring3.d			\
11211567Srpaulo	${TESTSRCDIR}/tst/common/cpc/err.D_PDESC_ZERO.lowfrequency.d	\
12211567Srpaulo	${TESTSRCDIR}/tst/common/cpc/err.D_PDESC_ZERO.malformedoverflow.d\
13211567Srpaulo	${TESTSRCDIR}/tst/common/cpc/err.D_PDESC_ZERO.nonexistentevent.d\
14211567Srpaulo	${TESTSRCDIR}/tst/common/cpc/err.cpcvscpustatpart1.ksh		\
15211567Srpaulo	${TESTSRCDIR}/tst/common/cpc/err.cpcvscpustatpart2.ksh		\
16211567Srpaulo	${TESTSRCDIR}/tst/common/cpc/err.cputrackfailtostart.ksh	\
17211567Srpaulo	${TESTSRCDIR}/tst/common/cpc/err.cputrackterminates.ksh		\
18211567Srpaulo	${TESTSRCDIR}/tst/common/cpc/err.toomanyenablings.d		\
19211567Srpaulo	${TESTSRCDIR}/tst/common/cpc/tst.allcpus.ksh			\
20211567Srpaulo	${TESTSRCDIR}/tst/common/cpc/tst.genericevent.d			\
21211567Srpaulo	${TESTSRCDIR}/tst/common/cpc/tst.platformevent.ksh		\
22211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/man.ListProbesWithFunctions	\
23211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/man.ListProbesWithModules	\
24211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/man.ListProbesWithNames	\
25211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/man.ListProbesWithProviders	\
26211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/man.TraceFunctions		\
27211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/man.TraceModule		\
28211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/man.TraceNames		\
29211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/man.TraceProvider		\
30211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/tst.InvalidModule3.d.ksh	\
31211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/tst.InvalidProvider3.d.ksh	\
32211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/tst.InvalidTraceFunc7.d.ksh	\
33211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/tst.InvalidTraceModule6.d.ksh\
34211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/tst.InvalidTraceProvider4.d.ksh\
35211567Srpaulo	${TESTSRCDIR}/tst/common/funcs/tst.bcopy.d			\
36211567Srpaulo	${TESTSRCDIR}/tst/common/funcs/tst.copyin.d			\
37211567Srpaulo	${TESTSRCDIR}/tst/common/funcs/tst.copyinto.d			\
38211567Srpaulo	${TESTSRCDIR}/tst/common/funcs/tst.ddi_pathname.d		\
39211567Srpaulo	${TESTSRCDIR}/tst/common/funcs/tst.index.d			\
40211567Srpaulo	${TESTSRCDIR}/tst/common/inline/err.D_OP_INCOMPAT.badxlate.d	\
41211567Srpaulo	${TESTSRCDIR}/tst/common/inline/tst.InlineTypedef.d		\
42211567Srpaulo	${TESTSRCDIR}/tst/common/io/tst.fds.c				\
43211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.FunctionLookup.c		\
44211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.ProbeData.c		\
45211567Srpaulo	${TESTSRCDIR}/common/misc/tst.include.ksh			\
46211567Srpaulo	${TESTSRCDIR}/tst/common/misc/tst.roch.d			\
47211567Srpaulo	${TESTSRCDIR}/tst/common/nfs/tst.call.c				\
48211567Srpaulo	${TESTSRCDIR}/tst/common/nfs/tst.call.d				\
49211567Srpaulo	${TESTSRCDIR}/tst/common/nfs/tst.call3.c			\
50211567Srpaulo	${TESTSRCDIR}/tst/common/nfs/tst.call3.d			\
51211567Srpaulo	${TESTSRCDIR}/tst/common/offsetof/err.D_OFFSETOF_BITFIELD.bitfield.d\
52211567Srpaulo	${TESTSRCDIR}/tst/common/pointers/err.D_OP_LVAL.AddressChange.d	\
53211567Srpaulo	${TESTSRCDIR}/tst/common/pointers/tst.GlobalVar.d		\
54211567Srpaulo	${TESTSRCDIR}/tst/common/pointers/tst.basic1.d			\
55211567Srpaulo	${TESTSRCDIR}/tst/common/pointers/tst.basic2.d			\
56211567Srpaulo	${TESTSRCDIR}/tst/common/predicates/tst.argsnotcached.d		\
57211567Srpaulo	${TESTSRCDIR}/tst/common/privs/tst.func_access.ksh		\
58211567Srpaulo	${TESTSRCDIR}/tst/common/privs/tst.op_access.ksh		\
59211567Srpaulo	${TESTSRCDIR}/tst/common/proc/tst.discard.ksh			\
60211567Srpaulo	${TESTSRCDIR}/tst/common/proc/tst.signal.ksh			\
61211567Srpaulo	${TESTSRCDIR}/tst/common/proc/tst.startexit.ksh			\
62211567Srpaulo	${TESTSRCDIR}/tst/common/profile-n/tst.ufuncsort.c		\
63211567Srpaulo	${TESTSRCDIR}/tst/common/scalars/tst.misc.d			\
64211567Srpaulo	${TESTSRCDIR}/tst/common/scalars/tst.selfarray2.d		\
65211567Srpaulo	${TESTSRCDIR}/tst/common/sysevent/tst.post.c			\
66211567Srpaulo	${TESTSRCDIR}/tst/common/sysevent/tst.post.d			\
67211567Srpaulo	${TESTSRCDIR}/tst/common/sysevent/tst.post_chan.c		\
68211567Srpaulo	${TESTSRCDIR}/tst/common/sysevent/tst.post_chan.d		\
69211567Srpaulo	${TESTSRCDIR}/tst/common/trace/tst.misc.d			\
70211567Srpaulo	${TESTSRCDIR}/tst/common/tracemem/err.D_TRACEMEM_ADDR.badaddr.d	\
71211567Srpaulo	${TESTSRCDIR}/tst/common/tracemem/tst.rootvp.d			\
72211567Srpaulo	${TESTSRCDIR}/tst/common/translators/tst.ProcModelTrans.d	\
73211567Srpaulo	${TESTSRCDIR}/tst/common/types/err.D_XLATE_REDECL.ResultDynType.d\
74211567Srpaulo	${TESTSRCDIR}/tst/common/types/tst.ptrops.d			\
75211567Srpaulo	${TESTSRCDIR}/tst/common/types/tst.struct.d			\
76211567Srpaulo	${TESTSRCDIR}/tst/common/types/tst.typedef.d			\
77211567Srpaulo	${TESTSRCDIR}/tst/common/vars/tst.ucaller.ksh			\
78211567Srpaulo	${TESTSRCDIR}/tst/common/vars/tst.walltimestamp.d		\
79211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.argmap.c			\
80211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.args.c			\
81211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.forker.c			\
82211567Srpaulo	${TESTSRCDIR}/tst/common/ip/tst.ipv4localtcp.ksh		\
83211567Srpaulo	${TESTSRCDIR}/tst/common/ip/tst.ipv4localudp.ksh		\
84211567Srpaulo	${TESTSRCDIR}/tst/common/ip/tst.ipv4remotetcp.ksh		\
85211567Srpaulo	${TESTSRCDIR}/tst/common/ip/tst.ipv4remoteudp.ksh		\
86211567Srpaulo	${TESTSRCDIR}/tst/common/ip/tst.localtcpstate.ksh		\
87211567Srpaulo	${TESTSRCDIR}/tst/common/ip/tst.remotetcpstate.ksh		\
88211567Srpaulo	${TESTSRCDIR}/tst/common/scripting/tst.projid.ksh		\
89211567Srpaulo	${TESTSRCDIR}/tst/common/scripting/tst.taskid.ksh
90179062Sjb
91211567Srpaulo
92211567Srpaulo
93179062SjbNOTWORK+= \
94211567Srpaulo	${TESTSRCDIR}/tst/common/io/tst.fds.d				\
95211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.Abort.ksh			\
96211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.Bean.ksh			\
97211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.Close.ksh			\
98211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.Drop.ksh			\
99211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.Enable.ksh		\
100211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.FunctionLookup.ksh	\
101211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.GetAggregate.ksh		\
102211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.MaxConsumers.ksh		\
103211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.MultiAggPrinta.ksh	\
104211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.ProbeData.ksh		\
105211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.ProbeDescription.ksh	\
106211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.StateMachine.ksh		\
107211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.StopLock.ksh 		\
108211567Srpaulo	${TESTSRCDIR}/tst/common/java_api/tst.printa.d			\
109211567Srpaulo	${TESTSRCDIR}/tst/common/lexer/err.D_CHR_NL.char.d		\
110211567Srpaulo	${TESTSRCDIR}/tst/common/lexer/err.D_STR_NL.string.d		\
111211567Srpaulo	${TESTSRCDIR}/tst/common/mdb/tst.dtracedcmd.ksh			\
112211567Srpaulo	${TESTSRCDIR}/tst/common/mib/tst.icmp.ksh			\
113211567Srpaulo	${TESTSRCDIR}/tst/common/mib/tst.tcp.ksh			\
114211567Srpaulo	${TESTSRCDIR}/tst/common/mib/tst.udp.ksh			\
115211567Srpaulo	${TESTSRCDIR}/tst/common/profile-n/tst.func.ksh			\
116211567Srpaulo	${TESTSRCDIR}/tst/common/profile-n/tst.mod.ksh			\
117211567Srpaulo	${TESTSRCDIR}/tst/common/profile-n/tst.sym.ksh			\
118211567Srpaulo	${TESTSRCDIR}/tst/common/profile-n/tst.ufunc.ksh		\
119211567Srpaulo	${TESTSRCDIR}/tst/common/profile-n/tst.ufuncsort.ksh		\
120211567Srpaulo	${TESTSRCDIR}/tst/common/profile-n/tst.umod.ksh			\
121211567Srpaulo	${TESTSRCDIR}/tst/common/profile-n/tst.usym.ksh			\
122211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.basename.d			\
123211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.caller.d			\
124211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.cleanpath.d			\
125211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.copyin.d			\
126211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.copyin2.d			\
127211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.ddi_pathname.d		\
128211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.dirname.d			\
129211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.errno.d			\
130211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.execname.d			\
131211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.gid.d			\
132211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.hton.d			\
133211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.index.d			\
134211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.msgdsize.d			\
135211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.msgsize.d			\
136211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.null.d			\
137211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.pid.d			\
138211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.ppid.d			\
139211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.progenyof.d			\
140211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.random.d			\
141211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.rw.d			\
142211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.shortstr.d			\
143211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.stack.d			\
144211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.stackdepth.d		\
145211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.stddev.d			\
146211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.strchr.d			\
147211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.strjoin.d			\
148211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.strstr.d			\
149211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.strtok.d			\
150211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.substr.d			\
151211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.ucaller.d			\
152211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.uid.d			\
153211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.unalign.d			\
154211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.ustack.d			\
155211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.ustackdepth.d		\
156211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.vahole.d			\
157211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.violentdeath.ksh		\
158211567Srpaulo	${TESTSRCDIR}/tst/common/safety/tst.zonename.d			\
159211567Srpaulo	${TESTSRCDIR}/tst/common/sched/tst.enqueue.d			\
160211567Srpaulo	${TESTSRCDIR}/tst/common/sched/tst.oncpu.d			\
161211567Srpaulo	${TESTSRCDIR}/tst/common/sched/tst.stackdepth.d			\
162211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/argmap.d				\
163211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/args.d				\
164211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/forker.d				\
165211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.andpid.ksh			\
166211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.argmap.d			\
167211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.args.d			\
168211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.badguess.ksh			\
169211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.dlclose1.ksh			\
170211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.dlclose2.ksh			\
171211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.dlclose3.ksh			\
172211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.eliminate.ksh			\
173211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.enabled.ksh			\
174211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.entryreturn.ksh		\
175211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.fork.ksh			\
176211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.forker.ksh			\
177211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.guess32.ksh			\
178211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.guess64.ksh			\
179211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.header.ksh			\
180211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.include.ksh			\
181211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.linkpriv.ksh			\
182211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.linkunpriv.ksh		\
183211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.multiple.ksh			\
184211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.nodtrace.ksh			\
185211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.onlyenabled.ksh		\
186211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.reeval.ksh			\
187211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.static.ksh			\
188211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.static2.ksh			\
189211567Srpaulo	${TESTSRCDIR}/tst/common/usdt/tst.user.ksh			\
190211567Srpaulo	${TESTSRCDIR}/tst/common/misc/tst.schrock.ksh 
191179062Sjb
192179062Sjb# --------------------------------------------------------------------------------
193179062Sjb# Tests that just don't complete (even to fail) at the moment...
194179062Sjb
195179062SjbNOTWORK+= \
196211567Srpaulo	${TESTSRCDIR}/tst/common/dtraceUtil/tst.ZeroModuleProbes.d.ksh	\
197211567Srpaulo	${TESTSRCDIR}/tst/common/printa/tst.many.d			\
198211567Srpaulo	${TESTSRCDIR}/tst/common/scalars/err.D_OP_INCOMPAT.dupgtype.d	\
199211567Srpaulo	${TESTSRCDIR}/tst/common/scalars/err.D_OP_INCOMPAT.dupltype.d	\
200211567Srpaulo	${TESTSRCDIR}/tst/common/scalars/err.D_OP_INCOMPAT.dupttype.d	\
201211567Srpaulo	${TESTSRCDIR}/tst/common/vars/tst.gid.d				\
202211567Srpaulo	${TESTSRCDIR}/tst/common/vars/tst.uid.d				\
203179062Sjb
204179062Sjb# --------------------------------------------------------------------------------
205179062Sjb# Tests that currently hang the system:
206179062Sjb
207179062SjbNOTWORK+= \
208179062Sjb	${TESTSRCDIR}/tst/common/fbtprovider/tst.basic.d	\
209179062Sjb	${TESTSRCDIR}/tst/common/fbtprovider/tst.return.d	\
210211567Srpaulo	${TESTSRCDIR}/tst/common/grammar/tst.stmts.d		\
211179062Sjb	${TESTSRCDIR}/tst/common/misc/tst.enablerace.ksh	\
212211567Srpaulo	${TESTSRCDIR}/tst/common/predicates/tst.predcache.ksh	\
213211567Srpaulo	${TESTSRCDIR}/tst/common/proc/tst.exitkilled.ksh	\
214179062Sjb
215179062Sjb.if ${MACHINE_ARCH} == "i386"
216179062Sjb
217179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/dtraceUtil/tst.DataModel64.d.ksh
218179062Sjb
219179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/dtraceUtil/tst.DataModel64.d.ksh
220179062Sjb
221179062Sjb# --------------------------------------------------------------------------------
222179062Sjb# This test causes i386 to go kaboom in a big way. There is a problem in the
223179062Sjb# fbt exception code which needs to be fixed.
224179062Sjb
225179062SjbNOTWORK+= \
226179062Sjb	${TESTSRCDIR}/tst/common/fbtprovider/tst.tailcall.d
227179062Sjb
228179062Sjb# Some tests that don't complete on i386.... :-/
229179062Sjb
230179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/funcs/tst.chill.ksh
231179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/proc/tst.create.ksh
232179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/proc/tst.exec.ksh
233179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/proc/tst.execfail.ENOENT.ksh
234179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/proc/tst.execfail.ksh
235179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/proc/tst.exitcore.ksh
236179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/proc/tst.exitexit.ksh
237179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/proc/tst.exitkilled.ksh
238179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/proc/tst.signal.ksh
239179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/proc/tst.sigwait.c
240179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/proc/tst.sigwait.d
241179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/proc/tst.startexit.ksh
242179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/struct/tst.StructDataTypes.d
243179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/union/tst.UnionDataTypes.d
244179062Sjb
245179062Sjb.endif
246179062Sjb
247179062Sjb# --------------------------------------------------------------------------------
248179062Sjb# Interrupt priority isn't relevant on FreeBSD.
249179062Sjb
250179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/builtinvar/tst.ipl.d \
251179062Sjb	${TESTSRCDIR}/tst/common/builtinvar/tst.ipl1.d
252179062Sjb
253179062Sjb# --------------------------------------------------------------------------------
254211567Srpaulo# These tests relies on the Solaris ping behaviour of exiting after a number of
255179062Sjb# pings. On FreeBSD ping doesn't do that.
256179062Sjb
257211567SrpauloNOTWORK+= ${TESTSRCDIR}/tst/common/funcs/tst.system.d 		\
258211567Srpaulo	${TESTSRCDIR}/tst/common/ip/tst.ipv6remoteicmp.ksh 	\
259211567Srpaulo	${TESTSRCDIR}/tst/common/ip/tst.ipv6localicmp.ksh 	\
260211567Srpaulo	${TESTSRCDIR}/tst/common/ip/tst.ipv4localicmp.ksh 	\
261211567Srpaulo	${TESTSRCDIR}/tst/common/ip/tst.ipv4remoteicmp.ksh 
262179062Sjb
263179062Sjb# --------------------------------------------------------------------------------
264179062Sjb# This test checks for a leading tab on a line before #define. That is illegal
265179062Sjb# on Solaris, but the gcc pre-processor on FreeBSD is happy with code like that.
266179062Sjb
267179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/preprocessor/err.D_PRAGCTL_INVAL.tabdefine.d
268179062Sjb
269179062Sjb# --------------------------------------------------------------------------------
270179062Sjb# This test is coded to use Solaris syscall names. FreeBSD has none with 'lwp"
271179062Sjb# in them, so the test fails because of that.
272179062Sjb
273179062SjbNOTWORK+= ${TESTSRCDIR}/tst/common/probes/tst.probestar.d
274179062Sjb
275179062SjbNOTYET=	${IGNORE} ${NOTWORK}
276179062Sjb
277179062Sjb# --------------------------------------------------------------------------------
278179062Sjb# Only prepare the test lists if we need to:
279179062Sjb
280179062Sjb.if !make(obj) && !make(clean) && !make(cleandir) && !make(listerrors)
281179062Sjb
282179062Sjb# --------------------------------------------------------------------------------
283179062Sjb# Get a list of tests, named according to the directory they are in:
284179062Sjb
285179062Sjb_COMMONDIRS!=	cd ${TESTSRCDIR}/tst/common; find . -depth 1 -type d
286179062SjbCOMMONDIRS=	${_COMMONDIRS:S/.\///}
287179062Sjb
288179062Sjblisttests	:
289179062Sjb	@echo ${COMMONDIRS}
290179062Sjb
291179062Sjb# --------------------------------------------------------------------------------
292179062Sjb# Create a test target for each directory:
293179062Sjb
294179062SjbALL_TESTFILES=
295179062Sjb
296179062Sjb# Process each common test directory:
297179062Sjb.for _d in ${COMMONDIRS}
298179062Sjb
299179062Sjb# Get a list of test files in the test directory:
300179062Sjb${_d}_ERR!=	find ${TESTSRCDIR}/tst/common/${_d} -name "err.*.d"
301179062Sjb${_d}_TSTD!=	find ${TESTSRCDIR}/tst/common/${_d} -name "tst.*.d"
302179062Sjb${_d}_TSTC!=	find ${TESTSRCDIR}/tst/common/${_d} -name "tst.*.c"
303179062Sjb${_d}_SHERR!=	find ${TESTSRCDIR}/tst/common/${_d} -name "err.*.ksh"
304179062Sjb${_d}_SHTST!=	find ${TESTSRCDIR}/tst/common/${_d} -name "tst.*.ksh"
305179062Sjb${_d}_TF=	${${_d}_ERR} ${${_d}_TSTD} ${${_d}_SHERR} ${${_d}_SHTST}
306179062Sjb
307179062Sjb# Go through the list of test files and prepare another list that contains
308179062Sjb# none of the test files listed in the NOTYET list:
309179062Sjb.for _f in ${${_d}_TF}
310179062Sjb.if (${NOTYET:M${_f}} == "")
311179062Sjb${_d}_TFS+= ${_f}
312179062Sjb.endif
313179062Sjb.endfor
314179062Sjb
315179062Sjb# Add the list of tests to the overall test list:
316179062SjbALL_TESTFILES+=	${${_d}_TFS}
317179062Sjb
318179062Sjb.for _f in ${${_d}_TSTC}
319179062Sjb.if (${NOTYET:M${_f}} == "")
320179062Sjb${_d}_TFCS+= ${_f}
321179062Sjb.endif
322179062Sjb.endfor
323179062Sjb
324179062SjbALL_TESTCFILES+= ${${_d}_TFCS}
325179062Sjb
326179062Sjb${_d}	: ${${_d}_TFCS:T:S/c$/exe/}
327179062Sjb	@${DTEST} ${${_d}_TFS}
328179062Sjb.endfor
329179062Sjb
330179062Sjb# --------------------------------------------------------------------------------
331179062Sjb# 
332179062Sjb
333179062SjbPRGS=	${ALL_TESTCFILES:T:S/c$/exe/}
334179062Sjb
335179062Sjblistprgs	:
336179062Sjb	@echo ${PRGS}
337179062Sjb
338179062Sjb# --------------------------------------------------------------------------------
339179062Sjb# 
340179062Sjb
341179062Sjb.for _f in ${ALL_TESTCFILES}
342179062Sjb${_f:T:S/c$/exe/} : ${_f}
343179062Sjb	gcc -o ${.TARGET} ${_f} -lrt
344179062Sjb.endfor
345179062Sjb
346179062Sjblistcfiles	:
347179062Sjb	@echo ${ALL_TESTCFILES}
348179062Sjb
349179062Sjb# --------------------------------------------------------------------------------
350179062Sjb# A target to build all tests:
351179062Sjb
352179062Sjball	: ${PRGS}
353179062Sjb	@sync; sync; sync; sync; sync
354179062Sjb	@${DTEST} ${ALL_TESTFILES}
355179062Sjb
356179062Sjb# --------------------------------------------------------------------------------
357179062Sjb# A target to build the tests flagged as not working yet:
358179062Sjb
359179062Sjbignore	:
360179062Sjb	@${DTEST} ${IGNORE}
361179062Sjb
362179062Sjb.endif
363179062Sjb
364179062Sjblisterrors	:
365179062Sjb	@find ${.OBJDIR} -name "*.err" -exec cat {} \; -print
366179062Sjb
367179062Sjb
368179062Sjb# --------------------------------------------------------------------------------
369179062Sjb# Test failures are written to failure.N directories in the object tree.
370179062Sjb# Get a list of directories in the object tree for 'make clean'.
371179062Sjb
372179062Sjb.if ${.OBJDIR} != ${.CURDIR} && !empty(${.OBJDIR})
373179062SjbCLEANDIRS!=	cd ${.OBJDIR} && ls -d *
374179062Sjb.endif
375179062Sjb
376179062Sjb# --------------------------------------------------------------------------------
377179062Sjb# Insist on using an object directory. Things get messy otherwsie.
378179062Sjb
379179062Sjb.if ${.OBJDIR} == ${.CURDIR} && !make(obj) && !make(clean) && !make(cleandir)
380179062Sjb.error ERROR: You must run 'make obj' first!
381179062Sjb.endif
382179062Sjb
383179062Sjb# --------------------------------------------------------------------------------
384179062Sjb# Load the DTrace module set if necessary.
385179062Sjb
386179062Sjb.BEGIN	:
387179062Sjb	@if ! kldstat -q -m dtrace_test; then kldload dtrace_test; fi
388179062Sjb
389179062Sjb.include <bsd.obj.mk>
390179062Sjb
391