docs: Makefile: place final pdf docs on a separate dir
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Tue, 14 Apr 2020 16:48:53 +0000 (18:48 +0200)
committerJonathan Corbet <corbet@lwn.net>
Mon, 20 Apr 2020 21:45:41 +0000 (15:45 -0600)
The Sphinx build system for PDF is too complex and generate
lots of ancillary files, including one PDF file for each
image.

So, at the end, the main latex dir has 156 pdf files, instead
of the 71 ones that would match each generated book. That's
confusing and it makes harder to identify when something didn't
work.

So, instead, let's move the final PDF output(s) to a separate
dir. This way, the latex/ dir will have the temporary and the
final *.tex files, while the final pdf files that built ok
will be under the pdf/ directory.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Link: https://lore.kernel.org/r/832752cbc9678a6e8d3d634bc3356d655d44684f.1586881715.git.mchehab+huawei@kernel.org
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Documentation/Makefile

index cc786d1..db1fc35 100644 (file)
@@ -98,7 +98,11 @@ else # HAVE_PDFLATEX
 
 pdfdocs: latexdocs
        @$(srctree)/scripts/sphinx-pre-install --version-check
-       $(foreach var,$(SPHINXDIRS), $(MAKE) PDFLATEX="$(PDFLATEX)" LATEXOPTS="$(LATEXOPTS)" -C $(BUILDDIR)/$(var)/latex || exit;)
+       $(foreach var,$(SPHINXDIRS), \
+          $(MAKE) PDFLATEX="$(PDFLATEX)" LATEXOPTS="$(LATEXOPTS)" -C $(BUILDDIR)/$(var)/latex || exit; \
+          mkdir -p $(BUILDDIR)/$(var)/pdf; \
+          mv $(subst .tex,.pdf,$(wildcard $(BUILDDIR)/$(var)/latex/*.tex)) $(BUILDDIR)/$(var)/pdf/; \
+       )
 
 endif # HAVE_PDFLATEX