I committed the kernel subsystem API documentation generation framework. It allows to generate the API documentation of a subsystem (with doxygen [1]) just by adding a short config file (around 22 lines with comments and blank lines, maybe 14 lines without comments and blank lines). Here’s an example of such a config:
—snip—
PROJECT_NAME = “FreeBSD kernel sound device code”
OUTPUT_DIRECTORY = $(DOXYGEN_DEST_PATH)/dev_sound/
EXTRACT_ALL = YES # for undocumented src, no warnings enabled
INPUT = $(DOXYGEN_SRC_PATH)/dev/sound/
GENERATE_TAGFILE = dev_sound/dev_sound.tag
TAGFILES = dev_pci/dev_pci.tag=../../dev_pci/html \
dev_usb/dev_usb.tag=../../dev_usb/html
@INCLUDE_PATH = $(DOXYGEN_INCLUDE_PATH)
@INCLUDE = common-Doxyfile
—snip—
The framework is configured to not only generate the HTML version, but also a PDF version.
Subsystems for which docs are generated currently (configs for other subsystems are welcome):
- cam
- crypto
- dev_pci
- dev_sound
- dev_usb
- geom
- i4b
- kern
- libkern
- linux
- net80211
- netgraph
- netinet
- netinet6
- netipsec
- opencrypto
- vm
People which want to help documenting the code [2] may want to have a look at the special commands doxygen understands [3].
1 Comment To "The kernel subsystem API documentation generation framework."
#1 Pingback By FreeNAS & Sensors for FreeBSD « The Daily BSD On December 7, 2009 @ 05:03
[…] The kernel subsystem API documentation generation framework. […]