diff --git a/CMakeLists.txt b/CMakeLists.txt index a8b5dfb6d..7cf6454c6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -181,7 +181,7 @@ endif() if(BUILD_DOCS) find_package(Doxygen REQUIRED) - find_package(Sphinx REQUIRED breathe) + find_package(Sphinx REQUIRED breathe exhale) set(DOXYGEN_GENERATE_HTML NO) set(DOXYGEN_GENERATE_XML YES) diff --git a/docs/.gitignore b/docs/.gitignore new file mode 100644 index 000000000..eedd89b45 --- /dev/null +++ b/docs/.gitignore @@ -0,0 +1 @@ +api diff --git a/docs/api_ref.rst b/docs/api_ref.rst deleted file mode 100644 index c7766fc80..000000000 --- a/docs/api_ref.rst +++ /dev/null @@ -1,4 +0,0 @@ -API Reference -============= - -.. doxygenindex:: diff --git a/docs/conf.py b/docs/conf.py index 12fa0071c..a26592b99 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -35,6 +35,7 @@ # ones. extensions = [ 'breathe', + 'exhale', ] # Add any paths that contain templates here, relative to this directory. @@ -53,6 +54,27 @@ exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] +# Setup the exhale extension +exhale_args = { + # These arguments are required + "containmentFolder": "../../projectm/docs/api", + "rootFileName": "library_root.rst", + "doxygenStripFromPath": "..", + # Heavily encouraged optional argument (see docs) + "rootFileTitle": "ProjectM API", + # Suggested optional arguments + "createTreeView": True, + # TIP: if using the sphinx-bootstrap-theme, you need + # "treeViewIsBootstrap": True, + "exhaleExecutesDoxygen": False, +} + +# Tell sphinx what the primary language being documented is. +primary_domain = 'cpp' + +# Tell sphinx what the pygments highlight language should be. +highlight_language = 'cpp' + # -- Options for HTML output ------------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for diff --git a/docs/index.rst b/docs/index.rst index 9d004bf1f..8676e8090 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -5,7 +5,7 @@ building emscripten llvm - api_ref + api/library_root |Windows Build Status| |Linux Build Status| |macOS Build Status| |Emscripten Build Status| |Android Build Status|