blob: bfabbbc65862fcb04d3190ebfd89713ddb7e38d2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
include ../../run-make-fulldeps/tools.mk
OUTPUT_DIR := "$(TMPDIR)/rustdoc"
TMP_OUTPUT_DIR := "$(TMPDIR)/tmp-rustdoc"
all:
# Generate html docs
$(RUSTDOC) src/lib.rs --crate-name foobar --crate-type lib --out-dir $(OUTPUT_DIR)
# Copy first output for to check if it's exactly same after second compilation
cp -R $(OUTPUT_DIR) $(TMP_OUTPUT_DIR)
# Generate html docs once again on same output
$(RUSTDOC) src/lib.rs --crate-name foobar --crate-type lib --out-dir $(OUTPUT_DIR)
# Check if everything exactly same
$(DIFF) -r -q $(OUTPUT_DIR) $(TMP_OUTPUT_DIR)
# Generate json doc on the same output
$(RUSTDOC) src/lib.rs --crate-name foobar --crate-type lib --out-dir $(OUTPUT_DIR) -Z unstable-options --output-format json
# Check if expected json file is generated
[ -e $(OUTPUT_DIR)/foobar.json ]
# TODO
# We should re-generate json doc once again and compare the diff with previously
# generated one. Because layout of json docs changes in each compilation, we can't
# do that currently.
#
# See https://github.com/rust-lang/rust/issues/103785#issuecomment-1307425590 for details.
# remove generated json doc
rm $(OUTPUT_DIR)/foobar.json
# Check if json doc compilation broke any of the html files generated previously
$(DIFF) -r -q $(OUTPUT_DIR) $(TMP_OUTPUT_DIR)
|