1ffe3c632Sopenharmony_ci# -*- coding: utf-8 -*-
2ffe3c632Sopenharmony_ci# Protocol Buffers - Google's data interchange format
3ffe3c632Sopenharmony_ci# Copyright 2019 Google LLC.  All rights reserved.
4ffe3c632Sopenharmony_ci# https://developers.google.com/protocol-buffers/
5ffe3c632Sopenharmony_ci#
6ffe3c632Sopenharmony_ci# Redistribution and use in source and binary forms, with or without
7ffe3c632Sopenharmony_ci# modification, are permitted provided that the following conditions are
8ffe3c632Sopenharmony_ci# met:
9ffe3c632Sopenharmony_ci#
10ffe3c632Sopenharmony_ci#   * Redistributions of source code must retain the above copyright
11ffe3c632Sopenharmony_ci# notice, this list of conditions and the following disclaimer.
12ffe3c632Sopenharmony_ci#   * Redistributions in binary form must reproduce the above
13ffe3c632Sopenharmony_ci# copyright notice, this list of conditions and the following disclaimer
14ffe3c632Sopenharmony_ci# in the documentation and/or other materials provided with the
15ffe3c632Sopenharmony_ci# distribution.
16ffe3c632Sopenharmony_ci#   * Neither the name of Google Inc. nor the names of its
17ffe3c632Sopenharmony_ci# contributors may be used to endorse or promote products derived from
18ffe3c632Sopenharmony_ci# this software without specific prior written permission.
19ffe3c632Sopenharmony_ci#
20ffe3c632Sopenharmony_ci# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21ffe3c632Sopenharmony_ci# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22ffe3c632Sopenharmony_ci# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23ffe3c632Sopenharmony_ci# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24ffe3c632Sopenharmony_ci# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25ffe3c632Sopenharmony_ci# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26ffe3c632Sopenharmony_ci# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27ffe3c632Sopenharmony_ci# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28ffe3c632Sopenharmony_ci# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29ffe3c632Sopenharmony_ci# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30ffe3c632Sopenharmony_ci# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31ffe3c632Sopenharmony_ci
32ffe3c632Sopenharmony_ci# Configuration file for the Sphinx documentation builder.
33ffe3c632Sopenharmony_ci#
34ffe3c632Sopenharmony_ci# This file does only contain a selection of the most common options. For a
35ffe3c632Sopenharmony_ci# full list see the documentation:
36ffe3c632Sopenharmony_ci# http://www.sphinx-doc.org/en/master/config
37ffe3c632Sopenharmony_ci
38ffe3c632Sopenharmony_ci# -- Path setup --------------------------------------------------------------
39ffe3c632Sopenharmony_ci
40ffe3c632Sopenharmony_ci# If extensions (or modules to document with autodoc) are in another directory,
41ffe3c632Sopenharmony_ci# add these directories to sys.path here. If the directory is relative to the
42ffe3c632Sopenharmony_ci# documentation root, use os.path.abspath to make it absolute, like shown here.
43ffe3c632Sopenharmony_ci#
44ffe3c632Sopenharmony_ciimport os
45ffe3c632Sopenharmony_ci# import sys
46ffe3c632Sopenharmony_ci# sys.path.insert(0, os.path.abspath('.'))
47ffe3c632Sopenharmony_ciimport google.protobuf
48ffe3c632Sopenharmony_ci
49ffe3c632Sopenharmony_ci# -- Project information -----------------------------------------------------
50ffe3c632Sopenharmony_ci
51ffe3c632Sopenharmony_ciproject = u"Protocol Buffers"
52ffe3c632Sopenharmony_cicopyright = u"2008, Google LLC"
53ffe3c632Sopenharmony_ciauthor = u"Google LLC"
54ffe3c632Sopenharmony_ci
55ffe3c632Sopenharmony_ci# The short X.Y version
56ffe3c632Sopenharmony_civersion = u""
57ffe3c632Sopenharmony_ci# The full version, including alpha/beta/rc tags
58ffe3c632Sopenharmony_cirelease = google.protobuf.__version__
59ffe3c632Sopenharmony_ci
60ffe3c632Sopenharmony_ci
61ffe3c632Sopenharmony_ci# -- General configuration ---------------------------------------------------
62ffe3c632Sopenharmony_ci
63ffe3c632Sopenharmony_ci# If your documentation needs a minimal Sphinx version, state it here.
64ffe3c632Sopenharmony_ci#
65ffe3c632Sopenharmony_ci# needs_sphinx = '1.0'
66ffe3c632Sopenharmony_ci
67ffe3c632Sopenharmony_ci# Add any Sphinx extension module names here, as strings. They can be
68ffe3c632Sopenharmony_ci# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
69ffe3c632Sopenharmony_ci# ones.
70ffe3c632Sopenharmony_ciextensions = [
71ffe3c632Sopenharmony_ci  "sphinx.ext.autosummary",
72ffe3c632Sopenharmony_ci  "sphinx.ext.ifconfig",
73ffe3c632Sopenharmony_ci  "sphinx.ext.intersphinx",
74ffe3c632Sopenharmony_ci  "sphinx.ext.napoleon",
75ffe3c632Sopenharmony_ci]
76ffe3c632Sopenharmony_ci
77ffe3c632Sopenharmony_ci# Add any paths that contain templates here, relative to this directory.
78ffe3c632Sopenharmony_citemplates_path = ["_templates"]
79ffe3c632Sopenharmony_ci
80ffe3c632Sopenharmony_ci# The suffix(es) of source filenames.
81ffe3c632Sopenharmony_ci# You can specify multiple suffix as a list of string:
82ffe3c632Sopenharmony_ci#
83ffe3c632Sopenharmony_ci# source_suffix = ['.rst', '.md']
84ffe3c632Sopenharmony_cisource_suffix = ".rst"
85ffe3c632Sopenharmony_ci
86ffe3c632Sopenharmony_ci# The master toctree document.
87ffe3c632Sopenharmony_cimaster_doc = "index"
88ffe3c632Sopenharmony_ci
89ffe3c632Sopenharmony_ci# The language for content autogenerated by Sphinx. Refer to documentation
90ffe3c632Sopenharmony_ci# for a list of supported languages.
91ffe3c632Sopenharmony_ci#
92ffe3c632Sopenharmony_ci# This is also used if you do content translation via gettext catalogs.
93ffe3c632Sopenharmony_ci# Usually you set "language" from the command line for these cases.
94ffe3c632Sopenharmony_cilanguage = None
95ffe3c632Sopenharmony_ci
96ffe3c632Sopenharmony_ci# List of patterns, relative to source directory, that match files and
97ffe3c632Sopenharmony_ci# directories to ignore when looking for source files.
98ffe3c632Sopenharmony_ci# This pattern also affects html_static_path and html_extra_path.
99ffe3c632Sopenharmony_ciexclude_patterns = [u"_build", "Thumbs.db", ".DS_Store"]
100ffe3c632Sopenharmony_ci
101ffe3c632Sopenharmony_ci# The name of the Pygments (syntax highlighting) style to use.
102ffe3c632Sopenharmony_cipygments_style = None
103ffe3c632Sopenharmony_ci
104ffe3c632Sopenharmony_ci
105ffe3c632Sopenharmony_ci# -- Options for HTML output -------------------------------------------------
106ffe3c632Sopenharmony_ci
107ffe3c632Sopenharmony_ci# The theme to use for HTML and HTML Help pages.  See the documentation for
108ffe3c632Sopenharmony_ci# a list of builtin themes.
109ffe3c632Sopenharmony_ci#
110ffe3c632Sopenharmony_cihtml_theme = "alabaster"
111ffe3c632Sopenharmony_ci
112ffe3c632Sopenharmony_ci# Remove JavaScript.
113ffe3c632Sopenharmony_cihtml_js_files = []
114ffe3c632Sopenharmony_ci
115ffe3c632Sopenharmony_ci# Theme options are theme-specific and customize the look and feel of a theme
116ffe3c632Sopenharmony_ci# further.  For a list of options available for each theme, see the
117ffe3c632Sopenharmony_ci# documentation.
118ffe3c632Sopenharmony_ci#
119ffe3c632Sopenharmony_ci# html_theme_options = {}
120ffe3c632Sopenharmony_ci
121ffe3c632Sopenharmony_ci# Add any paths that contain custom static files (such as style sheets) here,
122ffe3c632Sopenharmony_ci# relative to this directory. They are copied after the builtin static files,
123ffe3c632Sopenharmony_ci# so a file named "default.css" will overwrite the builtin "default.css".
124ffe3c632Sopenharmony_cihtml_static_path = ["_static"]
125ffe3c632Sopenharmony_ci
126ffe3c632Sopenharmony_cihtml_show_sourcelink = True
127ffe3c632Sopenharmony_ci
128ffe3c632Sopenharmony_ci# Custom sidebar templates, must be a dictionary that maps document names
129ffe3c632Sopenharmony_ci# to template names.
130ffe3c632Sopenharmony_ci#
131ffe3c632Sopenharmony_ci# The default sidebars (for documents that don't match any pattern) are
132ffe3c632Sopenharmony_ci# defined by theme itself.  Builtin themes are using these templates by
133ffe3c632Sopenharmony_ci# default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
134ffe3c632Sopenharmony_ci# 'searchbox.html']``.
135ffe3c632Sopenharmony_ci
136ffe3c632Sopenharmony_ci# Remove searchbox.html to avoid embedded JavaScript.
137ffe3c632Sopenharmony_cihtml_sidebars = {
138ffe3c632Sopenharmony_ci  "**": [
139ffe3c632Sopenharmony_ci    "globaltoc.html", "localtoc.html", "relations.html", "sourcelink.html",
140ffe3c632Sopenharmony_ci  ],
141ffe3c632Sopenharmony_ci}
142ffe3c632Sopenharmony_ci
143ffe3c632Sopenharmony_ci
144ffe3c632Sopenharmony_ci# -- Options for HTMLHelp output ---------------------------------------------
145ffe3c632Sopenharmony_ci
146ffe3c632Sopenharmony_ci# Output file base name for HTML help builder.
147ffe3c632Sopenharmony_cihtmlhelp_basename = "ProtocolBuffersdoc"
148ffe3c632Sopenharmony_ci
149ffe3c632Sopenharmony_ci
150ffe3c632Sopenharmony_ci# -- Options for LaTeX output ------------------------------------------------
151ffe3c632Sopenharmony_ci
152ffe3c632Sopenharmony_cilatex_elements = {
153ffe3c632Sopenharmony_ci  # The paper size ('letterpaper' or 'a4paper').
154ffe3c632Sopenharmony_ci  #
155ffe3c632Sopenharmony_ci  # 'papersize': 'letterpaper',
156ffe3c632Sopenharmony_ci  # The font size ('10pt', '11pt' or '12pt').
157ffe3c632Sopenharmony_ci  #
158ffe3c632Sopenharmony_ci  # 'pointsize': '10pt',
159ffe3c632Sopenharmony_ci  # Additional stuff for the LaTeX preamble.
160ffe3c632Sopenharmony_ci  #
161ffe3c632Sopenharmony_ci  # 'preamble': '',
162ffe3c632Sopenharmony_ci  # Latex figure (float) alignment
163ffe3c632Sopenharmony_ci  #
164ffe3c632Sopenharmony_ci  # 'figure_align': 'htbp',
165ffe3c632Sopenharmony_ci}
166ffe3c632Sopenharmony_ci
167ffe3c632Sopenharmony_ci# Grouping the document tree into LaTeX files. List of tuples
168ffe3c632Sopenharmony_ci# (source start file, target name, title,
169ffe3c632Sopenharmony_ci#  author, documentclass [howto, manual, or own class]).
170ffe3c632Sopenharmony_cilatex_documents = [
171ffe3c632Sopenharmony_ci  (
172ffe3c632Sopenharmony_ci    master_doc,
173ffe3c632Sopenharmony_ci    "ProtocolBuffers.tex",
174ffe3c632Sopenharmony_ci    "Protocol Buffers Documentation",
175ffe3c632Sopenharmony_ci    "Google LLC",
176ffe3c632Sopenharmony_ci    "manual",
177ffe3c632Sopenharmony_ci  )
178ffe3c632Sopenharmony_ci]
179ffe3c632Sopenharmony_ci
180ffe3c632Sopenharmony_ci
181ffe3c632Sopenharmony_ci# -- Options for manual page output ------------------------------------------
182ffe3c632Sopenharmony_ci
183ffe3c632Sopenharmony_ci# One entry per manual page. List of tuples
184ffe3c632Sopenharmony_ci# (source start file, name, description, authors, manual section).
185ffe3c632Sopenharmony_ciman_pages = [
186ffe3c632Sopenharmony_ci  (
187ffe3c632Sopenharmony_ci    master_doc,  # source start file
188ffe3c632Sopenharmony_ci    "protocolbuffers",  # name
189ffe3c632Sopenharmony_ci    "Protocol Buffers Documentation",  # description
190ffe3c632Sopenharmony_ci    [author],  # authors
191ffe3c632Sopenharmony_ci    1,  # manual section
192ffe3c632Sopenharmony_ci  )
193ffe3c632Sopenharmony_ci]
194ffe3c632Sopenharmony_ci
195ffe3c632Sopenharmony_ci
196ffe3c632Sopenharmony_ci# -- Options for Texinfo output ----------------------------------------------
197ffe3c632Sopenharmony_ci
198ffe3c632Sopenharmony_ci# Grouping the document tree into Texinfo files. List of tuples
199ffe3c632Sopenharmony_ci# (source start file, target name, title, author,
200ffe3c632Sopenharmony_ci#  dir menu entry, description, category)
201ffe3c632Sopenharmony_citexinfo_documents = [
202ffe3c632Sopenharmony_ci  (
203ffe3c632Sopenharmony_ci    master_doc,
204ffe3c632Sopenharmony_ci    "ProtocolBuffers",
205ffe3c632Sopenharmony_ci    u"Protocol Buffers Documentation",
206ffe3c632Sopenharmony_ci    author,
207ffe3c632Sopenharmony_ci    "ProtocolBuffers",
208ffe3c632Sopenharmony_ci    "One line description of project.",
209ffe3c632Sopenharmony_ci    "Miscellaneous",
210ffe3c632Sopenharmony_ci  )
211ffe3c632Sopenharmony_ci]
212ffe3c632Sopenharmony_ci
213ffe3c632Sopenharmony_ci
214ffe3c632Sopenharmony_ci# -- Options for Epub output -------------------------------------------------
215ffe3c632Sopenharmony_ci
216ffe3c632Sopenharmony_ci# Bibliographic Dublin Core info.
217ffe3c632Sopenharmony_ciepub_title = project
218ffe3c632Sopenharmony_ci
219ffe3c632Sopenharmony_ci# The unique identifier of the text. This can be a ISBN number
220ffe3c632Sopenharmony_ci# or the project homepage.
221ffe3c632Sopenharmony_ci#
222ffe3c632Sopenharmony_ci# epub_identifier = ''
223ffe3c632Sopenharmony_ci
224ffe3c632Sopenharmony_ci# A unique identification for the text.
225ffe3c632Sopenharmony_ci#
226ffe3c632Sopenharmony_ci# epub_uid = ''
227ffe3c632Sopenharmony_ci
228ffe3c632Sopenharmony_ci# A list of files that should not be packed into the epub file.
229ffe3c632Sopenharmony_ciepub_exclude_files = ["search.html"]
230ffe3c632Sopenharmony_ci
231ffe3c632Sopenharmony_ci
232ffe3c632Sopenharmony_ci# -- Extension configuration -------------------------------------------------
233ffe3c632Sopenharmony_ci
234ffe3c632Sopenharmony_ci# -- Options for autosummary extension ---------------------------------------
235ffe3c632Sopenharmony_ciautosummary_generate = True
236ffe3c632Sopenharmony_ci
237ffe3c632Sopenharmony_ci# -- Options for intersphinx extension ---------------------------------------
238ffe3c632Sopenharmony_ci
239ffe3c632Sopenharmony_ci# Example configuration for intersphinx: refer to the Python standard library.
240ffe3c632Sopenharmony_ciintersphinx_mapping = {"https://docs.python.org/": None}
241ffe3c632Sopenharmony_ci
242ffe3c632Sopenharmony_ci# -- Config values -----------------------------------------------------------
243ffe3c632Sopenharmony_ci# The setup() function is needed to add configuration values to the Sphinx
244ffe3c632Sopenharmony_ci# builder. We use this to show a banner when built on Read the Docs.
245ffe3c632Sopenharmony_ci# https://www.sphinx-doc.org/en/master/usage/extensions/ifconfig.html
246ffe3c632Sopenharmony_ci
247ffe3c632Sopenharmony_cidef setup(app):
248ffe3c632Sopenharmony_ci  app.add_config_value(
249ffe3c632Sopenharmony_ci    "build_env",
250ffe3c632Sopenharmony_ci    # Read the Docs sets a READTHEDOCS environment during builds.
251ffe3c632Sopenharmony_ci    # https://docs.readthedocs.io/en/stable/builds.html#build-environment
252ffe3c632Sopenharmony_ci    "readthedocs" if os.getenv("READTHEDOCS") else "",
253ffe3c632Sopenharmony_ci    "env"
254ffe3c632Sopenharmony_ci  )
255