summaryrefslogtreecommitdiffstats
path: root/bin/tests/system/Makefile.in
diff options
context:
space:
mode:
Diffstat (limited to 'bin/tests/system/Makefile.in')
-rw-r--r--bin/tests/system/Makefile.in140
1 files changed, 140 insertions, 0 deletions
diff --git a/bin/tests/system/Makefile.in b/bin/tests/system/Makefile.in
new file mode 100644
index 0000000..c18b4c5
--- /dev/null
+++ b/bin/tests/system/Makefile.in
@@ -0,0 +1,140 @@
+# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# See the COPYRIGHT file distributed with this work for additional
+# information regarding copyright ownership.
+
+srcdir = @srcdir@
+VPATH = @srcdir@
+top_srcdir = @top_srcdir@
+
+VERSION=@BIND9_VERSION@
+
+@BIND9_MAKE_INCLUDES@
+
+SUBDIRS = dlzexternal dyndb lwresd pipelined rndc rsabigexponent tkey
+
+CINCLUDES = ${ISC_INCLUDES} ${DNS_INCLUDES}
+
+CDEFINES = @USE_GSSAPI@
+CWARNINGS =
+
+DNSLIBS =
+ISCLIBS = ../../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@
+
+DNSDEPLIBS =
+ISCDEPLIBS =
+
+DEPLIBS =
+
+LIBS = @LIBS@
+
+OBJS = feature-test.@O@
+SRCS = feature-test.c
+
+TARGETS = feature-test@EXEEXT@
+
+@BIND9_MAKE_RULES@
+
+subdirs: ${TARGETS}
+
+feature-test@EXEEXT@: feature-test.@O@
+ ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ feature-test.@O@ ${ISCLIBS} ${LIBS}
+
+# Running the scripts below is bypassed when a separate build directory is
+# used.
+
+# Define the tests that can be run in parallel. This should be identical to
+# the definition of PARALLELDIRS in conf.sh. Note: longer-running tests
+# such as serve-stale and rpzrecurse are scheduled first to get more
+# benefit from parallelism.
+PARALLEL = rpzrecurse dnssec \
+ acl additional addzone allow-query autosign \
+ builtin cacheclean case catz chain \
+ checkconf checknames checkzone \
+ @CHECKDS@ @COVERAGE@ @KEYMGR@ \
+ cookie database digdelv dlv dlz dlzexternal \
+ dns64 @DNSTAP@ dscp dsdigest dyndb \
+ ednscompliance emptyzones \
+ fetchlimit filter-aaaa formerr forward \
+ geoip glue idna inline integrity ixfr \
+ legacy limits logfileconfig \
+ masterfile masterformat metadata mkeys \
+ names notify nslookup nsupdate nzd2nzf \
+ pending pipelined \
+ reclimit redirect resolver rndc rootkeysentinel rpz \
+ rrchecker rrl rrsetorder rsabigexponent runtime \
+ sfcache smartsign sortlist \
+ spf staticstub statistics statschannel stub \
+ tcp tsig tsiggss \
+ unknown upforwd verify views wildcard \
+ xfer xferquota zero zonechecks
+
+# Produce intermediate makefile that assigns unique port numbers to each
+# parallel test. The start port number of 5,000 is arbitrary - it must just
+# be greater than the highest privileged port, 1024.
+#
+# Test names need to be sanitized because Solaris make does not like
+# underscores in target names and requires explicit differentiation
+# between a target name and a directory name (.PHONY is not supported).
+
+.PHONY: parallel.mk
+
+parallel.mk:
+ @PARALLEL_SANITIZED=`echo $(PARALLEL) | sed "s|\([^ ][^ ]*\)|test-\1|g;" | tr _ -` ; \
+ echo ".PHONY: $$PARALLEL_SANITIZED" > $@ ; \
+ echo "" >> $@ ; \
+ echo "check_interfaces:" >> $@ ; \
+ echo " @${PERL} testsock.pl > /dev/null 2>&1 || { \\" >> $@ ; \
+ echo " echo \"I:NOTE: System tests were skipped because they require that the\"; \\" >> $@ ; \
+ echo " echo \"I: IP addresses 10.53.0.1 through 10.53.0.8 be configured\"; \\" >> $@ ; \
+ echo " echo \"I: as alias addresses on the loopback interface. Please run\"; \\" >> $@ ; \
+ echo " echo \"I: \"bin/tests/system/ifconfig.sh up\" as root to configure them.\"; \\" >> $@ ; \
+ echo " exit 1; \\" >> $@ ; \
+ echo " }" >> $@ ; \
+ echo "" >> $@ ; \
+ echo "test check: $$PARALLEL_SANITIZED" >> $@ ; \
+ port=$${STARTPORT:-5000} ; \
+ for directory in $(PARALLEL) ; do \
+ echo "" >> $@ ; \
+ echo "test-`echo $$directory | tr _ -`: check_interfaces" >> $@ ; \
+ echo " @$(SHELL) ./run.sh -r -p $$port $$directory 2>&1 | tee $$directory/test.output" >> $@ ; \
+ port=`expr $$port + 100` ; \
+ done
+
+# Targets to run the tests.
+
+test: parallel.mk subdirs
+ @$(MAKE) -f parallel.mk check
+ @$(SHELL) ./runsequential.sh -r
+ @$(SHELL) ./testsummary.sh
+
+check: test
+
+# Other targets:
+#
+# testclean - delete files generated by running tests.
+# clean - testclean + also delete files built for the tests by "make".
+# distclean - clean + also delete test-related files generated by "configure".
+
+testclean clean distclean::
+ if test -f ./cleanall.sh; then $(SHELL) ./cleanall.sh; fi
+ rm -f systests.output
+ rm -f random.data
+ rm -f parallel.mk
+
+clean distclean::
+ rm -f ${TARGETS}
+ rm -f ${OBJS}
+
+distclean::
+ rm -f conf.sh
+
+installdirs:
+
+install::
+
+uninstall::