8322 nl: misleading-indentation
[unleashed/tickless.git] / usr / src / cmd / rpcsvc / Makefile
blobfb78120a07eb11f75dcd4cf2ec098f47db5c4ef1
2 # CDDL HEADER START
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.
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.
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]
19 # CDDL HEADER END
22 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
23 # Use is subject to license terms.
26 # cmd/rpcsvc/Makefile
28 PROTOCOL_DIR= $(ROOT)/usr/include/rpcsvc
30 BINPROG= rusers rup
31 SBINPROG= rwall spray
32 RPROG= rpc.rusersd
33 SPROG= rpc.sprayd
34 WPROG= rpc.rwalld
35 TPROG= rpc.rstatd
37 PROG= $(BINPROG) $(SBINPROG) $(RPROG) $(SPROG) $(WPROG) $(TPROG)
39 MANIFEST= \
40 rusers.xml \
41 spray.xml \
42 wall.xml \
43 rstat.xml
45 SVCMETHOD=
47 SCLNTOBJS= spray.o spray_clnt.o
48 SSVCOBJS= spray_subr.o spray_svc.o
49 WCLNTOBJS = rwall.o rwall_clnt.o
50 WSVCOBJS= rwall_subr.o rwall_svc.o
51 TSVCOBJS= rstat_main.o rstat_proc.o rstat_svc.o rstat_v2_svc.o rstat_v2_xdr.o
53 DERIVED_FILES = rstat.x rstat.h rstat_svc.c rstat_v2.h rstat_v2_svc.c \
54 rstat_v2_xdr.c spray.x spray.h spray_clnt.c spray_svc.c \
55 rwall.x rwall.h rwall_svc.c rwall_clnt.c
57 include ../Makefile.cmd
59 ROOTMANIFESTDIR= $(ROOTSVCNETWORKRPC)
61 CPPFLAGS= -I. $(CPPFLAGS.master)
62 CERRWARN += -_gcc=-Wno-implicit-function-declaration
63 CERRWARN += -_gcc=-Wno-unused-variable
64 CERRWARN += -_gcc=-Wno-parentheses
65 CERRWARN += -_gcc=-Wno-extra
66 CERRWARN += -_gcc=-Wno-unused-function
67 LDLIBS += -lnsl
68 rusers := CFLAGS += $(CCVERBOSE)
69 $(BINPROG) := LDLIBS += -lrpcsvc
70 $(RPROG) := LDLIBS += -lrpcsvc
71 $(SPROG) := LDLIBS += -lrpcsvc
72 $(TPROG) := LDLIBS += -lrpcsvc
73 spray := LDLIBS += -lrpcsvc
76 SUBDIRS= rpc.bootparamd
77 OBJS= $(SCLNTOBJS) $(SSVCOBJS) $(WCLNTOBJS) $(WSVCOBJS) $(TSVCOBJS)
78 SRCS= $(OBJS:%.o=%.c) rusers.c rpc.rusersd.c rup.c
80 ETCFILES= rpc
82 TXTS= $(ETCFILES:%=net_files/%)
84 NETSVC= $(ROOTLIB)/netsvc
85 NIS = $(NETSVC)/nis
86 RWALL= $(NETSVC)/rwall
87 RUSERS= $(NETSVC)/rusers
88 SPRAY= $(NETSVC)/spray
89 RSTAT= $(NETSVC)/rstat
91 ROOTDIRS= \
92 $(NETSVC) \
93 $(NIS) \
94 $(RWALL) \
95 $(RUSERS) \
96 $(SPRAY) \
97 $(RSTAT)
99 IBINPROG= $(BINPROG:%=$(ROOTBIN)/%)
100 ISBINPROG= $(SBINPROG:%=$(ROOTUSRSBIN)/%)
101 IWPROG= $(WPROG:%=$(RWALL)/%)
102 ISPROG= $(SPROG:%=$(SPRAY)/%)
103 IRPROG= $(RPROG:%=$(RUSERS)/%)
104 ITPROG= $(TPROG:%=$(RSTAT)/%)
105 IETCFILES= $(ETCFILES:%=$(ROOTETC)/%)
107 # non-default file attributes
108 $(ROOTETC)/rpc := FILEMODE= 0644
110 all:= TARGET= all
111 install:= TARGET= install
112 clean:= TARGET= clean
113 clobber:= TARGET= clobber
114 lint:= TARGET= lint
116 rpc.rstatd:= LDLIBS += -lkstat
117 rwall:= CPPFLAGS += -D_REENTRANT
118 rpc.rwalld:= CPPFLAGS += -D_REENTRANT
120 # install rules
122 $(RWALL)/% $(SPRAY)/% $(RUSERS)/% $(RSTAT)/%: %
123 $(INS.file)
125 $(ROOTETC)/%: ./net_files/%
126 $(INS.file)
128 .KEEP_STATE:
130 all: $(PROG) $(TXTS) $(SUBDIRS)
132 # multi-object targets
134 spray: $(SCLNTOBJS)
135 $(LINK.c) $(SCLNTOBJS) -o $@ $(LDLIBS)
136 $(POST_PROCESS)
138 spray_svc.o spray_clnt.o: spray.h
140 rpc.sprayd: $(SSVCOBJS)
141 $(LINK.c) $(SSVCOBJS) -o $@ $(LDLIBS)
142 $(POST_PROCESS)
144 rwall_svc.o rwall_clnt.o: rwall.h
146 rwall: $(WCLNTOBJS)
147 $(LINK.c) $(WCLNTOBJS) -o $@ $(LDLIBS)
148 $(POST_PROCESS)
150 rpc.rwalld: $(WSVCOBJS)
151 $(LINK.c) $(WSVCOBJS) -o $@ $(LDLIBS)
152 $(POST_PROCESS)
154 rstat_main.o: rstat.h rstat_v2.h
156 rstat_svc.o: rstat.h
158 rstat_V2_svc.o rstat_V2_xdr.o: rstat_v2.h
160 rpc.rstatd: $(TSVCOBJS)
161 $(LINK.c) $(TSVCOBJS) -o $@ $(LDLIBS)
162 $(POST_PROCESS)
164 install: $(PROG) $(TXTS) .WAIT $(ROOTDIRS) .WAIT $(IBINPROG) $(ISBINPROG) \
165 $(IWPROG) $(ISPROG) $(IRPROG) $(ITPROG) $(IETCFILES) $(SUBDIRS) \
166 $(ROOTMANIFEST) $(ROOTSVCMETHOD)
168 $(ROOTDIRS):
169 $(INS.dir)
171 $(SUBDIRS): FRC
172 @cd $@; pwd; $(MAKE) $(TARGET)
175 # Derived files
178 rstat.x: $(PROTOCOL_DIR)/rstat.x
179 $(RM) rstat.x
180 $(CP) $(PROTOCOL_DIR)/rstat.x rstat.x
182 rstat.h: $(PROTOCOL_DIR)/rstat.h
183 $(RM) rstat.h
184 $(CP) $(PROTOCOL_DIR)/rstat.h rstat.h
186 rstat_svc.c: rstat.x
187 $(RPCGEN) -C -m rstat.x > $@
189 rstat_v2.h: rstat_v2.x
190 $(RPCGEN) -C -h rstat_v2.x > $@
192 rstat_v2_svc.c: rstat_v2.x
193 $(RPCGEN) -C -m rstat_v2.x > $@
195 rstat_v2_xdr.c: rstat_v2.x
196 $(RPCGEN) -c rstat_v2.x > $@
198 spray.x: $(PROTOCOL_DIR)/spray.x
199 $(RM) spray.x
200 $(CP) $(PROTOCOL_DIR)/spray.x spray.x
202 spray.h: $(PROTOCOL_DIR)/spray.h
203 $(RM) spray.h
204 $(CP) $(PROTOCOL_DIR)/spray.h spray.h
206 spray_svc.c: spray.x
207 $(RPCGEN) -s datagram_v -s circuit_v spray.x > $@
209 spray_clnt.c: spray.x
210 $(RPCGEN) -l spray.x > $@
212 rwall.x: $(PROTOCOL_DIR)/rwall.x
213 $(RM) rwall.x
214 $(CP) $(PROTOCOL_DIR)/rwall.x rwall.x
216 rwall.h: $(PROTOCOL_DIR)/rwall.h
217 $(RM) rwall.h
218 $(CP) $(PROTOCOL_DIR)/rwall.h rwall.h
220 rwall_svc.c: rwall.x
221 $(RPCGEN) -A -s datagram_v rwall.x > $@
223 rwall_clnt.c: rwall.x
224 $(RPCGEN) -l -M rwall.x > $@
226 check: $(CHKMANIFEST)
228 clean: $(SUBDIRS)
229 -$(RM) $(OBJS) $(DERIVED_FILES)
231 clobber: $(SUBDIRS)
233 lint:
234 $(LINT.c) $(WCLNTOBJS:%.o=%.c) -lnsl -lrpcsvc
235 $(LINT.c) $(WSVCOBJS:%.o=%.c) -lnsl -lrpcsvc
236 $(LINT.c) rusers.c -lnsl -lrpcsvc
238 FRC:
240 include ../Makefile.targ