List:Commits« Previous MessageNext Message »
From:mcbrown Date:April 25 2007 12:54pm
Subject:svn commit - mysqldoc@docsrva: r6184 - in trunk: refman-5.1 tools
View as plain text  
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 toolsmcbrown25 Apr