Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
docs: build on RTD, configure our theme
[simgrid.git] / docs / source / conf.py
index ddca903..56a3dd6 100644 (file)
 # 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
-# sys.path.insert(0, os.path.abspath('.'))
+import os, subprocess
 
+# Search for our extensions too
+import sys
+sys.path.append(os.path.abspath('_ext'))
+
+# -- Run doxygen on readthedocs.org ------------------------------------------
+import subprocess, os
+
+read_the_docs_build = os.environ.get('READTHEDOCS', None) == 'True'
+
+if read_the_docs_build:
+    subprocess.call('cd source; doxygen', shell=True)
 
 # -- Project information -----------------------------------------------------
 
@@ -39,15 +48,36 @@ release = u'3.21'
 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
 # ones.
 extensions = [
-#    'sphinx.ext.coverage',
-    'sphinx.ext.mathjax',
-#    'sphinx.ext.ifconfig',
+    'sphinx.ext.todo',
     'breathe',
+    'exhale',
+    'hidden_code_block',
 ]
 
-breathe_projects = { 'simgrid': '../doc/xml' }
+todo_include_todos = True
+
+breathe_projects = { 'simgrid': '../build/xml' }
 breathe_default_project = "simgrid"
+
+# Setup the exhale extension
+
+exhale_args = {
+    # These arguments are required
+    "containmentFolder":     "./api",
+    "rootFileName":          "library_root.rst",
+    "rootFileTitle":         "SimGrid Full API",
+    "doxygenStripFromPath":  "..",
+    # Suggested optional arguments
+    "createTreeView":        True,
+    "exhaleExecutesDoxygen": False,
+    # "exhaleUseDoxyfile":     True,
+}
+
+
+# For cross-ref generation
+primary_domain = 'cpp'
+
+
 # Add any paths that contain templates here, relative to this directory.
 # templates_path = ['_templates']
 
@@ -73,7 +103,6 @@ exclude_patterns = []
 # The name of the Pygments (syntax highlighting) style to use.
 pygments_style = 'sphinx'
 
-
 # -- Options for HTML output -------------------------------------------------
 
 # The theme to use for HTML and HTML Help pages.  See the documentation for
@@ -85,7 +114,12 @@ html_theme = 'sphinx_rtd_theme'
 # further.  For a list of options available for each theme, see the
 # documentation.
 #
-# html_theme_options = {}
+html_theme_options = {
+    'navigation_depth' : 4,
+    'sticky_navigation': True,
+    'display_version': True,
+    'includehidden': True,
+}
 
 # 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,
@@ -111,9 +145,10 @@ htmlhelp_basename = 'SimGrid-doc'
 
 html_context = {
     "display_gitlab": True, # Integrate Gitlab
-    "gitlab_host": "framagit.org", 
+    "gitlab_host": "framagit.org",
     "gitlab_user": "simgrid",
     "gitlab_repo": "simgrid",
     "gitlab_version": "master", # Version
     "conf_py_path": "/docs/source/", # Path in the checkout to the docs root
 }
+