xref: /llvm-project/bolt/docs/conf.py (revision f98ee40f4b5d7474fc67e82824bf6abbaedb7b1c)
175c06958SAmir Ayupov# -*- coding: utf-8 -*-
275c06958SAmir Ayupov#
375c06958SAmir Ayupov# BOLT documentation build configuration file.
475c06958SAmir Ayupov#
575c06958SAmir Ayupov# This file is execfile()d with the current directory set to its containing dir.
675c06958SAmir Ayupov#
775c06958SAmir Ayupov# Note that not all possible configuration values are present in this
875c06958SAmir Ayupov# autogenerated file.
975c06958SAmir Ayupov#
1075c06958SAmir Ayupov# All configuration values have a default; values that are commented out
1175c06958SAmir Ayupov# serve to show the default.
1275c06958SAmir Ayupov
1375c06958SAmir Ayupovimport sys, os
1475c06958SAmir Ayupovfrom datetime import date
1575c06958SAmir Ayupov
1675c06958SAmir Ayupov# If extensions (or modules to document with autodoc) are in another directory,
1775c06958SAmir Ayupov# add these directories to sys.path here. If the directory is relative to the
1875c06958SAmir Ayupov# documentation root, use os.path.abspath to make it absolute, like shown here.
1975c06958SAmir Ayupov# sys.path.insert(0, os.path.abspath('.'))
2075c06958SAmir Ayupov
2175c06958SAmir Ayupov# -- General configuration -----------------------------------------------------
2275c06958SAmir Ayupov
2375c06958SAmir Ayupov# If your documentation needs a minimal Sphinx version, state it here.
2475c06958SAmir Ayupov# needs_sphinx = '1.0'
2575c06958SAmir Ayupov
2675c06958SAmir Ayupov# Add any Sphinx extension module names here, as strings. They can be extensions
2775c06958SAmir Ayupov# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
28*f98ee40fSTobias Hietaextensions = ["sphinx.ext.intersphinx", "sphinx.ext.todo"]
2975c06958SAmir Ayupov
3075c06958SAmir Ayupov# Add any paths that contain templates here, relative to this directory.
31*f98ee40fSTobias Hietatemplates_path = ["_templates"]
3275c06958SAmir Ayupov
3375c06958SAmir Ayupov# The suffix of source filenames.
34*f98ee40fSTobias Hietasource_suffix = ".rst"
3575c06958SAmir Ayupov
3675c06958SAmir Ayupov# The encoding of source files.
3775c06958SAmir Ayupov# source_encoding = 'utf-8-sig'
3875c06958SAmir Ayupov
3975c06958SAmir Ayupov# The master toctree document.
40*f98ee40fSTobias Hietamaster_doc = "index"
4175c06958SAmir Ayupov
4275c06958SAmir Ayupov# General information about the project.
43*f98ee40fSTobias Hietaproject = "BOLT"
44*f98ee40fSTobias Hietacopyright = "2015-%d, BOLT team" % date.today().year
4575c06958SAmir Ayupov
4675c06958SAmir Ayupov# The language for content autogenerated by Sphinx. Refer to documentation
4775c06958SAmir Ayupov# for a list of supported languages.
4875c06958SAmir Ayupov# language = None
4975c06958SAmir Ayupov
5075c06958SAmir Ayupov# There are two options for replacing |today|: either, you set today to some
5175c06958SAmir Ayupov# non-false value, then it is used:
5275c06958SAmir Ayupov# today = ''
5375c06958SAmir Ayupov# Else, today_fmt is used as the format for a strftime call.
54*f98ee40fSTobias Hietatoday_fmt = "%Y-%m-%d"
5575c06958SAmir Ayupov
5675c06958SAmir Ayupov# List of patterns, relative to source directory, that match files and
5775c06958SAmir Ayupov# directories to ignore when looking for source files.
58*f98ee40fSTobias Hietaexclude_patterns = ["_build"]
5975c06958SAmir Ayupov
6075c06958SAmir Ayupov# The reST default role (used for this markup: `text`) to use for all documents.
6175c06958SAmir Ayupov# default_role = None
6275c06958SAmir Ayupov
6375c06958SAmir Ayupov# If true, '()' will be appended to :func: etc. cross-reference text.
6475c06958SAmir Ayupov# add_function_parentheses = True
6575c06958SAmir Ayupov
6675c06958SAmir Ayupov# If true, the current module name will be prepended to all description
6775c06958SAmir Ayupov# unit titles (such as .. function::).
6875c06958SAmir Ayupov# add_module_names = True
6975c06958SAmir Ayupov
7075c06958SAmir Ayupov# If true, sectionauthor and moduleauthor directives will be shown in the
7175c06958SAmir Ayupov# output. They are ignored by default.
7275c06958SAmir Ayupovshow_authors = True
7375c06958SAmir Ayupov
7475c06958SAmir Ayupov# The name of the Pygments (syntax highlighting) style to use.
75*f98ee40fSTobias Hietapygments_style = "friendly"
7675c06958SAmir Ayupov
7775c06958SAmir Ayupov# A list of ignored prefixes for module index sorting.
7875c06958SAmir Ayupov# modindex_common_prefix = []
7975c06958SAmir Ayupov
8075c06958SAmir Ayupov
8175c06958SAmir Ayupov# -- Options for HTML output ---------------------------------------------------
8275c06958SAmir Ayupov
8375c06958SAmir Ayupov# The theme to use for HTML and HTML Help pages.  See the documentation for
8475c06958SAmir Ayupov# a list of builtin themes.
85*f98ee40fSTobias Hietahtml_theme = "haiku"
8675c06958SAmir Ayupov
8775c06958SAmir Ayupov# Theme options are theme-specific and customize the look and feel of a theme
8875c06958SAmir Ayupov# further.  For a list of options available for each theme, see the
8975c06958SAmir Ayupov# documentation.
9075c06958SAmir Ayupov# html_theme_options = {}
9175c06958SAmir Ayupov
9275c06958SAmir Ayupov# Add any paths that contain custom themes here, relative to this directory.
9375c06958SAmir Ayupovhtml_theme_path = ["."]
9475c06958SAmir Ayupov
9575c06958SAmir Ayupov# The name for this set of Sphinx documents.  If None, it defaults to
9675c06958SAmir Ayupov# "<project> v<release> documentation".
9775c06958SAmir Ayupov# html_title = None
9875c06958SAmir Ayupov
9975c06958SAmir Ayupov# A shorter title for the navigation bar.  Default is the same as html_title.
10075c06958SAmir Ayupov# html_short_title = None
10175c06958SAmir Ayupov
10275c06958SAmir Ayupov# The name of an image file (relative to this directory) to place at the top
10375c06958SAmir Ayupov# of the sidebar.
10475c06958SAmir Ayupov# html_logo = None
10575c06958SAmir Ayupov
10675c06958SAmir Ayupov# If given, this must be the name of an image file (path relative to the
10775c06958SAmir Ayupov# configuration directory) that is the favicon of the docs. Modern browsers use
10875c06958SAmir Ayupov# this as icon for tabs, windows and bookmarks. It should be a Windows-style
10975c06958SAmir Ayupov# icon file (.ico), which is 16x16 or 32x32 pixels large. Default: None.  The
11075c06958SAmir Ayupov# image file will be copied to the _static directory of the output HTML, but
11175c06958SAmir Ayupov# only if the file does not already exist there.
112*f98ee40fSTobias Hietahtml_favicon = "_static/favicon.ico"
11375c06958SAmir Ayupov
11475c06958SAmir Ayupov# Add any paths that contain custom static files (such as style sheets) here,
11575c06958SAmir Ayupov# relative to this directory. They are copied after the builtin static files,
11675c06958SAmir Ayupov# so a file named "default.css" will overwrite the builtin "default.css".
117*f98ee40fSTobias Hietahtml_static_path = ["_static"]
11875c06958SAmir Ayupov
11975c06958SAmir Ayupov# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
12075c06958SAmir Ayupov# using the given strftime format.
121*f98ee40fSTobias Hietahtml_last_updated_fmt = "%Y-%m-%d"
12275c06958SAmir Ayupov
12375c06958SAmir Ayupov# If true, SmartyPants will be used to convert quotes and dashes to
12475c06958SAmir Ayupov# typographically correct entities.
12575c06958SAmir Ayupov# html_use_smartypants = True
12675c06958SAmir Ayupov
12775c06958SAmir Ayupov# Custom sidebar templates, maps document names to template names.
128*f98ee40fSTobias Hietahtml_sidebars = {"index": ["indexsidebar.html"]}
12975c06958SAmir Ayupov
13075c06958SAmir Ayupov# Additional templates that should be rendered to pages, maps page names to
13175c06958SAmir Ayupov# template names.
13275c06958SAmir Ayupov# html_additional_pages = {'index': 'index.html'}
13375c06958SAmir Ayupov
13475c06958SAmir Ayupov# If false, no module index is generated.
13575c06958SAmir Ayupov# html_domain_indices = True
13675c06958SAmir Ayupov
13775c06958SAmir Ayupov# If false, no index is generated.
13875c06958SAmir Ayupov# html_use_index = True
13975c06958SAmir Ayupov
14075c06958SAmir Ayupov# If true, the index is split into individual pages for each letter.
14175c06958SAmir Ayupov# html_split_index = False
14275c06958SAmir Ayupov
14375c06958SAmir Ayupov# If true, links to the reST sources are added to the pages.
14475c06958SAmir Ayupovhtml_show_sourcelink = True
14575c06958SAmir Ayupov
14675c06958SAmir Ayupov# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
14775c06958SAmir Ayupov# html_show_sphinx = True
14875c06958SAmir Ayupov
14975c06958SAmir Ayupov# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
15075c06958SAmir Ayupov# html_show_copyright = True
15175c06958SAmir Ayupov
15275c06958SAmir Ayupov# If true, an OpenSearch description file will be output, and all pages will
15375c06958SAmir Ayupov# contain a <link> tag referring to it.  The value of this option must be the
15475c06958SAmir Ayupov# base URL from which the finished HTML is served.
15575c06958SAmir Ayupov# html_use_opensearch = ''
15675c06958SAmir Ayupov
15775c06958SAmir Ayupov# This is the file name suffix for HTML files (e.g. ".xhtml").
15875c06958SAmir Ayupov# html_file_suffix = None
15975c06958SAmir Ayupov
16075c06958SAmir Ayupov# Output file base name for HTML help builder.
161*f98ee40fSTobias Hietahtmlhelp_basename = "boltdoc"
16275c06958SAmir Ayupov
16375c06958SAmir Ayupov
16475c06958SAmir Ayupov# -- Options for LaTeX output --------------------------------------------------
16575c06958SAmir Ayupov
16675c06958SAmir Ayupovlatex_elements = {
16775c06958SAmir Ayupov    # The paper size ('letterpaper' or 'a4paper').
16875c06958SAmir Ayupov    #'papersize': 'letterpaper',
16975c06958SAmir Ayupov    # The font size ('10pt', '11pt' or '12pt').
17075c06958SAmir Ayupov    #'pointsize': '10pt',
17175c06958SAmir Ayupov    # Additional stuff for the LaTeX preamble.
17275c06958SAmir Ayupov    #'preamble': '',
17375c06958SAmir Ayupov}
17475c06958SAmir Ayupov
17575c06958SAmir Ayupov# Grouping the document tree into LaTeX files. List of tuples
17675c06958SAmir Ayupov# (source start file, target name, title, author, documentclass [howto/manual]).
17775c06958SAmir Ayupovlatex_documents = [
178*f98ee40fSTobias Hieta    ("contents", "bolt.tex", "BOLT Documentation", "LLVM project", "manual"),
17975c06958SAmir Ayupov]
18075c06958SAmir Ayupov
18175c06958SAmir Ayupov# The name of an image file (relative to this directory) to place at the top of
18275c06958SAmir Ayupov# the title page.
18375c06958SAmir Ayupov# latex_logo = None
18475c06958SAmir Ayupov
18575c06958SAmir Ayupov# For "manual" documents, if this is true, then toplevel headings are parts,
18675c06958SAmir Ayupov# not chapters.
18775c06958SAmir Ayupov# latex_use_parts = False
18875c06958SAmir Ayupov
18975c06958SAmir Ayupov# If true, show page references after internal links.
19075c06958SAmir Ayupov# latex_show_pagerefs = False
19175c06958SAmir Ayupov
19275c06958SAmir Ayupov# If true, show URL addresses after external links.
19375c06958SAmir Ayupov# latex_show_urls = False
19475c06958SAmir Ayupov
19575c06958SAmir Ayupov# Documents to append as an appendix to all manuals.
19675c06958SAmir Ayupov# latex_appendices = []
19775c06958SAmir Ayupov
19875c06958SAmir Ayupov# If false, no module index is generated.
19975c06958SAmir Ayupov# latex_domain_indices = True
20075c06958SAmir Ayupov
20175c06958SAmir Ayupov
20275c06958SAmir Ayupov# -- Options for manual page output --------------------------------------------
20375c06958SAmir Ayupov
20475c06958SAmir Ayupov# One entry per manual page. List of tuples
20575c06958SAmir Ayupov# (source start file, name, description, authors, manual section).
206*f98ee40fSTobias Hietaman_pages = [("contents", "bolt", "BOLT Documentation", ["LLVM project"], 1)]
20775c06958SAmir Ayupov
20875c06958SAmir Ayupov# If true, show URL addresses after external links.
20975c06958SAmir Ayupov# man_show_urls = False
21075c06958SAmir Ayupov
21175c06958SAmir Ayupov
21275c06958SAmir Ayupov# -- Options for Texinfo output ------------------------------------------------
21375c06958SAmir Ayupov
21475c06958SAmir Ayupov# Grouping the document tree into Texinfo files. List of tuples
21575c06958SAmir Ayupov# (source start file, target name, title, author,
21675c06958SAmir Ayupov#  dir menu entry, description, category)
21775c06958SAmir Ayupovtexinfo_documents = [
218*f98ee40fSTobias Hieta    (
219*f98ee40fSTobias Hieta        "contents",
220*f98ee40fSTobias Hieta        "BOLT",
221*f98ee40fSTobias Hieta        "BOLT Documentation",
222*f98ee40fSTobias Hieta        "LLVM project",
223*f98ee40fSTobias Hieta        "BOLT",
224*f98ee40fSTobias Hieta        "Binary Optimization and Layout Tool",
225*f98ee40fSTobias Hieta        "Miscellaneous",
226*f98ee40fSTobias Hieta    ),
22775c06958SAmir Ayupov]
22875c06958SAmir Ayupov
22975c06958SAmir Ayupov# Documents to append as an appendix to all manuals.
23075c06958SAmir Ayupov# texinfo_appendices = []
23175c06958SAmir Ayupov
23275c06958SAmir Ayupov# If false, no module index is generated.
23375c06958SAmir Ayupov# texinfo_domain_indices = True
23475c06958SAmir Ayupov
23575c06958SAmir Ayupov# How to display URL addresses: 'footnote', 'no', or 'inline'.
23675c06958SAmir Ayupov# texinfo_show_urls = 'footnote'
23775c06958SAmir Ayupov
23875c06958SAmir Ayupov
23975c06958SAmir Ayupov# FIXME: Define intersphinx configuration.
24075c06958SAmir Ayupovintersphinx_mapping = {}
24175c06958SAmir Ayupov
24275c06958SAmir Ayupov
24375c06958SAmir Ayupov# -- Options for extensions ----------------------------------------------------
24475c06958SAmir Ayupov
24575c06958SAmir Ayupov# Enable this if you want TODOs to show up in the generated documentation.
24675c06958SAmir Ayupovtodo_include_todos = True
247