summaryrefslogtreecommitdiff
path: root/gtkdoc-fixxref.in
diff options
context:
space:
mode:
authorStefan Kost <ensonic@users.sf.net>2009-11-25 18:07:34 +0200
committerStefan Kost <ensonic@users.sf.net>2009-11-25 18:07:34 +0200
commit850664d444e5bfd14bd64753b0bf3e16eefa7264 (patch)
treefd5df1236f362c12148417cb232b7bf48cb3e5cc /gtkdoc-fixxref.in
parenta47d0c50bb4d2b3c73a92d2571753cc1367c470f (diff)
downloadgtk-doc-850664d444e5bfd14bd64753b0bf3e16eefa7264.tar.gz
fixxref: also read section file to not warn about private stuff
Some private stuff is auto-linked (e.g. in the case of types).
Diffstat (limited to 'gtkdoc-fixxref.in')
-rwxr-xr-xgtkdoc-fixxref.in32
1 files changed, 32 insertions, 0 deletions
diff --git a/gtkdoc-fixxref.in b/gtkdoc-fixxref.in
index 3263110..1f33ccb 100755
--- a/gtkdoc-fixxref.in
+++ b/gtkdoc-fixxref.in
@@ -87,6 +87,7 @@ my %NoLinks = (
'main' => 1,
'signed' => 1,
'unsigned' => 1,
+ 'va-list' => 1,
'void' => 1,
'GInterface' => 1
);
@@ -167,6 +168,37 @@ foreach my $dir (@EXTRA_DIRS) {
}
}
+open (INPUT, "$MODULE-sections.txt")
+ || die "Can't open $MODULE-sections.txt: $!";
+my $subsection = "";
+while (<INPUT>) {
+ if (m/^#/) {
+ next;
+
+ } elsif (m/^<SECTION>/) {
+ $subsection = "";
+ } elsif (m/^<SUBSECTION\s*(.*)>/i) {
+ $subsection = $1;
+ } elsif (m/^<SUBSECTION>/) {
+ next;
+ } elsif (m/^<TITLE>(.*)<\/TITLE>/) {
+ next;
+ } elsif (m/^<FILE>(.*)<\/FILE>/) {
+ next;
+ } elsif (m/^<INCLUDE>(.*)<\/INCLUDE>/) {
+ next;
+ } elsif (m/^<\/SECTION>/) {
+ next;
+ } elsif (m/^(\S+)/) {
+ my $symbol=CreateValidSGMLID($1);
+
+ if ($subsection eq "Standard" || $subsection eq "Private") {
+ $NoLinks{$symbol} = 1;
+ }
+ }
+}
+close (INPUT);
+
&FixCrossReferences ($MODULE_DIR);
sub ScanIndices {