summaryrefslogtreecommitdiff
path: root/dh_clean
blob: 4b98a6a0430beb72279d59bc1f21bf4f0808b2ab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/usr/bin/perl -w
#
# Clean up $TMP and other tepmorary files generated by the
# build process.

use Debian::Debhelper::Dh_Lib;
init();

foreach $PACKAGE (@{$dh{DOPACKAGES}}) {
	$TMP=tmpdir($PACKAGE);
	$EXT=pkgext($PACKAGE);

	if (! $dh{D_FLAG}) {
		doit("rm","-f","debian/${EXT}substvars",
			"debian/${EXT}postinst.debhelper",
			"debian/${EXT}postrm.debhelper",
			"debian/${EXT}preinst.debhelper",
			"debian/${EXT}prerm.debhelper");
	}
	
	doit ("rm","-rf",$TMP);
}

if (! $dh{D_FLAG}) {
	if (@ARGV) {
		doit("rm","-f","--",@ARGV);
	}

	if (! $dh{K_FLAG}) {
		doit("rm","-f","debian/files");
	}

	# See if some files that would normally be deleted are excluded.
	if (! defined($dh{EXCLUDE_FIND}) || $dh{EXCLUDE_FIND} eq '') {
		$find_options="";
	}
	else {
		$find_options="-a ! ( $dh{EXCLUDE_FIND} )";
	}

	# Remove other temp files.
	# (The \s+ is important, \s won't work because find would get null
	# parameters). Note that you _don't_ quote wildcards used by find
	# in here.
	doit(split(/\s+/,"find . -type f -a
	        ( -name #*# -o -name *~ -o -name DEADJOE
		 -o -name *.orig -o -name *.rej -o -name *.bak
		 -o -name .*.orig -o -name .*.rej -o -name .SUMS
		 -o -name TAGS -o -name core -o ( -path */.deps/* -a -name *.P )
		) $find_options -exec rm -f {} ;"));
}

doit('rm', '-rf', 'debian/tmp')
	if -x 'debian/tmp' && ! Debian::Debhelper::Dh_Lib::compat(1);