1#!/usr/bin/env python3
2# -*- coding: utf-8 -*-
3
4import sphinx_rtd_theme
5
6#
7# The Mesa 3D Graphics Library documentation build configuration file, created by
8# sphinx-quickstart on Wed Mar 29 14:08:51 2017.
9#
10# This file is execfile()d with the current directory set to its
11# containing dir.
12#
13# Note that not all possible configuration values are present in this
14# autogenerated file.
15#
16# All configuration values have a default; values that are commented out
17# serve to show the default.
18
19# If extensions (or modules to document with autodoc) are in another directory,
20# add these directories to sys.path here. If the directory is relative to the
21# documentation root, use os.path.abspath to make it absolute, like shown here.
22#
23import os
24import sys
25
26# If extensions (or modules to document with autodoc) are in another directory,
27# add these directories to sys.path here. If the directory is relative to the
28# documentation root, use os.path.abspath to make it absolute, like shown here.
29sys.path.append(os.path.abspath('_exts'))
30
31
32# -- General configuration ------------------------------------------------
33
34# If your documentation needs a minimal Sphinx version, state it here.
35#
36# needs_sphinx = '1.0'
37
38# Add any Sphinx extension module names here, as strings. They can be
39# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
40# ones.
41extensions = ['sphinx.ext.graphviz', 'breathe', 'formatting', 'nir', 'redirects']
42
43# Add any paths that contain templates here, relative to this directory.
44templates_path = ['_templates']
45
46# The suffix(es) of source filenames.
47# You can specify multiple suffix as a list of string:
48#
49# source_suffix = ['.rst', '.md']
50source_suffix = '.rst'
51
52# The master toctree document.
53master_doc = 'index'
54
55# General information about the project.
56project = 'The Mesa 3D Graphics Library'
57copyright = '1995-2018, Brian Paul'
58author = 'Brian Paul'
59html_show_copyright = False
60
61html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
62
63# The version info for the project you're documenting, acts as replacement for
64# |version| and |release|, also used in various other places throughout the
65# built documents.
66#
67# The short X.Y version.
68version = 'latest'
69# The full version, including alpha/beta/rc tags.
70release = 'latest'
71
72# The language for content autogenerated by Sphinx. Refer to documentation
73# for a list of supported languages.
74#
75# This is also used if you do content translation via gettext catalogs.
76# Usually you set "language" from the command line for these cases.
77language = None
78
79# List of patterns, relative to source directory, that match files and
80# directories to ignore when looking for source files.
81# This patterns also effect to html_static_path and html_extra_path
82exclude_patterns = []
83
84# The name of the Pygments (syntax highlighting) style to use.
85pygments_style = 'sphinx'
86
87# If true, `todo` and `todoList` produce output, else they produce nothing.
88todo_include_todos = False
89
90# Disable highlighting unless a language is specified, otherwise we'll get
91# python keywords highlit in literal blocks.
92highlight_language = "none"
93
94
95# -- Options for HTML output ----------------------------------------------
96
97# The theme to use for HTML and HTML Help pages.  See the documentation for
98# a list of builtin themes.
99#
100html_theme = 'sphinx_rtd_theme'
101
102html_favicon = "favicon.ico"
103
104# Theme options are theme-specific and customize the look and feel of a theme
105# further.  For a list of options available for each theme, see the
106# documentation.
107#
108html_theme_options = {
109  'display_version': False,
110}
111
112html_context = {
113  'display_gitlab': True,
114  'gitlab_host': 'gitlab.freedesktop.org',
115  'gitlab_user': 'mesa',
116  'gitlab_repo': 'mesa',
117  'gitlab_version': 'main',
118  'conf_py_path': '/docs/',
119}
120
121html_copy_source = False
122
123# Add any paths that contain custom static files (such as style sheets) here,
124# relative to this directory. They are copied after the builtin static files,
125# so a file named "default.css" will overwrite the builtin "default.css".
126html_static_path = []
127
128html_extra_path = [
129  '_extra/',
130  'release-maintainers-keys.asc',
131  'features.txt',
132  'libGL.txt',
133  'README.UVD',
134  'README.VCE',
135]
136
137html_redirects = [
138  ('drivers/vmware-guest', 'drivers/svga3d.html'),
139  ('gallium/drivers/freedreno', 'drivers/freedreno.html'),
140  ('gallium/drivers/freedreno/ir3-notes', 'drivers/freedreno/ir3-notes.html'),
141  ('gallium/drivers/llvmpipe', 'drivers/llvmpipe.html'),
142  ('gallium/drivers/openswr', 'drivers/openswr.html'),
143  ('gallium/drivers/openswr/faq', 'drivers/openswr/faq.html'),
144  ('gallium/drivers/openswr/knobs', 'drivers/openswr/knobs.html'),
145  ('gallium/drivers/openswr/profiling', 'drivers/openswr/profiling.html'),
146  ('gallium/drivers/openswr/usage', 'drivers/openswr/usage.html'),
147  ('gallium/drivers/zink', 'drivers/zink.html'),
148  ('llvmpipe', 'drivers/llvmpipe.html'),
149  ('postprocess', 'gallium/postprocess.html'),
150  ('versions', 'relnotes.html'),
151  ('vmware-guest', 'drivers/vmware-guest.html'),
152  ('webmaster', 'https://www.mesa3d.org/website/'),
153]
154
155
156# -- Options for HTMLHelp output ------------------------------------------
157
158# Output file base name for HTML help builder.
159htmlhelp_basename = 'TheMesa3DGraphicsLibrarydoc'
160
161
162# -- Options for LaTeX output ---------------------------------------------
163
164latex_elements = {
165    # The paper size ('letterpaper' or 'a4paper').
166    #
167    # 'papersize': 'letterpaper',
168
169    # The font size ('10pt', '11pt' or '12pt').
170    #
171    # 'pointsize': '10pt',
172
173    # Additional stuff for the LaTeX preamble.
174    #
175    # 'preamble': '',
176
177    # Latex figure (float) alignment
178    #
179    # 'figure_align': 'htbp',
180}
181
182# Grouping the document tree into LaTeX files. List of tuples
183# (source start file, target name, title,
184#  author, documentclass [howto, manual, or own class]).
185latex_documents = [
186    (master_doc, 'TheMesa3DGraphicsLibrary.tex', 'The Mesa 3D Graphics Library Documentation',
187     'Brian Paul', 'manual'),
188]
189
190
191# -- Options for manual page output ---------------------------------------
192
193# One entry per manual page. List of tuples
194# (source start file, name, description, authors, manual section).
195man_pages = [
196    (master_doc, 'themesa3dgraphicslibrary', 'The Mesa 3D Graphics Library Documentation',
197     [author], 1)
198]
199
200
201# -- Options for Texinfo output -------------------------------------------
202
203# Grouping the document tree into Texinfo files. List of tuples
204# (source start file, target name, title, author,
205#  dir menu entry, description, category)
206texinfo_documents = [
207    (master_doc, 'TheMesa3DGraphicsLibrary', 'The Mesa 3D Graphics Library Documentation',
208     author, 'TheMesa3DGraphicsLibrary', 'One line description of project.',
209     'Miscellaneous'),
210]
211
212# -- Options for Graphviz -------------------------------------------------
213
214graphviz_output_format = 'svg'
215
216# -- Options for breathe --------------------------------------------------
217breathe_projects = {
218    'mesa' : 'doxygen_xml',
219}
220breathe_default_project = 'mesa'
221breathe_show_define_initializer = True
222breathe_show_enumvalue_initializer = True
223