xref: /netbsd-src/crypto/external/bsd/heimdal/lib/libgssapi/Makefile (revision a4ccfd02ebca0c480a8b6059bd9a626685490a13)
1# $NetBSD: Makefile,v 1.7 2023/06/19 23:56:55 mrg Exp $
2
3USE_FORT?= yes        # network protocol library
4
5.include <bsd.own.mk>
6.include <${.CURDIR}/../../Makefile.inc>
7
8.PATH:		${HEIMDIST}/lib/gssapi		\
9		${HEIMDIST}/lib/gssapi/krb5	\
10		${HEIMDIST}/lib/gssapi/mech	\
11		${HEIMDIST}/lib/gssapi/spnego	\
12		${HEIMDIST}/lib/gssapi/ntlm
13
14LIB=		gssapi
15
16LIBDPLIBS+=	krb5		${HEIMBASE}/lib/libkrb5		\
17		asn1		${HEIMBASE}/lib/libasn1		\
18		com_err		${HEIMBASE}/lib/libcom_err	\
19		roken		${HEIMBASE}/lib/libroken	\
20		heimbase	${HEIMBASE}/lib/libheimbase	\
21		heimntlm	${HEIMBASE}/lib/libheimntlm	\
22		crypto		${SSLBASE}/lib/libcrypto
23
24HEIMSRCS= gkrb5_err.et spnego.asn1 gssapi.asn1
25
26ASN1_OPTS.spnego.asn1 = --sequence=MechTypeList
27
28ASN1_FILES.spnego.asn1 = \
29	asn1_ContextFlags.x		\
30	asn1_MechType.x			\
31	asn1_MechTypeList.x		\
32	asn1_NegotiationToken.x		\
33	asn1_NegotiationTokenWin.x	\
34	asn1_NegHints.x			\
35	asn1_NegTokenInit.x		\
36	asn1_NegTokenInitWin.x		\
37	asn1_NegTokenResp.x
38
39krb5src = \
40	krb5/8003.c \
41	krb5/accept_sec_context.c \
42	krb5/acquire_cred.c \
43	krb5/add_cred.c \
44	krb5/address_to_krb5addr.c \
45	krb5/aeap.c \
46	krb5/arcfour.c \
47	krb5/canonicalize_name.c \
48	krb5/creds.c \
49	krb5/ccache_name.c \
50	krb5/cfx.c \
51	krb5/compare_name.c \
52	krb5/compat.c \
53	krb5/context_time.c \
54	krb5/copy_ccache.c \
55	krb5/decapsulate.c \
56	krb5/delete_sec_context.c \
57	krb5/display_name.c \
58	krb5/display_status.c \
59	krb5/duplicate_name.c \
60	krb5/encapsulate.c \
61	krb5/export_name.c \
62	krb5/export_sec_context.c \
63	krb5/external.c \
64	krb5/get_mic.c \
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/authorize_localname.c \
90	krb5/verify_mic.c \
91	krb5/wrap.c
92
93mechsrc = \
94	mech/context.c \
95	mech/doxygen.c \
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_buffer_set.c \
105	mech/gss_canonicalize_name.c \
106	mech/gss_compare_name.c \
107	mech/gss_context_time.c \
108	mech/gss_create_empty_oid_set.c \
109	mech/gss_cred.c \
110	mech/gss_decapsulate_token.c \
111	mech/gss_delete_name_attribute.c \
112	mech/gss_delete_sec_context.c \
113	mech/gss_display_name.c \
114	mech/gss_display_name_ext.c \
115	mech/gss_display_status.c \
116	mech/gss_duplicate_name.c \
117	mech/gss_duplicate_oid.c \
118	mech/gss_encapsulate_token.c \
119	mech/gss_export_name.c \
120	mech/gss_export_name_composite.c \
121	mech/gss_export_sec_context.c \
122	mech/gss_get_mic.c \
123	mech/gss_get_name_attribute.c \
124	mech/gss_import_name.c \
125	mech/gss_import_sec_context.c \
126	mech/gss_indicate_mechs.c \
127	mech/gss_init_sec_context.c \
128	mech/gss_inquire_context.c \
129	mech/gss_inquire_cred.c \
130	mech/gss_inquire_cred_by_mech.c \
131	mech/gss_inquire_cred_by_oid.c \
132	mech/gss_inquire_mechs_for_name.c \
133	mech/gss_inquire_name.c \
134	mech/gss_inquire_names_for_mech.c \
135	mech/gss_krb5.c \
136	mech/gss_mech_switch.c \
137	mech/gss_mo.c \
138	mech/gss_names.c \
139	mech/gss_oid.c \
140	mech/gss_oid_equal.c \
141	mech/gss_oid_to_str.c \
142	mech/gss_pname_to_uid.c \
143	mech/gss_process_context_token.c \
144	mech/gss_pseudo_random.c \
145	mech/gss_release_buffer.c \
146	mech/gss_release_cred.c \
147	mech/gss_release_name.c \
148	mech/gss_release_oid.c \
149	mech/gss_release_oid_set.c \
150	mech/gss_seal.c \
151	mech/gss_set_cred_option.c \
152	mech/gss_set_name_attribute.c \
153	mech/gss_set_sec_context_option.c \
154	mech/gss_sign.c \
155	mech/gss_store_cred.c \
156	mech/gss_test_oid_set_member.c \
157	mech/gss_unseal.c \
158	mech/gss_unwrap.c \
159	mech/gss_authorize_localname.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
167spnegosrc = \
168	spnego/accept_sec_context.c \
169	spnego/compat.c \
170	spnego/context_stubs.c \
171	spnego/cred_stubs.c \
172	spnego/external.c \
173	spnego/init_sec_context.c
174
175ntlmsrc = \
176	ntlm/accept_sec_context.c \
177	ntlm/acquire_cred.c \
178	ntlm/add_cred.c \
179	ntlm/canonicalize_name.c \
180	ntlm/compare_name.c \
181	ntlm/context_time.c \
182	ntlm/creds.c \
183	ntlm/crypto.c \
184	ntlm/delete_sec_context.c \
185	ntlm/display_name.c \
186	ntlm/display_status.c \
187	ntlm/duplicate_name.c \
188	ntlm/export_name.c \
189	ntlm/export_sec_context.c \
190	ntlm/external.c \
191	ntlm/import_name.c \
192	ntlm/import_sec_context.c \
193	ntlm/indicate_mechs.c \
194	ntlm/init_sec_context.c \
195	ntlm/inquire_context.c \
196	ntlm/inquire_cred_by_mech.c \
197	ntlm/inquire_mechs_for_name.c \
198	ntlm/inquire_names_for_mech.c \
199	ntlm/inquire_sec_context_by_oid.c \
200	ntlm/iter_cred.c \
201	ntlm/process_context_token.c \
202	ntlm/release_cred.c \
203	ntlm/release_name.c \
204	ntlm/kdc.c
205
206NTLMSRC=	${ntlmsrc:S@/@__@}
207KRB5SRC=	${krb5src:S@/@__@}
208MECHSRC=	${mechsrc:S@/@__@}
209SPNEGOSRC=	${spnegosrc:S@/@__@}
210
211SRCS= ${KRB5SRC} ${MECHSRC} ${SPNEGOSRC} ${NTLMSRC}
212
213.for i in ${KRB5SRC} ${MECHSRC} ${SPNEGOSRC} ${NTLMSRC}
214BUILDSYMLINKS+= ${i:S@__@/@} ${i}
215CLEANFILES+= ${i}
216.endfor
217
218MAN=				\
219	gssapi.3		\
220	gss_acquire_cred.3	\
221	mech.5
222
223MLINKS= \
224	gss_acquire_cred.3	gss_accept_sec_context.3	\
225	gss_acquire_cred.3	gss_add_cred.3			\
226	gss_acquire_cred.3	gss_add_oid_set_member.3	\
227	gss_acquire_cred.3	gss_canonicalize_name.3		\
228	gss_acquire_cred.3	gss_compare_name.3		\
229	gss_acquire_cred.3	gss_context_time.3		\
230	gss_acquire_cred.3	gss_create_empty_oid_set.3	\
231	gss_acquire_cred.3	gss_delete_sec_context.3	\
232	gss_acquire_cred.3	gss_display_name.3		\
233	gss_acquire_cred.3	gss_display_status.3		\
234	gss_acquire_cred.3	gss_duplicate_name.3		\
235	gss_acquire_cred.3	gss_export_name.3		\
236	gss_acquire_cred.3	gss_export_sec_context.3	\
237	gss_acquire_cred.3	gss_get_mic.3			\
238	gss_acquire_cred.3	gss_import_name.3		\
239	gss_acquire_cred.3	gss_import_sec_context.3	\
240	gss_acquire_cred.3	gss_indicate_mechs.3		\
241	gss_acquire_cred.3	gss_init_sec_context.3		\
242	gss_acquire_cred.3	gss_inquire_context.3		\
243	gss_acquire_cred.3	gss_inquire_cred.3		\
244	gss_acquire_cred.3	gss_inquire_cred_by_mech.3	\
245	gss_acquire_cred.3	gss_inquire_mechs_for_name.3	\
246	gss_acquire_cred.3	gss_inquire_names_for_mech.3	\
247	gss_acquire_cred.3	gss_krb5_ccache_name.3		\
248	gss_acquire_cred.3	gss_krb5_compat_des3_mic.3	\
249	gss_acquire_cred.3	gss_krb5_copy_ccache.3		\
250	gss_acquire_cred.3	gss_krb5_get_tkt_flags.3	\
251	gss_acquire_cred.3	gss_krb5_import_ccache.3	\
252	gss_acquire_cred.3	gss_krb5_import_cred.3		\
253	gss_acquire_cred.3	gss_process_context_token.3	\
254	gss_acquire_cred.3	gss_release_buffer.3		\
255	gss_acquire_cred.3	gss_release_cred.3		\
256	gss_acquire_cred.3	gss_release_name.3		\
257	gss_acquire_cred.3	gss_release_oid_set.3		\
258	gss_acquire_cred.3	gss_seal.3			\
259	gss_acquire_cred.3	gss_sign.3			\
260	gss_acquire_cred.3	gss_test_oid_set_member.3	\
261	gss_acquire_cred.3	gss_unseal.3			\
262	gss_acquire_cred.3	gss_unwrap.3			\
263	gss_acquire_cred.3	gss_verify.3			\
264	gss_acquire_cred.3	gss_verify_mic.3		\
265	gss_acquire_cred.3	gss_wrap.3			\
266	gss_acquire_cred.3	gss_wrap_size_limit.3		\
267	gss_acquire_cred.3	gsskrb5_extract_authz_data_from_sec_context.3 \
268	gss_acquire_cred.3	gsskrb5_register_acceptor_identity.3
269
270INCS=		gssapi.h
271INCS+=		gssapi/gssapi.h gssapi/gssapi_krb5.h gssapi/gssapi_spnego.h
272INCS+=		gssapi/gssapi_oid.h gssapi/gssapi_ntlm.h
273INCSDIR=	/usr/include
274
275CPPFLAGS+=			\
276	-I${HEIMDIST}/lib/krb5	\
277	-I${HEIMDIST}/lib/asn1	\
278	-I${HEIMDIST}/lib
279
280COPTS.krb5__get_mic.c+= -Wno-error=deprecated-declarations
281COPTS.krb5__wrap.c+= -Wno-error=deprecated-declarations
282COPTS.krb5__unwrap.c+= -Wno-error=deprecated-declarations
283COPTS.krb5__verify_mic.c+= -Wno-error=deprecated-declarations
284COPTS.ntlm__accept_sec_context.c+= -Wno-error=deprecated-declarations
285COPTS.ntlm__crypto.c+= -Wno-error=deprecated-declarations
286COPTS.ntlm__init_sec_context.c+= -Wno-error=deprecated-declarations
287
288.include <${HEIMBASE}/Makefile.rules.inc>
289.include <bsd.lib.mk>
290