Merge branch 'maint'
[platform/upstream/automake.git] / contrib / check-html.am
1 ## automake - create Makefile.in from Makefile.am
2 ## Copyright (C) 2001-2012 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.
13 ##
14 ## You should have received a copy of the GNU General Public License
15 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
16
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.
21
22 TEST_SUITE_HTML = $(TEST_SUITE_LOG:.log=.html)
23
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)
30
31 .log.html:
32         @list='$(RST2HTML) $$RST2HTML rst2html rst2html.py';            \
33         for r2h in $$list; do                                           \
34           if ($$r2h --version) >/dev/null 2>&1; then                    \
35             R2H=$$r2h;                                                  \
36           fi;                                                           \
37         done;                                                           \
38         if test -z "$$R2H"; then                                        \
39           echo >&2 "cannot find rst2html, cannot create $@";            \
40           exit 2;                                                       \
41         fi;                                                             \
42         $$R2H $< >$@.tmp
43         @mv $@.tmp $@
44
45 # Be sure to run check first, and then to convert the result.
46 # Beware of concurrent executions.  Run "check" not "check-TESTS", as
47 # check-SCRIPTS and other dependencies are rebuilt by the former only.
48 # And expect check to fail.
49 check-html recheck-html:
50         @target=`echo $@ | sed 's/-html$$//'`; \
51         rv=0; $(MAKE) $(AM_MAKEFLAGS) $$target || rv=$$?; \
52 ## The nullification of $(TEST_LOGS) is required to ensure that
53 ## "make recheck-html" do not try to uselessly re-run tests.
54         $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_HTML) TEST_LOGS= || exit 4; \
55         exit $$rv
56
57 .PHONY: check-html recheck-html
58 .MAKE: check-html recheck-html