1# Copyright (C) 2004-2014 Internet Systems Consortium, Inc. ("ISC") 2# Copyright (C) 1998-2003 Internet Software Consortium. 3# 4# Permission to use, copy, modify, and/or distribute this software for any 5# purpose with or without fee is hereby granted, provided that the above 6# copyright notice and this permission notice appear in all copies. 7# 8# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH 9# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 10# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, 11# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 12# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 13# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 14# PERFORMANCE OF THIS SOFTWARE. 15 16# Id: Makefile.in,v 1.145 2011/02/03 05:41:53 marka Exp 17 18srcdir = @srcdir@ 19VPATH = @srcdir@ 20top_srcdir = @top_srcdir@ 21 22@BIND9_MAKE_INCLUDES@ 23 24CINCLUDES = ${DNS_INCLUDES} ${ISC_INCLUDES} ${ISCCFG_INCLUDES} \ 25 ${LWRES_INCLUDES} ${OMAPI_INCLUDES} 26 27CDEFINES = 28CWARNINGS = 29BACKTRACECFLAGS = @BACKTRACECFLAGS@ 30 31DNSLIBS = ../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@ 32ISCLIBS = ../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@ 33ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @ISC_OPENSSL_LIBS@ 34ISCCFGLIBS = ../../lib/isccfg/libisccfg.@A@ 35LWRESLIBS = ../../lib/lwres/liblwres.@A@ 36 37DNSDEPLIBS = ../../lib/dns/libdns.@A@ 38ISCDEPLIBS = ../../lib/isc/libisc.@A@ 39ISCDEPNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ 40ISCCFGDEPLIBS = ../../lib/isccfg/libisccfg.@A@ 41LWRESDEPLIBS = ../../lib/lwres/liblwres.@A@ 42 43LIBS = @LIBS@ 44 45SUBDIRS = atomic db dst master mem hashes names net rbt resolver \ 46 sockaddr tasks timers system @PKCS11_TOOLS@ 47 48# Test programs that are built by default: 49# cfg_test is needed for regenerating doc/misc/options 50# makejournal is needed by system tests 51 52# Alphabetically 53TARGETS = cfg_test@EXEEXT@ makejournal@EXEEXT@ 54 55# All the other tests are optional and not built by default. 56 57# Alphabetically 58XTARGETS = adb_test@EXEEXT@ \ 59 byaddr_test@EXEEXT@ \ 60 backtrace_test@EXEEXT@ \ 61 backtrace_test_nosymtbl@EXEEXT@ \ 62 byname_test@EXEEXT@ \ 63 compress_test@EXEEXT@ \ 64 db_test@EXEEXT@ \ 65 entropy_test@EXEEXT@ \ 66 entropy2_test@EXEEXT@ \ 67 gxba_test@EXEEXT@ \ 68 gxbn_test@EXEEXT@ \ 69 hash_test@EXEEXT@ \ 70 fsaccess_test@EXEEXT@ \ 71 inter_test@EXEEXT@ \ 72 keyboard_test@EXEEXT@ \ 73 lex_test@EXEEXT@ \ 74 lfsr_test@EXEEXT@ \ 75 log_test@EXEEXT@ \ 76 lwres_test@EXEEXT@ \ 77 lwresconf_test@EXEEXT@ \ 78 master_test@EXEEXT@ \ 79 mempool_test@EXEEXT@ \ 80 name_test@EXEEXT@ \ 81 nsecify@EXEEXT@ \ 82 ratelimiter_test@EXEEXT@ \ 83 rbt_test@EXEEXT@ \ 84 rdata_test@EXEEXT@ \ 85 rwlock_test@EXEEXT@ \ 86 serial_test@EXEEXT@ \ 87 shutdown_test@EXEEXT@ \ 88 sig0_test@EXEEXT@ \ 89 sock_test@EXEEXT@ \ 90 sym_test@EXEEXT@ \ 91 task_test@EXEEXT@ \ 92 timer_test@EXEEXT@ \ 93 wire_test@EXEEXT@ \ 94 zone_test@EXEEXT@ 95 96# Alphabetically 97SRCS = cfg_test.c makejournal.c ${XSRCS} 98 99XSRCS = adb_test.c \ 100 byaddr_test.c \ 101 backtrace_test.c \ 102 byname_test.c \ 103 compress_test.c \ 104 db_test.c \ 105 entropy_test.c \ 106 entropy2_test.c \ 107 gxba_test.c \ 108 gxbn_test.c \ 109 hash_test.c \ 110 fsaccess_test.c \ 111 inter_test.c \ 112 keyboard_test.c \ 113 lex_test.c \ 114 lfsr_test.c \ 115 log_test.c \ 116 lwres_test.c \ 117 lwresconf_test.c \ 118 master_test.c \ 119 mempool_test.c \ 120 name_test.c \ 121 nsecify.c \ 122 printmsg.c \ 123 ratelimiter_test.c \ 124 rbt_test.c \ 125 rdata_test.c \ 126 rwlock_test.c \ 127 serial_test.c \ 128 shutdown_test.c \ 129 sig0_test.c \ 130 sock_test.c \ 131 sym_test.c \ 132 task_test.c \ 133 timer_test.c \ 134 wire_test.c \ 135 zone_test.c 136 137@BIND9_MAKE_RULES@ 138 139# disable optimization for backtrace test to get the expected result 140BTTEST_CFLAGS = ${BACKTRACECFLAGS} ${EXT_CFLAGS} ${ALL_CPPFLAGS} -g \ 141 ${ALWAYS_WARNINGS} ${STD_CWARNINGS} ${CWARNINGS} 142 143all_tests: ${XTARGETS} 144 145adb_test@EXEEXT@: adb_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 146 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ adb_test.@O@ \ 147 ${DNSLIBS} ${ISCLIBS} ${LIBS} 148 149backtrace_test_nosymtbl@EXEEXT@: backtrace_test.c ${ISCDEPLIBS} 150 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${BTTEST_CFLAGS} ${LDFLAGS} -o $@ \ 151 backtrace_test.c ${ISCLIBS} ${LIBS} 152 153backtrace_test@EXEEXT@: backtrace_test_nosymtbl@EXEEXT@ 154 #first step: create a first symbol table 155 rm -f symtbl.c 156 if test X${MKSYMTBL_PROGRAM} != X; then \ 157 ${MKSYMTBL_PROGRAM} ${top_srcdir}/util/mksymtbl.pl \ 158 backtrace_test_nosymtbl@EXEEXT@; else \ 159 cp ${top_srcdir}/lib/isc/backtrace-emptytbl.c symtbl.c; fi 160 #second step: build a binary with the first symbol table 161 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${BTTEST_CFLAGS} ${LDFLAGS} \ 162 -o $@0 backtrace_test.c symtbl.c \ 163 ${ISCNOSYMLIBS} ${LIBS} 164 rm -f symtbl.c 165 #third step: create a second symbol table 166 if test X${MKSYMTBL_PROGRAM} != X; then \ 167 ${MKSYMTBL_PROGRAM} ${top_srcdir}/util/mksymtbl.pl $@0; else \ 168 cp ${top_srcdir}/lib/isc/backtrace-emptytbl.c symtbl.c; fi 169 #fourth step: build the final binary 170 rm -f $@0 171 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${BTTEST_CFLAGS} ${LDFLAGS} \ 172 -o $@ backtrace_test.c symtbl.c ${ISCNOSYMLIBS} ${LIBS} 173 rm -f symtbl.c 174 175nsecify@EXEEXT@: nsecify.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 176 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ nsecify.@O@ \ 177 ${DNSLIBS} ${ISCLIBS} ${LIBS} 178 179byaddr_test@EXEEXT@: byaddr_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 180 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ byaddr_test.@O@ \ 181 ${DNSLIBS} ${ISCLIBS} ${LIBS} 182 183byname_test@EXEEXT@: byname_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 184 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ byname_test.@O@ \ 185 ${DNSLIBS} ${ISCLIBS} ${LIBS} 186 187lex_test@EXEEXT@: lex_test.@O@ ${ISCDEPLIBS} 188 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ lex_test.@O@ \ 189 ${ISCLIBS} ${LIBS} 190 191lfsr_test@EXEEXT@: lfsr_test.@O@ ${ISCDEPLIBS} 192 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ lfsr_test.@O@ \ 193 ${ISCLIBS} ${LIBS} 194 195log_test@EXEEXT@: log_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 196 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ log_test.@O@ \ 197 ${DNSLIBS} ${ISCLIBS} ${LIBS} 198 199name_test@EXEEXT@: name_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 200 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ name_test.@O@ \ 201 ${DNSLIBS} ${ISCLIBS} ${LIBS} 202 203hash_test@EXEEXT@: hash_test.@O@ ${ISCDEPLIBS} 204 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ hash_test.@O@ \ 205 ${ISCLIBS} ${LIBS} 206 207entropy_test@EXEEXT@: entropy_test.@O@ ${ISCDEPLIBS} 208 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ entropy_test.@O@ \ 209 ${ISCLIBS} ${LIBS} 210 211entropy2_test@EXEEXT@: entropy2_test.@O@ ${ISCDEPLIBS} 212 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ entropy2_test.@O@ \ 213 ${ISCLIBS} ${LIBS} 214 215sock_test@EXEEXT@: sock_test.@O@ ${ISCDEPLIBS} 216 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ sock_test.@O@ \ 217 ${ISCLIBS} ${LIBS} 218 219sym_test@EXEEXT@: sym_test.@O@ ${ISCDEPLIBS} 220 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ sym_test.@O@ \ 221 ${ISCLIBS} ${LIBS} 222 223task_test@EXEEXT@: task_test.@O@ ${ISCDEPLIBS} 224 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ task_test.@O@ \ 225 ${ISCLIBS} ${LIBS} 226 227shutdown_test@EXEEXT@: shutdown_test.@O@ ${ISCDEPLIBS} 228 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ shutdown_test.@O@ \ 229 ${ISCLIBS} ${LIBS} 230 231timer_test@EXEEXT@: timer_test.@O@ ${ISCDEPLIBS} 232 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ timer_test.@O@ \ 233 ${ISCLIBS} ${LIBS} 234 235ratelimiter_test@EXEEXT@: ratelimiter_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 236 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ ratelimiter_test.@O@ \ 237 ${DNSLIBS} ${ISCLIBS} ${LIBS} 238 239rbt_test@EXEEXT@: rbt_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 240 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ rbt_test.@O@ \ 241 ${DNSLIBS} ${ISCLIBS} ${LIBS} 242 243rdata_test@EXEEXT@: rdata_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 244 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ rdata_test.@O@ \ 245 ${DNSLIBS} ${ISCLIBS} ${LIBS} 246 247rwlock_test@EXEEXT@: rwlock_test.@O@ ${ISCDEPLIBS} 248 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ rwlock_test.@O@ \ 249 ${ISCLIBS} ${LIBS} 250 251wire_test@EXEEXT@: wire_test.@O@ printmsg.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 252 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ wire_test.@O@ printmsg.@O@ \ 253 ${DNSLIBS} ${ISCLIBS} ${LIBS} 254 255master_test@EXEEXT@: master_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 256 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ master_test.@O@ \ 257 ${DNSLIBS} ${ISCLIBS} ${LIBS} 258 259db_test@EXEEXT@: db_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 260 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ db_test.@O@ \ 261 ${DNSLIBS} ${ISCLIBS} ${LIBS} 262 263compress_test@EXEEXT@: compress_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 264 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ compress_test.@O@ \ 265 ${DNSLIBS} ${ISCLIBS} ${LIBS} 266 267mempool_test@EXEEXT@: mempool_test.@O@ ${ISCDEPLIBS} 268 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ mempool_test.@O@ \ 269 ${ISCLIBS} ${LIBS} 270 271serial_test@EXEEXT@: serial_test.@O@ ${ISCDEPLIBS} 272 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ serial_test.@O@ \ 273 ${ISCLIBS} ${LIBS} 274 275zone_test@EXEEXT@: zone_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 276 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ zone_test.@O@ \ 277 ${DNSLIBS} ${ISCLIBS} ${LIBS} 278 279fsaccess_test@EXEEXT@: fsaccess_test.@O@ ${ISCDEPLIBS} 280 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ fsaccess_test.@O@ \ 281 ${ISCLIBS} ${LIBS} 282 283inter_test@EXEEXT@: inter_test.@O@ ${ISCDEPLIBS} 284 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ inter_test.@O@ \ 285 ${ISCLIBS} ${LIBS} 286 287keyboard_test@EXEEXT@: keyboard_test.@O@ ${ISCDEPLIBS} 288 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ keyboard_test.@O@ \ 289 ${ISCLIBS} ${LIBS} 290 291lwresconf_test@EXEEXT@: lwresconf_test.@O@ ${ISCDEPLIBS} ${LWRESDEPLIBS} 292 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ lwresconf_test.@O@ \ 293 ${LWRESLIBS} ${ISCLIBS} ${LIBS} 294 295lwres_test@EXEEXT@: lwres_test.@O@ ${ISCDEPLIBS} ${LWRESDEPLIBS} 296 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ lwres_test.@O@ \ 297 ${LWRESLIBS} ${ISCLIBS} ${LIBS} 298 299gxbn_test@EXEEXT@: gxbn_test.@O@ ${LWRESDEPLIBS} 300 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ gxbn_test.@O@ \ 301 ${LWRESLIBS} ${ISCLIBS} ${LIBS} 302 303gxba_test@EXEEXT@: gxba_test.@O@ ${LWRESDEPLIBS} 304 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ gxba_test.@O@ \ 305 ${LWRESLIBS} ${ISCLIBS} ${LIBS} 306 307sig0_test@EXEEXT@: sig0_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 308 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ sig0_test.@O@ \ 309 ${DNSLIBS} ${ISCLIBS} ${LIBS} 310 311cfg_test@EXEEXT@: cfg_test.@O@ ${ISCCFGDEPLIBS} ${ISCDEPLIBS} 312 ${LIBTOOL_MODE_LINK} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ cfg_test.@O@ \ 313 ${ISCCFGLIBS} ${DNSLIBS} ${ISCLIBS} ${LIBS} 314 315makejournal@EXEEXT@: makejournal.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} 316 ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ makejournal.@O@ \ 317 ${DNSLIBS} ${ISCLIBS} ${LIBS} 318 319distclean:: 320 rm -f headerdep_test.sh 321 322clean distclean:: 323 rm -f ${TARGETS} ${XTARGETS} 324 rm -f t_journal 325 rm -f backtrace_test_symtbl.c 326 327check: test 328 329test: 330 @for dir in $(SUBDIRS) ;\ 331 do \ 332 ( cd $$dir; $(MAKE) test ) ;\ 333 done 334