]> git.ipfire.org Git - thirdparty/git.git/blame_incremental - ci/test-documentation.sh
The sixth batch
[thirdparty/git.git] / ci / test-documentation.sh
... / ...
CommitLineData
1#!/usr/bin/env bash
2#
3# Perform sanity checks on documentation and build it.
4#
5
6. ${0%/*}/lib.sh
7
8filter_log () {
9 sed -e '/^GIT_VERSION=/d' \
10 -e "/constant Gem::ConfigMap is deprecated/d" \
11 -e '/^ \* new asciidoc flags$/d' \
12 -e '/stripped namespace before processing/d' \
13 -e '/Attributed.*IDs for element/d' \
14 -e '/SyntaxWarning: invalid escape sequence/d' \
15 "$1"
16}
17
18check_docs () {
19 test -s "$1"/Documentation/git.html &&
20 test -s "$1"/Documentation/git.xml &&
21 test -s "$1"/Documentation/git.1 &&
22 grep "<meta name=\"generator\" content=\"$2 " "$1"/Documentation/git.html
23}
24
25make check-builtins
26make check-docs
27
28# Build docs with AsciiDoc
29make doc > >(tee stdout.log) 2> >(tee stderr.raw >&2)
30cat stderr.raw
31filter_log stderr.raw >stderr.log
32test ! -s stderr.log
33check_docs . AsciiDoc
34
35rm -f stdout.log stderr.log stderr.raw
36check_unignored_build_artifacts
37
38# Build docs with AsciiDoctor
39make clean
40make USE_ASCIIDOCTOR=1 doc > >(tee stdout.log) 2> >(tee stderr.raw >&2)
41cat stderr.raw
42filter_log stderr.raw >stderr.log
43test ! -s stderr.log
44check_docs . Asciidoctor
45
46rm -f stdout.log stderr.log stderr.raw
47check_unignored_build_artifacts
48
49# Build docs with Meson and AsciiDoc
50meson setup build-asciidoc -Ddocs=html,man -Ddocs_backend=asciidoc
51meson compile -C build-asciidoc
52check_docs build-asciidoc AsciiDoc
53rm -rf build-asciidoc
54
55# Build docs with Meson and AsciiDoctor
56meson setup build-asciidoctor -Ddocs=html,man -Ddocs_backend=asciidoctor
57meson compile -C build-asciidoctor
58check_docs build-asciidoctor Asciidoctor
59rm -rf build-asciidoctor
60
61save_good_tree