xref: /titanic_41/usr/src/lib/libdtrace/Makefile.com (revision f9e4b91f926a1cb7689f8da8e9d07bc4dd727bb8)
17c478bd9Sstevel@tonic-gate#
27c478bd9Sstevel@tonic-gate# CDDL HEADER START
37c478bd9Sstevel@tonic-gate#
47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
5f808c858Sraf# Common Development and Distribution License (the "License").
6f808c858Sraf# You may not use this file except in compliance with the License.
77c478bd9Sstevel@tonic-gate#
87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
117c478bd9Sstevel@tonic-gate# and limitations under the License.
127c478bd9Sstevel@tonic-gate#
137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
187c478bd9Sstevel@tonic-gate#
197c478bd9Sstevel@tonic-gate# CDDL HEADER END
207c478bd9Sstevel@tonic-gate#
217c478bd9Sstevel@tonic-gate#
229cd928feSAlan Maguire# Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
23deef35fdSEric Schrock# Copyright (c) 2011 by Delphix. All rights reserved.
247c478bd9Sstevel@tonic-gate#
257c478bd9Sstevel@tonic-gate
267c478bd9Sstevel@tonic-gateLIBRARY = libdtrace.a
277c478bd9Sstevel@tonic-gateVERS = .1
287c478bd9Sstevel@tonic-gate
297c478bd9Sstevel@tonic-gateLIBSRCS = \
307c478bd9Sstevel@tonic-gate	dt_aggregate.c \
317c478bd9Sstevel@tonic-gate	dt_as.c \
327c478bd9Sstevel@tonic-gate	dt_buf.c \
337c478bd9Sstevel@tonic-gate	dt_cc.c \
347c478bd9Sstevel@tonic-gate	dt_cg.c \
357c478bd9Sstevel@tonic-gate	dt_consume.c \
367c478bd9Sstevel@tonic-gate	dt_decl.c \
377c478bd9Sstevel@tonic-gate	dt_dis.c \
387c478bd9Sstevel@tonic-gate	dt_dof.c \
397c478bd9Sstevel@tonic-gate	dt_error.c \
407c478bd9Sstevel@tonic-gate	dt_errtags.c \
417c478bd9Sstevel@tonic-gate	dt_handle.c \
427c478bd9Sstevel@tonic-gate	dt_ident.c \
437c478bd9Sstevel@tonic-gate	dt_inttab.c \
447c478bd9Sstevel@tonic-gate	dt_link.c \
457c478bd9Sstevel@tonic-gate	dt_list.c \
467c478bd9Sstevel@tonic-gate	dt_open.c \
477c478bd9Sstevel@tonic-gate	dt_options.c \
487c478bd9Sstevel@tonic-gate	dt_program.c \
497c478bd9Sstevel@tonic-gate	dt_map.c \
507c478bd9Sstevel@tonic-gate	dt_module.c \
511a7c1b72Smws	dt_names.c \
527c478bd9Sstevel@tonic-gate	dt_parser.c \
537c478bd9Sstevel@tonic-gate	dt_pcb.c \
547c478bd9Sstevel@tonic-gate	dt_pid.c \
557c478bd9Sstevel@tonic-gate	dt_pragma.c \
56deef35fdSEric Schrock	dt_print.c \
577c478bd9Sstevel@tonic-gate	dt_printf.c \
587c478bd9Sstevel@tonic-gate	dt_proc.c \
597c478bd9Sstevel@tonic-gate	dt_provider.c \
607c478bd9Sstevel@tonic-gate	dt_regset.c \
617c478bd9Sstevel@tonic-gate        dt_string.c \
627c478bd9Sstevel@tonic-gate	dt_strtab.c \
637c478bd9Sstevel@tonic-gate	dt_subr.c \
647c478bd9Sstevel@tonic-gate	dt_work.c \
657c478bd9Sstevel@tonic-gate	dt_xlator.c
667c478bd9Sstevel@tonic-gate
677c478bd9Sstevel@tonic-gateLIBISASRCS = \
687c478bd9Sstevel@tonic-gate	dt_isadep.c
697c478bd9Sstevel@tonic-gate
707c478bd9Sstevel@tonic-gateOBJECTS = dt_lex.o dt_grammar.o $(MACHOBJS) $(LIBSRCS:%.c=%.o) $(LIBISASRCS:%.c=%.o)
717c478bd9Sstevel@tonic-gate
727c478bd9Sstevel@tonic-gateDRTISRC = drti.c
737c478bd9Sstevel@tonic-gateDRTIOBJ = $(DRTISRC:%.c=%.o)
747c478bd9Sstevel@tonic-gate
757c478bd9Sstevel@tonic-gateDLIBSRCS += \
767c478bd9Sstevel@tonic-gate	errno.d \
775f549bd2SSam Cramer	fc.d \
787c478bd9Sstevel@tonic-gate	io.d \
794edabff4Sbrendan	ip.d \
80a668b114SPriya Krishnan	iscsit.d \
81f3b585ceSsamf	net.d \
82f3b585ceSsamf	nfs.d \
83*f9e4b91fSRichard Lowe	nfssrv.d \
847c478bd9Sstevel@tonic-gate	procfs.d \
857c478bd9Sstevel@tonic-gate	regs.d \
867c478bd9Sstevel@tonic-gate	sched.d \
877c478bd9Sstevel@tonic-gate	signal.d \
885f549bd2SSam Cramer	scsi.d \
89191c289bSCharles Ting	srp.d \
90e04145d0Seschrock	sysevent.d \
919cd928feSAlan Maguire	tcp.d \
929cd928feSAlan Maguire	udp.d \
937c478bd9Sstevel@tonic-gate	unistd.d
947c478bd9Sstevel@tonic-gate
957c478bd9Sstevel@tonic-gateinclude ../../Makefile.lib
967c478bd9Sstevel@tonic-gate
977c478bd9Sstevel@tonic-gateSRCS = $(LIBSRCS:%.c=../common/%.c) $(LIBISASRCS:%.c=../$(MACH)/%.c)
987c478bd9Sstevel@tonic-gateLIBS = $(DYNLIB) $(LINTLIB)
997c478bd9Sstevel@tonic-gate
1007c478bd9Sstevel@tonic-gateSRCDIR = ../common
1017c478bd9Sstevel@tonic-gate
1027c478bd9Sstevel@tonic-gateCLEANFILES += dt_lex.c dt_grammar.c dt_grammar.h y.output
1037c478bd9Sstevel@tonic-gateCLEANFILES += ../common/procfs.sed ../common/procfs.d
1047c478bd9Sstevel@tonic-gateCLEANFILES += ../common/io.sed ../common/io.d
1054edabff4SbrendanCLEANFILES += ../common/ip.sed ../common/ip.d
10610e6dadfSbrendanCLEANFILES += ../common/net.sed ../common/net.d
1071a7c1b72SmwsCLEANFILES += ../common/errno.d ../common/signal.d
1081a7c1b72SmwsCLEANFILES += ../common/dt_errtags.c ../common/dt_names.c
109e04145d0SeschrockCLEANFILES += ../common/sysevent.sed ../common/sysevent.d
1109cd928feSAlan MaguireCLEANFILES += ../common/tcp.sed ../common/tcp.d
1119cd928feSAlan MaguireCLEANFILES += ../common/udp.sed ../common/udp.d
1127c478bd9Sstevel@tonic-gate
1137c478bd9Sstevel@tonic-gateCLOBBERFILES += drti.o
1147c478bd9Sstevel@tonic-gate
1157c478bd9Sstevel@tonic-gateCPPFLAGS += -I../common -I.
1167c478bd9Sstevel@tonic-gateCFLAGS += $(CCVERBOSE) $(C_BIGPICFLAGS)
1177c478bd9Sstevel@tonic-gateCFLAGS64 += $(CCVERBOSE) $(C_BIGPICFLAGS)
1187c478bd9Sstevel@tonic-gateYYCFLAGS =
119c9a6ea2eSBryan CantrillLDLIBS += -lgen -lproc -lrtld_db -lnsl -lsocket -lctf -lelf -lc
1207c478bd9Sstevel@tonic-gateDRTILDLIBS = $(LDLIBS.lib) -lc
1217c478bd9Sstevel@tonic-gate
1227c478bd9Sstevel@tonic-gateyydebug := YYCFLAGS += -DYYDEBUG
1237c478bd9Sstevel@tonic-gate
1247c478bd9Sstevel@tonic-gate$(LINTLIB) := SRCS = $(SRCDIR)/$(LINTSRC)
1257c478bd9Sstevel@tonic-gate
1267c478bd9Sstevel@tonic-gateLFLAGS = -t -v
1277c478bd9Sstevel@tonic-gateYFLAGS = -d -v
1287c478bd9Sstevel@tonic-gate
1297c478bd9Sstevel@tonic-gateROOTDLIBDIR = $(ROOT)/usr/lib/dtrace
1307c478bd9Sstevel@tonic-gateROOTDLIBDIR64 = $(ROOT)/usr/lib/dtrace/64
1317c478bd9Sstevel@tonic-gate
1327c478bd9Sstevel@tonic-gateROOTDLIBS = $(DLIBSRCS:%=$(ROOTDLIBDIR)/%)
1337c478bd9Sstevel@tonic-gateROOTDOBJS = $(ROOTDLIBDIR)/$(DRTIOBJ)
1347c478bd9Sstevel@tonic-gateROOTDOBJS64 = $(ROOTDLIBDIR64)/$(DRTIOBJ)
1357c478bd9Sstevel@tonic-gate
1367c478bd9Sstevel@tonic-gate.KEEP_STATE:
1377c478bd9Sstevel@tonic-gate
1387c478bd9Sstevel@tonic-gateall: $(LIBS) $(DRTIOBJ)
1397c478bd9Sstevel@tonic-gate
1407c478bd9Sstevel@tonic-gatelint: lintdrti lintcheck
1417c478bd9Sstevel@tonic-gate
1427c478bd9Sstevel@tonic-gatelintdrti: ../common/$(DRTISRC)
1437c478bd9Sstevel@tonic-gate	$(LINT.c) ../common/$(DRTISRC) $(DRTILDLIBS)
1447c478bd9Sstevel@tonic-gate
1457c478bd9Sstevel@tonic-gatedt_lex.c: $(SRCDIR)/dt_lex.l dt_grammar.h
1467c478bd9Sstevel@tonic-gate	$(LEX) $(LFLAGS) $(SRCDIR)/dt_lex.l > $@
1477c478bd9Sstevel@tonic-gate
1487c478bd9Sstevel@tonic-gatedt_grammar.c dt_grammar.h: $(SRCDIR)/dt_grammar.y
1497c478bd9Sstevel@tonic-gate	$(YACC) $(YFLAGS) $(SRCDIR)/dt_grammar.y
1507c478bd9Sstevel@tonic-gate	@mv y.tab.h dt_grammar.h
1517c478bd9Sstevel@tonic-gate	@mv y.tab.c dt_grammar.c
1527c478bd9Sstevel@tonic-gate
1537c478bd9Sstevel@tonic-gatepics/dt_lex.o pics/dt_grammar.o := CFLAGS += $(YYCFLAGS)
1547c478bd9Sstevel@tonic-gatepics/dt_lex.o pics/dt_grammar.o := CFLAGS64 += $(YYCFLAGS)
1557c478bd9Sstevel@tonic-gate
1567c478bd9Sstevel@tonic-gatepics/dt_lex.o pics/dt_grammar.o := CERRWARN += -erroff=E_STATEMENT_NOT_REACHED
1577c478bd9Sstevel@tonic-gatepics/dt_lex.o pics/dt_grammar.o := CCVERBOSE =
1587c478bd9Sstevel@tonic-gate
1597c478bd9Sstevel@tonic-gate../common/dt_errtags.c: ../common/mkerrtags.sh ../common/dt_errtags.h
1607c478bd9Sstevel@tonic-gate	sh ../common/mkerrtags.sh < ../common/dt_errtags.h > $@
1617c478bd9Sstevel@tonic-gate
1621a7c1b72Smws../common/dt_names.c: ../common/mknames.sh $(SRC)/uts/common/sys/dtrace.h
1631a7c1b72Smws	sh ../common/mknames.sh < $(SRC)/uts/common/sys/dtrace.h > $@
1641a7c1b72Smws
1657c478bd9Sstevel@tonic-gate../common/errno.d: ../common/mkerrno.sh $(SRC)/uts/common/sys/errno.h
1667c478bd9Sstevel@tonic-gate	sh ../common/mkerrno.sh < $(SRC)/uts/common/sys/errno.h > $@
1677c478bd9Sstevel@tonic-gate
1687c478bd9Sstevel@tonic-gate../common/signal.d: ../common/mksignal.sh $(SRC)/uts/common/sys/iso/signal_iso.h
1697c478bd9Sstevel@tonic-gate	sh ../common/mksignal.sh < $(SRC)/uts/common/sys/iso/signal_iso.h > $@
1707c478bd9Sstevel@tonic-gate
1717c478bd9Sstevel@tonic-gate../common/%.sed: ../common/%.sed.in
172e04145d0Seschrock	$(COMPILE.cpp) -D_KERNEL $< | tr -d ' ' | tr '"' '@' | \
173e04145d0Seschrock	    sed 's/\&/\\\&/g' | grep '^s/' > $@
1747c478bd9Sstevel@tonic-gate
1757c478bd9Sstevel@tonic-gate../common/procfs.d: ../common/procfs.sed ../common/procfs.d.in
1767c478bd9Sstevel@tonic-gate	sed -f ../common/procfs.sed < ../common/procfs.d.in > $@
1777c478bd9Sstevel@tonic-gate
1787c478bd9Sstevel@tonic-gate../common/io.d: ../common/io.sed ../common/io.d.in
1797c478bd9Sstevel@tonic-gate	sed -f ../common/io.sed < ../common/io.d.in > $@
1807c478bd9Sstevel@tonic-gate
1814edabff4Sbrendan../common/ip.d: ../common/ip.sed ../common/ip.d.in
1824edabff4Sbrendan	sed -f ../common/ip.sed < ../common/ip.d.in > $@
1834edabff4Sbrendan
18410e6dadfSbrendan../common/net.d: ../common/net.sed ../common/net.d.in
18510e6dadfSbrendan	sed -f ../common/net.sed < ../common/net.d.in > $@
18610e6dadfSbrendan
187e04145d0Seschrock../common/sysevent.d: ../common/sysevent.sed ../common/sysevent.d.in
188e04145d0Seschrock	sed -f ../common/sysevent.sed < ../common/sysevent.d.in > $@
189e04145d0Seschrock
1909cd928feSAlan Maguire../common/tcp.d: ..//common/tcp.sed ../common/tcp.d.in
1919cd928feSAlan Maguire	sed -f ../common/tcp.sed < ../common/tcp.d.in > $@
1929cd928feSAlan Maguire
1939cd928feSAlan Maguire../common/udp.d: ../common/udp.sed ../common/udp.d.in
1949cd928feSAlan Maguire	sed -f ../common/udp.sed < ../common/udp.d.in > $@
1959cd928feSAlan Maguire
1967c478bd9Sstevel@tonic-gatepics/%.o: ../$(MACH)/%.c
1977c478bd9Sstevel@tonic-gate	$(COMPILE.c) -o $@ $<
1987c478bd9Sstevel@tonic-gate	$(POST_PROCESS_O)
1997c478bd9Sstevel@tonic-gate
2007c478bd9Sstevel@tonic-gatepics/%.o: ../$(MACH)/%.s
2017c478bd9Sstevel@tonic-gate	$(COMPILE.s) -o $@ $<
2027c478bd9Sstevel@tonic-gate	$(POST_PROCESS_O)
2037c478bd9Sstevel@tonic-gate
2047c478bd9Sstevel@tonic-gate%.o: ../common/%.c
2057c478bd9Sstevel@tonic-gate	$(COMPILE.c) -o $@ $<
2067c478bd9Sstevel@tonic-gate	$(POST_PROCESS_O)
2077c478bd9Sstevel@tonic-gate
2087c478bd9Sstevel@tonic-gate$(ROOTDLIBDIR):
2097c478bd9Sstevel@tonic-gate	$(INS.dir)
2107c478bd9Sstevel@tonic-gate
2117c478bd9Sstevel@tonic-gate$(ROOTDLIBDIR64): $(ROOTDLIBDIR)
2127c478bd9Sstevel@tonic-gate	$(INS.dir)
2137c478bd9Sstevel@tonic-gate
2147c478bd9Sstevel@tonic-gate$(ROOTDLIBDIR)/%.d: ../common/%.d
2157c478bd9Sstevel@tonic-gate	$(INS.file)
2167c478bd9Sstevel@tonic-gate
2177c478bd9Sstevel@tonic-gate$(ROOTDLIBDIR)/%.d: ../$(MACH)/%.d
2187c478bd9Sstevel@tonic-gate	$(INS.file)
2197c478bd9Sstevel@tonic-gate
2207c478bd9Sstevel@tonic-gate$(ROOTDLIBDIR)/%.d: %.d
2217c478bd9Sstevel@tonic-gate	$(INS.file)
2227c478bd9Sstevel@tonic-gate
2237c478bd9Sstevel@tonic-gate$(ROOTDLIBDIR)/%.o: %.o
2247c478bd9Sstevel@tonic-gate	$(INS.file)
2257c478bd9Sstevel@tonic-gate
2267c478bd9Sstevel@tonic-gate$(ROOTDLIBDIR64)/%.o: %.o
2277c478bd9Sstevel@tonic-gate	$(INS.file)
2287c478bd9Sstevel@tonic-gate
2297c478bd9Sstevel@tonic-gate$(ROOTDLIBS): $(ROOTDLIBDIR)
2307c478bd9Sstevel@tonic-gate
2317c478bd9Sstevel@tonic-gate$(ROOTDOBJS): $(ROOTDLIBDIR)
2327c478bd9Sstevel@tonic-gate
2337c478bd9Sstevel@tonic-gate$(ROOTDOBJS64): $(ROOTDLIBDIR64)
2347c478bd9Sstevel@tonic-gate
2357c478bd9Sstevel@tonic-gateinclude ../../Makefile.targ
236