buildmod generates documentation now.
This commit is contained in:
1 parent
8077acd9ae
commit
7108f3fdfa
2 files changed
+42
-1
No files matched your search
+40
-1
@@ -8,6 +8,8 @@ use strict;
|
|||||||
use warnings;
|
use warnings;
|
||||||
use English qw(-no_match_vars);
|
use English qw(-no_match_vars);
|
||||||
use FindBin qw($Bin);
|
use FindBin qw($Bin);
|
||||||
|
use Pod::Html;
|
||||||
|
use Pod::Man;
|
||||||
our $Bin = $Bin;
|
our $Bin = $Bin;
|
||||||
|
|
||||||
our $VERSION = 1.00;
|
our $VERSION = 1.00;
|
||||||
@@ -103,12 +105,49 @@ foreach (@pars) {
|
|||||||
print 'Checking Perl version..... '.$PERL_VERSION.' - ';
|
print 'Checking Perl version..... '.$PERL_VERSION.' - ';
|
||||||
if ($] < $val) { $die = 1; }
|
if ($] < $val) { $die = 1; }
|
||||||
say (($die) ? 'Not OK' : 'OK');
|
say (($die) ? 'Not OK' : 'OK');
|
||||||
print $RS;
|
|
||||||
if ($die) { say 'Failed to build '.$module.'.'; exit; }
|
if ($die) { say 'Failed to build '.$module.'.'; exit; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Generate documentation.
|
||||||
|
my $got_end = 0;
|
||||||
|
open my $FMPH, '<', $modulep;
|
||||||
|
my @MPBUF = <$FMPH>;
|
||||||
|
close $FMPH;
|
||||||
|
|
||||||
|
say 'Generating documentation.....';
|
||||||
|
my $podbuf;
|
||||||
|
foreach my $line (@MPBUF) {
|
||||||
|
if (!defined $line) { $line = ' '; }
|
||||||
|
$line =~ s/(\r|\n)//g;
|
||||||
|
|
||||||
|
if ($line eq '__END__') {
|
||||||
|
$got_end = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($got_end and $line ne '__END__') {
|
||||||
|
$podbuf .= $line."\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Create the autodoc/ dir if it doesn't exist.
|
||||||
|
if (!-d "$Bin/../autodoc") {
|
||||||
|
mkdir "$Bin/../autodoc";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Save to POD file in autodoc/
|
||||||
|
open my $FMPNH, '>', "$Bin/../autodoc/$module.pod";
|
||||||
|
print {$FMPNH} $podbuf;
|
||||||
|
close $FMPNH;
|
||||||
|
|
||||||
|
# Create HTML.
|
||||||
|
pod2html("--infile=$Bin/../autodoc/$module.pod", "--outfile=$Bin/../autodoc/$module.html");
|
||||||
|
# Create *roff.
|
||||||
|
my $manifier = Pod::Man->new();
|
||||||
|
$manifier->parse_from_file("$Bin/../autodoc/$module.pod", "$Bin/../autodoc/$module.1");
|
||||||
|
|
||||||
|
print $RS;
|
||||||
say 'Done.';
|
say 'Done.';
|
||||||
|
|
||||||
# vim: set ai sw=4 ts=4:
|
# vim: set ai sw=4 ts=4:
|
||||||
@@ -3,6 +3,8 @@ Auto IRC Bot 3.0: Change Log
|
|||||||
|
|
||||||
3.0 Indev
|
3.0 Indev
|
||||||
===============================================================================
|
===============================================================================
|
||||||
|
* bin/buildmod now retrieves the POD from modules and creates man(1) page
|
||||||
|
plus HTML file.
|
||||||
* cjoin() now supports a channel key as the last argument.
|
* cjoin() now supports a channel key as the last argument.
|
||||||
* Added a ChanTopics module for advanced management of channel topics.
|
* Added a ChanTopics module for advanced management of channel topics.
|
||||||
* bantype is now a required configuration value.
|
* bantype is now a required configuration value.
|
||||||
|
|||||||
Reference in new issue
Block a user