1# Copyright (C) 2011-2014  Internet Systems Consortium, Inc. ("ISC")
2#
3# Permission to use, copy, modify, and/or distribute this software for any
4# purpose with or without fee is hereby granted, provided that the above
5# copyright notice and this permission notice appear in all copies.
6#
7# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
8# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
9# AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
10# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
11# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
12# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
13# PERFORMANCE OF THIS SOFTWARE.
14
15# Id
16
17srcdir =	@srcdir@
18VPATH =		@srcdir@
19top_srcdir =	@top_srcdir@
20
21# Attempt to disable parallel processing.
22.NOTPARALLEL:
23.NO_PARALLEL:
24
25@BIND9_VERSION@
26
27@BIND9_MAKE_INCLUDES@
28
29CINCLUDES =	-I. -Iinclude ${DNS_INCLUDES} ${ISC_INCLUDES} \
30		@DST_OPENSSL_INC@
31CDEFINES =	@CRYPTO@ -DTESTS="\"${top_builddir}/lib/dns/tests/\""
32
33ISCLIBS =	../../isc/libisc.@A@
34ISCDEPLIBS =	../../isc/libisc.@A@
35DNSLIBS =	../libdns.@A@ @DNS_CRYPTO_LIBS@
36DNSDEPLIBS =	../libdns.@A@
37
38LIBS =		@LIBS@ @ATFLIBS@
39
40OBJS =		dnstest.@O@
41SRCS =		db_test.c \
42		dbdiff_test.c \
43		dbiterator_test.c \
44		dh_test.c \
45		dispatch_test.c \
46		dnstest.c \
47		geoip_test.c \
48		gost_test.c \
49		master_test.c \
50		name_test.c \
51		nsec3_test.c \
52		peer_test.c \
53		private_test.c \
54		rbt_test.c \
55		rbt_serialize_test.c \
56		rdata_test.c \
57		rdataset_test.c \
58		rdatasetstats_test.c \
59		time_test.c \
60		update_test.c \
61		zonemgr_test.c \
62		zt_test.c
63
64SUBDIRS =
65TARGETS =	db_test@EXEEXT@ \
66		dbdiff_test@EXEEXT@ \
67		dbiterator_test@EXEEXT@ \
68		dbversion_test@EXEEXT@ \
69		dh_test@EXEEXT@ \
70		dispatch_test@EXEEXT@ \
71		geoip_test@EXEEXT@ \
72		gost_test@EXEEXT@ \
73		master_test@EXEEXT@ \
74		name_test@EXEEXT@ \
75		nsec3_test@EXEEXT@ \
76		peer_test@EXEEXT@ \
77		private_test@EXEEXT@ \
78		rbt_test@EXEEXT@ \
79		rbt_serialize_test@EXEEXT@ \
80		rdata_test@EXEEXT@ \
81		rdataset_test@EXEEXT@ \
82		rdatasetstats_test@EXEEXT@ \
83		time_test@EXEEXT@ \
84		update_test@EXEEXT@ \
85		zonemgr_test@EXEEXT@ \
86		zt_test@EXEEXT@
87
88@BIND9_MAKE_RULES@
89
90master_test@EXEEXT@: master_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
91	test -d testdata || mkdir testdata
92	test -d testdata/master || mkdir testdata/master
93	${PERL} ${srcdir}/mkraw.pl < ${srcdir}/testdata/master/master12.data.in \
94		> testdata/master/master12.data
95	${PERL} ${srcdir}/mkraw.pl < ${srcdir}/testdata/master/master13.data.in \
96		> testdata/master/master13.data
97	${PERL} ${srcdir}/mkraw.pl < ${srcdir}/testdata/master/master14.data.in \
98		> testdata/master/master14.data
99	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
100			master_test.@O@ dnstest.@O@ ${DNSLIBS} \
101				${ISCLIBS} ${LIBS}
102
103time_test@EXEEXT@: time_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
104	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
105			time_test.@O@ dnstest.@O@ ${DNSLIBS} \
106				${ISCLIBS} ${LIBS}
107
108peer_test@EXEEXT@: peer_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
109	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
110			peer_test.@O@ dnstest.@O@ ${DNSLIBS} \
111				${ISCLIBS} ${LIBS}
112
113private_test@EXEEXT@: private_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
114	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
115			private_test.@O@ dnstest.@O@ ${DNSLIBS} \
116				${ISCLIBS} ${LIBS}
117
118update_test@EXEEXT@: update_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
119	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
120			update_test.@O@ dnstest.@O@ ${DNSLIBS} \
121				${ISCLIBS} ${LIBS}
122
123zonemgr_test@EXEEXT@: zonemgr_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
124	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
125			zonemgr_test.@O@ dnstest.@O@ ${DNSLIBS} \
126				${ISCLIBS} ${LIBS}
127
128dbiterator_test@EXEEXT@: dbiterator_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
129	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
130			dbiterator_test.@O@ dnstest.@O@ ${DNSLIBS} \
131				${ISCLIBS} ${LIBS}
132
133dbdiff_test@EXEEXT@: dbdiff_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
134	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
135			dbdiff_test.@O@ dnstest.@O@ ${DNSLIBS} \
136				${ISCLIBS} ${LIBS}
137
138dbversion_test@EXEEXT@: dbversion_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
139	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
140			dbversion_test.@O@ dnstest.@O@ ${DNSLIBS} \
141				${ISCLIBS} ${LIBS}
142
143zt_test@EXEEXT@: zt_test.@O@ dnstest.@O@ \
144		${ISCDEPLIBS} ${DNSDEPLIBS}
145	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
146			zt_test.@O@ dnstest.@O@ ${DNSLIBS} \
147				${ISCLIBS} ${LIBS}
148
149name_test@EXEEXT@: name_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
150	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
151			name_test.@O@ dnstest.@O@ ${DNSLIBS} \
152				${ISCLIBS} ${LIBS}
153
154nsec3_test@EXEEXT@: nsec3_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
155	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
156			nsec3_test.@O@ dnstest.@O@ ${DNSLIBS} \
157				${ISCLIBS} ${LIBS}
158
159rdataset_test@EXEEXT@: rdataset_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
160	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
161			rdataset_test.@O@ dnstest.@O@ ${DNSLIBS} \
162				${ISCLIBS} ${LIBS}
163
164dispatch_test@EXEEXT@: dispatch_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
165	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
166			dispatch_test.@O@ dnstest.@O@ ${DNSLIBS} \
167				${ISCLIBS} ${LIBS}
168
169rdatasetstats_test@EXEEXT@: rdatasetstats_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
170	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
171			rdatasetstats_test.@O@ dnstest.@O@ ${DNSLIBS} \
172				${ISCLIBS} ${LIBS}
173
174rbt_test@EXEEXT@: rbt_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
175	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
176			rbt_test.@O@ dnstest.@O@ ${DNSLIBS} \
177				${ISCLIBS} ${LIBS}
178
179rbt_serialize_test@EXEEXT@: rbt_serialize_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
180	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
181			rbt_serialize_test.@O@ dnstest.@O@ ${DNSLIBS} \
182				${ISCLIBS} ${LIBS}
183
184rdata_test@EXEEXT@: rdata_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
185	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
186			rdata_test.@O@ ${DNSLIBS} \
187			${ISCLIBS} ${LIBS}
188
189geoip_test@EXEEXT@: geoip_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
190	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
191			geoip_test.@O@ dnstest.@O@ ${DNSLIBS} \
192			${ISCLIBS} ${LIBS}
193
194db_test@EXEEXT@: db_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
195	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
196			db_test.@O@ ${DNSLIBS} \
197			${ISCLIBS} ${LIBS}
198
199gost_test@EXEEXT@: gost_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
200	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
201			gost_test.@O@ dnstest.@O@ ${DNSLIBS} \
202			${ISCLIBS} ${LIBS}
203
204dh_test@EXEEXT@: dh_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS}
205	${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
206			dh_test.@O@ dnstest.@O@ ${DNSLIBS} \
207			${ISCLIBS} ${LIBS}
208
209unit::
210	sh ${top_srcdir}/unit/unittest.sh
211
212clean distclean::
213	rm -f ${TARGETS}
214	rm -f atf.out
215	rm -f testdata/master/master12.data testdata/master/master13.data \
216		testdata/master/master14.data
217	rm -f zone.bin
218