3 include $(top_srcdir)/Makefile.am.common
5 WFLAGS += $(WFLAGS_ENUM_CONV)
7 AUTOMAKE_OPTIONS = subdir-objects
21 lib_LTLIBRARIES = libgssapi.la test_negoex_mech.la
25 krb5/accept_sec_context.c \
28 krb5/address_to_krb5addr.c \
31 krb5/canonicalize_name.c \
41 krb5/delete_sec_context.c \
43 krb5/display_status.c \
44 krb5/duplicate_cred.c \
45 krb5/duplicate_name.c \
48 krb5/export_sec_context.c \
52 $(srcdir)/krb5/gsskrb5-private.h \
54 krb5/import_sec_context.c \
55 krb5/indicate_mechs.c \
57 krb5/init_sec_context.c \
58 krb5/inquire_context.c \
60 krb5/inquire_cred_by_mech.c \
61 krb5/inquire_cred_by_oid.c \
62 krb5/inquire_mechs_for_name.c \
63 krb5/inquire_names_for_mech.c \
64 krb5/inquire_sec_context_by_oid.c \
67 krb5/process_context_token.c \
69 krb5/release_buffer.c \
74 krb5/set_cred_option.c \
75 krb5/set_sec_context_option.c \
78 krb5/authorize_localname.c \
89 mech/gss_accept_sec_context.c \
90 mech/gss_acquire_cred.c \
91 mech/gss_acquire_cred_from.c \
92 mech/gss_acquire_cred_impersonate_name.c \
93 mech/gss_acquire_cred_with_password.c \
95 mech/gss_add_cred_from.c \
96 mech/gss_add_cred_with_password.c \
97 mech/gss_add_oid_set_member.c \
99 mech/gss_buffer_set.c \
100 mech/gss_canonicalize_name.c \
101 mech/gss_compare_name.c \
102 mech/gss_context_time.c \
103 mech/gss_create_empty_oid_set.c \
105 mech/gss_decapsulate_token.c \
106 mech/gss_delete_name_attribute.c \
107 mech/gss_delete_sec_context.c \
108 mech/gss_destroy_cred.c \
109 mech/gss_display_name.c \
110 mech/gss_display_name_ext.c \
111 mech/gss_display_status.c \
112 mech/gss_duplicate_cred.c \
113 mech/gss_duplicate_name.c \
114 mech/gss_duplicate_oid.c \
115 mech/gss_duplicate_oid_set.c \
116 mech/gss_encapsulate_token.c \
117 mech/gss_export_name.c \
118 mech/gss_export_name_composite.c \
119 mech/gss_export_sec_context.c \
121 mech/gss_get_neg_mechs.c \
122 mech/gss_get_name_attribute.c \
123 mech/gss_import_name.c \
124 mech/gss_import_sec_context.c \
125 mech/gss_indicate_mechs.c \
126 mech/gss_init_sec_context.c \
127 mech/gss_inquire_context.c \
128 mech/gss_inquire_cred.c \
129 mech/gss_inquire_cred_by_mech.c \
130 mech/gss_inquire_cred_by_oid.c \
131 mech/gss_inquire_mechs_for_name.c \
132 mech/gss_inquire_name.c \
133 mech/gss_inquire_names_for_mech.c \
135 mech/gss_mech_switch.c \
139 mech/gss_oid_equal.c \
140 mech/gss_oid_to_str.c \
141 mech/gss_pname_to_uid.c \
142 mech/gss_process_context_token.c \
143 mech/gss_pseudo_random.c \
144 mech/gss_release_buffer.c \
145 mech/gss_release_cred.c \
146 mech/gss_release_name.c \
147 mech/gss_release_oid.c \
148 mech/gss_release_oid_set.c \
151 mech/gss_set_cred_option.c \
152 mech/gss_set_name_attribute.c \
153 mech/gss_set_neg_mechs.c \
154 mech/gss_set_sec_context_option.c \
156 mech/gss_store_cred.c \
157 mech/gss_store_cred_into.c \
158 mech/gss_test_oid_set_member.c \
161 mech/gss_authorize_localname.c \
164 mech/gss_verify_mic.c \
166 mech/gss_wrap_size_limit.c \
167 mech/gss_inquire_sec_context_by_oid.c \
168 mech/gssspi_exchange_meta_data.c \
169 mech/gssspi_query_mechanism_info.c \
170 mech/gssspi_query_meta_data.c \
177 spnego/accept_sec_context.c \
179 spnego/context_storage.c \
180 spnego/context_stubs.c \
182 spnego/init_sec_context.c \
183 spnego/negoex_ctx.c \
184 spnego/negoex_util.c \
185 spnego/spnego_locl.h \
186 spnego/negoex_locl.h \
187 $(srcdir)/spnego/spnego-private.h
190 ntlm/accept_sec_context.c \
191 ntlm/acquire_cred.c \
193 ntlm/canonicalize_name.c \
194 ntlm/compare_name.c \
195 ntlm/context_time.c \
198 ntlm/delete_sec_context.c \
199 ntlm/display_name.c \
200 ntlm/display_status.c \
201 ntlm/duplicate_name.c \
203 ntlm/export_sec_context.c \
207 ntlm/import_sec_context.c \
208 ntlm/indicate_mechs.c \
209 ntlm/init_sec_context.c \
210 ntlm/inquire_context.c \
211 ntlm/inquire_cred_by_mech.c \
212 ntlm/inquire_mechs_for_name.c \
213 ntlm/inquire_names_for_mech.c \
214 ntlm/inquire_sec_context_by_oid.c \
216 ntlm/process_context_token.c \
217 ntlm/release_cred.c \
218 ntlm/release_name.c \
219 ntlm/set_sec_context_option.c \
222 $(srcdir)/ntlm/ntlm-private.h: $(ntlmsrc)
223 cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p ntlm/ntlm-private.h $(ntlmsrc) || rm -f ntlm/ntlm-private.h
226 sanon/accept_sec_context.c \
227 sanon/acquire_cred.c \
229 sanon/canonicalize_name.c \
230 sanon/compare_name.c \
231 sanon/context_time.c \
233 sanon/delete_sec_context.c \
234 sanon/display_name.c \
235 sanon/display_status.c \
236 sanon/duplicate_cred.c \
237 sanon/duplicate_name.c \
238 sanon/export_name.c \
239 sanon/export_cred.c \
240 sanon/export_sec_context.c \
242 sanon/import_cred.c \
243 sanon/import_name.c \
244 sanon/import_sec_context.c \
245 sanon/init_sec_context.c \
246 sanon/inquire_context.c \
247 sanon/inquire_cred.c \
248 sanon/inquire_cred_by_mech.c \
249 sanon/inquire_mechs_for_name.c \
250 sanon/inquire_names_for_mech.c \
251 sanon/inquire_sec_context_by_oid.c \
253 sanon/process_context_token.c \
254 sanon/release_cred.c \
255 sanon/release_name.c \
257 sanon/sanon-private.h
259 dist_libgssapi_la_SOURCES = \
266 nodist_libgssapi_la_SOURCES = \
269 libgssapi_la_DEPENDENCIES = version-script.map
271 libgssapi_la_LDFLAGS = -version-info 3:0:0
274 libgssapi_la_LDFLAGS += $(LDFLAGS_VERSION_SCRIPT)$(srcdir)/version-script.map
277 libgssapi_la_LIBADD = \
278 $(top_builddir)/lib/ntlm/libheimntlm.la \
279 $(top_builddir)/lib/krb5/libkrb5.la \
280 $(top_builddir)/lib/asn1/libasn1.la \
285 man_MANS = gssapi.3 gss_acquire_cred.3 mech/mech.5 gss-token.1
287 include_HEADERS = gssapi.h
291 $(srcdir)/ntlm/ntlm-private.h \
292 $(srcdir)/spnego/spnego-private.h \
293 $(srcdir)/sanon/sanon-private.h \
294 $(srcdir)/krb5/gsskrb5-private.h
296 nobase_include_HEADERS = \
298 gssapi/gssapi_krb5.h \
299 gssapi/gssapi_ntlm.h \
300 gssapi/gssapi_oid.h \
301 gssapi/gssapi_spnego.h
303 gssapidir = $(includedir)/gssapi
304 nodist_gssapi_HEADERS = gkrb5_err.h negoex_err.h
307 asn1_GSSAPIContextToken.c
310 asn1_ContextFlags.c \
312 asn1_MechTypeList.c \
314 asn1_NegStateEnum.c \
315 asn1_NegTokenInit.c \
316 asn1_NegTokenInit2.c \
317 asn1_NegTokenResp.c \
318 asn1_NegotiationToken.c \
319 asn1_NegotiationToken2.c
322 $(srcdir)/krb5/gsskrb5-private.h \
323 $(srcdir)/spnego/spnego-private.h \
324 $(srcdir)/sanon/sanon-private.h \
325 $(srcdir)/ntlm/ntlm-private.h
327 $(libgssapi_la_OBJECTS): $(BUILTHEADERS)
328 $(test_context_OBJECTS): $(BUILTHEADERS)
330 $(libgssapi_la_OBJECTS): $(srcdir)/version-script.map
340 $(libgssapi_la_OBJECTS): gkrb5_err.h negoex_err.h
341 gkrb5_err.h: $(srcdir)/krb5/gkrb5_err.et
342 negoex_err.h: $(srcdir)/spnego/negoex_err.et
344 CLEANFILES = $(BUILT_SOURCES) \
345 gkrb5_err.[ch] negoex_err.[ch] \
346 $(spnego_files) spnego_asn1*.h* spnego_asn1_files spnego_asn1-template.[cx] \
347 $(gssapi_files) gssapi_asn1*.h* gssapi_asn1_files gssapi_asn1-template.[cx] \
348 gss-commands.h gss-commands.c \
349 gssapi_asn1.json gssapi_asn1_oids.c gssapi_asn1_syms.c \
350 spnego_asn1.json spnego_asn1_oids.c spnego_asn1_syms.c
352 $(spnego_files) spnego_asn1.h spnego_asn1-priv.h: spnego_asn1_files
353 for genfile in '$(spnego_files)'; do \
354 $(CLANG_FORMAT) -style=$(CLANG_FORMAT_STYLE) -i $${genfile}; \
357 $(gssapi_files) gssapi_asn1.h gssapi_asn1-priv.h: gssapi_asn1_files
358 for genfile in '$(gssapi_files)'; do \
359 $(CLANG_FORMAT) -style=$(CLANG_FORMAT_STYLE) -i $${genfile}; \
362 spnego_asn1_files: $(ASN1_COMPILE_DEP) $(srcdir)/spnego/spnego.asn1 $(srcdir)/spnego/spnego.opt
363 $(ASN1_COMPILE) --option-file=$(srcdir)/spnego/spnego.opt $(srcdir)/spnego/spnego.asn1 spnego_asn1
364 @$(CLANG_FORMAT) -style=$(CLANG_FORMAT_STYLE) -i $$(cat spnego_asn1_files)
366 gssapi_asn1_files: $(ASN1_COMPILE_DEP) $(srcdir)/mech/gssapi.asn1
367 $(ASN1_COMPILE) $(srcdir)/mech/gssapi.asn1 gssapi_asn1
368 @$(CLANG_FORMAT) -style=$(CLANG_FORMAT_STYLE) -i $$(cat gssapi_asn1_files)
370 $(srcdir)/krb5/gsskrb5-private.h:
371 cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p krb5/gsskrb5-private.h $(krb5src) || rm -f krb5/gsskrb5-private.h
373 $(srcdir)/spnego/spnego-private.h:
374 cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p spnego/spnego-private.h $(spnegosrc) || rm -f spnego/spnego-private.h
376 $(srcdir)/sanon/sanon-private.h:
377 cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p sanon/sanon-private.h $(sanonsrc) || rm -f sanon/sanon-private.h
379 TESTS = test_oid test_names test_cfx
382 test_cfx_SOURCES = krb5/test_cfx.c
384 check_PROGRAMS = test_acquire_cred $(TESTS)
386 bin_PROGRAMS = gsstool gss-token
387 noinst_PROGRAMS = test_cred test_kcred test_context test_ntlm test_add_store_cred
389 test_context_SOURCES = test_context.c test_common.c test_common.h
390 test_ntlm_SOURCES = test_ntlm.c test_common.c test_common.h
391 test_acquire_cred_SOURCES = test_acquire_cred.c test_common.c test_common.h
393 test_add_store_cred_SOURCES = test_add_store_cred.c
396 $(top_builddir)/lib/ntlm/libheimntlm.la \
399 LDADD = libgssapi.la \
400 $(top_builddir)/lib/krb5/libkrb5.la \
403 test_names_LDADD = $(LDADD) $(top_builddir)/lib/asn1/libasn1.la
404 test_context_LDADD = $(LDADD) $(top_builddir)/lib/asn1/libasn1.la $(top_builddir)/lib/wind/libwind.la
408 dist_gsstool_SOURCES = gsstool.c
409 nodist_gsstool_SOURCES = gss-commands.c gss-commands.h
410 dist_gss_token_SOURCES = gss-token.c
412 gsstool_LDADD = libgssapi.la \
413 $(top_builddir)/lib/sl/libsl.la \
414 $(top_builddir)/lib/krb5/libkrb5.la \
418 gss_token_LDADD = libgssapi.la \
419 $(top_builddir)/lib/krb5/libkrb5.la \
422 gss-commands.c gss-commands.h: gss-commands.in
423 $(SLC) $(srcdir)/gss-commands.in
425 $(gsstool_OBJECTS): gss-commands.h
429 libgssapi-version.rc \
430 libgssapi-exports.def \
433 gssapi/gssapi_netlogon.h \
434 krb5/test_acquire_cred.c \
443 spnego/negoex_err.et \
448 $(libgssapi_la_OBJECTS): gkrb5_err.h gssapi_asn1.h gssapi_asn1-priv.h
449 $(libgssapi_la_OBJECTS): spnego_asn1.h spnego_asn1-priv.h
450 $(libgssapi_la_OBJECTS): $(srcdir)/gssapi/gssapi_oid.h
452 gkrb5_err.h gkrb5_err.c: $(srcdir)/krb5/gkrb5_err.et
453 $(COMPILE_ET) $(srcdir)/krb5/gkrb5_err.et
455 negoex_err.h negoex_err.c: $(srcdir)/spnego/negoex_err.et
456 $(COMPILE_ET) $(srcdir)/spnego/negoex_err.et
458 $(srcdir)/gssapi/gssapi_oid.h $(srcdir)/mech/gss_oid.c:
459 perl $(srcdir)/gen-oid.pl -b base -h $(srcdir)/oid.txt > $(srcdir)/gssapi/gssapi_oid.h
460 perl $(srcdir)/gen-oid.pl -b base $(srcdir)/oid.txt > $(srcdir)/mech/gss_oid.c
463 # NegoEx test mechanism, uses decode_GSSAPIContextToken
466 test_negoex_mech_la_SOURCES = test_negoex_mech.c $(gssapi_files)
467 test_negoex_mech_la_LDFLAGS = -module
468 test_negoex_mech_la_LIBADD = \
469 $(top_builddir)/lib/asn1/libasn1.la \