10080 smatch Makefile changes for usr/src/cmd
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 2009 Sun Microsystems, Inc. All rights reserved.
23 # Use is subject to license terms.
24 #
25 # cmd/pools/poold/Makefile
26
27 PROG = poold
28 OBJS = poold.o
29 SRCS = $(OBJS:%.o=%.c)
30
31 MANIFEST= poold.xml
32 SVCMETHOD= svc-poold
33
34 include $(SRC)/cmd/Makefile.cmd
35 $(BLD_JAVA_8)include $(SRC)/cmd/Makefile.cmd.64
36
37 JAVA_SUBDIRS = com/sun/solaris/service/exception \
38 com/sun/solaris/service/kstat \
39 com/sun/solaris/service/locality \
40 com/sun/solaris/service/logging \
41 com/sun/solaris/service/pools \
42 com/sun/solaris/service/timer \
43 com/sun/solaris/domain/pools
44
45 SUBDIRS = libjkstat \
46 libjlgrp \
47 libjpool \
48 libjsyslog
49
50 ROOTMANIFESTDIR= $(ROOTSVCSYSTEM)
51
52 all := TARGET = all
53 install := TARGET = install
54 clean := TARGET = clean
55 clobber := TARGET = clobber
56 lint := TARGET = lint
57 msg := TARGET = msg
58
59 $(ROOTMANIFEST):= FILEMODE= 444
60 JARFILE = JPool.jar
61
62 JAVA_LIB_PATH = $(JAVA_ROOT)/jre/lib/$(MACH)/client
63 LIBPOOL_PATH = $(ROOTLIB)
64 $(BLD_JAVA_8)JAVA_LIB_PATH = $(JAVA_ROOT)/jre/lib/$(MACH64)/server
65 $(BLD_JAVA_8)LIBPOOL_PATH = $(ROOTLIB64)
66
67 # JAVA_SUBDIRS and PACKAGEDOCS must be synchronized to ensure
68 # javadoc documentation is generated for all packages.
69
70 PACKAGEDOCS = com.sun.solaris.service.exception \
71 com.sun.solaris.service.kstat \
72 com.sun.solaris.service.locality \
73 com.sun.solaris.service.logging \
74 com.sun.solaris.service.pools \
75 com.sun.solaris.service.timer \
76 com.sun.solaris.domain.pools
77 DOCDIR = doc
78 ROOTUSRLIBDRP = $(ROOTLIB)/pool
79 INCS = -I../common \
80 -I$(JAVA_ROOT)/include \
81 -I$(JAVA_ROOT)/include/solaris
82 LDLIBS += -lpool -L$(JAVA_LIB_PATH) -ljvm
83 # runpath should point to runtime JAVA_HOME
84 LDFLAGS += -R$(JAVA_LIB_PATH)
85
86 LINTFLAGS += -erroff=E_NAME_USED_NOT_DEF2
87 $(BLD_JAVA_8)LINTFLAGS64 += -erroff=E_NAME_USED_NOT_DEF2
88 LINTLIBS += -L$(LIBPOOL_PATH) -lpool
89
90 CPPFLAGS += $(INCS)
91 ROOTCMDDIR = $(ROOT)/usr/lib/pool
92
93 CLOBBERFILES += $(JARFILE)
94
95 #
96 # Definitions for message catalogue
97 #
98 POFILES = $(OBJS:.o=.po)
99
100 #
101 # Definitions for Java installs
102 #
103
104 JFILES = poold.properties $(JARFILE)
105 ROOTJAVA = $(JFILES:%=$(ROOTUSRLIBDRP)/%)
106
107 $(ROOTJAVA) := FILEMODE = 444
108
109 all: $(PROG) $(JAVA_SUBDIRS) $(JARFILE) \
110 .WAIT $(SUBDIRS)
111
112 clean : $(JAVA_SUBDIRS) $(SUBDIRS) clean_local
113 clean_local:
114 $(RM) $(OBJS)
115
116 clobber : $(JAVA_SUBDIRS) $(SUBDIRS) clobber_local
117 clobber_local: clean_local
118 $(RM) $(CLOBBERFILES)
119
120 lint: $(SUBDIRS)
121
122 msg: $(POFILES)
123
124 install: $(ROOTCMD) $(JAVA_SUBDIRS) $(JARFILE) \
125 .WAIT $(SUBDIRS) $(ROOTJAVA) $(ROOTMANIFEST) \
126 $(ROOTSVCMETHOD)
127
128 check: $(CHKMANIFEST)
129
130 $(JAVA_SUBDIRS): FRC
131 @cd $@; pwd; $(MAKE) $(TARGET)
132 if [ "$(TARGET)" != "clean" ] && [ "$(TARGET)" != "clobber" ]; \
133 then \
134 if [ ! -f $(JARFILE) ]; \
135 then \
136 $(JAR) -cf $(JARFILE) $@/*class; \
137 else \
138 $(JAR) -uf $(JARFILE) $@/*class; \
139 fi \
140 fi
141
142 $(SUBDIRS): FRC
143 @cd $@; pwd; $(MAKE) $(TARGET)
144
145 doc: all
146 $(JAVADOC) -private -classpath $(JARFILE): -sourcepath . \
147 -source 1.4 -d $(DOCDIR) $(PACKAGEDOCS)
148
149 $(PROG): $(OBJS)
150 $(LINK.c) -o $(PROG) $(OBJS) $(LDLIBS)
151 $(POST_PROCESS)
152
153 $(ROOTUSRLIBDRP)/%: %
154 $(INS.file)
155
156 FRC:
157
158 lint:
159 $(LINT.c) $(PROG).c $(LINTLIBS)
160
161 include $(SRC)/cmd/Makefile.targ
--- EOF ---