diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2012-09-26 01:31:37 +0200 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2012-09-26 07:58:31 +0200 |
commit | 718317ecef54d90070b29657f613e39892e38d10 (patch) | |
tree | 4627e2807bcfb88bc8605e7266cd5619ddbbfdfa /docs-xml/scripts/find_missing_doc | |
parent | 05ba1fe418035e44c131fc76b5e62268b433eadc (diff) | |
download | samba-718317ecef54d90070b29657f613e39892e38d10.tar.gz samba-718317ecef54d90070b29657f613e39892e38d10.tar.bz2 samba-718317ecef54d90070b29657f613e39892e38d10.zip |
undocumented: Drop extension from helper scripts.
Diffstat (limited to 'docs-xml/scripts/find_missing_doc')
-rwxr-xr-x | docs-xml/scripts/find_missing_doc | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/docs-xml/scripts/find_missing_doc b/docs-xml/scripts/find_missing_doc new file mode 100755 index 0000000000..6ce547be3e --- /dev/null +++ b/docs-xml/scripts/find_missing_doc @@ -0,0 +1,62 @@ +#!/usr/bin/perl + +my %doc; + +$topdir = (shift @ARGV) or $topdir = "."; + +################################################## +# Reading links from manpage + +$curdir = $ENV{PWD}; + +chdir("smbdotconf"); + +open(IN,"xsltproc --xinclude --param smb.context ALL generate-context.xsl parameters.all.xml|"); + +while(<IN>) { + if( /<samba:parameter .*?name="([^"]*?)"/g ){ + my $name = $1; + $name =~ s/ //g; + $doc{$name} = "NOTFOUND"; + } +} + +close(IN); + +chdir($curdir); + +################################################# +# Reading entries from source code + + +open(SOURCE,"$topdir/lib/param/param_table.c") or die("Can't open $topdir/lib/param/param_table.c: $!"); + +while ($ln = <SOURCE>) { + last if $ln =~ m/^static\ struct\ parm_struct\ parm_table.*/; +} #burn through the preceding lines + +while ($ln = <SOURCE>) { + last if $ln =~ m/^\s*\}\;\s*$/; + #pull in the param names only + next if $ln =~ m/.*P_SEPARATOR.*/; + next unless $ln =~ /\s*\.label\s*=\s*\"(.*)\".*/; + + my $name = $1; + $name =~ s/ //g; + + if($doc{lc($name)}) { + $doc{lc($name)} = "FOUND"; + } else { + print "'$name' is not documented\n"; + } +} +close SOURCE; + +################################################## +# Trying to find missing references + +foreach (keys %doc) { + if($doc{$_} cmp "FOUND") { + print "'$_' is documented but is not a configuration option\n"; + } +} |