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 2006 Sun Microsystems, Inc. All rights reserved. 24# Use is subject to license terms. 25# 26#ident "%Z%%M% %I% %E% SMI" 27 28include $(SRC)/Makefile.master 29 30ROOTOPTPKG = $(ROOT)/opt/SUNWdtrt 31ROOTBIN = $(ROOTOPTPKG)/bin 32ROOTLIB = $(ROOTOPTPKG)/lib 33ROOTLIBJAVA = $(ROOTLIB)/java 34 35# Use the proto dtrace.jar if it exists, otherwise use whatever is 36# installed on the system. It should be possible to build 37# usr/src/cmd/dtrace/test independently, even if only on systems that 38# have a compatible dtrace.jar installed. 39DTRACE_JAR=usr/share/lib/java/dtrace.jar 40PROTO_DTRACE_JAR=$(ROOT)/$(DTRACE_JAR) 41INSTALLED_DTRACE_JAR=/$(DTRACE_JAR) 42CLASSPATH=$(PROTO_DTRACE_JAR):$(INSTALLED_DTRACE_JAR) 43DTEST_DIR=$(SRC)/cmd/dtrace/test 44SRCDIR=src 45CLASSDIR=classes 46LIBDIR=lib 47MANIFESTDIR=manifest 48MANIFEST=$(MANIFESTDIR)/jdtrace.jar-manifest 49JDTRACE_JAR=$(LIBDIR)/jdtrace.jar 50 51PROTO_JDTRACE_JAR=$(ROOTLIBJAVA)/jdtrace.jar 52CMD = $(ROOTBIN)/jdtrace 53XLIST = $(ROOTBIN)/exception.lst 54 55$(CMD) := FILEMODE = 0555 56 57default: $(JDTRACE_JAR) jdtrace.exe 58 59clean: 60 $(RM) $(CLASSDIR)/*.class 61 62clobber: clean 63 $(RM) $(JDTRACE_JAR) 64 $(RM) jdtrace.exe 65 66all: default 67 68lint: 69 70install: all $(PROTO_JDTRACE_JAR) $(CMD) $(XLIST) 71 72jdtrace.exe: $(SRCDIR)/jdtrace.c 73 $(CC) -I/usr/include $(SRCDIR)/jdtrace.c -o jdtrace.exe 74 75$(JDTRACE_JAR): $(SRCDIR)/JDTrace.java $(SRCDIR)/Getopt.java 76 @mkdir -p $(CLASSDIR) 77 @mkdir -p $(LIBDIR) 78 $(JAVAC) -cp $(CLASSPATH) -d $(CLASSDIR) $(SRCDIR)/*.java 79 $(JAR) -cmf $(MANIFEST) $(JDTRACE_JAR) -C $(CLASSDIR) . 80 81$(PROTO_JDTRACE_JAR): $(ROOTLIBJAVA) 82 83$(CMD): $(ROOTBIN) 84 85$(XLIST): $(ROOTBIN) 86 87$(ROOTBIN): 88 $(INS.dir) 89 90$(ROOTLIB): 91 $(INS.dir) 92 93$(ROOTLIBJAVA): $(ROOTLIB) 94 $(INS.dir) 95 96$(ROOTLIBJAVA)/%.jar: $(LIBDIR)/%.jar 97 $(INS.file) 98 99$(ROOTBIN)/%.lst: %.lst 100 $(INS.file) 101 102$(ROOTBIN)/%: %.exe 103 $(INS.rename) 104