[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <77038995f9cc3205bc1c694ef71848a83d979744.1638369365.git.mchehab+huawei@kernel.org>
Date: Wed, 1 Dec 2021 18:59:06 +0100
From: Mauro Carvalho Chehab <mchehab+huawei@...nel.org>
To: Linux Doc Mailing List <linux-doc@...r.kernel.org>,
Jonathan Corbet <corbet@....net>
Cc: Mauro Carvalho Chehab <mchehab+huawei@...nel.org>,
"Akira Yokosawa" <akiyks@...il.com>,
"Jani Nikula" <jani.nikula@...ux.intel.com>,
NĂcolas F. R. A. Prado
<nfraprado@...tonmail.com>, "Randy Dunlap" <rdunlap@...radead.org>,
Alex Shi <alexs@...nel.org>,
Andrew Klychkov <andrew.a.klychkov@...il.com>,
linux-kernel@...r.kernel.org
Subject: [PATCH v3 2/4] docs: allow to pass extra CSS themes via make
Specially when the RTD theme is not used, it makes sense to
allow specifying extra CSS files via a make variable.
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@...nel.org>
---
See [PATCH v3 0/4] at: https://lore.kernel.org/all/cover.1638369365.git.mchehab+huawei@kernel.org/
Documentation/Makefile | 8 +++++++-
Documentation/conf.py | 7 +++++++
Documentation/doc-guide/sphinx.rst | 3 +++
3 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/Documentation/Makefile b/Documentation/Makefile
index d4039d77b32a..b3ccd1925cd3 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -20,6 +20,7 @@ SPHINXBUILD = sphinx-build
SPHINXOPTS =
SPHINXDIRS = .
THEME =
+CSS =
_SPHINXDIRS = $(sort $(patsubst $(srctree)/Documentation/%/index.rst,%,$(wildcard $(srctree)/Documentation/*/index.rst)))
SPHINX_CONF = conf.py
PAPER =
@@ -85,7 +86,10 @@ quiet_cmd_sphinx = SPHINX $@ --> file://$(abspath $(BUILDDIR)/$3/$4)
-D version=$(KERNELVERSION) -D release=$(KERNELRELEASE) \
$(ALLSPHINXOPTS) \
$(abspath $(srctree)/$(src)/$5) \
- $(abspath $(BUILDDIR)/$3/$4)
+ $(abspath $(BUILDDIR)/$3/$4) && \
+ if [ "x$(CSS)" != "x" ]; then \
+ cp $(CSS) $(BUILDDIR)/$3/_static/; \
+ fi
htmldocs:
@$(srctree)/scripts/sphinx-pre-install --version-check
@@ -157,4 +161,6 @@ dochelp:
@echo
@echo ' make THEME={sphinx-theme} selects a different Sphinx theme.'
@echo
+ @echo ' make CSS={a .css file} adds a CSS override file for html/epub output.'
+ @echo
@echo ' Default location for the generated documents is Documentation/output'
diff --git a/Documentation/conf.py b/Documentation/conf.py
index 082c3ac9dd33..0e2593e4d357 100644
--- a/Documentation/conf.py
+++ b/Documentation/conf.py
@@ -210,6 +210,7 @@ highlight_language = 'none'
# Default theme
html_theme = 'sphinx_rtd_theme'
+html_css_files = []
if "THEME" in os.environ:
html_theme = os.environ["THEME"]
@@ -229,6 +230,12 @@ if html_theme == 'sphinx_rtd_theme':
except ImportError:
html_theme = 'classic'
+if "CSS" in os.environ:
+ css = os.environ["CSS"].split(" ")
+
+ for l in css:
+ html_css_files.append(l)
+
if major <= 1 and minor < 8:
html_context = {
'css_files': [],
diff --git a/Documentation/doc-guide/sphinx.rst b/Documentation/doc-guide/sphinx.rst
index 33a527f5ae64..e25bc033aad3 100644
--- a/Documentation/doc-guide/sphinx.rst
+++ b/Documentation/doc-guide/sphinx.rst
@@ -138,6 +138,9 @@ To pass extra options to Sphinx, you can use the ``SPHINXOPTS`` make
variable. For example, use ``make SPHINXOPTS=-v htmldocs`` to get more verbose
output.
+It is also possible to pass an extra CSS overlay file, in order to customize
+the html layout, by using the ``CSS`` make variable.
+
By default, the build will try to use the Read the Docs sphinx theme:
https://github.com/readthedocs/sphinx_rtd_theme
--
2.33.1
Powered by blists - more mailing lists