From debhelper compatibility level 7 on, dh_install will fall back to
looking in debian/tmp for files, if it doesn't find them in the current
-directory (or whereever you've told it to look using --srcdir).
+directory (or whereever you've told it to look using --sourcedir).
=head1 OPTIONS
=item B<--sourcedir=dir>
-Makes all source files be found under dir. If this is specified, it is
-akin to all the source filenames having "dir/" prepended to them.
-
-To make dh_install behave like the old dh_movefiles, move your
-package.files file to package.install and call dh_install with
-"--sourcedir=debian/tmp" appended to the command. This will
-approximate dh_movefiles behaviour, except it will copy files instead
-of moving them.
+Makes all files to be installed be found under dir. If this is
+specified, it is akin to all the filenames having "dir/" prepended
+to them.
=item B<-Xitem>, B<--exclude=item>
my @installed;
my $srcdir = '.';
-$srcdir = $dh{SOURCEDIR}."/" if defined $dh{SOURCEDIR};
+$srcdir = $dh{SOURCEDIR} if defined $dh{SOURCEDIR};
foreach my $package (@{$dh{DOPACKAGES}}) {
my $tmp=tmpdir($package);
my @found = glob "$srcdir/$glob";
if (! compat(6)) {
# Fall back to looking in debian/tmp.
- if (! @found || ! -e $found[0]) {
+ if (! @found || ! (-e $found[0] || -l $found[0])) {
@found = glob "debian/tmp/$glob";
}
}
if (! defined $dest) {
# Guess at destination directory.
$dest=$src;
- my $strip=$srcdir;
- if ($strip eq '.') {
- $strip = "debian/tmp";
- }
- $dest=~s/^(.*\/)?\Q$strip\E//;
- $dest=dirname($dest);
+ $dest=~s/^(.*\/)?\Q$srcdir\E\///;
+ $dest=~s/^(.*\/)?debian\/tmp\///;
+ $dest=dirname("/".$dest);
$tmpdest=1;
}