Commit Graph

2 Commits

Author SHA1 Message Date
Alexander Leidinger
20cb1f56a9 - Update config to doxygen 1.5.2 (I use this with 1.5.9).
- Add linprocfs and linsysfs to the linuxulator dox.
- Take the generated includes from the .m files from a subdirectory
  instead of putting everything into $(.OBJDIR). This imporves the
  human readbility of the source directory contents a lot, if you do not
  create a separate OBJDIR.
- Assume UTF-8 encoding for every input file.
- Strip the source and dest path from the output, we are not interested
  in the absolute location on the machine where the docs are created,
  relative the the root of the FreeBSD source is what interests us.
- Exclude .svn directories.
- Switch to alphabetic index.
- Use one line per INCLUDE_PATH member in the common dox-config.
- Bump the __FreeBSD__ version to 9.		[MFC: to 8]
- Switch from hardcoded .m files to an run-time generated one. Takes
  a little bit more time to get started with actual work, but at least
  is more future-proof. If you generate dox for all subsystems, the
  time to find all .m files in the source is magnitutes lower than
  producing the docs.
- Make the *DEST_PATH overidable from the environment. This allows to
  produce the output directly in the docroot of a webserver.
- Fix the path when telling the user where he can find the API docs.

MFC after:	1 month (after 8.0)
2009-08-24 13:10:55 +00:00
Alexander Leidinger
ff4b8cb7bd This is the kernel subsystem API documentation generation framework.
It uses doxygen to generate the API documentation. For each subsystem
a very small (about 20 lines with comments) subsystem specific Doxyfile
has to be written (have a look at the README for more). All common doxygen
options are specified in a separate file.

The framework is configured to not only generate the HTML version, but also
a PDF version (the paper size is hardcoded to DIN A4 currently and depending
on the subsystem you have to increase some limits in the latex configuration
of your system, the README tells more about this).

It also allows cross-references between the subsystems (it generates doxygen
tag files).

Currently the docs are generated in OBJDIR, but this may change after
coordination with doc@. The makefile is prepared to generate/move various
parts of the generated docs to different destinations.

TARGET_ARCH is respected and some env-vars are set for architecture specific
handling of the source (the README tells more).

Subsystems for which docs are generated:
 - cam                  - crypto                - dev_pci
 - dev_sound            - dev_usb               - geom
 - i4b                  - kern                  - libkern
 - linux                - net80211              - netgraph
 - netinet              - netinet6              - netipsec
 - opencrypto           - vm

Requested by:	gnn
2006-05-26 18:06:07 +00:00