aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKent Gibson <warthog618@gmail.com>2023-06-13 09:52:03 +0800
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>2023-06-13 10:57:21 +0200
commite7abee9747e22cbcf4878123e47f2ca0a0c8b1ca (patch)
tree04141e4ed04b2d70738ad5657ec5d6df37555fd4
parentebfed6ceb260e2c70a8c63e007f1f883382fc62d (diff)
downloadlibgpiod-e7abee9747e22cbcf4878123e47f2ca0a0c8b1ca.tar.gz
doc: add configuration to generate doxygen documentation on readthedocs
Having the libgpiod documentation available online would be helpful, so add the configuration required to generate the existing docygen C/C++ documentation on readthedocs. Signed-off-by: Kent Gibson <warthog618@gmail.com> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
-rw-r--r--.readthedocs.yaml27
-rw-r--r--sphinx/conf.py66
-rw-r--r--sphinx/index.rst24
3 files changed, 117 insertions, 0 deletions
diff --git a/.readthedocs.yaml b/.readthedocs.yaml
new file mode 100644
index 00000000..f40e95f5
--- /dev/null
+++ b/.readthedocs.yaml
@@ -0,0 +1,27 @@
+# SPDX-License-Identifier: LGPL-2.1-or-later
+# SPDX-FileCopyrightText: 2022 Kent Gibson <warthog618@gmail.com>
+
+#
+# This file is part of libgpiod.
+#
+# Read the Docs configuration file
+# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
+
+version: 2
+
+build:
+ os: ubuntu-22.04
+ tools:
+ python: "3.11"
+ # doxygen is available by default, but just in case.
+ # others are definitely missing.
+ apt_packages:
+ - autoconf
+ - autoconf-archive
+ - libtool
+ - m4
+ - doxygen
+ - graphviz
+
+sphinx:
+ configuration: sphinx/conf.py
diff --git a/sphinx/conf.py b/sphinx/conf.py
new file mode 100644
index 00000000..51ae3e9f
--- /dev/null
+++ b/sphinx/conf.py
@@ -0,0 +1,66 @@
+# SPDX-License-Identifier: LGPL-2.1-or-later
+# SPDX-FileCopyrightText: 2022 Kent Gibson <warthog618@gmail.com>
+
+# This file is part of libgpiod.
+#
+# Configuration file for the Sphinx documentation builder.
+#
+# This file only contains a selection of the most common options. For a full
+# list see the documentation:
+# https://www.sphinx-doc.org/en/master/usage/configuration.html
+
+import subprocess
+
+subprocess.run("cd .. ; ./autogen.sh ; make doc", shell=True)
+
+# -- Path setup --------------------------------------------------------------
+
+# If extensions (or modules to document with autodoc) are in another directory,
+# add these directories to sys.path here. If the directory is relative to the
+# documentation root, use os.path.abspath to make it absolute, like shown here.
+#
+# import os
+# import sys
+# sys.path.insert(0, os.path.abspath('.'))
+
+# -- Project information -----------------------------------------------------
+
+project = "libgpiod"
+copyright = "2022, Bartosz Golaszewski"
+author = "Bartosz Golaszewski"
+
+# The full version, including alpha/beta/rc tags
+release = (
+ subprocess.run(["git", "describe", "--dirty"], capture_output=True)
+ .stdout.decode()
+ .strip()
+)
+
+# -- General configuration ---------------------------------------------------
+
+# Add any Sphinx extension module names here, as strings. They can be
+# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
+# ones.
+extensions = []
+
+# Add any paths that contain templates here, relative to this directory.
+templates_path = []
+
+# List of patterns, relative to source directory, that match files and
+# directories to ignore when looking for source files.
+# This pattern also affects html_static_path and html_extra_path.
+exclude_patterns = []
+
+# -- Options for HTML output -------------------------------------------------
+
+# The theme to use for HTML and HTML Help pages. See the documentation for
+# a list of builtin themes.
+#
+html_theme = "alabaster"
+
+# Add any paths that contain custom static files (such as style sheets) here,
+# relative to this directory. They are copied after the builtin static files,
+# so a file named "default.css" will overwrite the builtin "default.css".
+html_static_path = []
+
+html_extra_path = ["../doc/html"]
diff --git a/sphinx/index.rst b/sphinx/index.rst
new file mode 100644
index 00000000..c26d0685
--- /dev/null
+++ b/sphinx/index.rst
@@ -0,0 +1,24 @@
+..
+ SPDX-License-Identifier: LGPL-2.1-or-later
+ SPDX-FileCopyrightText: 2022 Kent Gibson <warthog618@gmail.com>
+
+..
+ This file is part of libgpiod.
+
+ libgpiod documentation master file.
+
+Welcome to libgpiod's documentation!
+====================================
+
+.. toctree::
+ :maxdepth: 2
+ :caption: Contents:
+
+
+
+Indices and tables
+==================
+
+* :ref:`genindex`
+* :ref:`modindex`
+* :ref:`search`