xref: /netbsd-src/crypto/external/bsd/heimdal/dist/lib/hx509/Makefile.am (revision dd75ac5b443e967e26b4d18cc8cd5eb98512bfbf)
1include $(top_srcdir)/Makefile.am.common
2
3AM_CPPFLAGS += $(INCLUDE_openssl_crypto)
4
5lib_LTLIBRARIES = libhx509.la
6libhx509_la_LDFLAGS = -version-info 5:0:0
7
8BUILT_SOURCES =				\
9	sel-gram.h			\
10	$(gen_files_ocsp:.x=.c)		\
11	$(gen_files_pkcs10:.x=.c)	\
12	hx509_err.c			\
13	hx509_err.h
14
15gen_files_ocsp = 			\
16	asn1_OCSPBasicOCSPResponse.x	\
17	asn1_OCSPCertID.x		\
18	asn1_OCSPCertStatus.x		\
19	asn1_OCSPInnerRequest.x		\
20	asn1_OCSPKeyHash.x		\
21	asn1_OCSPRequest.x		\
22	asn1_OCSPResponderID.x		\
23	asn1_OCSPResponse.x		\
24	asn1_OCSPResponseBytes.x	\
25	asn1_OCSPResponseData.x		\
26	asn1_OCSPResponseStatus.x	\
27	asn1_OCSPSignature.x		\
28	asn1_OCSPSingleResponse.x	\
29	asn1_OCSPTBSRequest.x		\
30	asn1_OCSPVersion.x		\
31	asn1_id_pkix_ocsp.x		\
32	asn1_id_pkix_ocsp_basic.x	\
33	asn1_id_pkix_ocsp_nonce.x
34
35gen_files_pkcs10 = 			\
36	asn1_CertificationRequestInfo.x	\
37	asn1_CertificationRequest.x
38
39gen_files_crmf = 			\
40	asn1_CRMFRDNSequence.x		\
41	asn1_CertReqMessages.x		\
42	asn1_CertReqMsg.x		\
43	asn1_CertRequest.x		\
44	asn1_CertTemplate.x		\
45	asn1_Controls.x			\
46	asn1_PBMParameter.x		\
47	asn1_PKMACValue.x		\
48	asn1_POPOPrivKey.x		\
49	asn1_POPOSigningKey.x		\
50	asn1_POPOSigningKeyInput.x	\
51	asn1_ProofOfPossession.x	\
52	asn1_SubsequentMessage.x
53
54AM_YFLAGS = -d
55
56dist_libhx509_la_SOURCES = \
57	ca.c \
58	cert.c \
59	char_map.h \
60	cms.c \
61	collector.c \
62	crypto.c \
63	crypto-ec.c \
64	doxygen.c \
65	error.c \
66	env.c \
67	file.c \
68	hx509.h \
69	hx_locl.h \
70	sel.c \
71	sel.h \
72	sel-gram.y \
73	sel-lex.l \
74	keyset.c \
75	ks_dir.c \
76	ks_file.c \
77	ks_mem.c \
78	ks_null.c \
79	ks_p11.c \
80	ks_p12.c \
81	ks_keychain.c \
82	lock.c \
83	name.c \
84	peer.c \
85	print.c \
86	softp11.c \
87	ref/pkcs11.h \
88	req.c \
89	revoke.c
90
91sel-lex.c: sel-gram.h
92
93libhx509_la_DEPENDENCIES = version-script.map
94
95libhx509_la_LIBADD = \
96	$(LIB_com_err) \
97	$(LIB_hcrypto) \
98	$(LIB_openssl_crypto) \
99	$(top_builddir)/lib/asn1/libasn1.la \
100	$(top_builddir)/lib/wind/libwind.la \
101	$(top_builddir)/lib/base/libheimbase.la \
102	$(LIBADD_roken) \
103	$(LIB_dlopen)
104
105if FRAMEWORK_SECURITY
106libhx509_la_LDFLAGS += -framework Security -framework CoreFoundation
107endif
108
109if versionscript
110libhx509_la_LDFLAGS += $(LDFLAGS_VERSION_SCRIPT)$(srcdir)/version-script.map
111endif
112$(libhx509_la_OBJECTS): $(srcdir)/version-script.map $(nodist_include_HEADERS) $(priv_headers)
113
114nodist_libhx509_la_SOURCES = $(BUILT_SOURCES)
115
116$(gen_files_ocsp) ocsp_asn1.hx ocsp_asn1-priv.hx: ocsp_asn1_files
117$(gen_files_pkcs10) pkcs10_asn1.hx pkcs10_asn1-priv.hx: pkcs10_asn1_files
118$(gen_files_crmf) crmf_asn1.hx crmf_asn1-priv.hx: crmf_asn1_files
119
120dist_include_HEADERS = hx509.h $(srcdir)/hx509-protos.h
121
122noinst_HEADERS = $(srcdir)/hx509-private.h
123
124nodist_include_HEADERS = hx509_err.h
125nodist_include_HEADERS += ocsp_asn1.h
126nodist_include_HEADERS += pkcs10_asn1.h
127nodist_include_HEADERS += crmf_asn1.h
128
129priv_headers  = ocsp_asn1-priv.h
130priv_headers += pkcs10_asn1-priv.h
131priv_headers += crmf_asn1-priv.h
132
133
134ocsp_asn1_files: $(ASN1_COMPILE_DEP) $(srcdir)/ocsp.asn1 $(srcdir)/ocsp.opt
135	$(heim_verbose)$(ASN1_COMPILE) --option-file=$(srcdir)/ocsp.opt $(srcdir)/ocsp.asn1 ocsp_asn1 || (rm -f ocsp_asn1_files ; exit 1)
136
137pkcs10_asn1_files: $(ASN1_COMPILE_DEP) $(srcdir)/pkcs10.asn1 $(srcdir)/pkcs10.opt
138	$(heim_verbose)$(ASN1_COMPILE) --option-file=$(srcdir)/pkcs10.opt $(srcdir)/pkcs10.asn1 pkcs10_asn1 || (rm -f pkcs10_asn1_files ; exit 1)
139
140crmf_asn1_files: $(ASN1_COMPILE_DEP) $(srcdir)/crmf.asn1
141	$(heim_verbose)$(ASN1_COMPILE) $(srcdir)/crmf.asn1 crmf_asn1 || (rm -f crmf_asn1_files ; exit 1)
142
143ALL_OBJECTS  = $(libhx509_la_OBJECTS)
144ALL_OBJECTS += $(hxtool_OBJECTS)
145
146HX509_PROTOS = $(srcdir)/hx509-protos.h $(srcdir)/hx509-private.h
147
148$(ALL_OBJECTS): $(HX509_PROTOS)
149
150$(libhx509_la_OBJECTS): $(srcdir)/hx_locl.h
151$(libhx509_la_OBJECTS): ocsp_asn1.h pkcs10_asn1.h
152
153$(srcdir)/hx509-protos.h: $(dist_libhx509_la_SOURCES)
154	$(heim_verbose)cd $(srcdir) && perl ../../cf/make-proto.pl -R '^(_|^C)' -E HX509_LIB -q -P comment -o hx509-protos.h $(dist_libhx509_la_SOURCES) || rm -f hx509-protos.h
155
156$(srcdir)/hx509-private.h: $(dist_libhx509_la_SOURCES)
157	$(heim_verbose)cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p hx509-private.h $(dist_libhx509_la_SOURCES) || rm -f hx509-private.h
158
159bin_PROGRAMS = hxtool
160
161hxtool-commands.c hxtool-commands.h: hxtool-commands.in $(SLC)
162	$(heim_verbose)$(SLC) $(srcdir)/hxtool-commands.in
163
164dist_hxtool_SOURCES = hxtool.c
165nodist_hxtool_SOURCES = hxtool-commands.c hxtool-commands.h
166
167$(hxtool_OBJECTS): hxtool-commands.h $(nodist_include_HEADERS)
168
169hxtool_LDADD = \
170	libhx509.la \
171	$(top_builddir)/lib/asn1/libasn1.la \
172	$(LIB_hcrypto) \
173	$(LIB_roken) \
174	$(top_builddir)/lib/sl/libsl.la
175
176CLEANFILES = $(BUILT_SOURCES) sel-gram.c sel-lex.c \
177	$(gen_files_ocsp) ocsp_asn1_files ocsp_asn1{,-priv}.h* \
178	ocsp_asn1-template.[chx]* \
179	$(gen_files_pkcs10) pkcs10_asn1_files pkcs10_asn1{,-priv}.h* \
180	pkcs10_asn1-template.[chx]* \
181	$(gen_files_crmf) crmf_asn1_files crmf_asn1{,-priv}.h* \
182	crmf_asn1-template.[chx]* \
183	$(TESTS) \
184	hxtool-commands.c hxtool-commands.h *.tmp \
185	request.out \
186	out.pem out2.pem \
187	sd sd.pem \
188	sd.data sd.data.out \
189	ev.data ev.data.out \
190	cert-null.pem cert-sub-ca2.pem \
191	cert-ee.pem cert-ca.pem \
192	cert-sub-ee.pem cert-sub-ca.pem \
193	cert-proxy.der cert-ca.der cert-ee.der pkcs10-request.der \
194	wca.pem wuser.pem wdc.pem wcrl.crl \
195	random-data statfile crl.crl \
196	test p11dbg.log pkcs11.cfg \
197	test-rc-file.rc
198
199clean-local:
200	@echo "cleaning PKITS" ; rm -rf PKITS_data
201
202#
203# regression tests
204#
205
206check_SCRIPTS = $(SCRIPT_TESTS)
207check_PROGRAMS = $(PROGRAM_TESTS) test_soft_pkcs11
208
209LDADD = libhx509.la
210
211test_soft_pkcs11_LDADD = libhx509.la $(top_builddir)/lib/asn1/libasn1.la
212
213test_name_LDADD = libhx509.la $(LIB_roken) $(top_builddir)/lib/asn1/libasn1.la
214test_expr_LDADD = libhx509.la $(LIB_roken) $(top_builddir)/lib/asn1/libasn1.la
215
216TESTS = $(SCRIPT_TESTS) $(PROGRAM_TESTS)
217
218PROGRAM_TESTS = 		\
219	test_name		\
220	test_expr
221
222SCRIPT_TESTS = 			\
223	test_ca			\
224	test_cert		\
225	test_chain		\
226	test_cms		\
227	test_crypto		\
228	test_nist		\
229	test_nist2		\
230	test_pkcs11		\
231	test_java_pkcs11	\
232	test_nist_cert		\
233	test_nist_pkcs12	\
234	test_req		\
235	test_windows		\
236	test_query
237
238do_subst = $(heim_verbose)sed -e 's,[@]srcdir[@],$(srcdir),g' \
239	-e 's,[@]objdir[@],$(top_builddir)/lib/hx509,g' \
240	-e 's,[@]egrep[@],$(EGREP),g'
241
242test_ca: test_ca.in Makefile
243	$(do_subst) < $(srcdir)/test_ca.in > test_ca.tmp
244	$(heim_verbose)chmod +x test_ca.tmp
245	mv test_ca.tmp test_ca
246
247test_cert: test_cert.in Makefile
248	$(do_subst) < $(srcdir)/test_cert.in > test_cert.tmp
249	$(heim_verbose)chmod +x test_cert.tmp
250	mv test_cert.tmp test_cert
251
252test_chain: test_chain.in Makefile
253	$(do_subst) < $(srcdir)/test_chain.in > test_chain.tmp
254	$(heim_verbose)chmod +x test_chain.tmp
255	mv test_chain.tmp test_chain
256
257test_cms: test_cms.in Makefile
258	$(do_subst) < $(srcdir)/test_cms.in > test_cms.tmp
259	$(heim_verbose)chmod +x test_cms.tmp
260	mv test_cms.tmp test_cms
261
262test_crypto: test_crypto.in Makefile
263	$(do_subst) < $(srcdir)/test_crypto.in > test_crypto.tmp
264	$(heim_verbose)chmod +x test_crypto.tmp
265	mv test_crypto.tmp test_crypto
266
267test_nist: test_nist.in Makefile
268	$(do_subst) < $(srcdir)/test_nist.in > test_nist.tmp
269	$(heim_verbose)chmod +x test_nist.tmp
270	mv test_nist.tmp test_nist
271
272test_nist2: test_nist2.in Makefile
273	$(do_subst) < $(srcdir)/test_nist2.in > test_nist2.tmp
274	$(heim_verbose)chmod +x test_nist2.tmp
275	mv test_nist2.tmp test_nist2
276
277test_pkcs11: test_pkcs11.in Makefile
278	$(do_subst) < $(srcdir)/test_pkcs11.in > test_pkcs11.tmp
279	$(heim_verbose)chmod +x test_pkcs11.tmp
280	mv test_pkcs11.tmp test_pkcs11
281
282test_java_pkcs11: test_java_pkcs11.in Makefile
283	$(do_subst) < $(srcdir)/test_java_pkcs11.in > test_java_pkcs11.tmp
284	$(heim_verbose)chmod +x test_java_pkcs11.tmp
285	mv test_java_pkcs11.tmp test_java_pkcs11
286
287test_nist_cert: test_nist_cert.in Makefile
288	$(do_subst) < $(srcdir)/test_nist_cert.in > test_nist_cert.tmp
289	$(heim_verbose)chmod +x test_nist_cert.tmp
290	mv test_nist_cert.tmp test_nist_cert
291
292test_nist_pkcs12: test_nist_pkcs12.in Makefile
293	$(do_subst) < $(srcdir)/test_nist_pkcs12.in > test_nist_pkcs12.tmp
294	$(heim_verbose)chmod +x test_nist_pkcs12.tmp
295	mv test_nist_pkcs12.tmp test_nist_pkcs12
296
297test_req: test_req.in Makefile
298	$(do_subst) < $(srcdir)/test_req.in > test_req.tmp
299	$(heim_verbose)chmod +x test_req.tmp
300	mv test_req.tmp test_req
301
302test_windows: test_windows.in Makefile
303	$(do_subst) < $(srcdir)/test_windows.in > test_windows.tmp
304	$(heim_verbose)chmod +x test_windows.tmp
305	mv test_windows.tmp test_windows
306
307test_query: test_query.in Makefile
308	$(do_subst) < $(srcdir)/test_query.in > test_query.tmp
309	$(heim_verbose)chmod +x test_query.tmp
310	mv test_query.tmp test_query
311
312EXTRA_DIST = \
313	NTMakefile \
314	hxtool-version.rc \
315	libhx509-exports.def \
316	version-script.map \
317	crmf.asn1 \
318	hx509_err.et \
319	hxtool-commands.in \
320	quote.py \
321	ocsp.asn1 \
322	ocsp.opt \
323	pkcs10.asn1 \
324	pkcs10.opt \
325	test_ca.in \
326	test_chain.in \
327	test_cert.in \
328	test_cms.in \
329	test_crypto.in \
330	test_nist.in \
331	test_nist2.in \
332	test_nist_cert.in \
333	test_nist_pkcs12.in \
334	test_pkcs11.in \
335	test_java_pkcs11.in \
336	test_query.in \
337	test_req.in \
338	test_windows.in \
339	tst-crypto-available1 \
340	tst-crypto-available2 \
341	tst-crypto-available3 \
342	tst-crypto-select \
343	tst-crypto-select1 \
344	tst-crypto-select2 \
345	tst-crypto-select3 \
346	tst-crypto-select4 \
347	tst-crypto-select5 \
348	tst-crypto-select6 \
349	tst-crypto-select7 \
350	data/PKITS_data.zip \
351	data/eccurve.pem \
352	data/https.crt \
353	data/https.key \
354	data/mkcert.sh \
355	data/nist-result2 \
356	data/n0ll.pem \
357	data/secp256r1TestCA.cert.pem \
358	data/secp256r1TestCA.key.pem \
359	data/secp256r1TestCA.pem \
360	data/secp256r2TestClient.cert.pem \
361	data/secp256r2TestClient.key.pem \
362	data/secp256r2TestClient.pem \
363	data/secp256r2TestServer.cert.pem \
364	data/secp256r2TestServer.key.pem \
365	data/secp256r2TestServer.pem \
366	data/bleichenbacher-bad.pem \
367	data/bleichenbacher-good.pem \
368	data/bleichenbacher-sf-pad-correct.pem \
369	data/ca.crt \
370	data/ca.key \
371	data/crl1.crl \
372	data/crl1.der \
373	data/gen-req.sh \
374	data/j.pem \
375	data/kdc.crt \
376	data/kdc.key \
377	data/key.der \
378	data/key2.der \
379	data/nist-data \
380	data/nist-data2 \
381	data/no-proxy-test.crt \
382	data/no-proxy-test.key \
383	data/ocsp-req1.der \
384	data/ocsp-req2.der \
385	data/ocsp-resp1-2.der \
386	data/ocsp-resp1-3.der \
387	data/ocsp-resp1-ca.der \
388	data/ocsp-resp1-keyhash.der \
389	data/ocsp-resp1-ocsp-no-cert.der \
390	data/ocsp-resp1-ocsp.der \
391	data/ocsp-resp1.der \
392	data/ocsp-resp2.der \
393	data/ocsp-responder.crt \
394	data/ocsp-responder.key \
395	data/openssl.1.0.cnf \
396	data/openssl.1.1.cnf \
397	data/pkinit-proxy-chain.crt \
398	data/pkinit-proxy.crt \
399	data/pkinit-proxy.key \
400	data/pkinit-pw.key \
401	data/pkinit.crt \
402	data/pkinit.key \
403	data/pkinit-ec.crt \
404	data/pkinit-ec.key \
405	data/proxy-level-test.crt \
406	data/proxy-level-test.key \
407	data/proxy-test.crt \
408	data/proxy-test.key \
409	data/proxy10-child-test.crt \
410	data/proxy10-child-test.key \
411	data/proxy10-child-child-test.crt \
412	data/proxy10-child-child-test.key \
413	data/proxy10-test.crt \
414	data/proxy10-test.key \
415	data/revoke.crt \
416	data/revoke.key \
417	data/sf-class2-root.pem \
418	data/static-file \
419	data/sub-ca.crt \
420	data/sub-ca.key \
421	data/sub-cert.crt \
422	data/sub-cert.key \
423	data/sub-cert.p12 \
424	data/test-ds-only.crt \
425	data/test-ds-only.key \
426	data/test-enveloped-aes-128 \
427	data/test-enveloped-aes-256 \
428	data/test-enveloped-des \
429	data/test-enveloped-des-ede3 \
430	data/test-enveloped-rc2-128 \
431	data/test-enveloped-rc2-40 \
432	data/test-enveloped-rc2-64 \
433	data/test-ke-only.crt \
434	data/test-ke-only.key \
435	data/test-nopw.p12 \
436	data/test-pw.key \
437	data/test-signed-data \
438	data/test-signed-data-noattr \
439	data/test-signed-data-noattr-nocerts \
440	data/test-signed-sha-1 \
441	data/test-signed-sha-256 \
442	data/test-signed-sha-512 \
443	data/test.combined.crt \
444	data/test.crt \
445	data/test.key \
446	data/test.p12 \
447	data/win-u16-in-printablestring.der \
448	data/yutaka-pad-broken-ca.pem \
449	data/yutaka-pad-broken-cert.pem \
450	data/yutaka-pad-ok-ca.pem \
451	data/yutaka-pad-ok-cert.pem \
452	data/yutaka-pad.key
453