Author: mcbrown
Date: 2007-04-25 14:54:25 +0200 (Wed, 25 Apr 2007)
New Revision: 6184
Log:
Adding experimental dynamic docs dependency support
Modified:
trunk/refman-5.1/dba-core.xml
trunk/tools/dyndocs-optvars-generate.pl
trunk/tools/xmldepend.pl
Modified: trunk/refman-5.1/dba-core.xml
===================================================================
--- trunk/refman-5.1/dba-core.xml 2007-04-25 12:06:48 UTC (rev 6183)
+++ trunk/refman-5.1/dba-core.xml 2007-04-25 12:54:25 UTC (rev 6184)
Changed blocks: 1, Lines Added: 2, Lines Deleted: 0; 437 bytes
@@ -9,6 +9,8 @@
<title>Database Administration</title>
+<remark role="dynamic-dependency-list"/>
+
<para>
This chapter covers topics that deal with administering a MySQL
installation:
Modified: trunk/tools/dyndocs-optvars-generate.pl
===================================================================
--- trunk/tools/dyndocs-optvars-generate.pl 2007-04-25 12:06:48 UTC (rev 6183)
+++ trunk/tools/dyndocs-optvars-generate.pl 2007-04-25 12:54:25 UTC (rev 6184)
Changed blocks: 4, Lines Added: 16, Lines Deleted: 3; 1966 bytes
@@ -586,6 +586,8 @@
open(INPLACE,$options->{inplace}) or die "Error: Can't open inplace source file\n";
my $inplacefile = join('',<INPLACE>);
close(INPLACE);
+
+ my $sources = {};
my @matches = ($inplacefile =~ m{(<para condition="dynamic:.*?" role=".*?"/>)}g);
@@ -600,7 +602,8 @@
$options->{version} = $version;
- my $commandxml = load_command_xml($command,$options) unless (exists($tdcache->{$command}));
+ my ($commandxml,$filename) = load_command_xml($command,$options) unless (exists($tdcache->{$command}));
+ $sources->{$filename} = 1 if (defined($filename));
if (defined($commandxml))
{
@@ -644,6 +647,16 @@
$inplacefile =~ s/$item/$string/g;
}
+ my @lines;
+ push @lines,sprintf('<remark role="dependency" condition="%s"/>',$options->{inplace});
+ foreach my $file (keys %{$sources})
+ {
+ push @lines,sprintf('<remark role="dependency" condition="%s"/>',$file);
+ }
+
+ my $deptext = join("\n",@lines);
+ $inplacefile =~ s{<remark role="dynamic-dependency-list"/>}{$deptext};
+
open(INPLACE,">$options->{outfile}") or die "Error: Can't open inplace destination file\n";
print INPLACE $inplacefile;
close(INPLACE);
@@ -660,12 +673,12 @@
$my_handler = MySQLDocBook->new();
XML::Parser::PerlSAX->new->parse(Source => { SystemId => $filename},
Handler => $my_handler);
- return($my_handler->{tabledata});
+ return($my_handler->{tabledata},$filename);
}
else
{
print STDERR "WARNING: Couldn't load $filename for parsing ($!)";
- return(undef);
+ return(undef,undef);
}
}
Modified: trunk/tools/xmldepend.pl
===================================================================
--- trunk/tools/xmldepend.pl 2007-04-25 12:06:48 UTC (rev 6183)
+++ trunk/tools/xmldepend.pl 2007-04-25 12:54:25 UTC (rev 6184)
Changed blocks: 1, Lines Added: 8, Lines Deleted: 0; 717 bytes
@@ -253,6 +253,14 @@
warn "File reference to $file\n" if $self->{verbose};
$self->add_dependency ($file, "fileref");
}
+ elsif (($elt->{Name} eq 'remark') &&
+ (exists($elt->{Attributes}->{role})) &&
+ ($elt->{Attributes}->{role} eq 'dependency'))
+ {
+ my $file = $self->relativize ($elt->{Attributes}->{condition});
+ warn "Found an embedded dynamic source in $file\n" if ($self->{verbose});
+ $self->add_dependency ($file, "fileref");
+ }
}
sub entity_decl
| Thread |
|---|
| • svn commit - mysqldoc@docsrva: r6184 - in trunk: refman-5.1 tools | mcbrown | 25 Apr |