summaryrefslogtreecommitdiff
path: root/Debian/Debhelper/Buildsystem/perl_build.pm
diff options
context:
space:
mode:
authorModestas Vainius <modestas@vainius.eu>2009-06-18 02:11:45 +0300
committerModestas Vainius <modestas@vainius.eu>2009-06-18 02:11:45 +0300
commit962a2e10c930e3504ea1c0327be2fdf70d53023e (patch)
tree26196a25203b03818d92dd5a8ec49d2e13111675 /Debian/Debhelper/Buildsystem/perl_build.pm
parent91928482af09c4ca1092f124921d0f47613c17ba (diff)
Update dh_auto documentation.
* dh_auto.pod -> dh_auto.7 - contains general information about dh_auto, its features, build systems supported by default (the latter is injected by man/dh_auto_pod script from Debian/Debhelper/Buildsystem/*.pm PODs via placeholders (#PLACEHOLDER#)) * POD in Debian/Debhelper/Buildsystem/*.pm -> dh_auto_<buildsystem>.7 - build system specific information. * dh_auto_* -> dh_auto_*.1 - relatively shorty description of the specific dh_auto_* program and build system specific info for that step injected from Debian/Debhelper/Buildsystem/*.pm with man/dh_auto_pod script. * man/dh_auto_pod $step - generates full dh_auto_$step POD (replaces placeholders). * man/dh_auto_pod - generates full dh_auto.pod (replaces placeholders). Signed-off-by: Modestas Vainius <modestas@vainius.eu>
Diffstat (limited to 'Debian/Debhelper/Buildsystem/perl_build.pm')
-rw-r--r--Debian/Debhelper/Buildsystem/perl_build.pm123
1 files changed, 123 insertions, 0 deletions
diff --git a/Debian/Debhelper/Buildsystem/perl_build.pm b/Debian/Debhelper/Buildsystem/perl_build.pm
index 3567cb1a..26210152 100644
--- a/Debian/Debhelper/Buildsystem/perl_build.pm
+++ b/Debian/Debhelper/Buildsystem/perl_build.pm
@@ -6,6 +6,32 @@
package Debian::Debhelper::Buildsystem::perl_build;
+=head1 NAME
+
+B<perl_build> - Perl Module::Build (Build.PL)
+
+=head1 SYNOPSIS
+
+B<dh_auto_*> [B<--buildsystem>=I<perl_build>] ...
+
+=head1 DESCRIPTION
+
+Module::Build is a system for building, testing, and installing Perl modules.
+It does not require a C<make> on your system - most of the Module::Build code is
+pure-perl and written in a very cross-platform way. Its only prerequisites are
+modules that are included with perl 5.6.0. Typically, Module::Build build system
+can be identified by presence of the F<Build.PL> script in the source
+directory.
+
+=head1 DH_AUTO NOTES
+
+Out of source tree building is not supported. C<MODULEBUILDRC=/dev/null>
+environment variable is exported in each building step.
+
+=head1 BUILD PROCESS
+
+=cut
+
use strict;
use base 'Debian::Debhelper::Buildsystem';
@@ -37,31 +63,128 @@ sub new {
return $this;
}
+=head2 Configure step
+
+=over 4
+
+=item I<Behaviour>
+
+Execute C<perl Build.PL> passing C<installdirs=vendor> parameter by default.
+Environment variable C<PERL_MM_USE_DEFAULT> is set before running the script.
+
+=item I<Auto-selection>
+
+If F<configure>, F<Makefile.PL>, F<setup.py> do not exist, but F<Build.PL>
+exists in the source directory.
+
+=back
+
+=cut
sub configure {
my $this=shift;
$ENV{PERL_MM_USE_DEFAULT}=1;
$this->do_perl("Build.PL", "installdirs=vendor", @_);
}
+=head2 Build step
+
+=over 4
+
+=item I<Behaviour>
+
+Execute C<perl Build>.
+
+=item I<Auto-selection>
+
+If F<Makefile>, F<makefile>, F<GNUmakefile> (build directory) and F<setup.py>
+(source directory) do not exist, but F<Build.PL> and F<Build> files exist in
+the source directory.
+
+=back
+
+=cut
sub build {
my $this=shift;
$this->do_perl("Build", @_);
}
+=head2 Test step
+
+=over 4
+
+=item I<Behaviour>
+
+Execute C<perl Build test>.
+
+=item I<Auto-selection>
+
+If F<Makefile>, F<makefile>, F<GNUmakefile> (build directory) and F<setup.py>
+(source directory) do not exist, but F<Build.PL> and F<Build> files exist in
+the source directory.
+
+=back
+
+=cut
sub test {
my $this=shift;
$this->do_perl("Build", "test", @_);
}
+=head2 Install step
+
+=over 4
+
+=item I<Behaviour>
+
+Execute C<perl Build install destdir=$destdir create_packlist=0>. $destdir is
+the path to the temporary installation directory (see L<dh_auto_install(1)>).
+
+=item I<Auto-selection>
+
+If F<Makefile>, F<makefile>, F<GNUmakefile> (build directory) and F<setup.py>
+(source directory) do not exist, but F<Build.PL> and F<Build> files exist in
+the source directory.
+
+=back
+
+=cut
sub install {
my $this=shift;
my $destdir=shift;
$this->do_perl("Build", "install", "destdir=$destdir", "create_packlist=0", @_);
}
+=head2 Clean step
+
+=over 4
+
+=item I<Behaviour>
+
+Execute C<perl Build --allow_mb_mismatch 1 distclean>.
+
+=item I<Auto-selection>
+
+If F<Makefile>, F<makefile>, F<GNUmakefile> (build directory) and F<setup.py>
+(source directory) do not exist, but F<Build.PL> and F<Build> files exist in
+the source directory.
+
+=back
+
+=cut
sub clean {
my $this=shift;
$this->do_perl("Build", "--allow_mb_mismatch", 1, "distclean", @_);
}
+=head1 SEE ALSO
+
+L<dh_auto(7)>
+
+=head1 AUTHORS
+
+ Joey Hess <joeyh@debian.org>
+ Modestas Vainius <modestas@vainius.eu>
+
+=cut
+
1;