4a6469c7787b301530ca5266d3daa8e25274d396
[openafs.git] / src / libafsrpc / NTMakefile
1 # Copyright 2000, International Business Machines Corporation and others.
2 # All Rights Reserved.
3
4 # This software has been released under the terms of the IBM Public
5 # License.  For details, see the LICENSE file in the top-level source
6 # directory or online at http://www.openafs.org/dl/license10.html
7
8 !include ..\config\NTMakefile.$(SYS_NAME)
9
10 !include ..\config\NTMakefile.version
11
12 RX = ..\rx
13 RXSTAT = ..\rxstat
14 RXKAD = ..\rxkad
15 DES = ..\des
16 UTIL = ..\util
17 FSINT = ..\fsint
18 COMERR = ..\comerr
19
20 # Additional debugging flag for RX.
21 AFSDEV_AUXCDEFINES = -DRXDEBUG -DAFS_PTHREAD_ENV
22
23 LIBFILE = $(DESTDIR)\lib\afsrpc.dll
24
25 # Object files by category.
26 MULTIOBJS = rx_multi.obj
27
28 XDROBJS = xdr.obj xdr_array.obj xdr_arrayn.obj xdr_float.obj xdr_mem.obj \
29         xdr_rec.obj  xdr_refernce.obj xdr_rx.obj xdr_update.obj \
30         xdr_afsuuid.obj
31
32 RXOBJS = rx_event.obj rx_user.obj rx_pthread.obj rx.obj \
33         rx_null.obj rx_globals.obj rx_getaddr.obj rx_misc.obj rx_packet.obj \
34         rx_rdwr.obj rx_trace.obj rx_xmit_nt.obj rx_conncache.obj 
35
36 RXSTATOBJS = rxstat.obj rxstat.ss.obj rxstat.xdr.obj rxstat.cs.obj
37
38 LIBRXKAD_OBJS = rxkad_client.obj rxkad_server.obj rxkad_common.obj ticket.obj \
39         AFS_component_version_number.obj
40
41 LIBRXKAD_REGOBJS = fcrypt.obj crypt_conn.obj
42
43 DESOBJS = des.obj cbc_encrypt.obj pcbc_encrypt.obj cksum.obj new_rnd_key.obj \
44         key_sched.obj debug_decl.obj quad_cksum.obj key_parity.obj \
45         weak_key.obj strng_to_key.obj misc.obj util.obj
46
47 UTILOBJS = casestrcpy.obj winsock_nt.obj
48
49 COMERROBJS = error_msg.obj et_name.obj com_err.obj
50
51 FSINTOBJS = afsint.cs.obj afsint.xdr.obj afscbint.cs.obj afscbint.xdr.obj \
52         afsaux.obj
53
54 DLLOBJS = $(MULTIOBJS) $(RXOBJS) $(XDROBJS) $(RXSTATOBJS) $(LIBRXKAD_OBJS) \
55         $(DESOBJS) $(LIBRXKAD_REGOBJS) $(UTILOBJS) $(COMERROBJS) \
56         $(FSINTOBJS) afsrpc.res
57
58 rx_multi.obj: $(RX)\rx_multi.c
59         $(C2OBJ) $(RX)\rx_multi.c
60
61 xdr.obj: $(RX)\xdr.c
62         $(C2OBJ) $(RX)\xdr.c
63
64 xdr_array.obj: $(RX)\xdr_array.c
65         $(C2OBJ) $(RX)\xdr_array.c
66
67 xdr_arrayn.obj: $(RX)\xdr_arrayn.c
68         $(C2OBJ) $(RX)\xdr_arrayn.c
69
70 xdr_float.obj: $(RX)\xdr_float.c
71         $(C2OBJ) $(RX)\xdr_float.c
72
73 xdr_mem.obj: $(RX)\xdr_mem.c
74         $(C2OBJ) $(RX)\xdr_mem.c
75
76 xdr_rec.obj: $(RX)\xdr_rec.c
77         $(C2OBJ) $(RX)\xdr_rec.c
78
79 xdr_refernce.obj: $(RX)\xdr_refernce.c
80         $(C2OBJ) $(RX)\xdr_refernce.c
81
82 xdr_rx.obj: $(RX)\xdr_rx.c
83         $(C2OBJ) $(RX)\xdr_rx.c
84
85 xdr_update.obj: $(RX)\xdr_update.c
86         $(C2OBJ) $(RX)\xdr_update.c
87
88 xdr_afsuuid.obj: $(RX)\xdr_afsuuid.c
89         $(C2OBJ) $(RX)\xdr_afsuuid.c
90
91 rx_event.obj: $(RX)\rx_event.c
92         $(C2OBJ) $(RX)\rx_event.c
93
94 rx_user.obj: $(RX)\rx_user.c
95         $(C2OBJ) $(RX)\rx_user.c
96
97 rx_pthread.obj: $(RX)\rx_pthread.c
98         $(C2OBJ) $(RX)\rx_pthread.c
99
100 rx.obj: $(RX)\rx.c
101         $(C2OBJ) $(RX)\rx.c
102
103 rx_null.obj: $(RX)\rx_null.c
104         $(C2OBJ) $(RX)\rx_null.c
105
106 rx_globals.obj: $(RX)\rx_globals.c
107         $(C2OBJ) $(RX)\rx_globals.c
108
109 rx_getaddr.obj: $(RX)\rx_getaddr.c
110         $(C2OBJ) $(RX)\rx_getaddr.c
111
112 rx_misc.obj: $(RX)\rx_misc.c
113         $(C2OBJ) $(RX)\rx_misc.c
114
115 rx_packet.obj: $(RX)\rx_packet.c
116         $(C2OBJ) $(RX)\rx_packet.c
117
118 rx_rdwr.obj: $(RX)\rx_rdwr.c
119         $(C2OBJ) $(RX)\rx_rdwr.c
120
121 rx_trace.obj: $(RX)\rx_trace.c
122         $(C2OBJ) $(RX)\rx_trace.c
123
124 rx_xmit_nt.obj: $(RX)\rx_xmit_nt.c
125         $(C2OBJ) $(RX)\rx_xmit_nt.c
126
127 rx_conncache.obj: $(RX)\rx_conncache.c
128         $(C2OBJ) $(RX)\rx_conncache.c
129
130 rxstat.cs.obj:$(RXSTAT)\rxstat.cs.c
131         $(C2OBJ) $(RXSTAT)\rxstat.cs.c
132
133 rxstat.ss.obj:$(RXSTAT)\rxstat.ss.c
134         $(C2OBJ) $(RXSTAT)\rxstat.ss.c
135
136 rxstat.xdr.obj:$(RXSTAT)\rxstat.xdr.c
137         $(C2OBJ) $(RXSTAT)\rxstat.xdr.c
138
139 rxstat.obj:$(RXSTAT)\rxstat.c
140         $(C2OBJ) $(RXSTAT)\rxstat.c
141
142 rxkad_client.obj:$(RXKAD)\rxkad_client.c
143         $(C2OBJ) $(RXKAD)\rxkad_client.c
144
145 rxkad_server.obj:$(RXKAD)\rxkad_server.c
146         $(C2OBJ) $(RXKAD)\rxkad_server.c
147
148 rxkad_common.obj:$(RXKAD)\rxkad_common.c
149         $(C2OBJ) $(RXKAD)\rxkad_common.c
150
151 ticket.obj:$(RXKAD)\ticket.c
152         $(C2OBJ) $(RXKAD)\ticket.c
153
154 fcrypt.obj:$(RXKAD)\fcrypt.c
155         $(C2OBJ) $(RXKAD)\fcrypt.c
156
157 crypt_conn.obj:$(RXKAD)\crypt_conn.c
158         $(C2OBJ) $(RXKAD)\crypt_conn.c
159
160 AFS_component_version_number.obj:$(RXKAD)\AFS_component_version_number.c
161         $(C2OBJ) $(RXKAD)\AFS_component_version_number.c
162
163 fcrypt_x.obj:$(RXKAD)\fcrypt.c
164         $(C2OBJ) $(RXKAD)\fcrypt.c /Fofcrypt_x.obj
165
166 crypt_conn_x.obj:$(RXKAD)\crypt_conn.c
167         $(C2OBJ) $(RXKAD)\crypt_conn.c /Focrypt_conn_x.obj
168
169 des.obj:$(DES)\des.c
170         $(C2OBJ) $(DES)\des.c
171
172 cbc_encrypt.obj:$(DES)\cbc_encrypt.c
173         $(C2OBJ) $(DES)\cbc_encrypt.c
174
175 pcbc_encrypt.obj:$(DES)\pcbc_encrypt.c
176         $(C2OBJ) $(DES)\pcbc_encrypt.c
177
178 cksum.obj:$(DES)\cksum.c
179         $(C2OBJ) $(DES)\cksum.c
180
181 new_rnd_key.obj:$(DES)\new_rnd_key.c
182         $(C2OBJ) $(DES)\new_rnd_key.c
183
184 key_sched.obj:$(DES)\key_sched.c
185         $(C2OBJ) $(DES)\key_sched.c
186
187 debug_decl.obj:$(DES)\debug_decl.c
188         $(C2OBJ) $(DES)\debug_decl.c
189
190 quad_cksum.obj:$(DES)\quad_cksum.c
191         $(C2OBJ) $(DES)\quad_cksum.c
192
193 key_parity.obj:$(DES)\key_parity.c
194         $(C2OBJ) $(DES)\key_parity.c
195
196 weak_key.obj:$(DES)\weak_key.c
197         $(C2OBJ) $(DES)\weak_key.c
198
199 strng_to_key.obj:$(DES)\strng_to_key.c
200         $(C2OBJ) $(DES)\strng_to_key.c
201
202 misc.obj:$(DES)\misc.c
203         $(C2OBJ) -DDONT_INCL_MAIN $(DES)\misc.c
204
205 util.obj:$(DES)\util.c
206         $(C2OBJ) $(DES)\util.c
207
208 des_x.obj:$(DES)\des.c
209         $(C2OBJ) $(DES)\des.c /Fodes_x.obj
210
211 cbc_crypt_x.obj:$(DES)\cbc_encrypt.c
212         $(C2OBJ) $(DES)\cbc_encrypt.c /Focbc_crypt_x.obj
213
214 pcbc_crypt_x.obj:$(DES)\pcbc_encrypt.c
215         $(C2OBJ) $(DES)\pcbc_encrypt.c /Fopcbc_crypt_x.obj
216
217 cksum_x.obj:$(DES)\cksum.c
218         $(C2OBJ) $(DES)\cksum.c /Focksum_x.obj
219
220 nrnd_key_x.obj:$(DES)\new_rnd_key.c
221         $(C2OBJ) $(DES)\new_rnd_key.c /Fonrnd_key_x.obj
222
223 error_msg.obj:$(COMERR)\error_msg.c
224         $(C2OBJ) $(COMERR)\error_msg.c
225
226 et_name.obj:$(COMERR)\et_name.c
227         $(C2OBJ) $(COMERR)\et_name.c
228
229 com_err.obj:$(COMERR)\com_err.c
230         $(C2OBJ) $(COMERR)\com_err.c
231
232 casestrcpy.obj:$(UTIL)\casestrcpy.c
233         $(C2OBJ) $(UTIL)\casestrcpy.c
234
235 winsock_nt.obj:$(UTIL)\winsock_nt.c
236         $(C2OBJ) $(UTIL)\winsock_nt.c
237
238 afsint.cs.obj:$(FSINT)\afsint.cs.c
239         $(C2OBJ) $(FSINT)\afsint.cs.c
240
241 afsint.xdr.obj:$(FSINT)\afsint.xdr.c
242         $(C2OBJ) $(FSINT)\afsint.xdr.c
243
244 afscbint.cs.obj:$(FSINT)\afscbint.cs.c
245         $(C2OBJ) $(FSINT)\afscbint.cs.c
246
247 afscbint.xdr.obj:$(FSINT)\afscbint.xdr.c
248         $(C2OBJ) $(FSINT)\afscbint.xdr.c
249
250 afsaux.obj:$(FSINT)\afsaux.c
251         $(C2OBJ) $(FSINT)\afsaux.c
252
253 NTMAKE = nmake /nologo /f ntmakefile
254
255
256 DLLLIBS =\
257         $(DESTDIR)\lib\pthread.lib \
258         $(DESTDIR)\lib\afs\afsutil.lib \
259         $(DESTDIR)\lib\afs\afsreg.lib
260
261 $(DESTDIR)\lib\afsrpc.dll: $(DLLOBJS) $(DLLLIBS)
262         $(DLLCONLINK) /DEF:afsrpc.def
263         $(DLLPREP)
264
265 # Definitions for generating versioninfo resources
266 afsrpc.res: afsrpc.rc AFS_component_version_number.h
267         $(RC) $*.rc
268
269
270 install:
271 !       IF (EXIST(..\..\src\des\NTMakefile))
272                 $(NTMAKE) $(LIBFILE)
273 !       else
274                 $(NTMAKE) libstub
275 !       endif
276
277 !IF (EXIST(..\..\src\des\NTMakefile))
278 !ELSE IF (EXIST(..\..\DESLIB))
279 DESPAR = ..\..\DESLIB\dest
280 !ELSE IF (EXIST(..\..\..\DESLIB))
281 DESPAR = ..\..\..\DESLIB\dest
282 !ELSE
283 !ERROR Must create DESLIB link in the same directory as PARENT link.
284 !ENDIF
285
286 libstub:
287         $(COPY) $(DESPAR)\lib\afsrpc.dll \
288                 $(DESTDIR)\lib\afsrpc.dll
289         $(COPY) $(DESPAR)\lib\afsrpc.lib \
290                 $(DESTDIR)\lib\afsrpc.lib
291         $(COPY) $(DESPAR)\lib\afsrpc.exp \
292                 $(DESTDIR)\lib\afsrpc.exp