Update of /cvsroot/perl-win32-gui/Win32-GUI/build_tools
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21242/build_tools
Modified Files:
doHTMLDocs.pl
Log Message:
Doc updates and add Win32::GUI::ReleaseNotes
Index: doHTMLDocs.pl
===================================================================
RCS file: /cvsroot/perl-win32-gui/Win32-GUI/build_tools/doHTMLDocs.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** doHTMLDocs.pl 30 Jun 2005 22:36:22 -0000 1.2
--- doHTMLDocs.pl 16 Jul 2006 11:09:32 -0000 1.3
***************
*** 1,3 ****
! #!perl
# This file is part of the build tools for Win32::GUI
--- 1,3 ----
! #!perl -w
# This file is part of the build tools for Win32::GUI
***************
*** 8,15 ****
# (2) Copies any GIF files from the document source to the relavent location
# in the blib/html tree
# it is typically invoked as
# make htmldocs
! # or automatically as part of the distribution build
# process
#
--- 8,17 ----
# (2) Copies any GIF files from the document source to the relavent location
# in the blib/html tree
+ # (3) converts all POD documentation in the blib/script directory, and puts
+ # it in the blib/html/bin directory
# it is typically invoked as
# make htmldocs
! # or automatically as part of the ppm distribution build
# process
#
***************
*** 22,43 ****
use BuildTools;
use Pod::Html;
! use Cwd;
! my $cwd = cwd;
my $DEBUG = 0;
my $srcdir = "blib/lib";
! my $destdir = "blib/html/site/lib";
! my $docroot = "blib/html";
! my $imgsrcdir = "docs/";
print BuildTools::macro_subst(
"Converting POD documentation to HTML for Win32::GUI v__W32G_VERSION__ on
__W32G_DATE__\n"
! );
# recursively traverse everything inside the source directory, find .pod files
# convert to html and put in a corresponding location in the blib/html
directory
! BuildTools::mkpath($destdir);
! doHtml($srcdir, $destdir);
# remove pod2html cache files; 5.6 uses ".x~~" and 5.8 uses ".tmp" extensions
--- 24,50 ----
use BuildTools;
use Pod::Html;
! use Pod::Find qw(pod_find);
! use File::Path qw(mkpath);
! use File::Spec qw();
! use File::Find qw(find);
! use File::Copy qw(copy);
my $DEBUG = 0;
my $srcdir = "blib/lib";
! my $srcbindir = "blib/script";
! my $destrootdir = "blib/html";
! my $destsubdir = "site/lib";
! my $destbinsubdir = "bin";
! my $imgsrcdir = "docs";
print BuildTools::macro_subst(
"Converting POD documentation to HTML for Win32::GUI v__W32G_VERSION__ on
__W32G_DATE__\n"
! );
# recursively traverse everything inside the source directory, find .pod files
# convert to html and put in a corresponding location in the blib/html
directory
! doHtml($srcdir, $destrootdir, $destsubdir);
! doHtml($srcbindir, $destrootdir, $destbinsubdir);
# remove pod2html cache files; 5.6 uses ".x~~" and 5.8 uses ".tmp" extensions
***************
*** 45,49 ****
# copy all GIF files from docs directy to html tree
! doGIF($imgsrcdir, "$destdir/Win32");
exit(0);
--- 52,56 ----
# copy all GIF files from docs directy to html tree
! doGIF($imgsrcdir, File::Spec->catfile($destrootdir, $destsubdir, "Win32"));
exit(0);
***************
*** 51,136 ****
sub doHtml
{
! my ($src, $dst) = @_;
! opendir(my $DH, $src) || die "Can't open directory $src: $!";
! while(my $file = readdir($DH)) {
! # process .pod files
! if($file =~ /\.pod$/ || $file =~ /GridLayout.pm$/ || $file =~
/BitmapInline.pm$/) {
! (my $htmlfile = $file) =~ s/\.(pod|pm)$/.html/;
! print STDERR "Converting $file to $dst/$htmlfile\n" if $DEBUG;
! # calculate the relative paths (cope with non-standard perl installs)
! my $path2root = "$dst/";
! $path2root =~ s|^$docroot/||;
! $path2root =~ s|\w*/|../|g;
! $path2root =~ s|/$||;
! # ensure the destination directory exists
! print STDERR "Creating directory $dst/$file\n" if $DEBUG;
! BuildTools::mkpath($dst);
! # and convert the source POD to destination HTML
! my @options = (
! "--infile=$src/$file",
! "--outfile=$dst/$htmlfile",
! "--header",
! "--css=$path2root/Active.css",
! "--htmlroot=$path2root/site/lib",
! "--podroot=$cwd/blib",
! );
! print STDERR "pod2html @options\n" if $DEBUG;
! pod2html(@options);
! }
! # recurse to directories
! elsif (-d "$src/$file") {
! # ignore '.' and '..'
! if ($file !~ /^\.{1,2}$/) {
! doHtml("$src/$file", "$dst/$file");
! }
! }
! # ignore anything else
! else {
}
- }
- closedir($DH);
! return 1;
}
- sub doGIF
{
! my ($src, $dst) = @_;
! opendir(my $DH, $src) || die "Can't open directory $src: $!";
! while(my $file = readdir($DH)) {
! # copy .gif files
! if($file =~ /\.gif$/) {
! # ensure the destination directory exists
! print STDERR "Creating directory $dst/$file\n" if $DEBUG;
! BuildTools::mkpath($dst);
! # copy the file
! print STDERR "Copying $file to $dst/$file\n" if $DEBUG;
! BuildTools::cp("$src/$file","$dst");
}
! # recurse to directories
! elsif (-d "$src/$file") {
! # ignore '.' and '..'
! if ($file !~ /^\.{1,2}$/) {
! doGIF("$src/$file", "$dst/$file");
! }
! }
! # ignore anything else
! else {
}
- }
- closedir($DH);
-
- return 1;
}
--- 58,148 ----
sub doHtml
{
! my ($srcdir, $htmlrootdir, $htmlsubdir) = @_;
! # Tidy the passed params:
! $srcdir = File::Spec->canonpath($srcdir);
! $htmlrootdir = File::Spec->canonpath($htmlrootdir);
! $htmlsubdir = File::Spec->canonpath($htmlsubdir);
! # Find POD files:
! my %pods = pod_find( {-perl => 1}, $srcdir);
! for my $srcfile (keys %pods) {
! # Ignore any demo files:
! next if $srcfile =~ /demos[\/\\]/;
! # Relative and tidy srcfile
! $srcfile = File::Spec->abs2rel($srcfile);
! $srcfile = File::Spec->canonpath($srcfile);
! # Strip common prefix:
! my $tmp = $srcfile;
! $tmp =~ s/^\Q$srcdir\E//;
! $tmp = File::Spec->catfile($htmlrootdir, $htmlsubdir, $tmp);
! $tmp = File::Spec->canonpath($tmp);
!
! # generate html file name
! (my $htmlfile = $tmp) =~ s/\.[^.]*$/.html/;
! print STDERR "Converting $srcfile to $htmlfile\n" if $DEBUG;
!
! # ensure the destination directory exists
! my (undef, $dstdir, undef) = File::Spec->splitpath($htmlfile);
! print STDERR "Creating directory $dstdir\n" if $DEBUG;
! mkpath($dstdir);
!
! # calculate the relative path to the html root dir
! my $path2root = File::Spec->abs2rel($htmlrootdir, $dstdir);
!
! # Unixify path seperators
! (my $u_srcfile = $srcfile) =~ s|\\|/|g;
! (my $u_htmlfile = $htmlfile) =~ s|\\|/|g;
! (my $u_dstdir = $dstdir) =~ s|\\|/|g;
!
! (my $u_htmlroot = File::Spec->catdir($path2root, $htmlsubdir)) =~
s|\\|/|g;
! (my $u_css = File::Spec->catfile($path2root, "Active.css")) =~
s|\\|/|g;
!
! # and convert the source POD to destination HTML
! my @options = (
! "--infile=$u_srcfile",
! "--outfile=$u_htmlfile",
! "--htmldir=$u_dstdir",
! "--htmlroot=$u_htmlroot",
! "--css=$u_css",
! "--header",
! );
! print STDERR "pod2html @options\n" if $DEBUG;
! pod2html(@options);
}
! return 1;
}
{
! my ($srcrootdir, $dstrootdir);
! sub doGIF
! {
! my ($src, $dst) = @_;
! # Tidy the passed params:
! $srcrootdir = File::Spec->canonpath($src);
! $dstrootdir = File::Spec->canonpath($dst);
! find({wanted =>\&found, no_chdir => 1}, $srcrootdir);
! return 1;
}
! sub found {
! my $file = File::Spec->canonpath($_);
! # copy .gif files
! if($file =~ /\.gif$/) {
! (my $dstfile = $file) =~ s/^\Q$srcrootdir\E//;
! $dstfile = File::Spec->catfile($dstrootdir, $dstfile);
! print STDERR "Copying $file to $dstfile\n" if $DEBUG;
! copy($file, $dstfile);
! }
}
}