summaryrefslogtreecommitdiffstats
path: root/Documentation/sphinx
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@s-opensource.com>2016-07-07 14:13:12 -0300
committerMauro Carvalho Chehab <mchehab@s-opensource.com>2016-07-07 15:12:48 -0300
commit034e6c8e72afe0106e7ad3c19941053072b6a994 (patch)
tree6045ff51cd42bf4b8558f75200c0fe9ac62d76af /Documentation/sphinx
parent447654d67c0de97524b7352839616ea5f467313d (diff)
downloadop-kernel-dev-034e6c8e72afe0106e7ad3c19941053072b6a994.zip
op-kernel-dev-034e6c8e72afe0106e7ad3c19941053072b6a994.tar.gz
doc-rst: parse-headers: better handle comments at the source code
We should not let comments to mangle with the symbols parsing. Unfortunately, videodev2.h has lots of those in the middle of enums and structs. So, we need to improve our parser to discard them. Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Diffstat (limited to 'Documentation/sphinx')
-rwxr-xr-xDocumentation/sphinx/parse-headers.pl17
1 files changed, 14 insertions, 3 deletions
diff --git a/Documentation/sphinx/parse-headers.pl b/Documentation/sphinx/parse-headers.pl
index b703f1a..fc18eac 100755
--- a/Documentation/sphinx/parse-headers.pl
+++ b/Documentation/sphinx/parse-headers.pl
@@ -27,13 +27,24 @@ my %structs;
#
my $is_enum = 0;
+my $is_comment = 0;
open IN, $file_in or die "Can't open $file_in";
while (<IN>) {
- my $ln = $_;
- $ln =~ s,/\*.*\*/,,;
-
$data .= $_;
+ my $ln = $_;
+ if (!$is_comment) {
+ $ln =~ s,/\*.*(\*/),,g;
+
+ $is_comment = 1 if ($ln =~ s,/\*.*,,);
+ } else {
+ if ($ln =~ s,^(.*\*/),,) {
+ $is_comment = 0;
+ } else {
+ next;
+ }
+ }
+
if ($is_enum && $ln =~ m/^\s*([_\w][\w\d_]+)\s*[\,=]?/) {
my $s = $1;
my $n = $1;
OpenPOWER on IntegriCloud