diff options
Diffstat (limited to 'scripts/kernel-doc')
| -rwxr-xr-x | scripts/kernel-doc | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/scripts/kernel-doc b/scripts/kernel-doc index 263d04ab2d94..99364a5e77f2 100755 --- a/scripts/kernel-doc +++ b/scripts/kernel-doc | |||
| @@ -5,7 +5,7 @@ use strict; | |||
| 5 | ## Copyright (c) 1998 Michael Zucchi, All Rights Reserved ## | 5 | ## Copyright (c) 1998 Michael Zucchi, All Rights Reserved ## |
| 6 | ## Copyright (C) 2000, 1 Tim Waugh <twaugh@redhat.com> ## | 6 | ## Copyright (C) 2000, 1 Tim Waugh <twaugh@redhat.com> ## |
| 7 | ## Copyright (C) 2001 Simon Huggins ## | 7 | ## Copyright (C) 2001 Simon Huggins ## |
| 8 | ## Copyright (C) 2005-2007 Randy Dunlap ## | 8 | ## Copyright (C) 2005-2008 Randy Dunlap ## |
| 9 | ## ## | 9 | ## ## |
| 10 | ## #define enhancements by Armin Kuster <akuster@mvista.com> ## | 10 | ## #define enhancements by Armin Kuster <akuster@mvista.com> ## |
| 11 | ## Copyright (c) 2000 MontaVista Software, Inc. ## | 11 | ## Copyright (c) 2000 MontaVista Software, Inc. ## |
| @@ -366,6 +366,7 @@ foreach my $pattern (keys %highlights) { | |||
| 366 | # dumps section contents to arrays/hashes intended for that purpose. | 366 | # dumps section contents to arrays/hashes intended for that purpose. |
| 367 | # | 367 | # |
| 368 | sub dump_section { | 368 | sub dump_section { |
| 369 | my $file = shift; | ||
| 369 | my $name = shift; | 370 | my $name = shift; |
| 370 | my $contents = join "\n", @_; | 371 | my $contents = join "\n", @_; |
| 371 | 372 | ||
| @@ -379,6 +380,10 @@ sub dump_section { | |||
| 379 | $parameterdescs{$name} = $contents; | 380 | $parameterdescs{$name} = $contents; |
| 380 | } else { | 381 | } else { |
| 381 | # print STDERR "other section '$name' = '$contents'\n"; | 382 | # print STDERR "other section '$name' = '$contents'\n"; |
| 383 | if (defined($sections{$name}) && ($sections{$name} ne "")) { | ||
| 384 | print STDERR "Error(${file}:$.): duplicate section name '$name'\n"; | ||
| 385 | ++$errors; | ||
| 386 | } | ||
| 382 | $sections{$name} = $contents; | 387 | $sections{$name} = $contents; |
| 383 | push @sectionlist, $name; | 388 | push @sectionlist, $name; |
| 384 | } | 389 | } |
| @@ -388,6 +393,7 @@ sub dump_section { | |||
| 388 | # dump DOC: section after checking that it should go out | 393 | # dump DOC: section after checking that it should go out |
| 389 | # | 394 | # |
| 390 | sub dump_doc_section { | 395 | sub dump_doc_section { |
| 396 | my $file = shift; | ||
| 391 | my $name = shift; | 397 | my $name = shift; |
| 392 | my $contents = join "\n", @_; | 398 | my $contents = join "\n", @_; |
| 393 | 399 | ||
| @@ -399,7 +405,7 @@ sub dump_doc_section { | |||
| 399 | ( $function_only == 1 && defined($function_table{$name})) || | 405 | ( $function_only == 1 && defined($function_table{$name})) || |
| 400 | ( $function_only == 2 && !defined($function_table{$name}))) | 406 | ( $function_only == 2 && !defined($function_table{$name}))) |
| 401 | { | 407 | { |
| 402 | dump_section $name, $contents; | 408 | dump_section($file, $name, $contents); |
| 403 | output_blockhead({'sectionlist' => \@sectionlist, | 409 | output_blockhead({'sectionlist' => \@sectionlist, |
| 404 | 'sections' => \%sections, | 410 | 'sections' => \%sections, |
| 405 | 'module' => $modulename, | 411 | 'module' => $modulename, |
| @@ -1923,7 +1929,7 @@ sub process_file($) { | |||
| 1923 | print STDERR "Warning(${file}:$.): contents before sections\n"; | 1929 | print STDERR "Warning(${file}:$.): contents before sections\n"; |
| 1924 | ++$warnings; | 1930 | ++$warnings; |
| 1925 | } | 1931 | } |
| 1926 | dump_section($section, xml_escape($contents)); | 1932 | dump_section($file, $section, xml_escape($contents)); |
| 1927 | $section = $section_default; | 1933 | $section = $section_default; |
| 1928 | } | 1934 | } |
| 1929 | 1935 | ||
| @@ -1940,7 +1946,7 @@ sub process_file($) { | |||
| 1940 | } elsif (/$doc_end/) { | 1946 | } elsif (/$doc_end/) { |
| 1941 | 1947 | ||
| 1942 | if ($contents ne "") { | 1948 | if ($contents ne "") { |
| 1943 | dump_section($section, xml_escape($contents)); | 1949 | dump_section($file, $section, xml_escape($contents)); |
| 1944 | $section = $section_default; | 1950 | $section = $section_default; |
| 1945 | $contents = ""; | 1951 | $contents = ""; |
| 1946 | } | 1952 | } |
| @@ -1954,7 +1960,7 @@ sub process_file($) { | |||
| 1954 | # @parameter line to signify start of description | 1960 | # @parameter line to signify start of description |
| 1955 | if ($1 eq "" && | 1961 | if ($1 eq "" && |
| 1956 | ($section =~ m/^@/ || $section eq $section_context)) { | 1962 | ($section =~ m/^@/ || $section eq $section_context)) { |
| 1957 | dump_section($section, xml_escape($contents)); | 1963 | dump_section($file, $section, xml_escape($contents)); |
| 1958 | $section = $section_default; | 1964 | $section = $section_default; |
| 1959 | $contents = ""; | 1965 | $contents = ""; |
| 1960 | } else { | 1966 | } else { |
| @@ -1974,7 +1980,7 @@ sub process_file($) { | |||
| 1974 | } elsif ($state == 4) { | 1980 | } elsif ($state == 4) { |
| 1975 | # Documentation block | 1981 | # Documentation block |
| 1976 | if (/$doc_block/) { | 1982 | if (/$doc_block/) { |
| 1977 | dump_doc_section($section, xml_escape($contents)); | 1983 | dump_doc_section($file, $section, xml_escape($contents)); |
| 1978 | $contents = ""; | 1984 | $contents = ""; |
| 1979 | $function = ""; | 1985 | $function = ""; |
| 1980 | %constants = (); | 1986 | %constants = (); |
| @@ -1992,7 +1998,7 @@ sub process_file($) { | |||
| 1992 | } | 1998 | } |
| 1993 | elsif (/$doc_end/) | 1999 | elsif (/$doc_end/) |
| 1994 | { | 2000 | { |
| 1995 | dump_doc_section($section, xml_escape($contents)); | 2001 | dump_doc_section($file, $section, xml_escape($contents)); |
| 1996 | $contents = ""; | 2002 | $contents = ""; |
| 1997 | $function = ""; | 2003 | $function = ""; |
| 1998 | %constants = (); | 2004 | %constants = (); |
