Skip to content

Commit

Permalink
Documentation: switch to pdflatex for pdf generation
Browse files Browse the repository at this point in the history
Looks like rst2pdf is not robust enough, especially for large documents.

Use recursive make on the Sphinx generated makefile to convert latex to
pdf. The ugly detail is that pdf is generated into
Documentation/output/latex.

Unfortunately, the pdflatex build generates huge amounts of build log
noise, and also fails in the end. We'll fix that next.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Acked-by: Markus Heiser <markus.heiser@darmarit.de>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
  • Loading branch information
Jani Nikula authored and Jonathan Corbet committed Aug 12, 2016
1 parent 609afe6 commit f907ba9
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions Documentation/Makefile.sphinx
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ else ifneq ($(DOCBOOKS),)

else # HAVE_SPHINX

# User-friendly check for rst2pdf
HAVE_RST2PDF := $(shell if python -c "import rst2pdf" >/dev/null 2>&1; then echo 1; else echo 0; fi)
# User-friendly check for pdflatex
HAVE_PDFLATEX := $(shell if which pdflatex >/dev/null 2>&1; then echo 1; else echo 0; fi)

# Internal variables.
PAPEROPT_a4 = -D latex_paper_size=a4
Expand All @@ -44,12 +44,13 @@ htmldocs:
$(call cmd,sphinx,html)

pdfdocs:
ifeq ($(HAVE_RST2PDF),0)
$(warning The Python 'rst2pdf' module was not found. Make sure you have the module installed to produce PDF output.)
ifeq ($(HAVE_PDFLATEX),0)
$(warning The 'pdflatex' command was not found. Make sure you have it installed and in PATH to produce PDF output.)
@echo " SKIP Sphinx $@ target."
else # HAVE_RST2PDF
$(call cmd,sphinx,pdf)
endif # HAVE_RST2PDF
else # HAVE_PDFLATEX
$(call cmd,sphinx,latex)
$(Q)$(MAKE) -C $(BUILDDIR)/latex
endif # HAVE_PDFLATEX

epubdocs:
$(call cmd,sphinx,epub)
Expand Down

0 comments on commit f907ba9

Please sign in to comment.