lwmem/docs/conf.py

144 lines
4.7 KiB
Python
Raw Normal View History

2019-12-07 00:18:02 +01:00
# 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
# -- 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('.'))
from sphinx.builders.html import StandaloneHTMLBuilder
import subprocess, os
# Run doxygen first
2019-12-07 03:49:49 +01:00
# read_the_docs_build = os.environ.get('READTHEDOCS', None) == 'True'
# if read_the_docs_build:
2021-04-08 19:07:31 +02:00
subprocess.call('doxygen doxyfile.doxy', shell=True)
2019-12-07 00:18:02 +01:00
# -- Project information -----------------------------------------------------
project = 'LwMEM'
2023-02-19 12:42:43 +01:00
copyright = '2023, Tilen MAJERLE'
2019-12-07 00:18:02 +01:00
author = 'Tilen MAJERLE'
2020-02-16 03:06:59 +01:00
# Try to get branch at which this is running
# and try to determine which version to display in sphinx
2022-02-21 19:14:12 +01:00
# Version is using git tag if on master/main or "latest-develop" if on develop branch
version = ''
2020-02-16 03:06:59 +01:00
git_branch = ''
2022-02-21 19:14:12 +01:00
def cmd_exec_print(t):
print("cmd > ", t, "\n", os.popen(t).read().strip(), "\n")
# Print demo data here
cmd_exec_print('git branch')
cmd_exec_print('git describe')
cmd_exec_print('git describe --tags')
cmd_exec_print('git describe --tags --abbrev=0')
cmd_exec_print('git describe --tags --abbrev=1')
# Get current branch
2020-02-16 03:06:59 +01:00
res = os.popen('git branch').read().strip()
for line in res.split("\n"):
if line[0] == '*':
git_branch = line[1:].strip()
2020-02-16 03:24:42 +01:00
# Decision for display version
2021-04-09 20:45:17 +02:00
git_branch = git_branch.replace('(HEAD detached at ', '').replace(')', '')
if git_branch.find('master') >= 0 or git_branch.find('main') >= 0:
2022-02-21 19:14:12 +01:00
#version = os.popen('git describe --tags --abbrev=0').read().strip()
version = 'latest-stable'
elif git_branch.find('develop-') >= 0 or git_branch.find('develop/') >= 0:
version = 'branch-' + git_branch
elif git_branch == 'develop' or git_branch == 'origin/develop':
2021-04-08 18:57:43 +02:00
version = 'latest-develop'
else:
2022-02-21 19:14:12 +01:00
version = os.popen('git describe --tags --abbrev=0').read().strip()
2021-04-08 18:57:43 +02:00
# For debugging purpose only
2020-02-16 03:13:33 +01:00
print("GIT BRANCH: " + git_branch)
2022-02-21 19:14:12 +01:00
print("PROJ VERSION: " + version)
2020-02-16 03:06:59 +01:00
2019-12-07 00:18:02 +01:00
# -- 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 = [
'sphinx.ext.autodoc',
'sphinx.ext.intersphinx',
'sphinx.ext.autosectionlabel',
'sphinx.ext.todo',
'sphinx.ext.coverage',
'sphinx.ext.mathjax',
'sphinx.ext.ifconfig',
'sphinx.ext.viewcode',
2020-01-02 21:26:03 +01:00
'sphinx_sitemap',
2019-12-07 00:18:02 +01:00
2020-02-16 03:09:53 +01:00
'breathe',
2019-12-07 00:18:02 +01:00
]
# Add any paths that contain templates here, relative to this directory.
templates_path = ['templates']
# 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 = ['_build', 'Thumbs.db', '.DS_Store']
highlight_language = 'c'
# -- 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 = 'sphinx_rtd_theme'
html_theme_options = {
'canonical_url': '',
'analytics_id': '', # Provided by Google in your dashboard
'display_version': True,
'prev_next_buttons_location': 'bottom',
'style_external_links': False,
2020-11-15 11:08:16 +01:00
2019-12-07 00:18:02 +01:00
'logo_only': False,
# Toc options
'collapse_navigation': True,
'sticky_navigation': True,
'navigation_depth': 4,
'includehidden': True,
'titles_only': False
}
2021-04-13 21:25:13 +02:00
html_logo = 'static/images/logo.svg'
2019-12-07 00:18:02 +01:00
github_url = 'https://github.com/MaJerle/lwmem'
2020-01-02 21:26:03 +01:00
html_baseurl = 'https://docs.majerle.eu/projects/lwmem/'
2019-12-07 00:18:02 +01:00
# 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 = ['static']
2019-12-07 03:49:49 +01:00
html_css_files = [
'css/common.css',
'css/custom.css',
'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css',
2019-12-07 03:49:49 +01:00
]
2019-12-23 18:46:10 +01:00
html_js_files = [
''
2019-12-23 18:46:10 +01:00
]
2019-12-07 00:18:02 +01:00
# Master index file
2019-12-07 00:18:02 +01:00
master_doc = 'index'
# --- Breathe configuration -----------------------------------------------------
2019-12-07 00:18:02 +01:00
breathe_projects = {
2021-04-08 18:57:43 +02:00
"lwmem": "_build/xml/"
2019-12-07 00:18:02 +01:00
}
breathe_default_project = "lwmem"
breathe_default_members = ('members', 'undoc-members')
breathe_show_enumvalue_initializer = True