summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/copyright2
-rwxr-xr-xt/dh_install30
-rwxr-xr-xt/override_target22
3 files changed, 52 insertions, 2 deletions
diff --git a/debian/copyright b/debian/copyright
index ffb117c9..7b123367 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -7,7 +7,7 @@ License: GPL-2+
Files: examples/*, autoscripts/*
Copyright: 1997-2008 Joey Hess <joeyh@debian.org>
Licence: other
- These files are in are in the public domain.
+ These files are in the public domain.
.
Pedants who belive I cannot legally say that code I have written is in
the public domain may consider them instead to be licensed as follows:
diff --git a/t/dh_install b/t/dh_install
index 37aff7b2..2557fbf4 100755
--- a/t/dh_install
+++ b/t/dh_install
@@ -1,6 +1,6 @@
#!/usr/bin/perl
use Test;
-plan(tests => 13);
+plan(tests => 21);
system("rm -rf debian/debhelper debian/tmp");
@@ -12,6 +12,27 @@ ok(-e "debian/debhelper/usr/bin/foo");
ok(! -e "debian/debhelper/usr/bin/bar");
system("rm -rf debian/debhelper debian/tmp");
+# debian/tmp explicitly specified in filenames in older compat level
+system("mkdir -p debian/tmp/usr/bin; touch debian/tmp/usr/bin/foo; touch debian/tmp/usr/bin/bar");
+system("DH_COMPAT=6 ./dh_install debian/tmp/usr/bin/foo");
+ok(-e "debian/debhelper/usr/bin/foo");
+ok(! -e "debian/debhelper/usr/bin/bar");
+system("rm -rf debian/debhelper debian/tmp");
+
+# --sourcedir=debian/tmp in older compat level
+system("mkdir -p debian/tmp/usr/bin; touch debian/tmp/usr/bin/foo; touch debian/tmp/usr/bin/bar");
+system("DH_COMPAT=6 ./dh_install --sourcedir=debian/tmp usr/bin/foo");
+ok(-e "debian/debhelper/usr/bin/foo");
+ok(! -e "debian/debhelper/usr/bin/bar");
+system("rm -rf debian/debhelper debian/tmp");
+
+# redundant --sourcedir=debian/tmp in v7+
+system("mkdir -p debian/tmp/usr/bin; touch debian/tmp/usr/bin/foo; touch debian/tmp/usr/bin/bar");
+system("./dh_install --sourcedir=debian/tmp usr/bin/foo");
+ok(-e "debian/debhelper/usr/bin/foo");
+ok(! -e "debian/debhelper/usr/bin/bar");
+system("rm -rf debian/debhelper debian/tmp");
+
# #537017: --sourcedir=debian/tmp/foo is used
system("mkdir -p debian/tmp/foo/usr/bin; touch debian/tmp/foo/usr/bin/foo; touch debian/tmp/foo/usr/bin/bar");
system("./dh_install", "--sourcedir=debian/tmp/foo", "usr/bin/bar");
@@ -33,6 +54,13 @@ ok(-e "debian/debhelper/usr/bin/foo");
ok(-e "debian/debhelper/usr/bin/bar");
system("rm -rf debian/debhelper debian/tmp");
+# no fallback to debian/tmp before v7
+system("mkdir -p debian/tmp/usr/bin; touch debian/tmp/usr/bin/foo; touch debian/tmp/usr/bin/bar");
+system("DH_COMPAT=6 ./dh_install usr/bin 2>/dev/null");
+ok(! -e "debian/debhelper/usr/bin/foo");
+ok(! -e "debian/debhelper/usr/bin/bar");
+system("rm -rf debian/debhelper debian/tmp");
+
# #534565: glob expands to dangling symlink -> should install the dangling link
system("mkdir -p debian/tmp/usr/bin; ln -s broken debian/tmp/usr/bin/foo; touch debian/tmp/usr/bin/bar");
system("./dh_install", "usr/bin/*");
diff --git a/t/override_target b/t/override_target
new file mode 100755
index 00000000..995d032c
--- /dev/null
+++ b/t/override_target
@@ -0,0 +1,22 @@
+#!/usr/bin/perl
+use Test;
+plan(tests => 1);
+
+# This test is here to detect breakage in
+# dh's rules_explicit_target, which parses
+# slightly internal make output.
+system("mkdir -p t/tmp/debian");
+system("cp debian/control t/tmp/debian");
+open (OUT, ">", "t/tmp/debian/rules") || die "$!";
+print OUT <<EOF;
+#!/usr/bin/make -f
+%:
+ dh \$@
+override_dh_auto_build:
+ echo "override called"
+EOF
+close OUT;
+system("chmod +x t/tmp/debian/rules");
+my @output=`cd t/tmp && debian/rules build 2>&1`;
+ok(grep { m/override called/ } @output);
+system("rm -rf t/tmp");