Commit 3b384e95 authored by Akira Yokosawa's avatar Akira Yokosawa Committed by Jonathan Corbet
Browse files

docs/conf.py: Respect env variable SPHINX_IMGMATH



On some distros with coarse-grained packaging policy, dvipng is
installed along with latex.  In such cases, math rendering will
use imgmath by default.  It is possible to override the choice by
specifying the option string of "-D html_math_renderer='mathjax'"
to sphinx-build (Sphinx >= 1.8).

To provide developers an easier-to-use knob, add code for an env
variable "SPHINX_IMGMATH" which overrides the automatic choice
of math renderer for html docs.

    SPHINX_IMGMATH=yes : Load imgmath even if dvipng is not found
    SPHINX_IMGMATH=no  : Don't load imgmath (fall back to mathjax)

Signed-off-by: default avatarAkira Yokosawa <akiyks@gmail.com>
Acked-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
Link: https://lore.kernel.org/r/5a582b2b-d51c-a062-36b2-19479cf68fab@gmail.com


Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
parent 6b0d3e7c
Loading
Loading
Loading
Loading
+14 −2
Original line number Diff line number Diff line
@@ -123,8 +123,20 @@ autosectionlabel_maxdepth = 2
# mathjax is the default math renderer since Sphinx 1.8.
have_latex =  have_command('latex')
have_dvipng = have_command('dvipng')
load_imgmath = ((have_latex and have_dvipng)
                or (major == 1 and minor < 8)
load_imgmath = have_latex and have_dvipng

# Respect SPHINX_IMGMATH (for html docs only)
if 'SPHINX_IMGMATH' in os.environ:
    env_sphinx_imgmath = os.environ['SPHINX_IMGMATH']
    if 'yes' in env_sphinx_imgmath:
        load_imgmath = True
    elif 'no' in env_sphinx_imgmath:
        load_imgmath = False
    else:
        sys.stderr.write("Unknown env SPHINX_IMGMATH=%s ignored.\n" % env_sphinx_imgmath)

# Always load imgmath for Sphinx <1.8 or for epub docs
load_imgmath = (load_imgmath or (major == 1 and minor < 8)
                or 'epub' in sys.argv)

if load_imgmath: