source: heimdal/trunk/lib/gssapi/NTMakefile@ 4

Last change on this file since 4 was 1, checked in by Paul Smedley, 10 years ago

Initial commit of Heimdal 1.5.3

File size: 17.9 KB
Line 
1########################################################################
2#
3# Copyright (c) 2009-2011, Secure Endpoints Inc.
4# All rights reserved.
5#
6# Redistribution and use in source and binary forms, with or without
7# modification, are permitted provided that the following conditions
8# are met:
9#
10# - Redistributions of source code must retain the above copyright
11# notice, this list of conditions and the following disclaimer.
12#
13# - Redistributions in binary form must reproduce the above copyright
14# notice, this list of conditions and the following disclaimer in
15# the documentation and/or other materials provided with the
16# distribution.
17#
18# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
21# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
22# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
23# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
24# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
26# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
28# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29# POSSIBILITY OF SUCH DAMAGE.
30#
31
32RELDIR=lib\gssapi
33
34!include ../../windows/NTMakefile.w32
35
36krb5src = \
37 krb5/8003.c \
38 krb5/accept_sec_context.c \
39 krb5/acquire_cred.c \
40 krb5/add_cred.c \
41 krb5/address_to_krb5addr.c \
42 krb5/aeap.c \
43 krb5/arcfour.c \
44 krb5/authorize_localname.c \
45 krb5/canonicalize_name.c \
46 krb5/creds.c \
47 krb5/ccache_name.c \
48 krb5/cfx.c \
49 krb5/cfx.h \
50 krb5/compare_name.c \
51 krb5/compat.c \
52 krb5/context_time.c \
53 krb5/copy_ccache.c \
54 krb5/decapsulate.c \
55 krb5/delete_sec_context.c \
56 krb5/display_name.c \
57 krb5/display_status.c \
58 krb5/duplicate_name.c \
59 krb5/encapsulate.c \
60 krb5/export_name.c \
61 krb5/export_sec_context.c \
62 krb5/external.c \
63 krb5/get_mic.c \
64 krb5/gsskrb5_locl.h \
65 krb5/import_name.c \
66 krb5/import_sec_context.c \
67 krb5/indicate_mechs.c \
68 krb5/init.c \
69 krb5/init_sec_context.c \
70 krb5/inquire_context.c \
71 krb5/inquire_cred.c \
72 krb5/inquire_cred_by_mech.c \
73 krb5/inquire_cred_by_oid.c \
74 krb5/inquire_mechs_for_name.c \
75 krb5/inquire_names_for_mech.c \
76 krb5/inquire_sec_context_by_oid.c \
77 krb5/pname_to_uid.c \
78 krb5/process_context_token.c \
79 krb5/prf.c \
80 krb5/release_buffer.c \
81 krb5/release_cred.c \
82 krb5/release_name.c \
83 krb5/sequence.c \
84 krb5/store_cred.c \
85 krb5/set_cred_option.c \
86 krb5/set_sec_context_option.c \
87 krb5/ticket_flags.c \
88 krb5/unwrap.c \
89 krb5/verify_mic.c \
90 krb5/wrap.c
91
92mechsrc = \
93 mech/context.h \
94 mech/context.c \
95 mech/cred.h \
96 mech/gss_accept_sec_context.c \
97 mech/gss_acquire_cred.c \
98 mech/gss_acquire_cred_ext.c \
99 mech/gss_acquire_cred_with_password.c \
100 mech/gss_add_cred.c \
101 mech/gss_add_cred_with_password.c \
102 mech/gss_add_oid_set_member.c \
103 mech/gss_aeap.c \
104 mech/gss_authorize_localname.c \
105 mech/gss_buffer_set.c \
106 mech/gss_canonicalize_name.c \
107 mech/gss_compare_name.c \
108 mech/gss_context_time.c \
109 mech/gss_create_empty_oid_set.c \
110 mech/gss_cred.c \
111 mech/gss_decapsulate_token.c \
112 mech/gss_delete_name_attribute.c \
113 mech/gss_delete_sec_context.c \
114 mech/gss_display_name.c \
115 mech/gss_display_name_ext.c \
116 mech/gss_display_status.c \
117 mech/gss_duplicate_name.c \
118 mech/gss_duplicate_oid.c \
119 mech/gss_encapsulate_token.c \
120 mech/gss_export_name.c \
121 mech/gss_export_name_composite.c \
122 mech/gss_export_sec_context.c \
123 mech/gss_get_mic.c \
124 mech/gss_get_name_attribute.c \
125 mech/gss_import_name.c \
126 mech/gss_import_sec_context.c \
127 mech/gss_indicate_mechs.c \
128 mech/gss_init_sec_context.c \
129 mech/gss_inquire_context.c \
130 mech/gss_inquire_cred.c \
131 mech/gss_inquire_cred_by_mech.c \
132 mech/gss_inquire_cred_by_oid.c \
133 mech/gss_inquire_mechs_for_name.c \
134 mech/gss_inquire_name.c \
135 mech/gss_inquire_names_for_mech.c \
136 mech/gss_krb5.c \
137 mech/gss_mech_switch.c \
138 mech/gss_mo.c \
139 mech/gss_names.c \
140 mech/gss_oid.c \
141 mech/gss_oid_equal.c \
142 mech/gss_oid_to_str.c \
143 mech/gss_pname_to_uid.c \
144 mech/gss_process_context_token.c \
145 mech/gss_pseudo_random.c \
146 mech/gss_release_buffer.c \
147 mech/gss_release_cred.c \
148 mech/gss_release_name.c \
149 mech/gss_release_oid.c \
150 mech/gss_release_oid_set.c \
151 mech/gss_seal.c \
152 mech/gss_set_cred_option.c \
153 mech/gss_set_name_attribute.c \
154 mech/gss_set_sec_context_option.c \
155 mech/gss_sign.c \
156 mech/gss_store_cred.c \
157 mech/gss_test_oid_set_member.c \
158 mech/gss_unseal.c \
159 mech/gss_unwrap.c \
160 mech/gss_utils.c \
161 mech/gss_verify.c \
162 mech/gss_verify_mic.c \
163 mech/gss_wrap.c \
164 mech/gss_wrap_size_limit.c \
165 mech/gss_inquire_sec_context_by_oid.c \
166 mech/mech_switch.h \
167 mech/mechqueue.h \
168 mech/mech_locl.h \
169 mech/name.h \
170 mech/utils.h
171
172spnegosrc = \
173 spnego/accept_sec_context.c \
174 spnego/compat.c \
175 spnego/context_stubs.c \
176 spnego/cred_stubs.c \
177 spnego/external.c \
178 spnego/init_sec_context.c \
179 spnego/spnego_locl.h
180
181ntlmsrc = \
182 ntlm/accept_sec_context.c \
183 ntlm/acquire_cred.c \
184 ntlm/add_cred.c \
185 ntlm/canonicalize_name.c \
186 ntlm/compare_name.c \
187 ntlm/context_time.c \
188 ntlm/creds.c \
189 ntlm/crypto.c \
190 ntlm/delete_sec_context.c \
191 ntlm/display_name.c \
192 ntlm/display_status.c \
193 ntlm/duplicate_name.c \
194 ntlm/export_name.c \
195 ntlm/export_sec_context.c \
196 ntlm/external.c \
197 ntlm/ntlm.h \
198 ntlm/import_name.c \
199 ntlm/import_sec_context.c \
200 ntlm/indicate_mechs.c \
201 ntlm/init_sec_context.c \
202 ntlm/inquire_context.c \
203 ntlm/inquire_cred_by_mech.c \
204 ntlm/inquire_mechs_for_name.c \
205 ntlm/inquire_names_for_mech.c \
206 ntlm/inquire_sec_context_by_oid.c \
207 ntlm/iter_cred.c \
208 ntlm/process_context_token.c \
209 ntlm/release_cred.c \
210 ntlm/release_name.c \
211 ntlm/kdc.c
212
213$(OBJ)\ntlm\ntlm-private.h: $(ntlmsrc)
214 $(PERL) ../../cf/make-proto.pl -q -P remove -p $@ $(ntlmsrc)
215
216$(OBJ)\krb5\gsskrb5-private.h: $(krb5src)
217 $(PERL) ../../cf/make-proto.pl -q -P remove -p $@ $(krb5src)
218
219$(OBJ)\spnego\spnego-private.h: $(spnegosrc)
220 $(PERL) ../../cf/make-proto.pl -q -P remove -p $@ $(spnegosrc)
221
222gssapi_files = $(OBJ)\gssapi\asn1_gssapi_asn1.x
223
224spnego_files = $(OBJ)\spnego\asn1_spnego_asn1.x
225
226$(gssapi_files:.x=.c): $$(@R).x
227
228$(spnego_files:.x=.c): $$(@R).x
229
230$(gssapi_files) $(OBJ)\gssapi\gssapi_asn1.hx $(OBJ)\gssapi\gssapi_asn1-priv.hx: \
231$(BINDIR)\asn1_compile.exe mech\gssapi.asn1
232 cd $(OBJ)\gssapi
233 $(BINDIR)\asn1_compile.exe --one-code-file $(SRCDIR)\mech\gssapi.asn1 gssapi_asn1 \
234 || ( $(RM) $(OBJ)\gssapi\gssapi_asn1.h ; exit /b 1 )
235 cd $(SRCDIR)
236
237$(spnego_files) $(OBJ)\spnego\spnego_asn1.hx $(OBJ)\spnego\spnego_asn1-priv.hx: \
238$(BINDIR)\asn1_compile.exe spnego\spnego.asn1
239 cd $(OBJ)\spnego
240 $(BINDIR)\asn1_compile --one-code-file --sequence=MechTypeList \
241 $(SRCDIR)\spnego\spnego.asn1 spnego_asn1 \
242 || ( $(RM) $(OBJ)\spnego\spnego_asn1.h ; exit /b 1 )
243 cd $(SRCDIR)
244
245$(OBJ)\gkrb5_err.c $(OBJ)\gkrb5_err.h: krb5\gkrb5_err.et
246 cd $(OBJ)
247 $(BINDIR)\compile_et.exe $(SRCDIR)\krb5\gkrb5_err.et
248 cd $(SRCDIR)
249
250INCFILES= \
251 $(INCDIR)\gssapi.h \
252 $(INCDIR)\gssapi\gssapi.h \
253 $(INCDIR)\gssapi\gssapi_krb5.h \
254 $(INCDIR)\gssapi\gssapi_oid.h \
255 $(INCDIR)\gssapi\gssapi_ntlm.h \
256 $(INCDIR)\gssapi\gssapi_spnego.h \
257 $(INCDIR)\gssapi\gkrb5_err.h \
258 $(OBJ)\ntlm\ntlm-private.h \
259 $(OBJ)\spnego\spnego-private.h \
260 $(OBJ)\krb5\gsskrb5-private.h \
261 $(OBJ)\gkrb5_err.h \
262 $(OBJ)\gssapi\gssapi_asn1.h \
263 $(OBJ)\gssapi\gssapi_asn1-priv.h \
264 $(OBJ)\spnego\spnego_asn1.h \
265 $(OBJ)\spnego\spnego_asn1-priv.h
266
267all:: $(INCFILES)
268
269libgssapi_OBJs = \
270 $(OBJ)\krb5/8003.obj \
271 $(OBJ)\krb5/accept_sec_context.obj \
272 $(OBJ)\krb5/acquire_cred.obj \
273 $(OBJ)\krb5/add_cred.obj \
274 $(OBJ)\krb5/address_to_krb5addr.obj \
275 $(OBJ)\krb5/authorize_localname.obj \
276 $(OBJ)\krb5/aeap.obj \
277 $(OBJ)\krb5/arcfour.obj \
278 $(OBJ)\krb5/canonicalize_name.obj \
279 $(OBJ)\krb5/creds.obj \
280 $(OBJ)\krb5/ccache_name.obj \
281 $(OBJ)\krb5/cfx.obj \
282 $(OBJ)\krb5/compare_name.obj \
283 $(OBJ)\krb5/compat.obj \
284 $(OBJ)\krb5/context_time.obj \
285 $(OBJ)\krb5/copy_ccache.obj \
286 $(OBJ)\krb5/decapsulate.obj \
287 $(OBJ)\krb5/delete_sec_context.obj \
288 $(OBJ)\krb5/display_name.obj \
289 $(OBJ)\krb5/display_status.obj \
290 $(OBJ)\krb5/duplicate_name.obj \
291 $(OBJ)\krb5/encapsulate.obj \
292 $(OBJ)\krb5/export_name.obj \
293 $(OBJ)\krb5/export_sec_context.obj \
294 $(OBJ)\krb5/external.obj \
295 $(OBJ)\krb5/get_mic.obj \
296 $(OBJ)\krb5/import_name.obj \
297 $(OBJ)\krb5/import_sec_context.obj \
298 $(OBJ)\krb5/indicate_mechs.obj \
299 $(OBJ)\krb5/init.obj \
300 $(OBJ)\krb5/init_sec_context.obj \
301 $(OBJ)\krb5/inquire_context.obj \
302 $(OBJ)\krb5/inquire_cred.obj \
303 $(OBJ)\krb5/inquire_cred_by_mech.obj \
304 $(OBJ)\krb5/inquire_cred_by_oid.obj \
305 $(OBJ)\krb5/inquire_mechs_for_name.obj \
306 $(OBJ)\krb5/inquire_names_for_mech.obj \
307 $(OBJ)\krb5/inquire_sec_context_by_oid.obj \
308 $(OBJ)\krb5/pname_to_uid.obj \
309 $(OBJ)\krb5/process_context_token.obj \
310 $(OBJ)\krb5/prf.obj \
311 $(OBJ)\krb5/release_buffer.obj \
312 $(OBJ)\krb5/release_cred.obj \
313 $(OBJ)\krb5/release_name.obj \
314 $(OBJ)\krb5/sequence.obj \
315 $(OBJ)\krb5/store_cred.obj \
316 $(OBJ)\krb5/set_cred_option.obj \
317 $(OBJ)\krb5/set_sec_context_option.obj \
318 $(OBJ)\krb5/ticket_flags.obj \
319 $(OBJ)\krb5/unwrap.obj \
320 $(OBJ)\krb5/verify_mic.obj \
321 $(OBJ)\krb5/wrap.obj \
322 $(OBJ)\mech/context.obj \
323 $(OBJ)\mech/gss_accept_sec_context.obj \
324 $(OBJ)\mech/gss_acquire_cred.obj \
325 $(OBJ)\mech/gss_acquire_cred_ext.obj \
326 $(OBJ)\mech/gss_acquire_cred_with_password.obj \
327 $(OBJ)\mech/gss_add_cred.obj \
328 $(OBJ)\mech/gss_add_cred_with_password.obj \
329 $(OBJ)\mech/gss_add_oid_set_member.obj \
330 $(OBJ)\mech/gss_aeap.obj \
331 $(OBJ)\mech/gss_authorize_localname.obj \
332 $(OBJ)\mech/gss_buffer_set.obj \
333 $(OBJ)\mech/gss_canonicalize_name.obj \
334 $(OBJ)\mech/gss_compare_name.obj \
335 $(OBJ)\mech/gss_context_time.obj \
336 $(OBJ)\mech/gss_create_empty_oid_set.obj \
337 $(OBJ)\mech/gss_cred.obj \
338 $(OBJ)\mech/gss_decapsulate_token.obj \
339 $(OBJ)\mech/gss_delete_name_attribute.obj \
340 $(OBJ)\mech/gss_delete_sec_context.obj \
341 $(OBJ)\mech/gss_display_name.obj \
342 $(OBJ)\mech/gss_display_name_ext.obj \
343 $(OBJ)\mech/gss_display_status.obj \
344 $(OBJ)\mech/gss_duplicate_name.obj \
345 $(OBJ)\mech/gss_duplicate_oid.obj \
346 $(OBJ)\mech/gss_encapsulate_token.obj \
347 $(OBJ)\mech/gss_export_name.obj \
348 $(OBJ)\mech/gss_export_name_composite.obj \
349 $(OBJ)\mech/gss_export_sec_context.obj \
350 $(OBJ)\mech/gss_get_mic.obj \
351 $(OBJ)\mech/gss_get_name_attribute.obj \
352 $(OBJ)\mech/gss_import_name.obj \
353 $(OBJ)\mech/gss_import_sec_context.obj \
354 $(OBJ)\mech/gss_indicate_mechs.obj \
355 $(OBJ)\mech/gss_init_sec_context.obj \
356 $(OBJ)\mech/gss_inquire_context.obj \
357 $(OBJ)\mech/gss_inquire_cred.obj \
358 $(OBJ)\mech/gss_inquire_cred_by_mech.obj \
359 $(OBJ)\mech/gss_inquire_cred_by_oid.obj \
360 $(OBJ)\mech/gss_inquire_mechs_for_name.obj \
361 $(OBJ)\mech/gss_inquire_name.obj \
362 $(OBJ)\mech/gss_inquire_names_for_mech.obj \
363 $(OBJ)\mech/gss_krb5.obj \
364 $(OBJ)\mech/gss_mech_switch.obj \
365 $(OBJ)\mech/gss_mo.obj \
366 $(OBJ)\mech/gss_names.obj \
367 $(OBJ)\mech/gss_oid.obj \
368 $(OBJ)\mech/gss_oid_equal.obj \
369 $(OBJ)\mech/gss_oid_to_str.obj \
370 $(OBJ)\mech/gss_pname_to_uid.obj \
371 $(OBJ)\mech/gss_process_context_token.obj \
372 $(OBJ)\mech/gss_pseudo_random.obj \
373 $(OBJ)\mech/gss_release_buffer.obj \
374 $(OBJ)\mech/gss_release_cred.obj \
375 $(OBJ)\mech/gss_release_name.obj \
376 $(OBJ)\mech/gss_release_oid.obj \
377 $(OBJ)\mech/gss_release_oid_set.obj \
378 $(OBJ)\mech/gss_seal.obj \
379 $(OBJ)\mech/gss_set_cred_option.obj \
380 $(OBJ)\mech/gss_set_name_attribute.obj \
381 $(OBJ)\mech/gss_set_sec_context_option.obj \
382 $(OBJ)\mech/gss_sign.obj \
383 $(OBJ)\mech/gss_store_cred.obj \
384 $(OBJ)\mech/gss_test_oid_set_member.obj \
385 $(OBJ)\mech/gss_unseal.obj \
386 $(OBJ)\mech/gss_unwrap.obj \
387 $(OBJ)\mech/gss_utils.obj \
388 $(OBJ)\mech/gss_verify.obj \
389 $(OBJ)\mech/gss_verify_mic.obj \
390 $(OBJ)\mech/gss_wrap.obj \
391 $(OBJ)\mech/gss_wrap_size_limit.obj \
392 $(OBJ)\mech/gss_inquire_sec_context_by_oid.obj \
393 $(OBJ)\spnego/accept_sec_context.obj \
394 $(OBJ)\spnego/compat.obj \
395 $(OBJ)\spnego/context_stubs.obj \
396 $(OBJ)\spnego/cred_stubs.obj \
397 $(OBJ)\spnego/external.obj \
398 $(OBJ)\spnego/init_sec_context.obj \
399 $(OBJ)\ntlm/accept_sec_context.obj \
400 $(OBJ)\ntlm/acquire_cred.obj \
401 $(OBJ)\ntlm/add_cred.obj \
402 $(OBJ)\ntlm/canonicalize_name.obj \
403 $(OBJ)\ntlm/compare_name.obj \
404 $(OBJ)\ntlm/context_time.obj \
405 $(OBJ)\ntlm/creds.obj \
406 $(OBJ)\ntlm/crypto.obj \
407 $(OBJ)\ntlm/delete_sec_context.obj \
408 $(OBJ)\ntlm/display_name.obj \
409 $(OBJ)\ntlm/display_status.obj \
410 $(OBJ)\ntlm/duplicate_name.obj \
411 $(OBJ)\ntlm/export_name.obj \
412 $(OBJ)\ntlm/export_sec_context.obj \
413 $(OBJ)\ntlm/external.obj \
414 $(OBJ)\ntlm/import_name.obj \
415 $(OBJ)\ntlm/import_sec_context.obj \
416 $(OBJ)\ntlm/indicate_mechs.obj \
417 $(OBJ)\ntlm/init_sec_context.obj \
418 $(OBJ)\ntlm/inquire_context.obj \
419 $(OBJ)\ntlm/inquire_cred_by_mech.obj \
420 $(OBJ)\ntlm/inquire_mechs_for_name.obj \
421 $(OBJ)\ntlm/inquire_names_for_mech.obj \
422 $(OBJ)\ntlm/inquire_sec_context_by_oid.obj \
423 $(OBJ)\ntlm/iter_cred.obj \
424 $(OBJ)\ntlm/process_context_token.obj \
425 $(OBJ)\ntlm/release_cred.obj \
426 $(OBJ)\ntlm/release_name.obj \
427 $(OBJ)\ntlm/kdc.obj \
428 $(OBJ)\gkrb5_err.obj \
429 $(spnego_files:.x=.obj) \
430 $(gssapi_files:.x=.obj)
431
432GCOPTS=-I$(SRCDIR) -I$(OBJ) -Igssapi -DBUILD_GSSAPI_LIB
433
434{$(OBJ)\krb5}.c{$(OBJ)\krb5}.obj::
435 $(C2OBJ_NP) -Fo$(OBJ)\krb5\ -Fd$(OBJ)\krb5\ -I$(OBJ)\krb5 $(GCOPTS)
436
437{krb5}.c{$(OBJ)\krb5}.obj::
438 $(C2OBJ_NP) -Fo$(OBJ)\krb5\ -Fd$(OBJ)\krb5\ -I$(OBJ)\krb5 $(GCOPTS) -DASN1_LIB
439
440{$(OBJ)\mech}.c{$(OBJ)\mech}.obj::
441 $(C2OBJ_NP) -Fo$(OBJ)\mech\ -Fd$(OBJ)\mech\ -I$(OBJ)\mech $(GCOPTS)
442
443{mech}.c{$(OBJ)\mech}.obj::
444 $(C2OBJ_NP) -Fo$(OBJ)\mech\ -Fd$(OBJ)\mech\ -I$(OBJ)\mech -I$(OBJ)\gssapi $(GCOPTS) -DASN1_LIB
445
446{$(OBJ)\ntlm}.c{$(OBJ)\ntlm}.obj::
447 $(C2OBJ_NP) -Fo$(OBJ)\ntlm\ -Fd$(OBJ)\ntlm\ -I$(OBJ)\ntlm $(GCOPTS)
448
449{ntlm}.c{$(OBJ)\ntlm}.obj::
450 $(C2OBJ_NP) -Fo$(OBJ)\ntlm\ -Fd$(OBJ)\ntlm\ -I$(OBJ)\ntlm $(GCOPTS) -DASN1_LIB
451
452{$(OBJ)\spnego}.c{$(OBJ)\spnego}.obj::
453 $(C2OBJ_NP) -Fo$(OBJ)\spnego\ -Fd$(OBJ)\spnego\ -I$(OBJ)\spnego $(GCOPTS)
454
455{spnego}.c{$(OBJ)\spnego}.obj::
456 $(C2OBJ_NP) -Fo$(OBJ)\spnego\ -Fd$(OBJ)\spnego\ -I$(OBJ)\spnego -Imech $(GCOPTS) -DASN1_LIB
457
458{$(OBJ)\gssapi}.c{$(OBJ)\gssapi}.obj::
459 $(C2OBJ_NP) -Fo$(OBJ)\gssapi\ -Fd$(OBJ)\gssapi\ -I$(OBJ)\gssapi $(GCOPTS)
460
461{$(OBJ)}.c{$(OBJ)}.obj::
462 $(C2OBJ_P) $(GCOPTS)
463
464{$(OBJ)\spnego}.x{$(OBJ)\spnego}.c:
465 $(CP) $** $@
466
467{$(OBJ)\gssapi}.x{$(OBJ)\gssapi}.c:
468 $(CP) $** $@
469
470{gssapi}.h{$(INCDIR)\gssapi}.h:
471 $(CP) $** $@
472
473{$(OBJ)}.h{$(INCDIR)\gssapi}.h:
474 $(CP) $** $@
475
476{$(OBJ)\gssapi}.hx{$(OBJ)\gssapi}.h:
477 $(CP) $** $@
478
479{$(OBJ)\spnego}.hx{$(OBJ)\spnego}.h:
480 $(CP) $** $@
481
482LIBGSSAPI_LIBS=\
483 $(LIBHEIMBASE) \
484 $(LIBROKEN) \
485 $(LIBHEIMDAL) \
486 $(LIBHEIMNTLM) \
487 $(LIBCOMERR)
488
489LIBGSSAPI_SDKLIBS=\
490 $(PTHREAD_LIB)
491
492!ifndef STATICLIBS
493
494RES=$(OBJ)\libgssapi-version.res
495
496$(BINDIR)\gssapi.dll: $(libgssapi_OBJs) $(RES)
497 $(DLLGUILINK_C) -implib:$(LIBGSSAPI) \
498 -out:$(BINDIR)\gssapi.dll \
499 -def:libgssapi-exports.def \
500 $(LIBGSSAPI_LIBS) $(RES) $(LIBGSSAPI_SDKLIBS) @<<
501$(libgssapi_OBJs: =
502)
503<<
504 $(DLLPREP_NODIST)
505
506$(LIBGSSAPI): $(BINDIR)\gssapi.dll
507
508clean::
509 -$(RM) $(BINDIR)\gssapi.*
510
511!else
512
513$(LIBGSSAPI): $(libgssapi_OBJs)
514 $(LIBCON_C) -OUT:$@ $(LIBGSSAPI_LIBS) $(LIBGSSAPI_SDKLIBS) @<<
515$(libgssapi_OBJs: =
516)
517<<
518
519!endif
520
521all:: $(LIBGSSAPI)
522
523clean::
524 -$(RM) $(LIBGSSAPI)
525
526prep:: mkdirs-gss
527
528mkdirs-gss:
529!if !exist($(OBJ)\ntlm)
530 $(MKDIR) $(OBJ)\ntlm
531!endif
532!if !exist($(OBJ)\krb5)
533 $(MKDIR) $(OBJ)\krb5
534!endif
535!if !exist($(OBJ)\spnego)
536 $(MKDIR) $(OBJ)\spnego
537!endif
538!if !exist($(OBJ)\mech)
539 $(MKDIR) $(OBJ)\mech
540!endif
541!if !exist($(OBJ)\gssapi)
542 $(MKDIR) $(OBJ)\gssapi
543!endif
544
545clean::
546 -$(RM) $(OBJ)\ntlm\*.*
547 -$(RM) $(OBJ)\krb5\*.*
548 -$(RM) $(OBJ)\spnego\*.*
549 -$(RM) $(OBJ)\mech\*.*
550 -$(RM) $(OBJ)\gssapi\*.*
551
552all-tools:: $(BINDIR)\gsstool.exe
553
554$(BINDIR)\gsstool.exe: $(OBJ)\gsstool.obj $(OBJ)\gss-commands.obj $(LIBGSSAPI) $(LIBROKEN) $(LIBSL) $(LIBVERS)
555 $(EXECONLINK)
556
557$(OBJ)\gss-commands.c $(OBJ)\gss-commands.h: gss-commands.in
558 cd $(OBJ)
559 $(CP) $(SRCDIR)\gss-commands.in gss-commands.in
560 $(BINDIR)\slc.exe gss-commands.in
561 cd $(SRCDIR)
562
563!ifdef ELISP
564# This macro invocation is used to update the libgssapi_OBJs
565# definition below (generate-obj-macro is defined in maint.el):
566
567(generate-obj-macro "libgssapi_OBJs"
568 (concat "\t$(OBJ)\\gkrb5_err.obj \\\n"
569 "\t$(spnego_files:.x=.obj) \\\n"
570 "\t$(gssapi_files:.x=.obj)")
571 "krb5src" "mechsrc" "spnegosrc" "ntlmsrc")
572!endif
573
574test-exports:
575 $(PERL) ..\..\cf\w32-check-exported-symbols.pl --vs version-script.map --def libgssapi-exports.def
576
577test:: test-exports
578
579
580TEST_BINARIES=\
581 $(OBJ)\test_oid.exe \
582 $(OBJ)\test_names.exe \
583 $(OBJ)\test_cfx.exe \
584 $(OBJ)\test_acquire_cred.exe \
585 $(OBJ)\test_cred.exe \
586 $(OBJ)\test_kcred.exe \
587 $(OBJ)\test_context.exe \
588 $(OBJ)\test_ntlm.exe
589
590$(OBJ)\test_oid.exe: $(OBJ)\test_oid.obj $(LIBGSSAPI) $(LIBROKEN)
591 $(EXECONLINK)
592 $(EXEPREP_NODIST)
593
594$(OBJ)\test_names.exe: $(OBJ)\test_names.obj $(LIBGSSAPI) $(LIBROKEN) $(LIBVERS)
595 $(EXECONLINK)
596 $(EXEPREP_NODIST)
597
598$(OBJ)\test_cfx.exe: $(OBJ)\krb5\test_cfx.obj $(LIBHEIMDAL) $(LIBGSSAPI) $(LIBROKEN)
599 $(EXECONLINK)
600 $(EXEPREP_NODIST)
601
602$(OBJ)\test_acquire_cred.exe: $(OBJ)\test_acquire_cred.obj $(OBJ)\test_common.obj \
603 $(LIBGSSAPI) $(LIBROKEN) $(LIBVERS)
604 $(EXECONLINK)
605 $(EXEPREP_NODIST)
606
607$(OBJ)\test_cred.exe: $(OBJ)\test_cred.obj $(LIBGSSAPI) $(LIBROKEN) $(LIBVERS)
608 $(EXECONLINK)
609 $(EXEPREP_NODIST)
610
611$(OBJ)\test_kcred.exe: $(OBJ)\test_kcred.obj $(LIBGSSAPI) $(LIBHEIMDAL) \
612 $(LIBROKEN) $(LIBVERS)
613 $(EXECONLINK)
614 $(EXEPREP_NODIST)
615
616$(OBJ)\test_context.exe: $(OBJ)\test_context.obj $(OBJ)\test_common.obj \
617 $(LIBGSSAPI) $(LIBHEIMDAL) $(LIBROKEN) $(LIBVERS)
618 $(EXECONLINK)
619 $(EXEPREP_NODIST)
620
621$(OBJ)\test_ntlm.exe: $(OBJ)\test_ntlm.obj $(OBJ)\test_common.obj \
622 $(LIBGSSAPI) $(LIBHEIMNTLM) $(LIBROKEN) $(LIBVERS)
623 $(EXECONLINK)
624 $(EXEPREP_NODIST)
625
626{}.c{$(OBJ)}.obj::
627 $(C2OBJ_P) -I$(OBJ)\krb5 -I$(OBJ) -I$(SRCDIR) -I$(SRCDIR)\gssapi
628
629test-binaries: $(LIBGSSAPI) $(TEST_BINARIES)
630
631run-test:
632 cd $(OBJ)
633 test_oid
634 test_names
635 test_cfx
636 test_kcred
637 cd $(SRCDIR)
638
639test:: test-binaries run-test
Note: See TracBrowser for help on using the repository browser.