| #!/usr/bin/env python3 |
| # -*- coding: utf-8 -*- |
| |
| # |
| # The Mesa 3D Graphics Library documentation build configuration file, created by |
| # sphinx-quickstart on Wed Mar 29 14:08:51 2017. |
| # |
| # This file is execfile()d with the current directory set to its |
| # containing dir. |
| # |
| # Note that not all possible configuration values are present in this |
| # autogenerated file. |
| # |
| # All configuration values have a default; values that are commented out |
| # serve to show the default. |
| |
| # 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 |
| |
| from hawkmoth.util import compiler |
| |
| # 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. |
| sys.path.append(os.path.abspath('_exts')) |
| |
| |
| # -- General configuration ------------------------------------------------ |
| |
| # If your documentation needs a minimal Sphinx version, state it here. |
| # |
| # needs_sphinx = '1.0' |
| |
| # Add any Sphinx extension module names here, as strings. They can be |
| # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom |
| # ones. |
| extensions = [ |
| 'bootstrap', |
| 'depfile', |
| 'formatting', |
| 'hawkmoth', |
| 'nir', |
| 'redirects', |
| 'sphinx.ext.graphviz', |
| ] |
| |
| # Add any paths that contain templates here, relative to this directory. |
| templates_path = ['_templates'] |
| |
| # The suffix(es) of source filenames. |
| # You can specify multiple suffix as a list of string: |
| # |
| # source_suffix = ['.rst', '.md'] |
| source_suffix = '.rst' |
| |
| # The master toctree document. |
| master_doc = 'index' |
| |
| # General information about the project. |
| project = 'The Mesa 3D Graphics Library' |
| copyright = '1995-2018, Brian Paul' |
| author = 'Brian Paul' |
| html_show_copyright = False |
| |
| html_theme_path = ['.'] |
| |
| # The version info for the project you're documenting, acts as replacement for |
| # |version| and |release|, also used in various other places throughout the |
| # built documents. |
| # |
| # The short X.Y version. |
| version = 'latest' |
| # The full version, including alpha/beta/rc tags. |
| release = 'latest' |
| |
| # The language for content autogenerated by Sphinx. Refer to documentation |
| # for a list of supported languages. |
| # |
| # This is also used if you do content translation via gettext catalogs. |
| # Usually you set "language" from the command line for these cases. |
| language = 'en' |
| |
| # List of patterns, relative to source directory, that match files and |
| # directories to ignore when looking for source files. |
| # This patterns also effect to html_static_path and html_extra_path |
| exclude_patterns = ['header-stubs'] |
| |
| # If true, `todo` and `todoList` produce output, else they produce nothing. |
| todo_include_todos = False |
| |
| # Disable highlighting unless a language is specified, otherwise we'll get |
| # python keywords highlit in literal blocks. |
| highlight_language = 'none' |
| |
| default_role = 'c:expr' |
| |
| # -- 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 = 'mesa3d_theme' |
| |
| html_favicon = 'favicon.ico' |
| |
| html_copy_source = False |
| |
| # 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 = [ |
| '_extra/', |
| 'release-maintainers-keys.asc', |
| 'features.txt', |
| 'libGL.txt', |
| 'README.UVD', |
| 'README.VCE', |
| ] |
| |
| html_redirects = [ |
| ('webmaster', 'https://www.mesa3d.org/website/'), |
| ('developers', 'https://www.mesa3d.org/developers/'), |
| ('thanks', 'https://gitlab.freedesktop.org/mesa/mesa/-/blob/amber/docs/thanks.rst'), |
| ] |
| |
| |
| # -- Options for linkcheck ------------------------------------------------ |
| |
| linkcheck_ignore = [ |
| r'specs/.*\.spec', # gets copied during the build process |
| r'news:.*', # seems linkcheck doesn't like the news: URI-scheme... |
| r'http://mesa-ci-results.jf.intel.com', # only available for Intel employees |
| r'https://gitlab.com/.*#.*', # needs JS eval |
| r'https://gitlab.freedesktop.org/.*#.*', # needs JS eval |
| r'https://github.com/.*#.*', # needs JS eval |
| r'https://www.intel.com/.*', # intel.com is blocking the linkcheck user-agent; maybe it can be customized to look like a browser? |
| r'https://cgit.freedesktop.org/.*', # cgit is no more |
| ] |
| linkcheck_exclude_documents = [r'relnotes/.*'] |
| |
| linkcheck_allowed_redirects = { |
| # Pages that forward the front-page to a wiki or some explore-page |
| 'https://www.freedesktop.org': 'https://www.freedesktop.org/wiki/', |
| 'https://x.org': 'https://x.org/wiki/', |
| 'https://perf.wiki.kernel.org/': 'https://perf.wiki.kernel.org/index.php/Main_Page', |
| 'https://dri.freedesktop.org/': 'https://dri.freedesktop.org/wiki/', |
| 'https://gitlab.freedesktop.org/': 'https://gitlab.freedesktop.org/explore/groups', |
| 'https://www.sphinx-doc.org/': 'https://www.sphinx-doc.org/en/master/', |
| |
| # Pages that requires authentication |
| 'https://gitlab.freedesktop.org/admin/runners': 'https://gitlab.freedesktop.org/users/sign_in', |
| 'https://gitlab.freedesktop.org/profile/personal_access_tokens': 'https://gitlab.freedesktop.org/users/sign_in', |
| } |
| |
| |
| # -- Options for HTMLHelp output ------------------------------------------ |
| |
| # Output file base name for HTML help builder. |
| htmlhelp_basename = 'TheMesa3DGraphicsLibrarydoc' |
| |
| |
| # -- Options for LaTeX output --------------------------------------------- |
| |
| latex_elements = { |
| # The paper size ('letterpaper' or 'a4paper'). |
| # |
| # 'papersize': 'letterpaper', |
| |
| # The font size ('10pt', '11pt' or '12pt'). |
| # |
| # 'pointsize': '10pt', |
| |
| # Additional stuff for the LaTeX preamble. |
| # |
| # 'preamble': '', |
| |
| # Latex figure (float) alignment |
| # |
| # 'figure_align': 'htbp', |
| } |
| |
| # Grouping the document tree into LaTeX files. List of tuples |
| # (source start file, target name, title, |
| # author, documentclass [howto, manual, or own class]). |
| latex_documents = [ |
| (master_doc, 'TheMesa3DGraphicsLibrary.tex', 'The Mesa 3D Graphics Library Documentation', |
| 'Brian Paul', 'manual'), |
| ] |
| |
| |
| # -- Options for manual page output --------------------------------------- |
| |
| # One entry per manual page. List of tuples |
| # (source start file, name, description, authors, manual section). |
| man_pages = [ |
| (master_doc, 'themesa3dgraphicslibrary', 'The Mesa 3D Graphics Library Documentation', |
| [author], 1) |
| ] |
| |
| |
| # -- Options for Texinfo output ------------------------------------------- |
| |
| # Grouping the document tree into Texinfo files. List of tuples |
| # (source start file, target name, title, author, |
| # dir menu entry, description, category) |
| texinfo_documents = [ |
| (master_doc, 'TheMesa3DGraphicsLibrary', 'The Mesa 3D Graphics Library Documentation', |
| author, 'TheMesa3DGraphicsLibrary', 'One line description of project.', |
| 'Miscellaneous'), |
| ] |
| |
| # -- Options for Graphviz ------------------------------------------------- |
| |
| graphviz_output_format = 'svg' |
| |
| # -- Options for hawkmoth ------------------------------------------------- |
| |
| hawkmoth_root = os.path.abspath(os.pardir) |
| mesa_root = os.path.join(os.path.dirname(__file__), os.pardir) |
| hawkmoth_clang = [ |
| '-I{}/docs/header-stubs/'.format(mesa_root), |
| '-I{}/include/'.format(mesa_root), |
| '-I{}/src/'.format(mesa_root), |
| '-I{}/src/gallium/include/'.format(mesa_root), |
| '-I{}/src/intel/'.format(mesa_root), |
| '-I{}/src/mesa/'.format(mesa_root), |
| '-DHAVE_STRUCT_TIMESPEC', |
| '-DHAVE_PTHREAD', |
| '-DHAVE_ENDIAN_H', |
| ] |
| hawkmoth_clang.extend(compiler.get_include_args()) |
| |
| # helpers for definining parameter direction |
| rst_prolog = ''' |
| .. |in| replace:: **[in]** |
| .. |out| replace:: **[out]** |
| .. |inout| replace:: **[inout]** |
| ''' |