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 # Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. 23 # 24 # Copyright (c) 2019, Joyent, Inc. 25 26 LIBRARY= libtnfprobe.a 27 VERS= .1 28 OBJECTS.c= tnf_buf.o \ 29 trace_init.o \ 30 trace_funcs.o \ 31 debug_funcs.o \ 32 probe_mem.o \ 33 tnf_args.o \ 34 tnf_trace.o \ 35 probe_cntl.o 36 37 UFSDIR= $(SRC)/uts/common/tnf 38 UFSOBJS= tnf_writer.o tnf_probe.o 39 40 OBJECTS.s= $(MACH)_locks.o 41 42 OBJECTS= $(OBJECTS.c) $(UFSOBJS) $(OBJECTS.s) 43 44 include ../../Makefile.lib 45 46 # We omit $(OBJECTS.s:%.o=%.s) in the next line, because lint no like 47 SRCS= $(OBJECTS.c:%.o=../%.c) $(UFSOBJS:%.o=$(UFSDIR)/%.c) 48 49 LIBS= $(DYNLIB) 50 51 DYNFLAGS += $(ZINTERPOSE) 52 53 HDRS= com.h writer.h probe.h 54 ROOTHDRDIR= $(ROOT)/usr/include/tnf 55 ROOTHDRS= $(HDRS:%=$(ROOTHDRDIR)/%) 56 CHECKHDRS= $(HDRS:%.h=%.check) 57 $(ROOTHDRS) := FILEMODE = 0644 58 CHECKHDRS = $(HDRS:%.h=%.check) 59 60 # Include .. first to pick up tnf_trace.h in current dir, Include UFSDIR to 61 # pick up tnf_types.h 62 CPPFLAGS += -I.. -I$(UFSDIR) -D_REENTRANT -D_TNF_LIBRARY 63 64 LINTFLAGS += -y 65 66 CERRWARN += -_gcc=-Wno-unused-variable 67 CERRWARN += -_gcc=-Wno-parentheses 68 CERRWARN += $(CNOWARN_UNINIT) 69 70 # not linted 71 SMATCH=off 72 73 $(ROOTHDRS) := FILEMODE = 644 74 75 LDLIBS += -lc 76 77 .KEEP_STATE: 78 79 all: $(LIBS) 80 81 install_h: $(ROOTHDRDIR) $(ROOTHDRS) 82 83 lint: 84 $(LINT.c) $(SRCS) 85 86 check: $(CHECKHDRS) 87 88 $(ROOTLIBDIR) $(ROOTHDRDIR): 89 $(INS.dir) 90 91 $(ROOTHDRDIR)/% : % 92 $(INS.file) 93 94 #ASFLAGS= $(AS_PICFLAGS) -P -D_SYS_SYS_S -D_LOCORE -D_ASM -DPIC -DLOCORE $(CPPFLAGS) 95 ASFLAGS= -P -D_SYS_SYS_S -D_LOCORE -D_ASM -DPIC -DLOCORE $(CPPFLAGS) 96 BUILD.s= $(AS) $(ASFLAGS) $< -o $@ 97 98 objs/%.o pics/%.o: ../%.s 99 $(COMPILE.s) -o $@ $< 100 $(POST_PROCESS_S_O) 101 102 pics/%.o objs/%.o: ../%.c 103 $(COMPILE.c) -o $@ $< 104 $(POST_PROCESS_O) 105 106 pics/%.o objs/%.o: $(UFSDIR)/%.c 107 $(COMPILE.c) -o $@ $< 108 $(POST_PROCESS_O) 109 110 include ../../Makefile.targ