1233294Sstas# $Id$
255682Smarkm
355682Smarkminclude $(top_srcdir)/Makefile.am.common
455682Smarkm
5178825SdfrYFLAGS = -d -t
655682Smarkm
755682Smarkmlib_LTLIBRARIES = libasn1.la
8178825Sdfrlibasn1_la_LDFLAGS = -version-info 8:0:0
955682Smarkm
10233294Sstasnoinst_LTLIBRARIES = libasn1base.la
11233294Sstas
12233294Sstasif versionscript
13233294Sstaslibasn1_la_LDFLAGS += $(LDFLAGS_VERSION_SCRIPT)$(srcdir)/version-script.map
14233294Sstasendif
15233294Sstas
16233294Sstas
17178825Sdfrlibasn1_la_LIBADD = \
18233294Sstas	libasn1base.la \
19178825Sdfr	@LIB_com_err@ \
20178825Sdfr	$(LIBADD_roken)
2190926Snectar
22178825SdfrBUILT_SOURCES =				\
23178825Sdfr	$(gen_files_rfc2459:.x=.c)	\
24178825Sdfr	$(gen_files_cms:.x=.c)		\
25233294Sstas	$(gen_files_krb5:.x=.c)		\
26178825Sdfr	$(gen_files_pkinit:.x=.c)	\
27178825Sdfr	$(gen_files_pkcs8:.x=.c)	\
28178825Sdfr	$(gen_files_pkcs9:.x=.c)	\
29178825Sdfr	$(gen_files_pkcs12:.x=.c)	\
30178825Sdfr	$(gen_files_digest:.x=.c)	\
31233294Sstas	$(gen_files_kx509:.x=.c)
3255682Smarkm
33233294Sstasgen_files_krb5 = asn1_krb5_asn1.x
34233294Sstasgen_files_cms = asn1_cms_asn1.x
35233294Sstasgen_files_rfc2459 = asn1_rfc2459_asn1.x
36233294Sstasgen_files_pkinit = asn1_pkinit_asn1.x
37233294Sstasgen_files_pkcs12 = asn1_pkcs12_asn1.x
38233294Sstasgen_files_pkcs8 = asn1_pkcs8_asn1.x
39233294Sstasgen_files_pkcs9 = asn1_pkcs9_asn1.x
40233294Sstasgen_files_test = asn1_test_asn1.x
41233294Sstasgen_files_digest = asn1_digest_asn1.x
42233294Sstasgen_files_kx509 = asn1_kx509_asn1.x
4355682Smarkm
44233294Sstasnoinst_PROGRAMS = asn1_gen
4555682Smarkm
46233294Sstaslibexec_heimdal_PROGRAMS = asn1_compile asn1_print
4755682Smarkm
48233294SstasTESTS = check-der check-gen check-timegm check-ber check-template
49178825Sdfrcheck_PROGRAMS = $(TESTS)
50178825Sdfr
51178825Sdfrasn1_gen_SOURCES = asn1_gen.c
52178825Sdfrasn1_print_SOURCES = asn1_print.c
53178825Sdfrcheck_der_SOURCES = check-der.c check-common.c check-common.h
54178825Sdfr
55233294Sstascheck_template_SOURCES = check-template.c check-common.c check-common.h
56233294Sstasnodist_check_template_SOURCES = $(gen_files_test:.x=.c)
57233294Sstas
58178825Sdfrdist_check_gen_SOURCES = check-gen.c check-common.c check-common.h
59178825Sdfrnodist_check_gen_SOURCES = $(gen_files_test:.x=.c)
60178825Sdfr
61233294Sstasbuild_HEADERZ = asn1-template.h
62233294Sstas
6378527Sassarasn1_compile_SOURCES = 				\
64178825Sdfr	asn1_queue.h				\
65233294Sstas	asn1parse.y				\
66178825Sdfr	der.h					\
6778527Sassar	gen.c					\
6878527Sassar	gen_copy.c				\
6978527Sassar	gen_decode.c				\
7078527Sassar	gen_encode.c				\
7178527Sassar	gen_free.c				\
7278527Sassar	gen_glue.c				\
7378527Sassar	gen_length.c				\
74178825Sdfr	gen_locl.h				\
75178825Sdfr	gen_seq.c				\
76233294Sstas	gen_template.c				\
7778527Sassar	hash.c					\
78178825Sdfr	hash.h					\
7978527Sassar	lex.l					\
80178825Sdfr	lex.h					\
8178527Sassar	main.c					\
82233294Sstas	asn1-template.h				\
83178825Sdfr	symbol.c				\
84178825Sdfr	symbol.h
8555682Smarkm
86233294Sstasdist_libasn1base_la_SOURCES =			\
87178825Sdfr	der_locl.h 				\
88178825Sdfr	der.c					\
89178825Sdfr	der.h					\
9078527Sassar	der_get.c				\
9178527Sassar	der_put.c				\
9278527Sassar	der_free.c				\
9378527Sassar	der_length.c				\
9478527Sassar	der_copy.c				\
95178825Sdfr	der_cmp.c				\
96178825Sdfr	der_format.c				\
97178825Sdfr	heim_asn1.h				\
98178825Sdfr	extra.c					\
99233294Sstas	template.c				\
100178825Sdfr	timegm.c
10155682Smarkm
102233294Sstasnodist_libasn1base_la_SOURCES = 	\
103233294Sstas	asn1_err.h			\
104233294Sstas	asn1_err.c
105233294Sstas
106178825Sdfrnodist_libasn1_la_SOURCES = $(BUILT_SOURCES)
107178825Sdfr
10855682Smarkmasn1_compile_LDADD = \
10955682Smarkm	$(LIB_roken) $(LEXLIB)
11055682Smarkm
11155682Smarkmcheck_der_LDADD = \
112233294Sstas	libasn1base.la \
11355682Smarkm	$(LIB_roken)
11455682Smarkm
115233294Sstascheck_template_LDADD = $(check_der_LDADD)
116233294Sstasasn1_print_LDADD = $(check_der_LDADD) $(LIB_com_err)
117178825Sdfrasn1_gen_LDADD = $(check_der_LDADD)
118178825Sdfrcheck_timegm_LDADD = $(check_der_LDADD)
11955682Smarkm
120233294Sstascheck_gen_LDADD = \
121233294Sstas	libasn1.la \
122233294Sstas	$(LIB_roken)
123233294Sstas
124233294Sstascheck_ber_LDADD = $(check_gen_LDADD)
125233294Sstas
126178825SdfrCLEANFILES = \
127178825Sdfr	$(BUILT_SOURCES) \
128178825Sdfr	$(gen_files_rfc2459) \
129178825Sdfr	$(gen_files_cms) \
130233294Sstas	$(gen_files_krb5) \
131178825Sdfr	$(gen_files_pkinit) \
132178825Sdfr	$(gen_files_pkcs8) \
133178825Sdfr	$(gen_files_pkcs9) \
134178825Sdfr	$(gen_files_pkcs12) \
135178825Sdfr	$(gen_files_digest) \
136178825Sdfr	$(gen_files_kx509) \
137178825Sdfr	$(gen_files_test) $(nodist_check_gen_SOURCES) \
138233294Sstas	asn1_err.c asn1_err.h \
139233294Sstas	rfc2459_asn1_files rfc2459_asn1*.h* \
140233294Sstas	cms_asn1_files cms_asn1*.h* \
141233294Sstas	krb5_asn1_files krb5_asn1*.h* \
142233294Sstas	pkinit_asn1_files pkinit_asn1*.h* \
143233294Sstas	pkcs8_asn1_files pkcs8_asn1*.h* \
144233294Sstas	pkcs9_asn1_files pkcs9_asn1*.h* \
145233294Sstas	pkcs12_asn1_files pkcs12_asn1*.h* \
146233294Sstas	digest_asn1_files digest_asn1*.h* \
147233294Sstas	kx509_asn1_files kx509_asn1*.h* \
148233294Sstas	test_asn1_files test_asn1*.h*
14955682Smarkm
150233294Sstasdist_include_HEADERS = der.h heim_asn1.h der-protos.h der-private.h
151233294Sstasdist_include_HEADERS += asn1-common.h
15255682Smarkm
153178825Sdfrnodist_include_HEADERS = asn1_err.h
154178825Sdfrnodist_include_HEADERS += krb5_asn1.h
155178825Sdfrnodist_include_HEADERS += pkinit_asn1.h
156178825Sdfrnodist_include_HEADERS += cms_asn1.h
157178825Sdfrnodist_include_HEADERS += rfc2459_asn1.h
158178825Sdfrnodist_include_HEADERS += pkcs8_asn1.h
159178825Sdfrnodist_include_HEADERS += pkcs9_asn1.h
160178825Sdfrnodist_include_HEADERS += pkcs12_asn1.h
161178825Sdfrnodist_include_HEADERS += digest_asn1.h
162178825Sdfrnodist_include_HEADERS += kx509_asn1.h
16355682Smarkm
164233294Sstaspriv_headers  = krb5_asn1-priv.h
165233294Sstaspriv_headers += pkinit_asn1-priv.h
166233294Sstaspriv_headers += cms_asn1-priv.h
167233294Sstaspriv_headers += rfc2459_asn1-priv.h
168233294Sstaspriv_headers += pkcs8_asn1-priv.h
169233294Sstaspriv_headers += pkcs9_asn1-priv.h
170233294Sstaspriv_headers += pkcs12_asn1-priv.h
171233294Sstaspriv_headers += digest_asn1-priv.h
172233294Sstaspriv_headers += kx509_asn1-priv.h
173233294Sstaspriv_headers += test_asn1.h test_asn1-priv.h
174233294Sstas
175233294Sstas
176233294Sstas
177233294Sstas$(asn1_compile_OBJECTS): asn1parse.h asn1parse.c $(srcdir)/der-protos.h $(srcdir)/der-private.h
178233294Sstas$(libasn1_la_OBJECTS): $(nodist_include_HEADERS) $(priv_headers) asn1_err.h $(srcdir)/der-protos.h $(srcdir)/der-private.h
179233294Sstas$(libasn1base_la_OBJECTS): asn1_err.h $(srcdir)/der-protos.h $(srcdir)/der-private.h
180178825Sdfr$(check_gen_OBJECTS): test_asn1.h
181233294Sstas$(check_template_OBJECTS): test_asn1_files
182178825Sdfr$(asn1_print_OBJECTS): krb5_asn1.h
18355682Smarkm
184233294Sstasasn1parse.h: asn1parse.c
18555682Smarkm
186233294Sstas$(gen_files_krb5) krb5_asn1.hx krb5_asn1-priv.hx: krb5_asn1_files
187233294Sstas$(gen_files_pkinit) pkinit_asn1.hx pkinit_asn1-priv.hx: pkinit_asn1_files
188233294Sstas$(gen_files_pkcs8) pkcs8_asn1.hx pkcs8_asn1-priv.hx: pkcs8_asn1_files
189233294Sstas$(gen_files_pkcs9) pkcs9_asn1.hx pkcs9_asn1-priv.hx: pkcs9_asn1_files
190233294Sstas$(gen_files_pkcs12) pkcs12_asn1.hx pkcs12_asn1-priv.hx: pkcs12_asn1_files
191233294Sstas$(gen_files_digest) digest_asn1.hx digest_asn1-priv.hx: digest_asn1_files
192233294Sstas$(gen_files_kx509) kx509_asn1.hx kx509_asn1-priv.hx: kx509_asn1_files
193233294Sstas$(gen_files_rfc2459) rfc2459_asn1.hx rfc2459_asn1-priv.hx: rfc2459_asn1_files
194233294Sstas$(gen_files_cms) cms_asn1.hx cms_asn1-priv.hx: cms_asn1_files
195233294Sstas$(gen_files_test) test_asn1.hx test_asn1-priv.hx: test_asn1_files
19655682Smarkm
197178825Sdfrrfc2459_asn1_files: asn1_compile$(EXEEXT) $(srcdir)/rfc2459.asn1
198233294Sstas	$(ASN1_COMPILE) --one-code-file --preserve-binary=TBSCertificate --preserve-binary=TBSCRLCertList --preserve-binary=Name --sequence=GeneralNames --sequence=Extensions --sequence=CRLDistributionPoints $(srcdir)/rfc2459.asn1 rfc2459_asn1 || (rm -f rfc2459_asn1_files ; exit 1)
19955682Smarkm
200233294Sstascms_asn1_files: asn1_compile$(EXEEXT) $(srcdir)/cms.asn1 $(srcdir)/cms.opt
201233294Sstas	$(ASN1_COMPILE) --one-code-file --option-file=$(srcdir)/cms.opt $(srcdir)/cms.asn1 cms_asn1 || (rm -f cms_asn1_files ; exit 1)
202178825Sdfr
203233294Sstaskrb5_asn1_files: asn1_compile$(EXEEXT) $(srcdir)/krb5.asn1 $(srcdir)/krb5.opt
204233294Sstas	$(ASN1_COMPILE) --one-code-file --option-file=$(srcdir)/krb5.opt $(srcdir)/krb5.asn1 krb5_asn1 || (rm -f krb5_asn1_files ; exit 1)
205178825Sdfr
206178825Sdfrpkinit_asn1_files: asn1_compile$(EXEEXT) $(srcdir)/pkinit.asn1
207233294Sstas	$(ASN1_COMPILE) --one-code-file $(srcdir)/pkinit.asn1 pkinit_asn1 || (rm -f pkinit_asn1_files ; exit 1)
208178825Sdfr
209178825Sdfrpkcs8_asn1_files: asn1_compile$(EXEEXT) $(srcdir)/pkcs8.asn1
210233294Sstas	$(ASN1_COMPILE) --one-code-file $(srcdir)/pkcs8.asn1 pkcs8_asn1 || (rm -f pkcs8_asn1_files ; exit 1)
211178825Sdfr
212178825Sdfrpkcs9_asn1_files: asn1_compile$(EXEEXT) $(srcdir)/pkcs9.asn1
213233294Sstas	$(ASN1_COMPILE) --one-code-file $(srcdir)/pkcs9.asn1 pkcs9_asn1 || (rm -f pkcs9_asn1_files ; exit 1)
214178825Sdfr
215178825Sdfrpkcs12_asn1_files: asn1_compile$(EXEEXT) $(srcdir)/pkcs12.asn1
216233294Sstas	$(ASN1_COMPILE) --one-code-file $(srcdir)/pkcs12.asn1 pkcs12_asn1 || (rm -f pkcs12_asn1_files ; exit 1)
217178825Sdfr
218178825Sdfrdigest_asn1_files: asn1_compile$(EXEEXT) $(srcdir)/digest.asn1
219233294Sstas	$(ASN1_COMPILE) --one-code-file $(srcdir)/digest.asn1 digest_asn1 || (rm -f digest_asn1_files ; exit 1)
220178825Sdfr
221178825Sdfrkx509_asn1_files: asn1_compile$(EXEEXT) $(srcdir)/kx509.asn1
222233294Sstas	$(ASN1_COMPILE) --one-code-file $(srcdir)/kx509.asn1 kx509_asn1 || (rm -f kx509_asn1_files ; exit 1)
223178825Sdfr
224178825Sdfrtest_asn1_files: asn1_compile$(EXEEXT) $(srcdir)/test.asn1
225233294Sstas	$(ASN1_COMPILE) --one-code-file --sequence=TESTSeqOf $(srcdir)/test.asn1 test_asn1 || (rm -f test_asn1_files ; exit 1)
226178825Sdfr
227233294Sstas
228178825SdfrEXTRA_DIST =		\
229233294Sstas	NTMakefile	\
230233294Sstas	asn1_compile-version.rc \
231233294Sstas	libasn1-exports.def \
232233294Sstas	cms.asn1	\
233233294Sstas	cms.opt		\
234178825Sdfr	asn1_err.et	\
235178825Sdfr	canthandle.asn1	\
236178825Sdfr	digest.asn1	\
237233294Sstas	krb5.asn1	\
238233294Sstas	krb5.opt	\
239178825Sdfr	kx509.asn1	\
240178825Sdfr	pkcs12.asn1	\
241178825Sdfr	pkcs8.asn1	\
242178825Sdfr	pkcs9.asn1	\
243178825Sdfr	pkinit.asn1	\
244178825Sdfr	rfc2459.asn1	\
245233294Sstas	setchgpw2.asn1	\
246233294Sstas	test.asn1	\
247233294Sstas	test.gen	\
248233294Sstas	version-script.map
249178825Sdfr
250178825Sdfr$(srcdir)/der-protos.h:
251233294Sstas	cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -o der-protos.h $(dist_libasn1base_la_SOURCES) || rm -f der-protos.h
252233294Sstas
253233294Sstas$(srcdir)/der-private.h:
254233294Sstas	cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p der-private.h $(dist_libasn1base_la_SOURCES) || rm -f der-private.h
255