1mydir=lib$(S)rpc
2BUILDTOP=$(REL)..$(S)..
3DEFINES = -DGSSAPI_KRB5 -DDEBUG_GSSAPI=0 -DGSSRPC__IMPL
4
5SUBDIRS=unit-test
6
7##DOSBUILDTOP = ..\..
8##DOSLIBNAME=libgssrpc.lib
9
10LIBBASE=gssrpc
11LIBMAJOR=4
12LIBMINOR=2
13SHLIB_EXPDEPS= \
14	$(TOPLIBD)/libgssapi_krb5$(SHLIBEXT) \
15	$(TOPLIBD)/libkrb5$(SHLIBEXT) \
16	$(TOPLIBD)/libk5crypto$(SHLIBEXT) \
17	$(COM_ERR_DEPLIB)
18SHLIB_EXPLIBS=-lgssapi_krb5 -lkrb5 -lk5crypto $(COM_ERR_LIB) $(LIBS)
19RELDIR=rpc
20
21SRCS = $(srcdir)/auth_none.c \
22	$(srcdir)/auth_unix.c \
23	$(srcdir)/authgss_prot.c \
24	$(srcdir)/authunix_prot.c \
25	$(srcdir)/auth_gss.c \
26	$(srcdir)/auth_gssapi.c \
27	$(srcdir)/auth_gssapi_misc.c \
28	$(srcdir)/bindresvport.c \
29	$(srcdir)/clnt_generic.c \
30	$(srcdir)/clnt_perror.c \
31	$(srcdir)/clnt_raw.c \
32	$(srcdir)/clnt_simple.c \
33	$(srcdir)/clnt_tcp.c \
34	$(srcdir)/clnt_udp.c \
35	$(srcdir)/dyn.c \
36	$(srcdir)/rpc_dtablesize.c \
37	$(srcdir)/get_myaddress.c \
38	$(srcdir)/getrpcport.c \
39	$(srcdir)/pmap_clnt.c \
40	$(srcdir)/pmap_getmaps.c \
41	$(srcdir)/pmap_getport.c \
42	$(srcdir)/pmap_prot.c \
43	$(srcdir)/pmap_prot2.c \
44	$(srcdir)/pmap_rmt.c \
45	$(srcdir)/rpc_prot.c \
46	$(srcdir)/rpc_commondata.c \
47	$(srcdir)/rpc_callmsg.c \
48	$(srcdir)/svc.c \
49	$(srcdir)/svc_auth.c \
50	$(srcdir)/svc_auth_gss.c \
51	$(srcdir)/svc_auth_none.c \
52	$(srcdir)/svc_auth_unix.c \
53	$(srcdir)/svc_auth_gssapi.c \
54	$(srcdir)/svc_raw.c \
55	$(srcdir)/svc_run.c \
56	$(srcdir)/svc_simple.c \
57	$(srcdir)/svc_tcp.c \
58	$(srcdir)/svc_udp.c \
59	$(srcdir)/xdr.c \
60	$(srcdir)/xdr_array.c \
61	$(srcdir)/xdr_float.c \
62	$(srcdir)/xdr_mem.c \
63	$(srcdir)/xdr_rec.c \
64	$(srcdir)/xdr_reference.c \
65	$(srcdir)/xdr_stdio.c \
66	$(srcdir)/xdr_sizeof.c \
67	$(srcdir)/xdr_alloc.c
68
69OBJS = auth_none.$(OBJEXT) \
70	auth_unix.$(OBJEXT) \
71	authunix_prot.$(OBJEXT) \
72	authgss_prot.$(OBJEXT) \
73	auth_gss.$(OBJEXT) \
74	auth_gssapi.$(OBJEXT) \
75	auth_gssapi_misc.$(OBJEXT) \
76	bindresvport.$(OBJEXT) \
77	clnt_generic.$(OBJEXT) \
78	clnt_perror.$(OBJEXT) \
79	clnt_raw.$(OBJEXT) \
80	clnt_simple.$(OBJEXT) \
81	clnt_tcp.$(OBJEXT) \
82	clnt_udp.$(OBJEXT) \
83	dyn.$(OBJEXT) \
84	rpc_dtablesize.$(OBJEXT) \
85	get_myaddress.$(OBJEXT) \
86	getrpcport.$(OBJEXT) \
87	pmap_clnt.$(OBJEXT) \
88	pmap_getmaps.$(OBJEXT) \
89	pmap_getport.$(OBJEXT) \
90	pmap_prot.$(OBJEXT) \
91	pmap_prot2.$(OBJEXT) \
92	pmap_rmt.$(OBJEXT) \
93	rpc_prot.$(OBJEXT) \
94	rpc_commondata.$(OBJEXT) \
95	rpc_callmsg.$(OBJEXT) \
96	svc.$(OBJEXT) \
97	svc_auth.$(OBJEXT) \
98	svc_auth_gss.$(OBJEXT) \
99	svc_auth_none.$(OBJEXT) \
100	svc_auth_unix.$(OBJEXT) \
101	svc_auth_gssapi.$(OBJEXT) \
102	svc_raw.$(OBJEXT) \
103	svc_run.$(OBJEXT) \
104	svc_simple.$(OBJEXT) \
105	svc_tcp.$(OBJEXT) \
106	svc_udp.$(OBJEXT) \
107	xdr.$(OBJEXT) \
108	xdr_array.$(OBJEXT) \
109	xdr_float.$(OBJEXT) \
110	xdr_mem.$(OBJEXT) \
111	xdr_rec.$(OBJEXT) \
112	xdr_reference.$(OBJEXT) \
113	xdr_stdio.$(OBJEXT) \
114	xdr_sizeof.$(OBJEXT) \
115	xdr_alloc.$(OBJEXT)
116
117STLIBOBJS = \
118	auth_none.o \
119	auth_unix.o \
120	authgss_prot.o \
121	authunix_prot.o \
122	auth_gss.o \
123	auth_gssapi.o \
124	auth_gssapi_misc.o \
125	bindresvport.o \
126	clnt_generic.o \
127	clnt_perror.o \
128	clnt_raw.o \
129	clnt_simple.o \
130	clnt_tcp.o \
131	clnt_udp.o \
132	dyn.o \
133	rpc_dtablesize.o \
134	get_myaddress.o \
135	getrpcport.o \
136	pmap_clnt.o \
137	pmap_getmaps.o \
138	pmap_getport.o \
139	pmap_prot.o \
140	pmap_prot2.o \
141	pmap_rmt.o \
142	rpc_prot.o \
143	rpc_commondata.o \
144	rpc_callmsg.o \
145	svc.o \
146	svc_auth.o \
147	svc_auth_gss.o \
148	svc_auth_gssapi.o \
149	svc_auth_none.o \
150	svc_auth_unix.o \
151	svc_raw.o \
152	svc_run.o \
153	svc_simple.o \
154	svc_tcp.o \
155	svc_udp.o \
156	xdr.o \
157	xdr_array.o \
158	xdr_float.o \
159	xdr_mem.o \
160	xdr_rec.o \
161	xdr_reference.o \
162	xdr_stdio.o \
163	xdr_sizeof.o \
164	xdr_alloc.o
165
166HDRDIR=$(BUILDTOP)/include/gssrpc
167
168all-prerecurse: all-liblinks
169
170all-windows: $(OBJS)
171
172generate-files-mac: darwin.exports
173
174install-unix: install-libs
175
176install-unix:
177	for i in $(SRC_HDRS); do \
178		(set -x; $(INSTALL_DATA) $(srcdir)/../../include/gssrpc/$$i $(DESTDIR)$(KRB5_INCDIR)$(S)gssrpc$(S)$$i) ; \
179	done
180	for i in $(BUILD_HDRS); do \
181		(set -x; $(INSTALL_DATA) ../../include/gssrpc/$$i $(DESTDIR)$(KRB5_INCDIR)$(S)gssrpc$(S)$$i) ; \
182	done
183
184BUILD_HDRS = types.h
185SRC_HDRS = auth.h auth_gss.h auth_gssapi.h auth_unix.h clnt.h \
186	netdb.h pmap_clnt.h pmap_prot.h pmap_rmt.h rename.h \
187	rpc.h rpc_msg.h svc.h svc_auth.h xdr.h
188
189check-windows:
190
191clean-unix:: clean-liblinks clean-libs clean-libobjs
192
193clean-windows::
194
195# stuff picked up from old "dyn" library
196#check-unix: run-dyntest
197run-dyntest: dyntest
198	./dyntest
199dyntest: dyntest.o dyn.o
200	$(CC) -o dyntest dyntest.o dyn.o
201clean-unix:: clean-dyntest
202clean-dyntest:
203	$(RM) dyntest dyntest.o
204
205LCLINT=		lclint
206# +posixlib     gets more complete errno list than ansilib
207# -usedef       turns off bogus warnings from poor dataflow analysis (should be
208#               redundant with gcc warnings anyways)
209# -warnposix
210# +charintliteral
211# +ignoresigns
212# -predboolint
213# -exportlocal
214# -retvalint    allow ignoring of int return values (e.g., fputs)
215LCLINTOPTS=+posixlib \
216        +ignoresigns -predboolint \
217        +mod-uncon +modinternalstrict +modfilesys \
218        -expect 2
219do-dyn-lclint:
220	$(LCLINT) $(LCLINTOPTS) $(LOCALINCLUDES) $(DEFS) dyn.c dyntest.c
221
222$(BUILDTOP)/include/gssrpc/types.h: types.stamp
223types.stamp: $(top_srcdir)/include/gssrpc/types.hin $(BUILDTOP)/config.status
224	(cd $(BUILDTOP) && $(SHELL) config.status include/gssrpc/types.h)
225	touch types.stamp
226
227clean-unix::
228	$(RM) types.stamp $(BUILDTOP)/include/gssrpc/types.h
229clean-windows::
230	$(RM) types.stamp
231
232
233@lib_frag@
234@libobj_frag@
235
236