- Alexander Leidinger - http://www.leidinger.net/blog -

The ker­nel sub­sys­tem API doc­u­men­ta­tion gen­er­a­tion framework.

Posted By netchild On May 26, 2006 @ 21:31 In Docs,FreeBSD,Kernel | 1 Comment

I com­mit­ted the ker­nel [1] sub­sys­tem API doc­u­men­ta­tion gen­er­a­tion [2] frame­work. It allows to gen­er­ate the API doc­u­men­ta­tion of a sub­sys­tem (with doxy­gen [3]) just by adding a short con­fig file (around 22 lines with com­ments and blank lines [4], maybe 14 lines with­out com­ments and blank lines). Here’s an exam­ple of such a config:

—snip—
PROJECT_NAME = “FreeBSD [5] ker­nel sound device code“
OUTPUT_DIRECTORY = $(DOXYGEN_DEST_PATH)/dev_sound/
EXTRACT_ALL = YES # for undoc­u­mented src, no warn­ings 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 frame­work is con­fig­ured to not only gen­er­ate the HTML ver­sion, but also a PDF ver­sion [6].

Sub­sys­tems [7] for which docs [8] are gen­er­ated cur­rently (con­figs for other sub­sys­tems are welcome):

  • cam
  • crypto
  • dev_pci
  • dev_sound
  • dev_usb
  • geom
  • i4b
  • kern
  • libkern
  • linux [9]
  • net80211
  • net­graph [10]
  • netinet
  • netinet6
  • netipsec
  • open­crypto
  • vm

Peo­ple which want to help doc­u­ment­ing the code [11] may want to have a look at the spe­cial com­mands doxy­gen under­stands [12].

GD Star Rat­ing
load­ing…
GD Star Rat­ing
load­ing…
Share [17]

1 Comment (Open | Close)

1 Comment To "The ker­nel sub­sys­tem API doc­u­men­ta­tion gen­er­a­tion framework."

#1 Pingback By FreeNAS & Sen­sors for FreeBSD « The Daily BSD On December 7, 2009 @ 05:03

[…] The ker­nel sub­sys­tem API doc­u­men­ta­tion gen­er­a­tion framework. […]


Article printed from Alexander Leidinger: http://www.leidinger.net/blog

URL to article: http://www.leidinger.net/blog/2006/05/26/the-kernel-subsystem-api-documentation-generation-framework/

URLs in this post:

[1] ker­nel: http://www.leidinger.net/blog/category/freebsd/freebsd-src/freebsd-kernel/

[2] doc­u­men­ta­tion gen­er­a­tion: http://www.leidinger.net/blog/tag/documentation-generation/

[3] doxy­gen: http://www.doxygen.org/

[4] blank lines: http://www.leidinger.net/blog/tag/blank-lines/

[5] FreeBSD: http://www.FreeBSD.org/

[6] PDF ver­sion: http://www.leidinger.net/blog/tag/pdf-version/

[7] Sub­sys­tems: http://www.leidinger.net/blog/tag/subsystems/

[8] docs: http://www.leidinger.net/blog/category/freebsd/docs/

[9] linux: http://www.leidinger.net/blog/category/linux/

[10] net­graph: http://www.leidinger.net/blog/tag/netgraph/

[11] doc­u­ment­ing the code: http://www.stack.nl/~dimitri/doxygen/docblocks.html

[12] spe­cial com­mands doxy­gen under­stands: http://www.stack.nl/~dimitri/doxygen/commands.html

[13] Doxy­gen stuff updated in 9-current: http://www.leidinger.net/blog/2009/08/24/doxygen-stuff-updated-in-9-current/

[14] Ker­nel fea­tures patch­set (from GSoC 2010): http://www.leidinger.net/blog/2010/09/29/kernel-features-patchset-from-gsoc-2010/

[15] Daily doxy­gen gen­er­ated docs of the FreeBSD…: http://www.leidinger.net/blog/2009/08/14/daily-doxygen-generated-docs-of-the-freebsd-kernel-head/

[16] Mak­ing ZFS faster…: http://www.leidinger.net/blog/2010/02/10/making-zfs-faster/

[17] Image: http://www.addtoany.com/share_save

Copyright © 2009 Alexander Leidinger. All rights reserved.