stas 2003/03/22 00:20:30
Modified: src/docs/2.0/api config.cfg
Added: src/docs/2.0/api/ModPerl BuildMM.pod MM.pod
Log:
start the docs for ModPerl::MM
Revision Changes Path
1.1 modperl-docs/src/docs/2.0/api/ModPerl/BuildMM.pod
Index: BuildMM.pod
===================================================================
=head1 NAME
ModPerl::BuildMM -- A "subclass" of ModPerl::MM used for building mod_perl 2.0
=head1 SYNOPSIS
use ModPerl::BuildMM;
# ModPerl::BuildMM takes care of doing all the dirty job of overriding
ModPerl::BuildMM::WriteMakefile(...);
# if there is a need to extend the methods
sub MY::postamble {
my $self = shift;
my $string = $self->ModPerl::BuildMM::MY::postamble;
$string .= "\nmydist : manifest tardist\n";
return $string;
}
=head1 DESCRIPTION
C<ModPerl::BuildMM> is a "subclass" of C<ModPerl::MM> used for
building mod_perl 2.0. Refer to
C<L<ModPerl::MM|docs::2.0::api::ModPerl::MM>> manpage.
=head1 OVERRIDEN METHODS
C<ModPerl::BuildMM> overrides the following methods:
=head2 C<ModPerl::BuildMM::MY::constants>
=head2 C<ModPerl::BuildMM::MY::top_targets>
=head2 C<ModPerl::BuildMM::MY::postamble>
=head2 C<ModPerl::BuildMM::MY::post_initialize>
=head2 C<ModPerl::BuildMM::MY::libscan>
=cut
1.1 modperl-docs/src/docs/2.0/api/ModPerl/MM.pod
Index: MM.pod
===================================================================
=head1 NAME
ModPerl::MM -- A "subclass" of ExtUtils::MakeMaker for mod_perl 2.0
=head1 SYNOPSIS
use ModPerl::MM;
# ModPerl::MM takes care of doing all the dirty job of overriding
ModPerl::MM::WriteMakefile(...);
# if there is a need to extend the methods
sub MY::constants {
my $self = shift;
$self->ModPerl::MM::MY::constants;
# do something else;
}
# or prevent overriding
sub MY::constants { shift->MM::constants(@_); }";
=head1 DESCRIPTION
C<ModPerl::MM> is a "subclass" of C<ExtUtils::MakeMaker> for mod_perl
2.0, to a degree of sub-classability of C<ExtUtils::MakeMaker>.
When C<ModPerl::MM::WriteMakefile()> is used instead of
C<ExtUtils::MakeMaker::WriteMakefile()>, C<ModPerl::MM> overrides
several C<ExtUtils::MakeMaker> methods behind the scenes. So in most
cases 3rd party module developers for mod_perl 2.0, don't need to mess
with I<Makefile.PL> at all.
C<ModPerl::MM> overrides method I<foo> as long as I<Makefile.PL>
hasn't already specified a method I<MY::foo>. If the latter happens,
C<ModPerl::MM> will DWIM and do nothing.
In case the functionality of C<ModPerl::MM> methods needs to be
extended, rather than completely overriden, the C<ModPerl::MM> methods
can be called internally. For example if you need to modify constants
in addition to the modifications applied by
C<ModPerl::MM::MY::constants>, call the C<ModPerl::MM::MY::constants>
method (notice that it resides in the package C<ModPerl::MM::MY> and
not C<ModPerl::MM>), then do your extra manipulations on constants:
# if there is a need to extend the methods
sub MY::constants {
my $self = shift;
$self->ModPerl::MM::MY::constants;
# do something else;
}
In certain cases a developers may want to prevent from C<ModPerl::MM>
to override certain methods. In that case an explicit override in
I<Makefile.PL> will do the job. For example if you don't want the
C<constants()> method to be overriden by C<ModPerl::MM>, add to your
I<Makefile.PL>:
sub MY::constants { shift->MM::constants(@_); }";
=head1 OVERRIDEN METHODS
C<ModPerl::MM> overrides the following methods:
=head2 C<ModPerl::MM::MY::constants>
This method makes sure that everything gets installed relative to the
C<Apache2/> subdir if C<MP_INST_APACHE2=1> was used to build mod_perl
2.0.
=head2 C<ModPerl::MM::MY::post_initialize>
This method makes sure that everything gets installed relative to the
C<Apache2/> subdir if C<MP_INST_APACHE2=1> was used to build mod_perl
2.0.
=cut
1.19 +14 -6 modperl-docs/src/docs/2.0/api/config.cfg
Index: config.cfg
===================================================================
RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/config.cfg,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- config.cfg 11 Mar 2003 07:33:53 -0000 1.18
+++ config.cfg 22 Mar 2003 08:20:30 -0000 1.19
@@ -27,12 +27,6 @@
Apache/compat.pod
)],
- group => 'Apache:: Non-Core (Helper Apps)',
- chapters => [qw(
- Apache/Reload.pod
- Apache/Status.pod
- )],
-
group => 'APR:: Core API',
chapters => [qw(
APR/PerlIO.pod
@@ -42,6 +36,7 @@
group => 'ModPerl::',
chapters => [qw(
ModPerl/MethodLookup.pod
+ ModPerl/MM.pod
ModPerl/PerlRun.pod
ModPerl/Registry.pod
ModPerl/RegistryBB.pod
@@ -49,5 +44,18 @@
ModPerl/RegistryLoader.pod
ModPerl/Util.pod
)],
+
+ group => 'Helper Modules / Applications',
+ chapters => [qw(
+ Apache/Reload.pod
+ Apache/Status.pod
+ )],
+
+ group => 'Internal Modules',
+ chapters => [qw(
+ ModPerl/BuildMM.pod
+ )],
+
+
);