diff options
-rw-r--r-- | debian/copyright | 2 | ||||
-rwxr-xr-x | t/dh_install | 30 | ||||
-rwxr-xr-x | t/override_target | 22 |
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"); |