GSoC 2019 QEMU API documentation generation
Project Objective
Creation of build rules that generate API documentation from C and Python source code and further analysis between the use of GTK-Doc syntax or another alternatives. Also work on the existing documentation for some improvement in clarity or formatting.
Phase 1
- Learn about QEMU.
- Study QEMU Makefile rules.
- Research about GTK-Doc and check if it has viability.
- Figure out how to use GTK-Doc to check documentation coverage.
Phase 2
- Learn about Sphinx.
- Study kernel-docs.
- Evaluate some tools for generating documentation from comments.
- Try to apply Peter Maydell's patches and use them as a starting point.
- Research alternatives for publishing documentation online.
Phase 3
- Implement code necessary to generate documentation for subset of QEMU APIs.
- Use Continuous Integration to update documentation as the code is changed in master branch.
- Create Travis jobs necessary to commit new documentation.
- Rebase all code commited to repository so that each commit has the correct format for a patch.
- Organize the documentation files into something more coherent.
- Send online documentation generated to qemu-devel.
- Send RFCs to qemu-devel.
Accomplished Work
Community Bounding
I had very little interaction with the QEMU development community. I spent a lot of time studying and working, since I had a hard time with everything I needed to learn. I hope to have great interaction with the QEMU community in the next months, as my RFCs are answered and discussed.
Code and Implementation
All my work is available in my-repo.