summaryrefslogtreecommitdiff
path: root/scripts/split-man.pl
diff options
context:
space:
mode:
authorMatthew Wilcox <mawilcox@microsoft.com>2018-02-13 13:15:35 -0800
committerJonathan Corbet <corbet@lwn.net>2018-02-13 14:21:52 -0700
commit5b229fbec89b90f73d1829e022163d9b896dc94c (patch)
tree07f60b861b370a38879cd3ba0681c0d775d99fd6 /scripts/split-man.pl
parentdcb50d979ecc80e1f2d90acb7734d7bcd0e44672 (diff)
downloadlwn-5b229fbec89b90f73d1829e022163d9b896dc94c.tar.gz
lwn-5b229fbec89b90f73d1829e022163d9b896dc94c.zip
Add scripts/split-man.pl
Instead of asking the user to copy and paste a small perl script from the documentation, just distribute the perl script in the scripts directory. Signed-off-by: Matthew Wilcox <mawilcox@microsoft.com> Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Diffstat (limited to 'scripts/split-man.pl')
-rwxr-xr-xscripts/split-man.pl28
1 files changed, 28 insertions, 0 deletions
diff --git a/scripts/split-man.pl b/scripts/split-man.pl
new file mode 100755
index 000000000000..bfe16cbe42df
--- /dev/null
+++ b/scripts/split-man.pl
@@ -0,0 +1,28 @@
+#!/usr/bin/perl
+# SPDX-License-Identifier: GPL-2.0
+#
+# Author: Mauro Carvalho Chehab <mchehab@s-opensource.com>
+#
+# Produce manpages from kernel-doc.
+# See Documentation/doc-guide/kernel-doc.rst for instructions
+
+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;