1 # -*- coding: utf-8 -*-
3 # Configuration file for the Sphinx documentation builder.
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
9 # -- Path setup --------------------------------------------------------------
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.
18 # Search for our extensions too
20 sys.path.append(os.path.abspath('_ext'))
22 # -- Run doxygen on readthedocs.org ------------------------------------------
24 read_the_docs_build = os.environ.get('READTHEDOCS', None) == 'True'
26 if read_the_docs_build:
27 subprocess.call('pwd', shell=True) # should be in docs/source
28 subprocess.call('doxygen', shell=True)
29 subprocess.call('javasphinx-apidoc --force -o java/ ../../src/bindings/java/org/simgrid/msg', shell=True)
30 subprocess.call('rm java/packages.rst', shell=True)
32 # -- Project information -----------------------------------------------------
35 copyright = u'2002-2021, The SimGrid Team'
36 author = u'The SimGrid Team'
38 # The short X.Y version
41 # -- General configuration ---------------------------------------------------
43 # If your documentation needs a minimal Sphinx version, state it here.
45 # needs_sphinx = '1.0'
47 # Add any Sphinx extension module names here, as strings. They can be
48 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
54 'sphinx.ext.intersphinx',
55 'sphinx.ext.autosummary',
62 todo_include_todos = True
64 # Setup the breath extension
65 breathe_projects = {'simgrid': '../build/xml'}
66 breathe_default_project = "simgrid"
68 # Setup the autodoxy extension
69 doxygen_xml = os.path.join(os.path.dirname(__file__), "..", "build", "xml")
70 autodoxy_requalified_identifiers = [ # The first element will be substituted into the second one if it's starting an element or preceded by a space
71 ("Activity", "simgrid::s4u::Activity"),
72 ("Actor", "simgrid::s4u::Actor"),
73 ("ActorPtr", "simgrid::s4u::ActorPtr"),
74 ("Barrier", "simgrid::s4u::Barrier"),
75 ("BarrierPtr", "simgrid::s4u::BarrierPtr"),
76 ("Comm", "simgrid::s4u::Comm"),
77 ("CommPtr", "simgrid::s4u::CommPtr"),
78 ("ConditionVariable", "simgrid::s4u::ConditionVariable"),
79 ("ConditionVariablePtr", "simgrid::s4u::ConditionVariablePtr"),
80 ("Disk", "simgrid::s4u::Disk"),
81 ("Exec", "simgrid::s4u::Exec"),
82 ("ExecPtr", "simgrid::s4u::ExecPtr"),
83 ("Host", "simgrid::s4u::Host"),
84 ("s4u::Host", "simgrid::s4u::Host"),
85 ("Engine", "simgrid::s4u::Engine"),
86 ("Io", "simgrid::s4u::Io"),
87 ("Link", "simgrid::s4u::Link"),
88 ("Mailbox", "simgrid::s4u::Mailbox"),
89 ("Mutex", "simgrid::s4u::Mutex"),
90 ("s4u::Mutex", "simgrid::s4u::Mutex"),
91 ("s4u::MutexPtr", "simgrid::s4u::MutexPtr"),
92 ("NetZone", "simgrid::s4u::NetZone"),
93 ("Semaphore", "simgrid::s4u::Semaphore"),
94 ("VirtualMachine", "simgrid::s4u::VirtualMachine"),
97 # Generate a warning for all a cross-reference (such as :func:`myfunc`) that cannot be found
100 ('cpp:identifier', 'boost'),
101 ('cpp:identifier', 'boost::intrusive_ptr<Activity>'),
102 ('cpp:identifier', 'boost::intrusive_ptr<Actor>'),
103 ('cpp:identifier', 'boost::intrusive_ptr<Barrier>'),
104 ('cpp:identifier', 'boost::intrusive_ptr<ConditionVariable>'),
105 ('cpp:identifier', 'boost::intrusive_ptr<Comm>'),
106 ('cpp:identifier', 'boost::intrusive_ptr<Exec>'),
107 ('cpp:identifier', 'boost::intrusive_ptr<Io>'),
108 ('cpp:identifier', 'boost::intrusive_ptr<Mutex>'),
109 ('cpp:identifier', 'boost::intrusive_ptr<Semaphore>'),
110 ('cpp:identifier', 'kernel'),
111 ('cpp:identifier', 'kernel::activity'),
112 ('cpp:identifier', 'kernel::profile'),
113 ('cpp:identifier', 'kernel::resource'),
114 ('cpp:identifier', 'kernel::routing'),
115 ('cpp:identifier', 'simgrid'),
116 ('cpp:identifier', 'simgrid::s4u'),
117 ('cpp:identifier', 'simgrid::xbt'),
118 ('cpp:identifier', 'this_actor'),
119 ('cpp:identifier', 's4u'),
120 ('cpp:identifier', 's4u_Actor'),
121 ('cpp:identifier', 's4u_Barrier'),
122 ('cpp:identifier', 's4u_ConditionVariable'),
123 ('cpp:identifier', 's4u_Host'),
124 ('cpp:identifier', 's4u_NetZone'),
125 ('cpp:identifier', 's4u_Mutex'),
126 ('cpp:identifier', 's4u_Link'),
127 ('cpp:identifier', 's4u_Semaphore'),
128 ('cpp:identifier', 's4u_VirtualMachine'),
129 ('cpp:identifier', 's4u_VM'),
130 ('cpp:identifier', 'size_t'),
131 ('cpp:identifier', 'uint64_t'),
132 ('cpp:identifier', 'xbt'),
133 ('cpp:identifier', 'xbt::string'),
136 # For cross-ref generation
137 primary_domain = 'cpp'
139 # Add any paths that contain templates here, relative to this directory.
140 templates_path = ['_templates']
142 # The suffix(es) of source filenames.
143 # You can specify multiple suffix as a list of string: ['.rst', '.md']
144 source_suffix = '.rst'
146 # The master toctree document.
149 # The language for content autogenerated by Sphinx. Refer to documentation
150 # for a list of supported languages.
152 # This is also used if you do content translation via gettext catalogs.
153 # Usually you set "language" from the command line for these cases.
156 # List of patterns, relative to source directory, that match files and
157 # directories to ignore when looking for source files.
158 # This pattern also affects html_static_path and html_extra_path .
159 exclude_patterns = []
161 # The name of the Pygments (syntax highlighting) style to use.
162 pygments_style = 'sphinx'
164 # -- Options for HTML output -------------------------------------------------
166 # The theme to use for HTML and HTML Help pages. See the documentation for
167 # a list of builtin themes.
169 html_theme = 'sphinx_rtd_theme'
171 # Theme options are theme-specific and customize the look and feel of a theme
172 # further. For a list of options available for each theme, see the
175 html_theme_options = {
176 'navigation_depth': 4,
177 'sticky_navigation': True,
178 'display_version': True,
179 'includehidden': True,
182 # Add any paths that contain custom static files (such as style sheets) here,
183 # relative to this directory. They are copied after the builtin static files,
184 # so a file named "default.css" will overwrite the builtin "default.css".
185 html_static_path = ['_static']
187 # Custom sidebar templates, must be a dictionary that maps document names
190 # The default sidebars (for documents that don't match any pattern) are
191 # defined by theme itself. Builtin themes are using these templates by
192 # default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
193 # 'searchbox.html']``.
195 # html_sidebars = {'**': ['localtoc.html', 'relations.html', 'searchbox.html']}
197 # -- Options for HTMLHelp output ---------------------------------------------
199 # Output file base name for HTML help builder.
200 htmlhelp_basename = 'simgrid-doc'
202 # -- Options for GitLab integration ------------------------------------------
205 "display_gitlab": True, # Integrate Gitlab
206 "gitlab_host": "framagit.org",
207 "gitlab_user": "simgrid",
208 "gitlab_repo": "simgrid",
209 "gitlab_version": "master", # Version
210 "conf_py_path": "/docs/source/", # Path in the checkout to the docs root