wiki.cvc \
logops.cvc \
comb2.shuffled-as.sat03-420.smt
-
-TESTS_ENVIRONMENT = @top_builddir@/bin/cvc4
-TESTS = \
- simple.cvc \
- simple.smt \
- bug1.cvc
+TESTS_ENVIRONMENT =
+TESTS =
+
+# Things that aren't tests but that tests rely on and need to
+# go into the distribution
+TEST_DEPS_DIST =
+
+# Make-level dependencies; these don't go in the source distribution
+# but should trigger a re-compile of all unit tests. Libraries are
+# included here because (1) if static-linking, the tests must be
+# relinked, and (2) if they've changed that means the sources changed,
+# and that means we should ensure the tests compile against any
+# changes made in the header files.
+TEST_DEPS_NODIST = \
+ $(abs_top_builddir)/src/libcvc4.la \
+ $(abs_top_builddir)/src/parser/libcvc4parser.la
+
+TEST_DEPS = \
+ $(TEST_DEPS_DIST) \
+ $(TEST_DEPS_NODIST)
+
+EXTRA_DIST = \
+ $(TEST_DEPS_DIST)
+
+# rebuild tests if a library changes
+$(TESTS):: $(TEST_DEPS)
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
+TESTS =
subdir = test/system
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-TESTS_ENVIRONMENT = @top_builddir@/bin/cvc4
-TESTS = \
- simple.cvc \
- simple.smt \
- bug1.cvc
+TESTS_ENVIRONMENT =
+
+# Things that aren't tests but that tests rely on and need to
+# go into the distribution
+TEST_DEPS_DIST =
+
+# Make-level dependencies; these don't go in the source distribution
+# but should trigger a re-compile of all unit tests. Libraries are
+# included here because (1) if static-linking, the tests must be
+# relinked, and (2) if they've changed that means the sources changed,
+# and that means we should ensure the tests compile against any
+# changes made in the header files.
+TEST_DEPS_NODIST = \
+ $(abs_top_builddir)/src/libcvc4.la \
+ $(abs_top_builddir)/src/parser/libcvc4parser.la
+
+TEST_DEPS = \
+ $(TEST_DEPS_DIST) \
+ $(TEST_DEPS_NODIST)
+
+EXTRA_DIST = \
+ $(TEST_DEPS_DIST)
all: all-am
uninstall uninstall-am
+# rebuild tests if a library changes
+$(TESTS):: $(TEST_DEPS)
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
-# all unit tests
+# All unit tests
UNIT_TESTS = \
expr/node_white \
expr/node_black \
parser/parser_black
-TESTS_DEPENDENCIES = $(abs_top_builddir)/src/libcvc4.la $(abs_top_builddir)/src/parser/libcvc4parser.la
-
-# things that aren't tests but that tests rely on and need to
+# Things that aren't tests but that tests rely on and need to
# go into the distribution
-TEST_DEPS =
+TEST_DEPS_DIST =
+
+# Make-level dependencies; these don't go in the source distribution
+# but should trigger a re-compile of all unit tests. Libraries are
+# included here because (1) if static-linking, the tests must be
+# relinked, and (2) if they've changed that means the sources changed,
+# and that means we should ensure the tests compile against any
+# changes made in the header files.
+TEST_DEPS_NODIST = \
+ $(abs_top_builddir)/src/libcvc4.la \
+ $(abs_top_builddir)/src/parser/libcvc4parser.la
+
+TEST_DEPS = \
+ $(TEST_DEPS_DIST) \
+ $(TEST_DEPS_NODIST)
+
+@mk_include@ @srcdir@/Makefile.tests
if HAVE_CXXTESTGEN
EXTRA_DIST = \
no_cxxtest \
- $(TEST_DEPS)
+ $(TEST_DEPS_DIST)
# without these here, LTCXXCOMPILE, CXXLINK, etc., aren't set :-(
noinst_LTLIBRARIES = libdummy.la
$(TESTS:%=%.cpp): %.cpp: %.h
mkdir -p `dirname "$@"`
@CXXTESTGEN@ --have-eh --have-std --error-printer -o "$@" "$<"
-$(filter %_white,$(TESTS)): %_white: %_white.cpp
+$(WHITE_TESTS): %_white: %_white.cpp $(TEST_DEPS)
$(LTCXXCOMPILE) $(AM_CXXFLAGS_WHITE) -c -o $@.lo $<
$(CXXLINK) $(AM_LDFLAGS_WHITE) $@.lo
-$(filter %_black,$(TESTS)): %_black: %_black.cpp
+$(BLACK_TESTS): %_black: %_black.cpp $(TEST_DEPS)
$(LTCXXCOMPILE) $(AM_CXXFLAGS_BLACK) -c -o $@.lo $<
$(CXXLINK) $(AM_LDFLAGS_BLACK) $@.lo
-$(filter %_public,$(TESTS)): %_public: %_public.cpp
+$(PUBLIC_TESTS): %_public: %_public.cpp $(TEST_DEPS)
$(LTCXXCOMPILE) $(AM_CXXFLAGS_PUBLIC) -c -o $@.lo $<
$(CXXLINK) $(AM_LDFLAGS_PUBLIC) $@.lo
EXTRA_DIST = \
$(UNIT_TESTS) \
- $(TEST_DEPS)
+ $(TEST_DEPS_DIST)
endif
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-# all unit tests
+# All unit tests
UNIT_TESTS = \
expr/node_white \
expr/node_black \
parser/parser_black
-TESTS_DEPENDENCIES = $(abs_top_builddir)/src/libcvc4.la $(abs_top_builddir)/src/parser/libcvc4parser.la
-# things that aren't tests but that tests rely on and need to
+# Things that aren't tests but that tests rely on and need to
# go into the distribution
-TEST_DEPS =
+TEST_DEPS_DIST =
+
+# Make-level dependencies; these don't go in the source distribution
+# but should trigger a re-compile of all unit tests. Libraries are
+# included here because (1) if static-linking, the tests must be
+# relinked, and (2) if they've changed that means the sources changed,
+# and that means we should ensure the tests compile against any
+# changes made in the header files.
+TEST_DEPS_NODIST = \
+ $(abs_top_builddir)/src/libcvc4.la \
+ $(abs_top_builddir)/src/parser/libcvc4parser.la
+
+TEST_DEPS = \
+ $(TEST_DEPS_DIST) \
+ $(TEST_DEPS_NODIST)
+
@HAVE_CXXTESTGEN_TRUE@AM_CPPFLAGS = \
@HAVE_CXXTESTGEN_TRUE@ -I. "-I@CXXTEST@" "-I@top_srcdir@/src/include" "-I@top_srcdir@/src" \
@HAVE_CXXTESTGEN_TRUE@ $(TEST_CPPFLAGS)
@HAVE_CXXTESTGEN_TRUE@TESTS = $(UNIT_TESTS)
@HAVE_CXXTESTGEN_FALSE@EXTRA_DIST = \
@HAVE_CXXTESTGEN_FALSE@ $(UNIT_TESTS) \
-@HAVE_CXXTESTGEN_FALSE@ $(TEST_DEPS)
+@HAVE_CXXTESTGEN_FALSE@ $(TEST_DEPS_DIST)
@HAVE_CXXTESTGEN_TRUE@EXTRA_DIST = \
@HAVE_CXXTESTGEN_TRUE@ no_cxxtest \
-@HAVE_CXXTESTGEN_TRUE@ $(TEST_DEPS)
+@HAVE_CXXTESTGEN_TRUE@ $(TEST_DEPS_DIST)
# without these here, LTCXXCOMPILE, CXXLINK, etc., aren't set :-(
tags uninstall uninstall-am
+@mk_include@ @srcdir@/Makefile.tests
+
@HAVE_CXXTESTGEN_TRUE@$(TESTS:%=%.cpp): %.cpp: %.h
@HAVE_CXXTESTGEN_TRUE@ mkdir -p `dirname "$@"`
@HAVE_CXXTESTGEN_TRUE@ @CXXTESTGEN@ --have-eh --have-std --error-printer -o "$@" "$<"
-@HAVE_CXXTESTGEN_TRUE@$(filter %_white,$(TESTS)): %_white: %_white.cpp
+@HAVE_CXXTESTGEN_TRUE@$(WHITE_TESTS): %_white: %_white.cpp $(TEST_DEPS)
@HAVE_CXXTESTGEN_TRUE@ $(LTCXXCOMPILE) $(AM_CXXFLAGS_WHITE) -c -o $@.lo $<
@HAVE_CXXTESTGEN_TRUE@ $(CXXLINK) $(AM_LDFLAGS_WHITE) $@.lo
-@HAVE_CXXTESTGEN_TRUE@$(filter %_black,$(TESTS)): %_black: %_black.cpp
+@HAVE_CXXTESTGEN_TRUE@$(BLACK_TESTS): %_black: %_black.cpp $(TEST_DEPS)
@HAVE_CXXTESTGEN_TRUE@ $(LTCXXCOMPILE) $(AM_CXXFLAGS_BLACK) -c -o $@.lo $<
@HAVE_CXXTESTGEN_TRUE@ $(CXXLINK) $(AM_LDFLAGS_BLACK) $@.lo
-@HAVE_CXXTESTGEN_TRUE@$(filter %_public,$(TESTS)): %_public: %_public.cpp
+@HAVE_CXXTESTGEN_TRUE@$(PUBLIC_TESTS): %_public: %_public.cpp $(TEST_DEPS)
@HAVE_CXXTESTGEN_TRUE@ $(LTCXXCOMPILE) $(AM_CXXFLAGS_PUBLIC) -c -o $@.lo $<
@HAVE_CXXTESTGEN_TRUE@ $(CXXLINK) $(AM_LDFLAGS_PUBLIC) $@.lo
--- /dev/null
+WHITE_TESTS = $(filter %_white,$(TESTS))
+BLACK_TESTS = $(filter %_black,$(TESTS))
+PUBLIC_TESTS = $(filter %_public,$(TESTS))