Skip to content

Commit

Permalink
docs: kernel-doc.rst: add documentation about man pages
Browse files Browse the repository at this point in the history
kernel-doc-nano-HOWTO.txt has a chapter about man pages
production. While we don't have a working  "make manpages"
target, add it.

Signed-off-by: Mauro Carvalho Chehab <[email protected]>
Signed-off-by: Jonathan Corbet <[email protected]>
  • Loading branch information
mchehab authored and Jonathan Corbet committed Dec 21, 2017
1 parent bdb76f9 commit 93626d7
Showing 1 changed file with 34 additions and 0 deletions.
34 changes: 34 additions & 0 deletions Documentation/doc-guide/kernel-doc.rst
Original file line number Diff line number Diff line change
Expand Up @@ -452,3 +452,37 @@ file.

Data structures visible in kernel include files should also be documented using
kernel-doc formatted comments.

How to use kernel-doc to generate man pages
-------------------------------------------

If you just want to use kernel-doc to generate man pages you can do this
from the Kernel git tree::

$ scripts/kernel-doc -man $(git grep -l '/\*\*' |grep -v Documentation/) | ./split-man.pl /tmp/man

Using the small ``split-man.pl`` script below::


#!/usr/bin/perl

if ($#ARGV < 0) {
die "where do I put the results?\n";
}

mkdir $ARGV[0],0777;
$state = 0;
while (<STDIN>) {
if (/^\.TH \"[^\"]*\" 9 \"([^\"]*)\"/) {
if ($state == 1) { close OUT }
$state = 1;
$fn = "$ARGV[0]/$1.9";
print STDERR "Creating $fn\n";
open OUT, ">$fn" or die "can't open $fn: $!\n";
print OUT $_;
} elsif ($state != 0) {
print OUT $_;
}
}

close OUT;

0 comments on commit 93626d7

Please sign in to comment.