Some tests may need to examine all output files from all system tests.
Allow the deletion of these files to be inhibited if required.
(cherry picked from commit 00bc29640b)
100 lines
2.4 KiB
Makefile
100 lines
2.4 KiB
Makefile
# Copyright (C) 2000, 2001, 2004, 2007, 2008, 2010-2016 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/.
|
|
|
|
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@
|
|
|
|
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.
|
|
|
|
PARALLEL = allow_query catz rpzrecurse serve-stale
|
|
|
|
# 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 greated that the highest privileged port, 1024.
|
|
|
|
parallel.mk:
|
|
@echo ".PHONY: $(PARALLEL)" > $@ ; \
|
|
echo "" >> $@ ; \
|
|
echo "check: $(PARALLEL)" >> $@ ; \
|
|
port=$${STARTPORT:-5000} ; \
|
|
for directory in $(PARALLEL) ; do \
|
|
echo "" >> $@ ; \
|
|
echo "$$directory:" >> $@ ; \
|
|
echo " @$(SHELL) ./run.sh $$NOCLEAN -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 $$NOCLEAN -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::
|