summaryrefslogtreecommitdiff
path: root/rules/sphinx.mk
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2018-12-30 16:36:21 -0500
committerBen Gamari <ben@smart-cactus.org>2019-01-06 07:27:09 -0500
commit3a509d2999d499793075b47d1fb7380c9e896ea1 (patch)
treeff61d0e0b89540cb05b5f039a800054115e415a4 /rules/sphinx.mk
parent24b39ce53eedad4cefc30f6786542d2072d1f9b0 (diff)
downloadhaskell-3a509d2999d499793075b47d1fb7380c9e896ea1.tar.gz
make: Silence some xelatex output
Currently build logs from GitLab CI around around 7 megabytes each. Of this, around 2 megabytes is latex output. This is quite silly as essentially all of this output is unresolved references in the early latex iterations. Here we silence this output. However, to make sure that we don't silence errors we allow each xelatex invocation besides the last to fail.
Diffstat (limited to 'rules/sphinx.mk')
-rw-r--r--rules/sphinx.mk13
1 files changed, 9 insertions, 4 deletions
diff --git a/rules/sphinx.mk b/rules/sphinx.mk
index 4929f3c90e..32ef3e4fb5 100644
--- a/rules/sphinx.mk
+++ b/rules/sphinx.mk
@@ -56,13 +56,18 @@ pdf_$1 : $1/$2.pdf
pdf : pdf_$1
ifneq "$$(BINDIST)" "YES"
+# N.B. If we don't redirect latex output to /dev/null then we end up with literally
+# 30% of the build output being warnings, even in a successful build. However,
+# to make sure that we don't silence errors we allow each xelatex invocation
+# besides the last to fail.
+
$1/$2.pdf: $1/conf.py $$($1_RST_SOURCES)
$(SPHINXBUILD) -b latex -d $1/.doctrees-pdf $(SPHINXOPTS) $1 $1/build-pdf/$2
- cd $1/build-pdf/$2 ; xelatex -halt-on-error $2.tex
- cd $1/build-pdf/$2 ; xelatex -halt-on-error $2.tex
- cd $1/build-pdf/$2 ; xelatex -halt-on-error $2.tex
+ cd $1/build-pdf/$2 ; xelatex -halt-on-error $2.tex 2>/dev/null >/dev/null || true
+ cd $1/build-pdf/$2 ; xelatex -halt-on-error $2.tex 2>/dev/null >/dev/null || true
+ cd $1/build-pdf/$2 ; xelatex -halt-on-error $2.tex 2>/dev/null >/dev/null || true
cd $1/build-pdf/$2 ; makeindex $2.idx
- cd $1/build-pdf/$2 ; xelatex -halt-on-error $2.tex
+ cd $1/build-pdf/$2 ; xelatex -halt-on-error $2.tex 2>/dev/null >/dev/null || true
cd $1/build-pdf/$2 ; xelatex -halt-on-error $2.tex
cp $1/build-pdf/$2/$2.pdf $1/$2.pdf
endif