diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2004-04-07 10:15:11 +0000 |
---|---|---|
committer | Gerald W. Carter <jerry@samba.org> | 2008-04-23 08:45:43 -0500 |
commit | 992f1e6b8f86b346fddd266b04d29cde69585633 (patch) | |
tree | 878573999a6831aa14cd6b8072263eb5d5910aa4 /docs/scripts/find_missing_doc.pl | |
parent | 65c0fd59203a3d9c4cb685e3a739f29f6f0c4fd6 (diff) | |
download | samba-992f1e6b8f86b346fddd266b04d29cde69585633.tar.gz samba-992f1e6b8f86b346fddd266b04d29cde69585633.tar.bz2 samba-992f1e6b8f86b346fddd266b04d29cde69585633.zip |
Add all the source files from the old CVS tree,
add the 5 missing chapters from the HOWTO
and add jht's Samba by Example book.
(This used to be commit 9fb5bcb93e57c5162b3ee6f9c7d777dc0269d100)
Diffstat (limited to 'docs/scripts/find_missing_doc.pl')
-rwxr-xr-x | docs/scripts/find_missing_doc.pl | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/docs/scripts/find_missing_doc.pl b/docs/scripts/find_missing_doc.pl new file mode 100755 index 0000000000..2875cf77b8 --- /dev/null +++ b/docs/scripts/find_missing_doc.pl @@ -0,0 +1,57 @@ +#!/usr/bin/perl + +my %doc; + +$topdir = (shift @ARGV) or $topdir = "."; + +################################################## +# Reading links from manpage + +$curdir = $ENV{PWD}; + +chdir($topdir."/docs/docbook/smbdotconf"); + +open(IN,"xsltproc --xinclude --param smb.context ALL generate-context.xsl parameters.all.xml|"); + +while(<IN>) { + if( /<listitem><para><link linkend="([^"]*)"><parameter moreinfo="none">([^<]*)<\/parameter><\/link><\/para><\/listitem>/g ){ + $doc{$2} = $1; + } +} + +close(IN); + +chdir($curdir); + +################################################# +# Reading entries from source code + + +open(SOURCE,"$topdir/source/param/loadparm.c") or die("Can't open $topdir/source/param/loadparm.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*\{\"(.*)\".*/; + + if($doc{lc($1)}) { + $doc{lc($1)} = "FOUND"; + } else { + print "$1 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"; + } +} |