From c4009599f34f879e4ccb01c5d83ddb9edefd3d93 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Thu, 7 Jul 2016 14:13:12 -0300 Subject: [PATCH] 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 --- Documentation/sphinx/parse-headers.pl | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/Documentation/sphinx/parse-headers.pl b/Documentation/sphinx/parse-headers.pl index b703f1a7f432a..fc18eac1552cd 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 () { - 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; -- 2.39.5