Merge branch 'minor'
[automake.git] / contrib / check-html.am
bloba12075e1bfeff39c8012190a13551f1accedaecb
1 ## automake - create Makefile.in from Makefile.am
2 ## Copyright (C) 2001-2017 Free Software Foundation, Inc.
3 ##
4 ## This program is free software; you can redistribute it and/or modify
5 ## it under the terms of the GNU General Public License as published by
6 ## the Free Software Foundation; either version 2, or (at your option)
7 ## any later version.
8 ##
9 ## This program is distributed in the hope that it will be useful,
10 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 ## GNU General Public License for more details.
14 ## You should have received a copy of the GNU General Public License
15 ## along with this program.  If not, see <https://www.gnu.org/licenses/>.
17 ## Makefile.am fragment to produce HTML output from RST-formatted
18 ## log files produced by the parallel-tests output.
19 ## This fragment was part of the automake core in the 1.11.x release
20 ## series, but has been then moved to contrib.
22 TEST_SUITE_HTML = $(TEST_SUITE_LOG:.log=.html)
24 mostlyclean-local: mostlyclean-check-html
25 .PHONY: mostlyclean-check-html
26 mostlyclean-check-html:
27 ## Expand $(TEST_LOGS) only once, to avoid exceeding line length limits.
28         list='$(TEST_LOGS:.log=.html)'; test -z "$$list" || rm -f $$list
29         rm -f $(TEST_SUITE_HTML)
31 .log.html:
32         @list='$(RST2HTML) rst2html rst2html.py';                       \
33         while :; do                                                     \
34           for r2h in $$list; do                                         \
35             if ($$r2h --version) >/dev/null 2>&1; then break 2;         \
36             else :; fi;                                                 \
37           done;                                                         \
38           echo "cannot find rst2html, cannot create $@" >&2;            \
39           exit 2;                                                       \
40         done;                                                           \
41         $$r2h $(AM_RST2HTMLFLAGS) $(RST2HTMLFLAGS) $< >$@-t             \
42           && mv -f $@-t $@
44 # Be sure to run check first, and then to convert the result.
45 # Beware of concurrent executions.  Run "check" not "check-TESTS", as
46 # check-SCRIPTS and other dependencies are rebuilt by the former only.
47 # And expect check to fail.
48 check-html recheck-html:
49         @target=`echo $@ | sed 's/-html$$//'`; \
50         rv=0; $(MAKE) $(AM_MAKEFLAGS) $$target || rv=$$?; \
51 ## The nullification of $(TEST_LOGS) is required to ensure that
52 ## "make recheck-html" do not try to uselessly re-run tests.
53         $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_HTML) TEST_LOGS= || exit 4; \
54         exit $$rv
56 .PHONY: check-html recheck-html
57 .MAKE: check-html recheck-html