From b8db52f9bad5b1053810c93f0067de8423349da3 Mon Sep 17 00:00:00 2001 From: Andres Noetzli Date: Wed, 21 Mar 2018 13:10:24 -0700 Subject: Move regression tests to single Makefile.am (#1658) Until now, regression tests were split across tens of different Makefile.am, which required a lot of code duplication and does not really seem to be in the spirit of automake. If we want to change the LOG_COMPILER/LOG_DRIVER for example, we have to change every single Makefile.am, which is cumbersome (I was able to get something semi-working by exporting those variables but it didn't seem very clean). Additionally, it made the output of the regression tests fairly verbose and split the output across multiple log files. Finally it also limited parallelism when running the regression tests (this fix lowers the time it takes to run regression level 1 from 3m to 1m45s on my machine with 16 threads). This commit moves all the regression tests into test/regress/Makefile.tests and changes test/regress/Makefile.am to deal with this new structure. Finally, it changes how the test summary in test/Makefile.am is produced: instead of relying on the log files for the subdirectories, it greps for the test results in the log files of the individual tests. Not the most elegant solution but we should probably anyway delegate that task to a Python script at some point. --- test/regress/regress0/precedence/Makefile | 8 ---- test/regress/regress0/precedence/Makefile.am | 59 ---------------------------- 2 files changed, 67 deletions(-) delete mode 100644 test/regress/regress0/precedence/Makefile delete mode 100644 test/regress/regress0/precedence/Makefile.am (limited to 'test/regress/regress0/precedence') diff --git a/test/regress/regress0/precedence/Makefile b/test/regress/regress0/precedence/Makefile deleted file mode 100644 index a77d94db1..000000000 --- a/test/regress/regress0/precedence/Makefile +++ /dev/null @@ -1,8 +0,0 @@ -topdir = ../../../.. -srcdir = test/regress/regress0/precedence - -include $(topdir)/Makefile.subdir - -# synonyms for "check" -.PHONY: test -test: check diff --git a/test/regress/regress0/precedence/Makefile.am b/test/regress/regress0/precedence/Makefile.am deleted file mode 100644 index 096237106..000000000 --- a/test/regress/regress0/precedence/Makefile.am +++ /dev/null @@ -1,59 +0,0 @@ -# don't override a BINARY imported from a personal.mk -@mk_if@eq ($(BINARY),) -@mk_empty@BINARY = cvc4 -end@mk_if@ - -LOG_COMPILER = @srcdir@/../../run_regression -AM_LOG_FLAGS = $(RUN_REGRESSION_ARGS) @abs_top_builddir@/src/main/$(BINARY)$(EXEEXT) - -if AUTOMAKE_1_11 -# old-style (pre-automake 1.12) test harness -TESTS_ENVIRONMENT = \ - $(LOG_COMPILER) \ - $(AM_LOG_FLAGS) $(LOG_FLAGS) -endif - -MAKEFLAGS = -k - -# These are run for all build profiles. -# If a test shouldn't be run in e.g. competition mode, -# put it below in "TESTS +=" -TESTS = \ - and-xor.cvc \ - and-not.cvc \ - bool-cmp.cvc \ - cmp-plus.cvc \ - eq-fun.cvc \ - iff-assoc.cvc \ - iff-implies.cvc \ - implies-assoc.cvc \ - implies-iff.cvc \ - implies-or.cvc \ - not-and.cvc \ - not-eq.cvc \ - plus-mult.cvc \ - or-implies.cvc \ - or-xor.cvc \ - xor-or.cvc \ - xor-and.cvc \ - xor-assoc.cvc - -EXTRA_DIST = $(TESTS) - -#if CVC4_BUILD_PROFILE_COMPETITION -#else -#TESTS += \ -# error.cvc -#endif -# -# and make sure to distribute it -#EXTRA_DIST += \ -# error.cvc - -# synonyms for "check" in this directory -.PHONY: regress regress0 test -regress regress0 test: check - -# do nothing in this subdir -.PHONY: regress1 regress2 regress3 regress4 -regress1 regress2 regress3 regress4: -- cgit v1.2.3