summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog2
-rwxr-xr-xdh_auto_build7
-rwxr-xr-xdh_auto_clean10
-rwxr-xr-xdh_auto_configure12
-rwxr-xr-xdh_auto_install9
5 files changed, 27 insertions, 13 deletions
diff --git a/debian/changelog b/debian/changelog
index cf095ac8..dbc36f24 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,6 +4,8 @@ debhelper (7.0.2) UNRELEASED; urgency=low
run and there are no packages of that type.
* dh_auto_configure: Set PERL_MM_USE_DEFAULT when configuring MakeMaker
packages to avoid interactive prompts.
+ * dh_auto_*: Also support packages using Module::Build.
+ * dh_auto_*: Fix some calls to setup.py.
-- Joey Hess <joeyh@debian.org> Thu, 24 Apr 2008 14:10:56 -0400
diff --git a/dh_auto_build b/dh_auto_build
index 2d636ea3..d35dfc63 100755
--- a/dh_auto_build
+++ b/dh_auto_build
@@ -18,7 +18,7 @@ B<dh_auto_build> [S<I<debhelper options>>] [S<B<--> I<params>>]
dh_auto_build is a debhelper program that tries to automatically
build a package. If a Makefile is found, this is done by running make (or
MAKE, if the environment variable is set).
-If there's a setup.py, it is run to build the package.
+If there's a setup.py, or Build.PL, it is run to build the package.
This is intended to work for about 90% of packages. If it doesn't work,
you're encoruaged to skip using dh_auto_build at all, and just run the
@@ -43,7 +43,10 @@ if (-e "Makefile" || -e "makefile" || -e "GNUmakefile") {
doit(exists $ENV{MAKE} ? $ENV{MAKE} : "make", @{$dh{U_PARAMS}});
}
elsif (-e "setup.py") {
- doit("python setup.py", "build", @{$dh{U_PARAMS}});
+ doit("python", "setup.py", "build", @{$dh{U_PARAMS}});
+}
+elsif (-e "Build.PL" && -e "Build") {
+ doit("perl", "Build", @{$dh{U_PARAMS}});
}
=head1 SEE ALSO
diff --git a/dh_auto_clean b/dh_auto_clean
index 9a81145a..8ccb8873 100755
--- a/dh_auto_clean
+++ b/dh_auto_clean
@@ -18,8 +18,8 @@ B<dh_auto_clean> [S<I<debhelper options>>] [S<B<--> I<params>>]
dh_auto_clean is a debhelper program that tries to automatically clean up
after a package build. If there's a Makefile and it contains a "distclean",
"realclean", or "clean" target, then this is done by running make (or MAKE,
-if the environment variable is set). If there is a setup.py, it is run to
-clean the package.
+if the environment variable is set). If there is a setup.py or Build.PL, it
+is run to clean the package.
This is intended to work for about 90% of packages. If it doesn't work, or
tries to use the wrong clean target, you're encoruaged to skip using
@@ -54,9 +54,11 @@ if (-e "Makefile" || -e "makefile" || -e "GNUmakefile") {
}
}
elsif (-e "setup.py") {
- doit("python setup.py", "clean", "-a", @{$dh{U_PARAMS}});
+ doit("python", "setup.py", "clean", "-a", @{$dh{U_PARAMS}});
+}
+elsif (-e "Build.PL" && -e "Build") {
+ doit("perl", "Build", "--allow_mb_mismatch", 1, "distclean", @{$dh{U_PARAMS}});
}
-
=head1 SEE ALSO
diff --git a/dh_auto_configure b/dh_auto_configure
index 6e56c953..4558403d 100755
--- a/dh_auto_configure
+++ b/dh_auto_configure
@@ -16,10 +16,10 @@ B<dh_auto_configure> [S<I<debhelper options>>] [S<B<--> I<params>>]
=head1 DESCRIPTION
dh_auto_configure is a debhelper program that tries to automatically
-configure a package prior to building. It looks for and runs
-a ./configure script, or Makefile.PL. A standard set of parameters is
-determined and passed to the program that is run. If no program to run
-is found, dh_auto_configure will exit without doing anything.
+configure a package prior to building. It looks for and runs a ./configure
+script, Makefile.PL, or Build.PL. A standard set of parameters is
+determined and passed to the program that is run. If no program to run is
+found, dh_auto_configure will exit without doing anything.
This is intended to work for about 90% of packages. If it doesn't work,
you're encoruaged to skip using dh_auto_configure at all, and just run
@@ -90,6 +90,10 @@ elsif (-e "Makefile.PL") {
$ENV{PERL_MM_USE_DEFAULT}=1;
doit("perl", "Makefile.PL", "INSTALLDIRS=vendor", @{$dh{U_PARAMS}});
}
+elsif (-e "Build.PL") {
+ $ENV{PERL_MM_USE_DEFAULT}=1; # Module::Build can also use this.
+ doit("perl", "Build.PL", "installdirs=vendor", @{$dh{U_PARAMS}});
+}
=head1 SEE ALSO
diff --git a/dh_auto_install b/dh_auto_install
index be052e21..8e6e8934 100755
--- a/dh_auto_install
+++ b/dh_auto_install
@@ -19,7 +19,7 @@ B<dh_auto_install> [S<I<debhelper options>>] [S<B<--> I<params>>]
dh_auto_install is a debhelper program that tries to automatically install
built files. If there's a Makefile and it contains a "install" target,
then this is done by running make (or MAKE, if the environment variable is
-set). If there is a setup.py, it is used.
+set). If there is a setup.py or Build.PL, it is used.
The files are installed into debian/<package>/ if there is only one binary
package to act on. In the multiple binary package case, the files are
@@ -80,12 +80,15 @@ if (-e "Makefile" || -e "makefile" || -e "GNUmakefile") {
}
}
elsif (-e "setup.py") {
- doit("python setup.py", "install",
+ doit("python", "setup.py", "install",
"--root=$destdir",
"--no-compile", "-O0",
@{$dh{U_PARAMS}});
}
-
+elsif (-e "Build.PL" && -e "Build") {
+ doit("perl", "Build", "install", "destdir=$destdir",
+ "create_packlist=0", @{$dh{U_PARAMS}});
+}
=head1 SEE ALSO