]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-139588: Docs: fix PDF build (#145480)
authorMaciej Olko <maciej.olko@affirm.com>
Mon, 9 Mar 2026 16:19:02 +0000 (12:19 -0400)
committerGitHub <noreply@github.com>
Mon, 9 Mar 2026 16:19:02 +0000 (18:19 +0200)
Doc/Makefile
Doc/conf.py
Doc/library/profiling.sampling.rst

index 5b7fdf8ec08ed40cffaffb8bad3e69a677458fee..7bdabd8bf168fe7b64851aa6ebaf193699ec32d3 100644 (file)
@@ -88,6 +88,7 @@ htmlhelp: build
              "build/htmlhelp/pydoc.hhp project file."
 
 .PHONY: latex
+latex: _ensure-sphinxcontrib-svg2pdfconverter
 latex: BUILDER = latex
 latex: build
        @echo "Build finished; the LaTeX files are in build/latex."
@@ -231,7 +232,7 @@ dist-text:
        @echo "Build finished and archived!"
 
 .PHONY: dist-pdf
-dist-pdf:
+dist-pdf: _ensure-sphinxcontrib-svg2pdfconverter
        # archive the A4 latex
        @echo "Building LaTeX (A4 paper)..."
        mkdir -p dist
@@ -292,6 +293,10 @@ _ensure-pre-commit:
 _ensure-sphinx-autobuild:
        $(MAKE) _ensure-package PACKAGE=sphinx-autobuild
 
+.PHONY: _ensure-sphinxcontrib-svg2pdfconverter
+_ensure-sphinxcontrib-svg2pdfconverter:
+       $(MAKE) _ensure-package PACKAGE=sphinxcontrib-svg2pdfconverter
+
 .PHONY: check
 check: _ensure-pre-commit
        $(VENVDIR)/bin/python3 -m pre_commit run --all-files
index 545049bb460419804c91d3c5833a371efb09d535..26497083d28e47521e93f38629af00fdd9fb652b 100644 (file)
@@ -46,6 +46,7 @@ _OPTIONAL_EXTENSIONS = (
     'linklint.ext',
     'notfound.extension',
     'sphinxext.opengraph',
+    'sphinxcontrib.rsvgconverter',
 )
 for optional_ext in _OPTIONAL_EXTENSIONS:
     try:
index 078062c08c602017af5ca052937bc2eb61c20c78..d2b7d9669ab07e47eb4cf137c5ad0015aaea4d2a 100644 (file)
@@ -1194,10 +1194,12 @@ data, similar to the ``top`` command for system processes::
    python -m profiling.sampling run --live script.py
    python -m profiling.sampling attach --live 12345
 
-.. figure:: tachyon-live-mode-2.gif
-   :alt: Tachyon live mode showing all threads
-   :align: center
-   :width: 100%
+.. only:: not latex
+
+   .. figure:: tachyon-live-mode-2.gif
+      :alt: Tachyon live mode showing all threads
+      :align: center
+      :width: 100%
 
    Live mode displays real-time profiling statistics, showing combined
    data from multiple threads in a multi-threaded application.
@@ -1217,10 +1219,12 @@ main table, showing instruction-level statistics for the currently selected
 function. This panel displays which bytecode instructions are executing most
 frequently, including specialized variants and their base opcodes.
 
-.. figure:: tachyon-live-mode-1.gif
-   :alt: Tachyon live mode with opcode panel
-   :align: center
-   :width: 100%
+.. only:: not latex
+
+   .. figure:: tachyon-live-mode-1.gif
+      :alt: Tachyon live mode with opcode panel
+      :align: center
+      :width: 100%
 
    Live mode with ``--opcodes`` enabled shows an opcode panel with a bytecode
    instruction breakdown for the selected function.