Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1740077 > unrolled thread
| Started by | Mauro Carvalho Chehab <mchehab@s-opensource.com> |
|---|---|
| First post | 2017-09-26 20:10 +0200 |
| Last post | 2017-09-27 04:10 +0200 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[PATCH 07/10] docs: kernel-doc.rst: add documentation about man pages Mauro Carvalho Chehab <mchehab@s-opensource.com> - 2017-09-26 20:10 +0200
Re: [PATCH 07/10] docs: kernel-doc.rst: add documentation about man pages Randy Dunlap <rdunlap@infradead.org> - 2017-09-27 04:10 +0200
| From | Mauro Carvalho Chehab <mchehab@s-opensource.com> |
|---|---|
| Date | 2017-09-26 20:10 +0200 |
| Subject | [PATCH 07/10] docs: kernel-doc.rst: add documentation about man pages |
| Message-ID | <uu2sW-8cl-19@gated-at.bofh.it> |
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 <mchehab@s-opensource.com>
---
Documentation/doc-guide/kernel-doc.rst | 61 ++++++++++++++++++++++++++--------
1 file changed, 47 insertions(+), 14 deletions(-)
diff --git a/Documentation/doc-guide/kernel-doc.rst b/Documentation/doc-guide/kernel-doc.rst
index 9777aa53e3dd..50473f0db345 100644
--- a/Documentation/doc-guide/kernel-doc.rst
+++ b/Documentation/doc-guide/kernel-doc.rst
@@ -377,7 +377,6 @@ cross-references.
For further details, please refer to the `Sphinx C Domain`_ documentation.
-
In-line member documentation comments
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -391,19 +390,19 @@ on a line of their own, like all other kernel-doc comments::
* @foo: The Foo member.
*/
struct foo {
- int foo;
- /**
- * @bar: The Bar member.
- */
- int bar;
- /**
- * @baz: The Baz member.
- *
- * Here, the member description may contain several paragraphs.
- */
- int baz;
- /** @foobar: Single line description. */
- int foobar;
+ int foo;
+ /**
+ * @bar: The Bar member.
+ */
+ int bar;
+ /**
+ * @baz: The Baz member.
+ *
+ * Here, the member description may contain several paragraphs.
+ */
+ int baz;
+ /** @foobar: Single line description. */
+ int foobar;
}
@@ -452,3 +451,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;
--
2.13.5
[toc] | [next] | [standalone]
| From | Randy Dunlap <rdunlap@infradead.org> |
|---|---|
| Date | 2017-09-27 04:10 +0200 |
| Subject | Re: [PATCH 07/10] docs: kernel-doc.rst: add documentation about man pages |
| Message-ID | <uu9Xs-4tR-15@gated-at.bofh.it> |
| In reply to | #1740077 |
On 09/26/17 10:59, Mauro Carvalho Chehab wrote:
> 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 <mchehab@s-opensource.com>
> ---
> Documentation/doc-guide/kernel-doc.rst | 61 ++++++++++++++++++++++++++--------
> 1 file changed, 47 insertions(+), 14 deletions(-)
>
> diff --git a/Documentation/doc-guide/kernel-doc.rst b/Documentation/doc-guide/kernel-doc.rst
> index 9777aa53e3dd..50473f0db345 100644
> --- a/Documentation/doc-guide/kernel-doc.rst
> +++ b/Documentation/doc-guide/kernel-doc.rst
> @@ -377,7 +377,6 @@ cross-references.
> For further details, please refer to the `Sphinx C Domain`_ documentation.
>
>
> -
> In-line member documentation comments
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> @@ -391,19 +390,19 @@ on a line of their own, like all other kernel-doc comments::
> * @foo: The Foo member.
> */
> struct foo {
> - int foo;
> - /**
> - * @bar: The Bar member.
> - */
> - int bar;
> - /**
> - * @baz: The Baz member.
> - *
> - * Here, the member description may contain several paragraphs.
> - */
> - int baz;
> - /** @foobar: Single line description. */
> - int foobar;
> + int foo;
> + /**
> + * @bar: The Bar member.
> + */
> + int bar;
> + /**
> + * @baz: The Baz member.
> + *
> + * Here, the member description may contain several paragraphs.
> + */
> + int baz;
> + /** @foobar: Single line description. */
> + int foobar;
> }
The above doesn't belong in this patch. (??)
>
> @@ -452,3 +451,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;
>
--
~Randy
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web