1# $Id$ 2 3include $(top_srcdir)/Makefile.am.common 4 5AUTOMAKE_OPTIONS = subdir-objects 6 7AM_CPPFLAGS += \ 8 -I$(srcdir)/../krb5 \ 9 -I$(srcdir) \ 10 -I$(srcdir)/gssapi \ 11 -I$(srcdir)/mech \ 12 -I$(srcdir)/ntlm \ 13 -I$(srcdir)/krb5 \ 14 -I$(srcdir)/spnego \ 15 $(INCLUDE_libintl) \ 16 $(INCLUDE_hcrypto) \ 17 $(INCLUDE_krb4) 18 19lib_LTLIBRARIES = libgssapi.la 20 21krb5src = \ 22 krb5/8003.c \ 23 krb5/accept_sec_context.c \ 24 krb5/acquire_cred.c \ 25 krb5/add_cred.c \ 26 krb5/address_to_krb5addr.c \ 27 krb5/aeap.c \ 28 krb5/arcfour.c \ 29 krb5/canonicalize_name.c \ 30 krb5/creds.c \ 31 krb5/ccache_name.c \ 32 krb5/cfx.c \ 33 krb5/cfx.h \ 34 krb5/compare_name.c \ 35 krb5/compat.c \ 36 krb5/context_time.c \ 37 krb5/copy_ccache.c \ 38 krb5/decapsulate.c \ 39 krb5/delete_sec_context.c \ 40 krb5/display_name.c \ 41 krb5/display_status.c \ 42 krb5/duplicate_name.c \ 43 krb5/encapsulate.c \ 44 krb5/export_name.c \ 45 krb5/export_sec_context.c \ 46 krb5/external.c \ 47 krb5/get_mic.c \ 48 krb5/gsskrb5_locl.h \ 49 krb5/gsskrb5-private.h \ 50 krb5/import_name.c \ 51 krb5/import_sec_context.c \ 52 krb5/indicate_mechs.c \ 53 krb5/init.c \ 54 krb5/init_sec_context.c \ 55 krb5/inquire_context.c \ 56 krb5/inquire_cred.c \ 57 krb5/inquire_cred_by_mech.c \ 58 krb5/inquire_cred_by_oid.c \ 59 krb5/inquire_mechs_for_name.c \ 60 krb5/inquire_names_for_mech.c \ 61 krb5/inquire_sec_context_by_oid.c \ 62 krb5/pname_to_uid.c \ 63 krb5/process_context_token.c \ 64 krb5/prf.c \ 65 krb5/release_buffer.c \ 66 krb5/release_cred.c \ 67 krb5/release_name.c \ 68 krb5/sequence.c \ 69 krb5/store_cred.c \ 70 krb5/set_cred_option.c \ 71 krb5/set_sec_context_option.c \ 72 krb5/ticket_flags.c \ 73 krb5/unwrap.c \ 74 krb5/authorize_localname.c \ 75 krb5/verify_mic.c \ 76 krb5/wrap.c 77 78mechsrc = \ 79 mech/context.h \ 80 mech/context.c \ 81 mech/cred.h \ 82 mech/compat.h \ 83 mech/doxygen.c \ 84 mech/gss_accept_sec_context.c \ 85 mech/gss_acquire_cred.c \ 86 mech/gss_acquire_cred_ext.c \ 87 mech/gss_acquire_cred_with_password.c \ 88 mech/gss_add_cred.c \ 89 mech/gss_add_cred_with_password.c \ 90 mech/gss_add_oid_set_member.c \ 91 mech/gss_aeap.c \ 92 mech/gss_buffer_set.c \ 93 mech/gss_canonicalize_name.c \ 94 mech/gss_compare_name.c \ 95 mech/gss_context_time.c \ 96 mech/gss_create_empty_oid_set.c \ 97 mech/gss_cred.c \ 98 mech/gss_decapsulate_token.c \ 99 mech/gss_delete_name_attribute.c \ 100 mech/gss_delete_sec_context.c \ 101 mech/gss_display_name.c \ 102 mech/gss_display_name_ext.c \ 103 mech/gss_display_status.c \ 104 mech/gss_duplicate_name.c \ 105 mech/gss_duplicate_oid.c \ 106 mech/gss_encapsulate_token.c \ 107 mech/gss_export_name.c \ 108 mech/gss_export_name_composite.c \ 109 mech/gss_export_sec_context.c \ 110 mech/gss_get_mic.c \ 111 mech/gss_get_name_attribute.c \ 112 mech/gss_import_name.c \ 113 mech/gss_import_sec_context.c \ 114 mech/gss_indicate_mechs.c \ 115 mech/gss_init_sec_context.c \ 116 mech/gss_inquire_context.c \ 117 mech/gss_inquire_cred.c \ 118 mech/gss_inquire_cred_by_mech.c \ 119 mech/gss_inquire_cred_by_oid.c \ 120 mech/gss_inquire_mechs_for_name.c \ 121 mech/gss_inquire_name.c \ 122 mech/gss_inquire_names_for_mech.c \ 123 mech/gss_krb5.c \ 124 mech/gss_mech_switch.c \ 125 mech/gss_mo.c \ 126 mech/gss_names.c \ 127 mech/gss_oid.c \ 128 mech/gss_oid_equal.c \ 129 mech/gss_oid_to_str.c \ 130 mech/gss_pname_to_uid.c \ 131 mech/gss_process_context_token.c \ 132 mech/gss_pseudo_random.c \ 133 mech/gss_release_buffer.c \ 134 mech/gss_release_cred.c \ 135 mech/gss_release_name.c \ 136 mech/gss_release_oid.c \ 137 mech/gss_release_oid_set.c \ 138 mech/gss_seal.c \ 139 mech/gss_set_cred_option.c \ 140 mech/gss_set_name_attribute.c \ 141 mech/gss_set_sec_context_option.c \ 142 mech/gss_sign.c \ 143 mech/gss_store_cred.c \ 144 mech/gss_test_oid_set_member.c \ 145 mech/gss_unseal.c \ 146 mech/gss_unwrap.c \ 147 mech/gss_authorize_localname.c \ 148 mech/gss_utils.c \ 149 mech/gss_verify.c \ 150 mech/gss_verify_mic.c \ 151 mech/gss_wrap.c \ 152 mech/gss_wrap_size_limit.c \ 153 mech/gss_inquire_sec_context_by_oid.c \ 154 mech/mech_switch.h \ 155 mech/mechqueue.h \ 156 mech/mech_locl.h \ 157 mech/name.h \ 158 mech/utils.h 159 160spnegosrc = \ 161 spnego/accept_sec_context.c \ 162 spnego/compat.c \ 163 spnego/context_stubs.c \ 164 spnego/cred_stubs.c \ 165 spnego/external.c \ 166 spnego/init_sec_context.c \ 167 spnego/spnego_locl.h \ 168 spnego/spnego-private.h 169 170ntlmsrc = \ 171 ntlm/accept_sec_context.c \ 172 ntlm/acquire_cred.c \ 173 ntlm/add_cred.c \ 174 ntlm/canonicalize_name.c \ 175 ntlm/compare_name.c \ 176 ntlm/context_time.c \ 177 ntlm/creds.c \ 178 ntlm/crypto.c \ 179 ntlm/delete_sec_context.c \ 180 ntlm/display_name.c \ 181 ntlm/display_status.c \ 182 ntlm/duplicate_name.c \ 183 ntlm/export_name.c \ 184 ntlm/export_sec_context.c \ 185 ntlm/external.c \ 186 ntlm/ntlm.h \ 187 ntlm/ntlm-private.h \ 188 ntlm/import_name.c \ 189 ntlm/import_sec_context.c \ 190 ntlm/indicate_mechs.c \ 191 ntlm/init_sec_context.c \ 192 ntlm/inquire_context.c \ 193 ntlm/inquire_cred_by_mech.c \ 194 ntlm/inquire_mechs_for_name.c \ 195 ntlm/inquire_names_for_mech.c \ 196 ntlm/inquire_sec_context_by_oid.c \ 197 ntlm/iter_cred.c \ 198 ntlm/process_context_token.c \ 199 ntlm/release_cred.c \ 200 ntlm/release_name.c \ 201 ntlm/kdc.c 202 203$(srcdir)/ntlm/ntlm-private.h: 204 cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p ntlm/ntlm-private.h $(ntlmsrc) || rm -f ntlm/ntlm-private.h 205 206dist_libgssapi_la_SOURCES = \ 207 $(krb5src) \ 208 $(mechsrc) \ 209 $(ntlmsrc) \ 210 $(spnegosrc) 211 212nodist_libgssapi_la_SOURCES = \ 213 gkrb5_err.c \ 214 gkrb5_err.h \ 215 $(BUILT_SOURCES) 216 217libgssapi_la_DEPENDENCIES = version-script.map 218 219libgssapi_la_LDFLAGS = -version-info 3:0:0 220 221if versionscript 222libgssapi_la_LDFLAGS += $(LDFLAGS_VERSION_SCRIPT)$(srcdir)/version-script.map 223endif 224 225libgssapi_la_LIBADD = \ 226 $(top_builddir)/lib/ntlm/libheimntlm.la \ 227 $(top_builddir)/lib/krb5/libkrb5.la \ 228 $(top_builddir)/lib/asn1/libasn1.la \ 229 $(LIB_com_err) \ 230 $(LIB_hcrypto) \ 231 $(LIBADD_roken) 232 233man_MANS = gssapi.3 gss_acquire_cred.3 mech/mech.5 234 235include_HEADERS = gssapi.h 236noinst_HEADERS = \ 237 gssapi_mech.h \ 238 ntlm/ntlm-private.h \ 239 spnego/spnego-private.h \ 240 krb5/gsskrb5-private.h 241 242nobase_include_HEADERS = \ 243 gssapi/gssapi.h \ 244 gssapi/gssapi_krb5.h \ 245 gssapi/gssapi_ntlm.h \ 246 gssapi/gssapi_oid.h \ 247 gssapi/gssapi_spnego.h 248 249gssapidir = $(includedir)/gssapi 250nodist_gssapi_HEADERS = gkrb5_err.h 251 252gssapi_files = asn1_GSSAPIContextToken.x 253 254spnego_files = \ 255 asn1_ContextFlags.x \ 256 asn1_MechType.x \ 257 asn1_MechTypeList.x \ 258 asn1_NegotiationToken.x \ 259 asn1_NegotiationTokenWin.x \ 260 asn1_NegHints.x \ 261 asn1_NegTokenInit.x \ 262 asn1_NegTokenInitWin.x \ 263 asn1_NegTokenResp.x 264 265BUILTHEADERS = \ 266 $(srcdir)/krb5/gsskrb5-private.h \ 267 $(srcdir)/spnego/spnego-private.h \ 268 $(srcdir)/ntlm/ntlm-private.h 269 270$(libgssapi_la_OBJECTS): $(BUILTHEADERS) 271$(test_context_OBJECTS): $(BUILTHEADERS) 272 273$(libgssapi_la_OBJECTS): $(srcdir)/version-script.map 274 275BUILT_SOURCES = $(spnego_files:.x=.c) $(gssapi_files:.x=.c) 276 277CLEANFILES = $(BUILT_SOURCES) \ 278 gkrb5_err.h gkrb5_err.c \ 279 $(spnego_files) spnego_asn1*.h* spnego_asn1_files spnego_asn1-template.c \ 280 $(gssapi_files) gssapi_asn1*.h* gssapi_asn1_files gssapi_asn1-template.c \ 281 gss-commands.h gss-commands.c 282 283$(spnego_files) spnego_asn1.hx spnego_asn1-priv.hx: spnego_asn1_files 284$(gssapi_files) gssapi_asn1.hx gssapi_asn1-priv.hx: gssapi_asn1_files 285 286spnego_asn1_files: $(ASN1_COMPILE_DEP) $(srcdir)/spnego/spnego.asn1 $(srcdir)/spnego/spnego.opt 287 $(ASN1_COMPILE) --option-file=$(srcdir)/spnego/spnego.opt $(srcdir)/spnego/spnego.asn1 spnego_asn1 288 289gssapi_asn1_files: $(ASN1_COMPILE_DEP) $(srcdir)/mech/gssapi.asn1 290 $(ASN1_COMPILE) $(srcdir)/mech/gssapi.asn1 gssapi_asn1 291 292$(srcdir)/krb5/gsskrb5-private.h: 293 cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p krb5/gsskrb5-private.h $(krb5src) || rm -f krb5/gsskrb5-private.h 294 295$(srcdir)/spnego/spnego-private.h: 296 cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p spnego/spnego-private.h $(spnegosrc) || rm -f spnego/spnego-private.h 297 298 299TESTS = test_oid test_names test_cfx 300# test_sequence 301 302test_cfx_SOURCES = krb5/test_cfx.c 303 304check_PROGRAMS = test_acquire_cred $(TESTS) 305 306bin_PROGRAMS = gsstool 307noinst_PROGRAMS = test_cred test_kcred test_context test_ntlm 308 309test_context_SOURCES = test_context.c test_common.c test_common.h 310test_ntlm_SOURCES = test_ntlm.c test_common.c test_common.h 311test_acquire_cred_SOURCES = test_acquire_cred.c test_common.c test_common.h 312 313test_ntlm_LDADD = \ 314 $(top_builddir)/lib/ntlm/libheimntlm.la \ 315 $(LDADD) 316 317LDADD = libgssapi.la \ 318 $(top_builddir)/lib/krb5/libkrb5.la \ 319 $(LIB_roken) 320 321# gss 322 323dist_gsstool_SOURCES = gsstool.c 324nodist_gsstool_SOURCES = gss-commands.c gss-commands.h 325 326gsstool_LDADD = libgssapi.la \ 327 $(top_builddir)/lib/sl/libsl.la \ 328 $(top_builddir)/lib/krb5/libkrb5.la \ 329 $(LIB_readline) \ 330 $(LIB_roken) 331 332gss-commands.c gss-commands.h: gss-commands.in 333 $(SLC) $(srcdir)/gss-commands.in 334 335$(gsstool_OBJECTS): gss-commands.h 336 337EXTRA_DIST = \ 338 NTMakefile \ 339 libgssapi-version.rc \ 340 libgssapi-exports.def \ 341 $(man_MANS) \ 342 krb5/gkrb5_err.et \ 343 mech/gssapi.asn1 \ 344 spnego/spnego.asn1 \ 345 spnego/spnego.opt \ 346 version-script.map \ 347 gss-commands.in 348 349$(libgssapi_la_OBJECTS): gkrb5_err.h gssapi_asn1.h gssapi_asn1-priv.h 350$(libgssapi_la_OBJECTS): spnego_asn1.h spnego_asn1-priv.h 351$(libgssapi_la_OBJECTS): $(srcdir)/gssapi/gssapi_oid.h 352 353gkrb5_err.h gkrb5_err.c: $(srcdir)/krb5/gkrb5_err.et 354 $(COMPILE_ET) $(srcdir)/krb5/gkrb5_err.et 355 356$(srcdir)/gssapi/gssapi_oid.h $(srcdir)/mech/gss_oid.c: 357 perl $(srcdir)/gen-oid.pl -b base -h $(srcdir)/oid.txt > $(srcdir)/gssapi/gssapi_oid.h 358 perl $(srcdir)/gen-oid.pl -b base $(srcdir)/oid.txt > $(srcdir)/mech/gss_oid.c 359