xref: /titanic_51/usr/src/lib/libtnfctl/Makefile.com (revision 25c28e83beb90e7c80452a7c818c5e6f73a07dc8)
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 2006 Sun Microsystems, Inc.  All rights reserved.
23# Use is subject to license terms.
24#
25
26LIBRARY=	libtnfctl.a
27VERS=		.1
28OBJECTS.c=	open.o		\
29		prb_child.o	\
30		prb_shmem.o	\
31		prb_proc.o	\
32		prb_lmap.o	\
33		prb_rtld.o	\
34		prb_findexec.o	\
35		prb_status.o	\
36		util.o		\
37		traverse.o	\
38		sym.o		\
39		elf.o		\
40		continue.o	\
41		checklib.o	\
42		probes.o	\
43		probes_ext.o	\
44		close.o		\
45		targmem.o	\
46		comb.o		\
47		kernel_int.o	\
48		kernel.o	\
49		internal.o	\
50		status.o
51
52
53OBJECTS.s=	$(MACH)_assm.o
54
55OBJECTS=	$(OBJECTS.c) $(OBJECTS.s)
56
57include ../../Makefile.lib
58
59# We omit $(OBJECTS.s:%.o=%.s) in the next line, because lint no like
60SRCS= $(OBJECTS.c:%.o=../%.c)
61
62LIBS=		$(DYNLIB)
63
64HDRS=		tnfctl.h
65ROOTHDRDIR=	$(ROOT)/usr/include/tnf
66ROOTHDRS=	$(HDRS:%=$(ROOTHDRDIR)/%)
67CHECKHDRS=	$(HDRS:%.h=%.check)
68$(ROOTHDRS) := 	FILEMODE = 0644
69CHECKHDRS =	$(HDRS:%.h=%.check)
70
71LDLIBS +=	-lc -lelf
72
73# Uncomment the following line for a debug build
74# COPTFLAG =	-g -DDEBUG $(CCVERBOSE)
75CPPFLAGS +=	-I$(SRC)/lib/libtnfprobe -D_REENTRANT -I$(SRC)/cmd/sgs/include
76
77LINTFLAGS +=	-y
78
79CERRWARN +=	-_gcc=-Wno-uninitialized
80CERRWARN +=	-_gcc=-Wno-empty-body
81CERRWARN +=	-_gcc=-Wno-parentheses
82
83ASFLAGS +=	-P
84
85$(ROOTHDRS) :=	FILEMODE = 644
86
87.KEEP_STATE:
88
89all: $(LIBS)
90
91install_h: $(ROOTHDRDIR) $(ROOTHDRS)
92
93lint:
94	$(LINT.c) $(SRCS)
95
96check: $(CHECKHDRS)
97
98$(ROOTLIBDIR) $(ROOTHDRDIR):
99	$(INS.dir)
100
101$(ROOTHDRDIR)/% : %
102	$(INS.file)
103
104BUILD.s=	$(AS) $< -o $@
105
106objs/%.o pics/%.o: ../%.s
107	$(COMPILE.s) -o $@ $<
108	$(POST_PROCESS_O)
109
110objs/%.o pics/%.o: ../%.c
111	$(COMPILE.c) -o $@ $<
112	$(POST_PROCESS_O)
113
114
115%.o:		../%.c
116	$(COMPILE.c) -o $@ $<
117	$(POST_PROCESS_O)
118
119WARLOCK_FILES= $(OBJECTS.c:%.o=%.ll)
120CLEANFILES= $(WARLOCK_FILES)
121warlock_files:	$(WARLOCK_FILES)
122%.ll:		../%.c
123		wlcc $(CFLAGS) $(CPPFLAGS) -o $@ $<
124warlock:	warlock_files
125		warlock -c wlcmd $(WARLOCK_FILES)
126
127include ../../Makefile.targ
128