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 2015 Nexenta Systems, Inc. All rights reserved. 30# Copyright 2018 Joyent, Inc. 31# 32 33# 34# WARNING: Do not include Makefile.ctf here. That will cause tests to 35# break. 36# 37 38include $(SRC)/Makefile.master 39include ../Makefile.com 40 41SNOOPDIR = $(SRC)/cmd/cmd-inet/usr.sbin/snoop 42SNOOPOBJS = nfs4_xdr.o 43SNOOPSRCS = ${SNOOPOBJS:%.o=%.c} 44CLOBBERFILES += nfs/$(SNOOPOBJS) 45 46RPCSVCDIR = $(SRC)/head/rpcsvc 47RPCSVCOBJS = nfs_prot.o 48RPCSVCSRCS = ${RPCSVCOBJS:%o=%c} 49CLOBBERFILES += nfs/$(RPCSVCOBJS) $(RPCSVCDIR)/$(RPCSVCSRCS) 50CLOBBERFILES += usdt/forker.h usdt/lazyprobe.h 51 52fasttrap/tst.fasttrap.exe := LDLIBS += -ldtrace 53fasttrap/tst.stack.exe := LDLIBS += -ldtrace 54 55sysevent/tst.post.exe := LDLIBS += -lsysevent 56sysevent/tst.post_chan.exe := LDLIBS += -lsysevent 57 58ustack/tst.bigstack.exe := COPTFLAG += -xO1 59 60CSTD = $(CSTD_GNU99) 61 62nfs/%.o: $(SNOOPDIR)/%.c 63 $(COMPILE.c) -o $@ $< -I$(SNOOPDIR) 64 $(POST_PROCESS_O) 65nfs/tst.call.exe: nfs/tst.call.o nfs/$(SNOOPOBJS) 66 $(LINK.c) -o $@ nfs/tst.call.o nfs/$(SNOOPOBJS) $(LDLIBS) -lnsl 67 $(POST_PROCESS) ; $(STRIP_STABS) 68$(RPCSVCDIR)/%.c: $(RPCSVCDIR)/%.x 69 $(RPCGEN) -Cc $< > $@ 70nfs/$(RPCSVCOBJS): $(RPCSVCDIR)/$(RPCSVCSRCS) 71 $(COMPILE.c) -o $@ $(RPCSVCDIR)/$(RPCSVCSRCS) 72 $(POST_PROCESS_O) 73nfs/tst.call3.exe: nfs/tst.call3.o nfs/$(RPCSVCOBJS) 74 $(LINK.c) -o $@ nfs/tst.call3.o nfs/$(RPCSVCOBJS) \ 75 $(LDLIBS) -lnsl -lrpcsvc 76 $(POST_PROCESS) ; $(STRIP_STABS) 77 78json/tst.usdt.o: json/usdt.h 79 80json/usdt.h: json/usdt.d 81 $(DTRACE) -h -s json/usdt.d -o json/usdt.h 82 83CLOBBERFILES += json/usdt.h 84 85json/usdt.o: json/usdt.d json/tst.usdt.o 86 $(COMPILE.d) -o json/usdt.o -s json/usdt.d json/tst.usdt.o 87 88json/tst.usdt.exe: json/tst.usdt.o json/usdt.o 89 $(LINK.c) -o json/tst.usdt.exe json/tst.usdt.o json/usdt.o $(LDLIBS) 90 $(POST_PROCESS) ; $(STRIP_STABS) 91 92# 93# Tests that use the next three programs rely on the binaries having 94# valid CTF data. 95# 96uctf/tst.aouttype.exe: uctf/tst.aouttype.c 97 $(COMPILE.c) $(CTF_FLAGS) -o uctf/tst.aouttype.o uctf/tst.aouttype.c 98 $(CTFCONVERT) -i -L VERSION uctf/tst.aouttype.o 99 $(LINK.c) -o uctf/tst.aouttype.exe uctf/tst.aouttype.o $(LDLIBS) 100 $(CTFMERGE) -L VERSION -o $@ uctf/tst.aouttype.o 101 $(POST_PROCESS) ; $(STRIP_STABS) 102 103uctf/tst.chasestrings.exe: uctf/tst.chasestrings.c 104 $(COMPILE.c) $(CTF_FLAGS) -o uctf/tst.chasestrings.o uctf/tst.chasestrings.c 105 $(CTFCONVERT) -i -L VERSION uctf/tst.chasestrings.o 106 $(LINK.c) -o uctf/tst.chasestrings.exe uctf/tst.chasestrings.o $(LDLIBS) 107 $(CTFMERGE) -L VERSION -o $@ uctf/tst.chasestrings.o 108 $(POST_PROCESS) ; $(STRIP_STABS) 109 110uctf/tst.printtype.exe: uctf/tst.printtype.c 111 $(COMPILE.c) $(CTF_FLAGS) -o uctf/tst.printtype.o uctf/tst.printtype.c 112 $(CTFCONVERT) -i -L VERSION uctf/tst.printtype.o 113 $(LINK.c) -o uctf/tst.printtype.exe uctf/tst.printtype.o $(LDLIBS) 114 $(CTFMERGE) -L VERSION -o $@ uctf/tst.printtype.o 115 $(POST_PROCESS) ; $(STRIP_STABS) 116 117# 118# This program should never have any ctf data in it. 119# 120uctf/tst.libtype.exe: 121 $(LINK.c) -o uctf/tst.libtype.exe uctf/tst.libtype.c $(LDLIBS) 122 $(POST_PROCESS) ; $(STRIP_STABS) 123 124usdt/tst.args.exe: usdt/tst.args.o usdt/args.o 125 $(LINK.c) -o usdt/tst.args.exe usdt/tst.args.o usdt/args.o $(LDLIBS) 126 $(POST_PROCESS) ; $(STRIP_STABS) 127 128usdt/args.o: usdt/args.d usdt/tst.args.o 129 $(COMPILE.d) -o usdt/args.o -s usdt/args.d usdt/tst.args.o 130 131usdt/tst.argmap.exe: usdt/tst.argmap.o usdt/argmap.o 132 $(LINK.c) -o usdt/tst.argmap.exe \ 133 usdt/tst.argmap.o usdt/argmap.o $(LDLIBS) 134 $(POST_PROCESS) ; $(STRIP_STABS) 135 136usdt/argmap.o: usdt/argmap.d usdt/tst.argmap.o 137 $(COMPILE.d) -o usdt/argmap.o -s usdt/argmap.d usdt/tst.argmap.o 138 139usdt/tst.forker.exe: usdt/tst.forker.o usdt/forker.o 140 $(LINK.c) -o usdt/tst.forker.exe \ 141 usdt/tst.forker.o usdt/forker.o $(LDLIBS) 142 $(POST_PROCESS) ; $(STRIP_STABS) 143 144usdt/forker.o: usdt/forker.d usdt/tst.forker.o 145 $(COMPILE.d) -o usdt/forker.o -s usdt/forker.d usdt/tst.forker.o 146 147usdt/tst.forker.o: usdt/forker.h 148 149usdt/forker.h: usdt/forker.d 150 $(DTRACE) -h -s usdt/forker.d -o usdt/forker.h 151 152usdt/tst.lazyprobe.exe: usdt/tst.lazyprobe.o usdt/lazyprobe.o 153 $(LINK.c) -o usdt/tst.lazyprobe.exe \ 154 usdt/tst.lazyprobe.o usdt/lazyprobe.o $(LDLIBS) 155 $(POST_PROCESS) ; $(STRIP_STABS) 156 157usdt/lazyprobe.o: usdt/lazyprobe.d usdt/tst.lazyprobe.o 158 $(COMPILE.d) -xlazyload -o usdt/lazyprobe.o \ 159 -s usdt/lazyprobe.d usdt/tst.lazyprobe.o 160 161usdt/tst.lazyprobe.o: usdt/lazyprobe.h 162 163usdt/lazyprobe.h: usdt/lazyprobe.d 164 $(DTRACE) -h -s usdt/lazyprobe.d -o usdt/lazyprobe.h 165 166SUBDIRS = java_api 167include ../../Makefile.subdirs 168