Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
on the way for 3.22.2
[simgrid.git] / docs / source / conf.py
1 # -*- coding: utf-8 -*-
2 #
3 # Configuration file for the Sphinx documentation builder.
4 #
5 # This file does only contain a selection of the most common options. For a
6 # full list see the documentation:
7 # http://www.sphinx-doc.org/en/master/config
8
9 # -- Path setup --------------------------------------------------------------
10
11 # If extensions (or modules to document with autodoc) are in another directory,
12 # add these directories to sys.path here. If the directory is relative to the
13 # documentation root, use os.path.abspath to make it absolute, like shown here.
14 #
15 import os
16 import subprocess
17
18 #┬áSearch for our extensions too
19 import sys
20 sys.path.append(os.path.abspath('_ext'))
21
22 # -- Run doxygen on readthedocs.org ------------------------------------------
23
24 read_the_docs_build = os.environ.get('READTHEDOCS', None) == 'True'
25
26 if read_the_docs_build:
27     subprocess.call('cd source; doxygen', shell=True)
28     subprocess.call('javasphinx-apidoc --force -o source/java/ ../src/bindings/java/org/simgrid/msg', shell=True)
29     subprocess.call('rm source/java/packages.rst', shell=True)
30
31 # -- Project information -----------------------------------------------------
32
33 project = u'SimGrid'
34 copyright = u'2002-2019, The SimGrid Team'
35 author = u'The SimGrid Team'
36
37 # The short X.Y version
38 version = u'3.22.2'
39 # The full version, including alpha/beta/rc tags
40 release = u'3.22.2'
41
42 # -- General configuration ---------------------------------------------------
43
44 # If your documentation needs a minimal Sphinx version, state it here.
45 #
46 # needs_sphinx = '1.0'
47
48 # Add any Sphinx extension module names here, as strings. They can be
49 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
50 # ones.
51 extensions = [
52     'sphinx.ext.todo',
53     'breathe',
54     #    'exhale',
55     'sphinx.ext.autodoc',
56     'sphinx.ext.intersphinx',
57     #    'sphinx.ext.napoleon',
58     'sphinx.ext.autosummary',
59     'hidden_code_block',
60     'javasphinx',
61 ]
62
63 todo_include_todos = True
64
65 breathe_projects = {'simgrid': '../build/xml'}
66 breathe_default_project = "simgrid"
67
68 # Setup the exhale extension
69
70 exhale_args = {
71     # These arguments are required
72     "containmentFolder": "./api",
73     "rootFileName": "library_root.rst",
74     "rootFileTitle": "SimGrid Full API",
75     "doxygenStripFromPath": "..",
76     # Suggested optional arguments
77     "createTreeView": True,
78     "exhaleExecutesDoxygen": False,
79     # "exhaleUseDoxyfile":     True,
80 }
81
82
83 # For cross-ref generation
84 primary_domain = 'cpp'
85
86
87 # Add any paths that contain templates here, relative to this directory.
88 # templates_path = ['_templates']
89
90 # The suffix(es) of source filenames.
91 # You can specify multiple suffix as a list of string: ['.rst', '.md']
92 source_suffix = '.rst'
93
94 # The master toctree document.
95 master_doc = 'index'
96
97 # The language for content autogenerated by Sphinx. Refer to documentation
98 # for a list of supported languages.
99 #
100 # This is also used if you do content translation via gettext catalogs.
101 # Usually you set "language" from the command line for these cases.
102 language = None
103
104 # List of patterns, relative to source directory, that match files and
105 # directories to ignore when looking for source files.
106 # This pattern also affects html_static_path and html_extra_path .
107 exclude_patterns = []
108
109 # The name of the Pygments (syntax highlighting) style to use.
110 pygments_style = 'sphinx'
111
112 # -- Options for HTML output -------------------------------------------------
113
114 # The theme to use for HTML and HTML Help pages.  See the documentation for
115 # a list of builtin themes.
116 #
117 html_theme = 'sphinx_rtd_theme'
118
119 # Theme options are theme-specific and customize the look and feel of a theme
120 # further.  For a list of options available for each theme, see the
121 # documentation.
122 #
123 html_theme_options = {
124     'navigation_depth': 4,
125     'sticky_navigation': True,
126     'display_version': True,
127     'includehidden': True,
128 }
129
130 # Add any paths that contain custom static files (such as style sheets) here,
131 # relative to this directory. They are copied after the builtin static files,
132 # so a file named "default.css" will overwrite the builtin "default.css".
133 # html_static_path = ['_static']
134
135 # Custom sidebar templates, must be a dictionary that maps document names
136 # to template names.
137 #
138 # The default sidebars (for documents that don't match any pattern) are
139 # defined by theme itself.  Builtin themes are using these templates by
140 # default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
141 # 'searchbox.html']``.
142 #
143 # html_sidebars = {'**': ['localtoc.html', 'relations.html', 'searchbox.html']}
144
145 # -- Options for HTMLHelp output ---------------------------------------------
146
147 # Output file base name for HTML help builder.
148 htmlhelp_basename = 'SimGrid-doc'
149
150 # -- Options for GitLab integration ------------------------------------------
151
152 html_context = {
153     "display_gitlab": True,  # Integrate Gitlab
154     "gitlab_host": "framagit.org",
155     "gitlab_user": "simgrid",
156     "gitlab_repo": "simgrid",
157     "gitlab_version": "master",  # Version
158     "conf_py_path": "/docs/source/",  # Path in the checkout to the docs root
159 }