1AUTOMAKE_OPTIONS = subdir-objects
2
3SUBDIRS = . tests
4
5AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib
6AM_CPPFLAGS += $(BOOST_INCLUDES)
7AM_CXXFLAGS = $(KEA_CXXFLAGS)
8
9CLEANFILES = *.gcno *.gcda
10CLEANFILES += s-rdatacode
11# These two are created with rrtype/class.h, so not explicitly listed in
12# BUILT_SOURCES.
13CLEANFILES += python/rrtype_constants_inc.cc
14CLEANFILES += python/rrclass_constants_inc.cc
15
16DISTCLEANFILES = gen-rdatacode.py
17
18EXTRA_DIST = rrclass-placeholder.h
19EXTRA_DIST += rrparamregistry-placeholder.cc
20EXTRA_DIST += rrtype-placeholder.h
21
22# TODO: double-check that this is the only way
23# NOTE: when an rdata file is added, please also add to this list:
24EXTRA_DIST += rdata/any_255/tsig_250.cc
25EXTRA_DIST += rdata/any_255/tsig_250.h
26EXTRA_DIST += rdata/ch_3/a_1.cc
27EXTRA_DIST += rdata/ch_3/a_1.h
28EXTRA_DIST += rdata/generic/cname_5.cc
29EXTRA_DIST += rdata/generic/cname_5.h
30EXTRA_DIST += rdata/generic/detail/char_string.cc
31EXTRA_DIST += rdata/generic/detail/char_string.h
32EXTRA_DIST += rdata/generic/detail/lexer_util.h
33EXTRA_DIST += rdata/generic/detail/nsec_bitmap.cc
34EXTRA_DIST += rdata/generic/detail/nsec_bitmap.h
35EXTRA_DIST += rdata/generic/detail/nsec3param_common.cc
36EXTRA_DIST += rdata/generic/detail/nsec3param_common.h
37EXTRA_DIST += rdata/generic/detail/txt_like.h
38EXTRA_DIST += rdata/generic/detail/ds_like.h
39EXTRA_DIST += rdata/generic/dlv_32769.cc
40EXTRA_DIST += rdata/generic/dlv_32769.h
41EXTRA_DIST += rdata/generic/dname_39.cc
42EXTRA_DIST += rdata/generic/dname_39.h
43EXTRA_DIST += rdata/generic/dnskey_48.cc
44EXTRA_DIST += rdata/generic/dnskey_48.h
45EXTRA_DIST += rdata/generic/ds_43.cc
46EXTRA_DIST += rdata/generic/ds_43.h
47EXTRA_DIST += rdata/generic/hinfo_13.cc
48EXTRA_DIST += rdata/generic/hinfo_13.h
49EXTRA_DIST += rdata/generic/mx_15.cc
50EXTRA_DIST += rdata/generic/mx_15.h
51EXTRA_DIST += rdata/generic/naptr_35.cc
52EXTRA_DIST += rdata/generic/naptr_35.h
53EXTRA_DIST += rdata/generic/ns_2.cc
54EXTRA_DIST += rdata/generic/ns_2.h
55EXTRA_DIST += rdata/generic/nsec3_50.cc
56EXTRA_DIST += rdata/generic/nsec3_50.h
57EXTRA_DIST += rdata/generic/nsec3param_51.cc
58EXTRA_DIST += rdata/generic/nsec3param_51.h
59EXTRA_DIST += rdata/generic/nsec_47.cc
60EXTRA_DIST += rdata/generic/nsec_47.h
61EXTRA_DIST += rdata/generic/opt_41.cc
62EXTRA_DIST += rdata/generic/opt_41.h
63EXTRA_DIST += rdata/generic/ptr_12.cc
64EXTRA_DIST += rdata/generic/ptr_12.h
65EXTRA_DIST += rdata/generic/rp_17.cc
66EXTRA_DIST += rdata/generic/rp_17.h
67EXTRA_DIST += rdata/generic/rrsig_46.cc
68EXTRA_DIST += rdata/generic/rrsig_46.h
69EXTRA_DIST += rdata/generic/soa_6.cc
70EXTRA_DIST += rdata/generic/soa_6.h
71EXTRA_DIST += rdata/generic/spf_99.cc
72EXTRA_DIST += rdata/generic/spf_99.h
73EXTRA_DIST += rdata/generic/sshfp_44.cc
74EXTRA_DIST += rdata/generic/sshfp_44.h
75EXTRA_DIST += rdata/generic/tlsa_52.cc
76EXTRA_DIST += rdata/generic/tlsa_52.h
77EXTRA_DIST += rdata/generic/tkey_249.cc
78EXTRA_DIST += rdata/generic/tkey_249.h
79EXTRA_DIST += rdata/generic/txt_16.cc
80EXTRA_DIST += rdata/generic/txt_16.h
81EXTRA_DIST += rdata/generic/minfo_14.cc
82EXTRA_DIST += rdata/generic/minfo_14.h
83EXTRA_DIST += rdata/generic/afsdb_18.cc
84EXTRA_DIST += rdata/generic/afsdb_18.h
85EXTRA_DIST += rdata/generic/caa_257.cc
86EXTRA_DIST += rdata/generic/caa_257.h
87EXTRA_DIST += rdata/hs_4/a_1.cc
88EXTRA_DIST += rdata/hs_4/a_1.h
89EXTRA_DIST += rdata/in_1/a_1.cc
90EXTRA_DIST += rdata/in_1/a_1.h
91EXTRA_DIST += rdata/in_1/aaaa_28.cc
92EXTRA_DIST += rdata/in_1/aaaa_28.h
93EXTRA_DIST += rdata/in_1/dhcid_49.cc
94EXTRA_DIST += rdata/in_1/dhcid_49.h
95EXTRA_DIST += rdata/in_1/srv_33.cc
96EXTRA_DIST += rdata/in_1/srv_33.h
97EXTRA_DIST += rdata/template.cc
98EXTRA_DIST += rdata/template.h
99
100noinst_SCRIPTS = gen-rdatacode.py
101
102# auto-generate by gen-rdatacode.py:
103BUILT_SOURCES = rrclass.h rrtype.h rrparamregistry.cc
104BUILT_SOURCES += rdataclass.h rdataclass.cc
105
106lib_LTLIBRARIES = libkea-dns++.la
107
108libkea_dns___la_LDFLAGS = -no-undefined -version-info 19:0:0
109libkea_dns___la_LDFLAGS += $(AM_LDFLAGS) $(CRYPTO_LDFLAGS)
110
111libkea_dns___la_SOURCES =
112libkea_dns___la_SOURCES += dns_fwd.h
113libkea_dns___la_SOURCES += edns.h edns.cc
114libkea_dns___la_SOURCES += exceptions.h exceptions.cc
115libkea_dns___la_SOURCES += master_lexer_inputsource.h master_lexer_inputsource.cc
116libkea_dns___la_SOURCES += labelsequence.h labelsequence.cc
117libkea_dns___la_SOURCES += masterload.h masterload.cc
118libkea_dns___la_SOURCES += master_lexer.h master_lexer.cc
119libkea_dns___la_SOURCES += master_lexer_state.h
120libkea_dns___la_SOURCES += master_loader.h master_loader.cc
121libkea_dns___la_SOURCES += message.h message.cc
122libkea_dns___la_SOURCES += messagerenderer.h messagerenderer.cc
123libkea_dns___la_SOURCES += name.h name.cc
124libkea_dns___la_SOURCES += name_internal.h
125libkea_dns___la_SOURCES += nsec3hash.h nsec3hash.cc
126libkea_dns___la_SOURCES += opcode.h opcode.cc
127libkea_dns___la_SOURCES += rcode.h rcode.cc
128libkea_dns___la_SOURCES += rdata.h rdata.cc
129libkea_dns___la_SOURCES += rdatafields.h rdatafields.cc
130libkea_dns___la_SOURCES += rrclass.cc
131libkea_dns___la_SOURCES += rrparamregistry.h
132libkea_dns___la_SOURCES += rrset.h rrset.cc
133libkea_dns___la_SOURCES += rrttl.h rrttl.cc
134libkea_dns___la_SOURCES += rrtype.cc
135libkea_dns___la_SOURCES += rrcollator.h rrcollator.cc
136libkea_dns___la_SOURCES += qid_gen.h qid_gen.cc
137libkea_dns___la_SOURCES += question.h question.cc
138libkea_dns___la_SOURCES += serial.h serial.cc
139libkea_dns___la_SOURCES += tsig.h tsig.cc
140libkea_dns___la_SOURCES += tsigerror.h tsigerror.cc
141libkea_dns___la_SOURCES += tsigkey.h tsigkey.cc
142libkea_dns___la_SOURCES += tsigrecord.h tsigrecord.cc
143libkea_dns___la_SOURCES += master_loader_callbacks.h master_loader_callbacks.cc
144libkea_dns___la_SOURCES += master_loader.h
145libkea_dns___la_SOURCES += rrset_collection_base.h
146libkea_dns___la_SOURCES += rrset_collection.h rrset_collection.cc
147libkea_dns___la_SOURCES += zone_checker.h zone_checker.cc
148libkea_dns___la_SOURCES += rdata_pimpl_holder.h
149libkea_dns___la_SOURCES += rdata/generic/detail/char_string.h
150libkea_dns___la_SOURCES += rdata/generic/detail/char_string.cc
151libkea_dns___la_SOURCES += rdata/generic/detail/nsec_bitmap.h
152libkea_dns___la_SOURCES += rdata/generic/detail/nsec_bitmap.cc
153libkea_dns___la_SOURCES += rdata/generic/detail/nsec3param_common.cc
154libkea_dns___la_SOURCES += rdata/generic/detail/nsec3param_common.h
155libkea_dns___la_SOURCES += rdata/generic/detail/txt_like.h
156libkea_dns___la_SOURCES += rdata/generic/detail/ds_like.h
157
158libkea_dns___la_CPPFLAGS = $(AM_CPPFLAGS)
159libkea_dns___la_LIBADD = $(top_builddir)/src/lib/cryptolink/libkea-cryptolink.la
160libkea_dns___la_LIBADD += $(top_builddir)/src/lib/util/libkea-util.la
161libkea_dns___la_LIBADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
162libkea_dns___la_LIBADD += $(CRYPTO_LIBS)
163
164# The following files used to be generated, but they are now part of the git tree:
165# rrclass.h rrtype.h rrparamregistry.cc rdataclass.h rdataclass.cc
166libkea_dns___la_SOURCES += rdataclass.h rrclass.h rrtype.h
167libkea_dns___la_SOURCES += rdataclass.cc rrparamregistry.cc
168
169rrclass.h: rrclass-placeholder.h
170rrtype.h: rrtype-placeholder.h
171rrparamregistry.cc: rrparamregistry-placeholder.cc
172
173s-rdatacode: Makefile $(EXTRA_DIST)
174	$(PYTHON) ./gen-rdatacode.py
175	touch $@
176
177# In ticket #3413 we removed the whole BIND10/Bundy framework. We also want
178# to not require Python3, hence instead of generating the code every time,
179# we added the generated files to our repo. It is still possible to regenerate
180# those files, but that step is no longer required for successful compilation.
181
182#rrclass.h rrtype.h rrparamregistry.cc rdataclass.h rdataclass.cc: s-rdatacode
183
184libdns___includedir = $(pkgincludedir)/dns
185libdns___include_HEADERS = \
186	dns_fwd.h \
187	edns.h \
188	exceptions.h \
189	labelsequence.h \
190	master_lexer.h \
191	master_lexer_inputsource.h \
192	master_lexer_state.h \
193	master_loader.h \
194	master_loader_callbacks.h \
195	masterload.h \
196	message.h \
197	messagerenderer.h \
198	name.h \
199	nsec3hash.h \
200	opcode.h \
201	qid_gen.h \
202	question.h \
203	rcode.h \
204	rdata.h \
205	rdata_pimpl_holder.h \
206	rdataclass.h \
207	rdatafields.h \
208	rrclass.h \
209	rrcollator.h \
210	rrparamregistry.h \
211	rrset.h \
212	rrset_collection.h \
213	rrset_collection_base.h \
214	rrttl.h \
215	rrtype.h \
216	serial.h \
217	tsig.h \
218	tsigerror.h \
219	tsigkey.h \
220	tsigrecord.h \
221	zone_checker.h
222# Purposely not installing these headers:
223# name_internal.h: used only internally, and not actually DNS specific
224# rdata/*/detail/*.h: these are internal use only
225# rrclass-placeholder.h
226# rrtype-placeholder.h
227