Add generator for modern buildsystem documentation
Summary
The buildsystem documentation generator does not support multi-line comments, rst systax and modern CMake documentation commands as used in CMake itself. This MR adds some functionality and redirects to a python module to do the rest.
Discussion
How to specify the python package dependencies for the buildsystem documentation generator? The necessary requirement is sphinxcontrib-moderncmakedomain
. Should this be put into the dune.module
file? Or into the pyproject.toml
file?
TODO
-
Squash the Commits -
Add Changelog entry -
Improve the table of content generation
Merge request reports
Activity
added buildsystem label
- Resolved by Simon Praetorius
At the moment py project.toml is autogenerated by the dunepackaging script and only used for the packaging for pypi. So that would not be the right place in the current context. Does the buildsysysten docu build use the dune internal env? Everything listed in dune.module is installed there (and added to the pyproject.toml for packaging).
- Resolved by Simon Praetorius
added 1 commit
- c30603cd - Remove print statement that was introduced for debugging
- Resolved by Simon Praetorius
- Resolved by Simon Praetorius
added 61 commits
-
a0bb98c4...a85c317c - 58 commits from branch
master
- ea46c899 - Update extract_cmake_data script
- 5a48e367 - Add sphinx moderncmakedomain to repository
- 895e2a6c - Improvement of the documentation of dune_add_library
Toggle commit list-
a0bb98c4...a85c317c - 58 commits from branch
added 1 commit
- e33efa8c - Add explicit links to documentation in toctree
@dominic You have implemented, together with @joe, the buildsystem documentation (as far as I can tell from the git log) Instead of manually extracting all the cmake doc from the files, I would go towards a sphinx domain, using the official cmake implamentation. Do you have any suggestions how to properly extract commands and modules into the TOC?
mentioned in issue #345
mentioned in issue #402