From: Rafael Garcia-Suarez Date: Wed, 21 Sep 2005 21:10:50 +0000 (+0000) Subject: Add an option --ignore to installhtml X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=47ec63d06651617a148bb474657949bf1cf43062;p=p5sagit%2Fp5-mst-13.2.git Add an option --ignore to installhtml and use it to avoid to install doc in Porting/. Skip also test modules. p4raw-id: //depot/perl@25560 --- diff --git a/Makefile.SH b/Makefile.SH index b695a8c..d19e36b 100644 --- a/Makefile.SH +++ b/Makefile.SH @@ -858,13 +858,14 @@ install.man: all installman # Eventually Configure could ask for some of these values. install.html: all installhtml -@test -f README.vms && cd vms && $(LNS) ../README.vms README_vms.pod && cd .. - $(LDLIBPTH) ./perl installhtml \ + $(LDLIBPTH) ./perl installhtml \ --podroot=. --podpath=. --recurse \ - --htmldir=$(privlib)/html \ - --htmlroot=$(privlib)/html \ + --htmldir=$(privlib)/html \ + --htmlroot=$(privlib)/html \ --splithead=pod/perlipc \ --splititem=pod/perlfunc \ --libpods=perlfunc:perlguts:perlvar:perlrun:perlop \ + --ignore=Porting/Maintainers.pm,Porting/patching.pod,Porting/pumpkin.pod,Porting/repository.pod \ --verbose diff --git a/installhtml b/installhtml index 5a76ba0..e7ed713 100755 --- a/installhtml +++ b/installhtml @@ -18,7 +18,8 @@ installhtml - converts a collection of POD pages to HTML format. installhtml [--help] [--podpath=:...:] [--podroot=] [--htmldir=] [--htmlroot=] [--norecurse] [--recurse] [--splithead=,...,] [--splititem=,...,] - [--libpods=,...,] [--verbose] + [--libpods=,...,] [--ignore=,...,] + [--verbose] =head1 DESCRIPTION @@ -81,6 +82,11 @@ The directory containing the splitpod program. The default is `podroot/pod'. Comma-separated list of "library" pod files. This is the same list that will be passed to pod2html when any pod is converted. +=item B<--ignore> files to be ignored + +Comma-separated of files that shouldn't be installed, given relative +to podroot. + =item B<--verbose> verbose output Self-explanatory. @@ -116,7 +122,7 @@ $usage =<:...: --podroot= --htmldir= --htmlroot= --norecurse --recurse --splithead=,..., --splititem=,..., - --libpods=,..., --verbose + --libpods=,..., --ignore=,..., --verbose --help - this message --podpath - colon-separated list of directories containing .pod and @@ -124,7 +130,7 @@ Usage: $0 --help --podpath=:...: --podroot= --podroot - filesystem base directory from which all relative paths in podpath stem (default is .). --htmldir - directory to store resulting html files in relative - to the filesystem (\$podroot/html by default). + to the filesystem (\$podroot/html by default). --htmlroot - http-server base directory from which all relative paths in podpath stem (default is /). --libpods - comma-separated list of files to search for =item pod @@ -140,12 +146,13 @@ Usage: $0 --help --podpath=:...: --podroot= splitpod. --splitpod - directory where the program splitpod can be found (\$podroot/pod by default). + --ignore - comma-separated list of files that shouldn't be installed. --verbose - self-explanatory. END_OF_USAGE my (@libpods, @podpath, $podroot, $htmldir, $htmlroot, $recurse, @splithead, - @splititem, $splitpod, $verbose, $pod2html); + @splititem, $splitpod, $verbose, $pod2html, @ignore); @libpods = (); @podpath = ( "." ); # colon-separated list of directories containing .pod @@ -158,7 +165,7 @@ $recurse = 0; # default behavior @splititem = (); # don't split any files by default $splitpod = ""; # nothing for now. -$verbose = 0; # whether or not to print debugging info +$verbose = 0; # whether or not to print debugging info $pod2html = "pod/pod2html"; @@ -178,6 +185,7 @@ my $result = GetOptions( \%Options, qw( htmldir=s htmlroot=s libpods=s + ignore=s recurse! splithead=s splititem=s @@ -203,11 +211,10 @@ $splitpod = "$podroot/pod" unless $splitpod; # ignored in the conversion process. these are files that have been # process by splititem or splithead and should not be converted as a # result. -my @ignore = (); my @splitdirs; -# split pods. its important to do this before convert ANY pods because -# it may effect some of the links +# split pods. It's important to do this before convert ANY pods because +# it may affect some of the links @splitdirs = (); # files in these directories won't get an index split_on_head($podroot, $htmldir, \@splitdirs, \@ignore, @splithead); split_on_item($podroot, \@splitdirs, \@ignore, @splititem); @@ -256,7 +263,7 @@ foreach my $dir (@splithead) { } close(H); - # now rewrite the file + # now rewrite the file open(H, ">$file.html") || die "$0: error opening $file.html for output: $!\n"; print H "@data", "\n"; @@ -291,6 +298,8 @@ sub parse_command_line { $recurse = $Options{recurse} if defined $Options{recurse}; $verbose = $Options{verbose} if defined $Options{verbose}; + + @ignore = map "$podroot/$_", split(",", $Options{ignore}) if defined $Options{ignore}; } @@ -542,7 +551,8 @@ sub installdir { # install all the pods we found foreach my $pod (@podlist) { # check if we should ignore it. - next if grep($_ eq "$podroot/$pod.pod", @$ignore); + next if $pod =~ m(/t/); # comes from a test file + next if grep($_ eq "$pod.pod", @$ignore); # check if a .pm files exists too if (grep($_ eq $pod, @pmlist)) { @@ -556,6 +566,7 @@ sub installdir { # install all the .pm files we found foreach my $pm (@pmlist) { # check if we should ignore it. + next if $pm =~ m(/t/); # comes from a test file next if grep($_ eq "$pm.pm", @ignore); runpod2html("$pm.pm", $doindex);