1 #
2 # CDDL HEADER START
3 #
4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
7 #
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
12 #
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 #
19 # CDDL HEADER END
20 #
21
22 #
23 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
25 #
26
27 #
28 # Copyright (c) 2012 by Delphix. All rights reserved.
29 # Copyright (c) 2013, Joyent, Inc. All rights reserved.
30 # Copyright 2015 Nexenta Systems, Inc. All rights reserved.
31 #
32
33 #
34 # WARNING: Do not include Makefile.ctf here. That will cause tests to
35 # break.
36 #
37
38 include $(SRC)/Makefile.master
39 include ../Makefile.com
40
41 SNOOPDIR = $(SRC)/cmd/cmd-inet/usr.sbin/snoop
42 SNOOPOBJS = nfs4_xdr.o
43 SNOOPSRCS = ${SNOOPOBJS:%.o=%.c}
44 CLOBBERFILES += nfs/$(SNOOPOBJS)
45
46 RPCSVCDIR = $(SRC)/head/rpcsvc
47 RPCSVCOBJS = nfs_prot.o
48 RPCSVCSRCS = ${RPCSVCOBJS:%o=%c}
49 CLOBBERFILES += nfs/$(RPCSVCOBJS) $(RPCSVCDIR)/$(RPCSVCSRCS)
50 CLOBBERFILES += usdt/forker.h usdt/lazyprobe.h
51
52 fasttrap/tst.fasttrap.exe := LDLIBS += -ldtrace
53 fasttrap/tst.stack.exe := LDLIBS += -ldtrace
54
55 sysevent/tst.post.exe := LDLIBS += -lsysevent
56 sysevent/tst.post_chan.exe := LDLIBS += -lsysevent
57
58 ustack/tst.bigstack.exe := COPTFLAG += -xO1
59
60 nfs/%.o: $(SNOOPDIR)/%.c
61 $(COMPILE.c) -o $@ $< -I$(SNOOPDIR)
62 $(POST_PROCESS_O)
63 nfs/tst.call.exe: nfs/tst.call.o nfs/$(SNOOPOBJS)
64 $(LINK.c) -o $@ nfs/tst.call.o nfs/$(SNOOPOBJS) $(LDLIBS) -lnsl
65 $(POST_PROCESS) ; $(STRIP_STABS)
66 $(RPCSVCDIR)/%.c: $(RPCSVCDIR)/%.x
67 $(RPCGEN) -Cc $< > $@
68 nfs/$(RPCSVCOBJS): $(RPCSVCDIR)/$(RPCSVCSRCS)
69 $(COMPILE.c) -o $@ $(RPCSVCDIR)/$(RPCSVCSRCS)
70 $(POST_PROCESS_O)
71 nfs/tst.call3.exe: nfs/tst.call3.o nfs/$(RPCSVCOBJS)
72 $(LINK.c) -o $@ nfs/tst.call3.o nfs/$(RPCSVCOBJS) \
73 $(LDLIBS) -lnsl -lrpcsvc
74 $(POST_PROCESS) ; $(STRIP_STABS)
75
76 json/tst.usdt.o: json/usdt.h
77
78 json/usdt.h: json/usdt.d
79 $(DTRACE) -h -s json/usdt.d -o json/usdt.h
80
81 CLOBBERFILES += json/usdt.h
82
83 json/usdt.o: json/usdt.d json/tst.usdt.o
84 $(COMPILE.d) -o json/usdt.o -s json/usdt.d json/tst.usdt.o
85
86 json/tst.usdt.exe: json/tst.usdt.o json/usdt.o
87 $(LINK.c) -o json/tst.usdt.exe json/tst.usdt.o json/usdt.o $(LDLIBS)
88 $(POST_PROCESS) ; $(STRIP_STABS)
89
90 #
91 # Tests that use the next three programs rely on the binaries having
92 # valid CTF data.
93 #
94 uctf/tst.aouttype.exe: uctf/tst.aouttype.c
95 $(COMPILE.c) $(CTF_FLAGS) -o uctf/tst.aouttype.o uctf/tst.aouttype.c
96 $(CTFCONVERT) -i -L VERSION uctf/tst.aouttype.o
97 $(LINK.c) -o uctf/tst.aouttype.exe uctf/tst.aouttype.o $(LDLIBS)
98 $(CTFMERGE) -L VERSION -o $@ uctf/tst.aouttype.o
99 $(POST_PROCESS) ; $(STRIP_STABS)
100
101 uctf/tst.chasestrings.exe: uctf/tst.chasestrings.c
102 $(COMPILE.c) $(CTF_FLAGS) -o uctf/tst.chasestrings.o uctf/tst.chasestrings.c
103 $(CTFCONVERT) -i -L VERSION uctf/tst.chasestrings.o
104 $(LINK.c) -o uctf/tst.chasestrings.exe uctf/tst.chasestrings.o $(LDLIBS)
105 $(CTFMERGE) -L VERSION -o $@ uctf/tst.chasestrings.o
106 $(POST_PROCESS) ; $(STRIP_STABS)
107
108 uctf/tst.printtype.exe: uctf/tst.printtype.c
109 $(COMPILE.c) $(CTF_FLAGS) -o uctf/tst.printtype.o uctf/tst.printtype.c
110 $(CTFCONVERT) -i -L VERSION uctf/tst.printtype.o
111 $(LINK.c) -o uctf/tst.printtype.exe uctf/tst.printtype.o $(LDLIBS)
112 $(CTFMERGE) -L VERSION -o $@ uctf/tst.printtype.o
113 $(POST_PROCESS) ; $(STRIP_STABS)
114
115 #
116 # This program should never have any ctf data in it.
117 #
118 uctf/tst.libtype.exe:
119 $(LINK.c) -o uctf/tst.libtype.exe uctf/tst.libtype.c $(LDLIBS)
120 $(POST_PROCESS) ; $(STRIP_STABS)
121
122 usdt/tst.args.exe: usdt/tst.args.o usdt/args.o
123 $(LINK.c) -o usdt/tst.args.exe usdt/tst.args.o usdt/args.o $(LDLIBS)
124 $(POST_PROCESS) ; $(STRIP_STABS)
125
126 usdt/args.o: usdt/args.d usdt/tst.args.o
127 $(COMPILE.d) -o usdt/args.o -s usdt/args.d usdt/tst.args.o
128
129 usdt/tst.argmap.exe: usdt/tst.argmap.o usdt/argmap.o
130 $(LINK.c) -o usdt/tst.argmap.exe \
131 usdt/tst.argmap.o usdt/argmap.o $(LDLIBS)
132 $(POST_PROCESS) ; $(STRIP_STABS)
133
134 usdt/argmap.o: usdt/argmap.d usdt/tst.argmap.o
135 $(COMPILE.d) -o usdt/argmap.o -s usdt/argmap.d usdt/tst.argmap.o
136
137 usdt/tst.forker.exe: usdt/tst.forker.o usdt/forker.o
138 $(LINK.c) -o usdt/tst.forker.exe \
139 usdt/tst.forker.o usdt/forker.o $(LDLIBS)
140 $(POST_PROCESS) ; $(STRIP_STABS)
141
142 usdt/forker.o: usdt/forker.d usdt/tst.forker.o
143 $(COMPILE.d) -o usdt/forker.o -s usdt/forker.d usdt/tst.forker.o
144
145 usdt/tst.forker.o: usdt/forker.h
146
147 usdt/forker.h: usdt/forker.d
148 $(DTRACE) -h -s usdt/forker.d -o usdt/forker.h
149
150 usdt/tst.lazyprobe.exe: usdt/tst.lazyprobe.o usdt/lazyprobe.o
151 $(LINK.c) -o usdt/tst.lazyprobe.exe \
152 usdt/tst.lazyprobe.o usdt/lazyprobe.o $(LDLIBS)
153 $(POST_PROCESS) ; $(STRIP_STABS)
154
155 usdt/lazyprobe.o: usdt/lazyprobe.d usdt/tst.lazyprobe.o
156 $(COMPILE.d) -xlazyload -o usdt/lazyprobe.o \
157 -s usdt/lazyprobe.d usdt/tst.lazyprobe.o
158
159 usdt/tst.lazyprobe.o: usdt/lazyprobe.h
160
161 usdt/lazyprobe.h: usdt/lazyprobe.d
162 $(DTRACE) -h -s usdt/lazyprobe.d -o usdt/lazyprobe.h
163
164 SUBDIRS = java_api
165 include ../../Makefile.subdirs