mirror of
https://git.openafs.org/openafs.git
synced 2025-01-18 15:00:12 +00:00
c66971ce42
The generate-man script is currently a shell script which invokes the pod2man command for each pod file to be converted into a man page. This makes the pod conversion slow, since we load Perl and create a Pod::Man parser for each pod file. In addition to being slow, generate-man leaves behind a partially created man page when an error is encountered during the pod2man execution. To fix these issues, rewrite generate-man as a Perl script which uses the Pod::Man module directly. The Pod::Man parser is created only once and is reused to generate each man page. The Pod::Man module supports this type of batch mode operation by clearing its internal state after each man page is created. We have some special processing to determine the man page names for the pages in section 3, so create a sub class to handle the pod filename to man page title determination, and add a helper function to support processing more than one section with a single parser instance. Be sure to cleanup any partially created man pages if an error is encountered during the pod to man conversion. This will let us use this script in the Makefiles in the future. Change-Id: I8d3cce1edc62c490e93d05f72609dfde4b599a1b Reviewed-on: https://gerrit.openafs.org/15774 Reviewed-by: Mark Vitale <mvitale@sinenomine.net> Tested-by: Mark Vitale <mvitale@sinenomine.net> Tested-by: BuildBot <buildbot@rampaginggeek.com> Reviewed-by: Cheyenne Wills <cwills@sinenomine.net> Reviewed-by: Michael Meffie <mmeffie@sinenomine.net> |
||
---|---|---|
.. | ||
doxygen | ||
man-pages | ||
protocol | ||
txt | ||
xml | ||
LICENSE | ||
README |
What's in the "doc" subdirectory ** doc/man-pages pod sources for man pages (converted from original IBM html source). ** doc/xml xml sources for manuals (converted from original IBM html source). Note: The doc/xml/AdminRef uses doc/xml/AdminRef/pod2refentry to convert the pod man pages to xml for printing. pod goes directly to html just fine. ** doc/pdf Old Transarc (and possibly pre-Transarc) protocol and API documentation for which we have no other source. ** doc/txt Technical notes, Windows notes, and examples. ** doc/doxygen Configuration files for the doxygen tool to generate documentation from the annotated sources. See the 'dox' Makefile target in the top level Makefile.