Skip to content

Fix PDF doc builds on major distros

Mauro Carvalho Chehab bpf linux-doc lkml rust-for-linux 2 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest14 patches 8 repliesIn review
  2. v111 patches 31 repliesSuperseded

Changes in v2 from the cover letter

- one of the conf.py packages were split to help reviewers

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/14docs: Makefile: Fix LaTeX paper size settingsDocumentation/Makefile+2 -20 replies
2/14docs: conf.py: better handle latex documentsDocumentation/conf.py+26 -280 replies
3/14docs: conf.py: fix doc name with SPHINXDIRSDocumentation/conf.py+13 -00 replies
4/14docs: conf.py: rename some vars at latex_documents logicDocumentation/conf.py+11 -110 replies
5/14docs: conf.py: use dedent and r-strings for LaTeX macrosDocumentation/conf.py+12 -140 replies
6/14docs: conf.py: fix some troubles for LaTeX outputDocumentation/conf.py+6 -40 replies
7/14docs: conf.py: extra cleanups and fixesDocumentation/conf.py+7 -06 replies
8/14scripts: sphinx-pre-install: fix PDF build issues on Ubuntuscripts/sphinx-pre-install+9 -30 replies
9/14scripts: sphinx-pre-install: add missing gentoo pdf dependenciesscripts/sphinx-pre-install+8 -10 replies
10/14scripts: sphinx-pre-install: fix PDF dependencies for openSusescripts/sphinx-pre-install+3 -30 replies
11/14scripts: sphinx-pre-install: fix dependencies for OpenMandrivascripts/sphinx-pre-install+10 -20 replies
12/14scripts: sphinx-pre-install: fix pdf dependencies for Mageia 9scripts/sphinx-pre-install+2 -00 replies
13/14scripts: sphinx-pre-install: fix PDF dependencies for gentooscripts/sphinx-pre-install+1 -10 replies
14/14scripts/sphinx-pre-install: fix Archlinux PDF dependenciesscripts/sphinx-pre-install+5 -00 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.

Read the v2 thread

Cover letter [PATCH v2 00/14] Fix PDF doc builds on major distros

Hi Jon,

Here it is the second version of the PDF series. I opted to split one of the patches in 3, to have a clearer changelog and description.

Also, archlinux LXC image download started working again, so I added an extra patch addressing texlive packae dependencies.

This series is taking me a way more time than antecipated.

This series as 3 goals:

1. Fix a pre-Sphinx 1.7 PDF variable that got renamed, but our Makefile still uses the old one that is not supported since Sphinx 1.7;

2. Fix broken or incomplete texlive dependencies on several distros;

4. "modernize" conf.py to solve font conflicts related to UTF-8 and non-UTF fonts from [T1]{fontenc} LaTeX package.

Using fontenc with xelatex is problematic, as documented at

https://www.sphinx-doc.org/en/master/latex.html

Please notice that:

- It doesn't pretend to fix all PDF issues. It focus only at the above;
- there are still distros where PDF builds fail either partially or as a hole. On my checks, those are due to problematic texlive packages shipped on such distros;
- it doesn't touch/address/alter anyhing related to kfigure.py. as such, it doesn't touch/change/improve/drop anything with regards ImageMagick and/or Inkscape.

I think we need a separate series addressing kfigure.py:
it currently breaks if either input or output has a char > 127, meaning that PDF output there may eventually break.

---
v2:
- one of the conf.py packages were split to help reviewers

    to check the actual changes;

- added an extra sphinx-pre-install patch for ArchLinux.

Mauro Carvalho Chehab (14):
docs: Makefile: Fix LaTeX paper size settings
docs: conf.py: better handle latex documents
docs: conf.py: fix doc name with SPHINXDIRS
docs: conf.py: rename some vars at latex_documents logic
docs: conf.py: use dedent and r-strings for LaTeX macros
docs: conf.py: fix some troubles for LaTeX output
docs: conf.py: extra cleanups and fixes
scripts: sphinx-pre-install: fix PDF build issues on Ubuntu
scripts: sphinx-pre-install: add missing gentoo pdf dependencies
scripts: sphinx-pre-install: fix PDF dependencies for openSuse
scripts: sphinx-pre-install: fix dependencies for OpenMandriva
scripts: sphinx-pre-install: fix pdf dependencies for Mageia 9
scripts: sphinx-pre-install: fix PDF dependencies for gentoo scripts/sphinx-pre-install: fix Archlinux PDF dependencies

 Documentation/Makefile     |   4 +-
 Documentation/conf.py      | 106 ++++++++++++++++++++++---------------
 scripts/sphinx-pre-install |  46 ++++++++++++----
 3 files changed, 101 insertions(+), 55 deletions(-)
Signature · 1 line
2.50.1