]> git.donarmstrong.com Git - debhelper.git/commitdiff
Merge branch 'master' into buildsystems
authorJoey Hess <joey@gnu.kitenet.net>
Tue, 14 Jul 2009 21:15:18 +0000 (17:15 -0400)
committerJoey Hess <joey@gnu.kitenet.net>
Tue, 14 Jul 2009 21:15:18 +0000 (17:15 -0400)
Conflicts:
debian/changelog

1  2 
debian/changelog
dh_install

diff --combined debian/changelog
index b68e6d24158f1cf95237186af6e888d6de686420,185afb8fe34529bb1049d7ffcd479f7ab38ca305..fda835276526e943fa047abb95b5c68b5ad8aaff
@@@ -1,52 -1,11 +1,60 @@@
 +debhelper (7.3.3) UNRELEASED; urgency=low
 +
 +  * Add ant buildsystem support. Closes: #537021
 +
 + -- Joey Hess <joeyh@debian.org>  Tue, 14 Jul 2009 16:35:50 -0400
 +
 +debhelper (7.3.2) experimental; urgency=low
 +
 +  * Merged debhelper 7.2.21.
 +
 + -- Joey Hess <joeyh@debian.org>  Wed, 08 Jul 2009 21:23:48 -0400
 +
 +debhelper (7.3.1) experimental; urgency=low
 +
 +  * Merged debhelper 7.2.20.
 +
 + -- Joey Hess <joeyh@debian.org>  Thu, 02 Jul 2009 12:28:55 -0400
 +
 +debhelper (7.3.0) experimental; urgency=low
 +
 +  * Modular object oriented dh_auto_* buildsystem support,
 +    contributed by Modestas Vainius
 +    - dh_auto_* --sourcedirectory can now be used to specify a source
 +      directory if sources and/or the whole buildsystem lives elsewhere
 +      than the top level directory. Closes: #530597
 +    - dh_auto_* --builddirectory can now be used to specify a build
 +      directory to use for out of source building, for build systems
 +      that support it. Closes: #480577
 +    - dh_auto_* --buildsystem can now be used to override the autodetected
 +      build system, or force use of a third-party class.
 +    - dh_auto_* --list can be used to list available and selected build
 +      systems.
 +    - Adds support for cmake.
 +    - For the perl_build build system, Build is used consistently
 +      instead of falling back to using the generated Makefile.
 +      Closes: #534332
 +    - Historical dh_auto_* behavior should be preserved despite these
 +      large changes..
 +  * Move two more command-specific options to only be accepted by the commands
 +    that use them. The options are:
 +    --sourcedir, --destdir
 +    If any third-party debhelper commands use either of the above options,
 +    they will be broken, and need to be changed to pass options to init().
 +  * Make dh not complain about unknown, command-specific options passed to it,
 +    and further suppress warnings about such options it passes on to debhelper
 +    commands. This was attempted incompletely before in version 7.2.17.
 +
 + -- Joey Hess <joeyh@debian.org>  Wed, 01 Jul 2009 15:31:20 -0400
 +
+ debhelper (7.2.22) unstable; urgency=low
+   * dh_install: Fix support for the case where --sourcedir=debian/tmp/foo
+     is used. Perl was not being greedy enough and the 'foo' was not stripped
+     from the destination directory in this unusual case. Closes: #537017
+  -- Joey Hess <joeyh@debian.org>  Tue, 14 Jul 2009 17:08:25 -0400
  debhelper (7.2.21) unstable; urgency=low
  
    * Add a versioned dep on perl-base, to get a version that supports
diff --combined dh_install
index c5647c6b7ba693b28a9edeed17941c2f768e12b8,eb196e5cb07c466837efb85dc38f52e1d8793955..a8e08c2ab85400ad4e2371af8485b5323f0820bb
@@@ -48,6 -48,29 +48,6 @@@ directory (or whereever you've told it 
  
  =over 4
  
 -=item B<--autodest>
 -
 -Guess as the destination directory to install things to. If this is
 -specified, you should not list destination directories in
 -debian/package.install files or on the command line. Instead, dh_install
 -will guess as follows:
 -
 -Strip off debian/tmp (or the sourcedir if one is given) from the front of
 -the filename, if it is present, and install into the dirname of the
 -filename. So if the filename is debian/tmp/usr/bin, then that directory
 -will be copied to debian/package/usr/. If the filename is
 -debian/tmp/etc/passwd, it will be copied to debian/package/etc/.
 -
 -Note that if you list exactly one filename or wildcard-pattern on a line by
 -itself in a
 -debian/package.install file, with no explicit destination, then dh_install
 -will automatically guess the destination even if this flag is not set.
 -
 -=item B<--fail-missing>
 -
 -This option is like --list-missing, except if a file was missed, it will
 -not only list the missing files, but also fail with a nonzero exit code. 
 -
  =item B<--list-missing>
  
  This option makes dh_install keep track of the files it installs, and then at
@@@ -61,43 -84,17 +61,43 @@@ you don't miss installing newly added f
  Note that files that are excluded from being moved via the -X option are not
  warned about.
  
 -=item B<--sourcedir=dir>
 +=item B<--fail-missing>
  
 -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.
 +This option is like --list-missing, except if a file was missed, it will
 +not only list the missing files, but also fail with a nonzero exit code. 
  
  =item B<-Xitem>, B<--exclude=item>
  
  Exclude files that contain "item" anywhere in their filename from
  being installed.
  
 +=item B<--sourcedir=dir>
 +
 +Look in the specified directory for files to be installed.
 +
 +Note that this is not the same as the --sourcedirectory option used
 +by the dh_auto_* commands. You rarely need to use this option, since
 +dh_install automatically looks for files in debian/tmp in debhelper
 +compatibility level 7 and above.
 +
 +=item B<--autodest>
 +
 +Guess as the destination directory to install things to. If this is
 +specified, you should not list destination directories in
 +debian/package.install files or on the command line. Instead, dh_install
 +will guess as follows:
 +
 +Strip off debian/tmp (or the sourcedir if one is given) from the front of
 +the filename, if it is present, and install into the dirname of the
 +filename. So if the filename is debian/tmp/usr/bin, then that directory
 +will be copied to debian/package/usr/. If the filename is
 +debian/tmp/etc/passwd, it will be copied to debian/package/etc/.
 +
 +Note that if you list exactly one filename or wildcard-pattern on a line by
 +itself in a
 +debian/package.install file, with no explicit destination, then dh_install
 +will automatically guess the destination even if this flag is not set.
 +
  =item I<file [...] dest>
  
  Lists files (or directories) to install and where to install them to.
@@@ -111,7 -108,6 +111,7 @@@ init(options => 
        "autodest" => \$dh{AUTODEST},
        "list-missing" => \$dh{LIST_MISSING},
        "fail-missing" => \$dh{FAIL_MISSING},
 +      "sourcedir=s" => \$dh{SOURCEDIR},       
  });
  
  my @installed;
@@@ -170,7 -166,8 +170,8 @@@ foreach my $package (@{$dh{DOPACKAGES}}
                        if (! defined $dest) {
                                # Guess at destination directory.
                                $dest=$src;
-                               $dest=~s/^(.*\/)?(\Q$srcdir\E|debian\/tmp)\///;
+                               $dest=~s/^(.*\/)?\Q$srcdir\E\/// ||
+                                       $dest=~s/^(.*\/)?debian\/tmp\///;
                                $dest=dirname("/".$dest);
                                $tmpdest=1;
                        }