Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 93626d7a authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab Committed by Jonathan Corbet
Browse files

docs: kernel-doc.rst: add documentation about man pages



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: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
parent bdb76f9e
Loading
Loading
Loading
Loading
+34 −0
Original line number Diff line number Diff line
@@ -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;