diff options
Diffstat (limited to 'test/automated/Makefile.in')
-rw-r--r-- | test/automated/Makefile.in | 173 |
1 files changed, 0 insertions, 173 deletions
diff --git a/test/automated/Makefile.in b/test/automated/Makefile.in deleted file mode 100644 index 9c9b3be1e0b..00000000000 --- a/test/automated/Makefile.in +++ /dev/null @@ -1,173 +0,0 @@ -### @configure_input@ - -# Copyright (C) 2010-2016 Free Software Foundation, Inc. - -# This file is part of GNU Emacs. - -# GNU Emacs is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. - -# GNU Emacs is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. - -### Commentary: - -## Some targets: -## check: re-run all tests, writing to .log files. -## check-maybe: run all tests whose .log file needs updating -## filename.log: run tests from filename.el(c) if .log file needs updating -## filename: re-run tests from filename.el(c), with no logging - -### Code: - -SHELL = @SHELL@ - -srcdir = @srcdir@ -VPATH = $(srcdir) - -SEPCHAR = @SEPCHAR@ - -# We never change directory before running Emacs, so a relative file -# name is fine, and makes life easier. If we need to change -# directory, we can use emacs --chdir. -EMACS = ../../src/emacs - -EMACS_EXTRAOPT= - -# Command line flags for Emacs. -# Apparently MSYS bash would convert "-L :" to "-L ;" anyway, -# but we might as well be explicit. -EMACSOPT = -batch --no-site-file --no-site-lisp -L "$(SEPCHAR)$(srcdir)" $(EMACS_EXTRAOPT) - -# Prevent any settings in the user environment causing problems. -unexport EMACSDATA EMACSDOC EMACSPATH GREP_OPTIONS - -## To run tests under a debugger, set this to eg: "gdb --args". -GDB = - -# The locale to run tests under. Tests should work if this is set to -# any supported locale. Use the C locale by default, as it should be -# supported everywhere. -TEST_LOCALE = C - -# The actual Emacs command run in the targets below. -# Prevent any setting of EMACSLOADPATH in user environment causing problems. -emacs = EMACSLOADPATH= LC_ALL=$(TEST_LOCALE) EMACS_TEST_DIRECTORY=$(srcdir) \ - $(GDB) "$(EMACS)" $(EMACSOPT) - -.PHONY: all check - -all: check - -%.elc: %.el - @echo Compiling $< - @$(emacs) -f batch-byte-compile $< - -## Ignore any test errors so we can continue to test other files. -## But compilation errors are always fatal. -WRITE_LOG = > $@ 2>&1 || { stat=ERROR; cat $@; }; echo $$stat: $@ - -## I'd prefer to use -emacs -f ert-run-tests-batch-and-exit rather -## than || true, since the former makes problems more obvious. -## I'd also prefer to @-hide the grep part and not the -## ert-run-tests-batch-and-exit part. -## -## We need to use $loadfile because: -## i) -L :$srcdir -l basename does not work, because we have files whose -## basename duplicates a file in lisp/ (eg eshell.el). -## ii) Although -l basename will automatically load .el or .elc, -## -l ./basename treats basename as a literal file (it would be nice -## to change this; bug#17848 - if that gets done, this can be simplified). -## -## Beware: it approximates 'no-byte-compile', so watch out for false-positives! -SELECTOR_DEFAULT = (quote (not (tag :expensive-test))) -SELECTOR_EXPENSIVE = nil -ifdef SELECTOR -SELECTOR_ACTUAL=$(SELECTOR) -else ifndef MAKECMDGOALS -SELECTOR_ACTUAL=$(SELECTOR_DEFAULT) -else ifeq ($(MAKECMDGOALS),all) -SELECTOR_ACTUAL=$(SELECTOR_DEFAULT) -else ifeq ($(MAKECMDGOALS),check) -SELECTOR_ACTUAL=$(SELECTOR_DEFAULT) -else ifeq ($(MAKECMDGOALS),check-maybe) -SELECTOR_ACTUAL=$(SELECTOR_DEFAULT) -else -SELECTOR_ACTUAL=$(SELECTOR_EXPENSIVE) -endif - - -%.log: ${srcdir}/%.el - @if grep '^;.*no-byte-compile: t' $< > /dev/null; then \ - loadfile=$<; \ - else \ - loadfile=$<c; \ - ${MAKE} $$loadfile; \ - fi; \ - echo Testing $$loadfile; \ - stat=OK ; \ - $(emacs) -l ert -l $$loadfile \ - --eval "(ert-run-tests-batch-and-exit ${SELECTOR_ACTUAL})" ${WRITE_LOG} - -ELFILES = $(sort $(wildcard ${srcdir}/*.el)) -LOGFILES = $(patsubst %.el,%.log,$(notdir ${ELFILES})) -TESTS = ${LOGFILES:.log=} - -## If we have to interrupt a hanging test, preserve the log so we can -## see what the problem was. -.PRECIOUS: %.log - -.PHONY: ${TESTS} - -## The short aliases that always re-run the tests, with no logging. -define test_template -$(1): - @test ! -f $(1).log || mv $(1).log $(1).log~ - @${MAKE} $(1).log WRITE_LOG= -endef - -$(foreach test,${TESTS},$(eval $(call test_template,${test}))) - -## Rerun all default tests. -check: mostlyclean - @${MAKE} check-doit SELECTOR="${SELECTOR_ACTUAL}" - -## Rerun all default and expensive tests. -.PHONY: check-expensive -check-expensive: mostlyclean - @${MAKE} check-doit SELECTOR="${SELECTOR_EXPENSIVE}" - -## Only re-run default tests whose .log is older than the test. -.PHONY: check-maybe -check-maybe: - @${MAKE} check-doit SELECTOR="${SELECTOR_ACTUAL}" - -## Run the tests. -.PHONY: check-doit -check-doit: ${LOGFILES} - $(emacs) -l ert -f ert-summarize-tests-batch-and-exit $^ - -.PHONY: mostlyclean clean bootstrap-clean distclean maintainer-clean - -mostlyclean: - -@for f in *.log; do test ! -f $$f || mv $$f $$f~; done - -clean: - -rm -f *.log *.log~ - -bootstrap-clean: clean - -rm -f ${srcdir}/*.elc - -distclean: clean - rm -f Makefile - -maintainer-clean: distclean bootstrap-clean - -# Makefile ends here. |