summaryrefslogtreecommitdiff
path: root/dh_prep
diff options
context:
space:
mode:
Diffstat (limited to 'dh_prep')
-rwxr-xr-xdh_prep66
1 files changed, 66 insertions, 0 deletions
diff --git a/dh_prep b/dh_prep
new file mode 100755
index 00000000..747c9c70
--- /dev/null
+++ b/dh_prep
@@ -0,0 +1,66 @@
+#!/usr/bin/perl -w
+
+=head1 NAME
+
+dh_prep - preform cleanups in preparation for building a binary package
+
+=cut
+
+use strict;
+use Debian::Debhelper::Dh_Lib;
+
+=head1 SYNOPSIS
+
+B<dh_prep> [S<I<debhelper options>>] [B<-X>I<item>]
+
+=head1 DESCRIPTION
+
+dh_prep is a debhelper program that performs some file cleanups in
+preparation for building a package. (This is what dh_clean -k used to do.)
+It removes the package build directories, debian/tmp, and some temp files
+that are generated during the build. Putting this at the start of the build
+process makes the build process idempotent.
+
+=head1 OPTIONS
+
+=item B<-X>I<item> B<--exclude=>I<item>
+
+Exclude files that contain "item" anywhere in their filename from being
+deleted, even if they would normally be deleted. You may use this option
+multiple times to build up a list of things to exclude.
+
+=back
+
+=cut
+
+init();
+
+foreach my $package (@{$dh{DOPACKAGES}}) {
+ my $tmp=tmpdir($package);
+ my $ext=pkgext($package);
+
+ doit("rm","-f","debian/${ext}substvars")
+ unless excludefile("debian/${ext}substvars");
+
+ # These are all debhelper temp files, and so it is safe to
+ # wildcard them.
+ complex_doit("rm -f debian/$ext*.debhelper");
+
+ doit ("rm","-rf",$tmp."/")
+ unless excludefile($tmp);
+}
+
+doit('rm', '-rf', 'debian/tmp') if -x 'debian/tmp' && ! compat(1) &&
+ ! excludefile("debian/tmp");
+
+=head1 SEE ALSO
+
+L<debhelper(7)>
+
+This program is a part of debhelper.
+
+=head1 AUTHOR
+
+Joey Hess <joeyh@debian.org>
+
+=cut