]> git.donarmstrong.com Git - debhelper.git/commitdiff
clean up --sourcedir/--sourcedirectory conflict
authorJoey Hess <joey@gnu.kitenet.net>
Mon, 29 Jun 2009 01:47:52 +0000 (21:47 -0400)
committerJoey Hess <joey@gnu.kitenet.net>
Mon, 29 Jun 2009 01:51:12 +0000 (21:51 -0400)
* Move two move 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().

This was done because of a conflict with the --sourcedirectory options
used by dh_auto_*. I originally wanted to make dh_auto_* and dh_install
both use --sourcedir, but that didn't work out.

Debian/Debhelper/Dh_Getopt.pm
debian/changelog
dh_builddeb
dh_install
dh_movefiles
doc/PROGRAMMING

index 9ca9d167ba4a0218a1b16eea50e35a3f996d9d90..9868124cbf996ed82c88b9c9207af94ecbb803ab 100644 (file)
@@ -121,10 +121,6 @@ sub getoptions {
                "A" => \$dh{PARAMS_ALL},
                "all" => \$dh{PARAMS_ALL},
        
-               "sourcedir=s" => \$dh{SOURCEDIR},
-               
-               "destdir=s" => \$dh{DESTDIR},
-               
                "priority=s" => \$dh{PRIORITY},
                
                "h|help" => \&showhelp,
index 9120e2f8c8a7309d8517132cfc67b326b3076ad5..b0cfb96b16548f377041f038c73e76931776fe7e 100644 (file)
@@ -18,6 +18,11 @@ debhelper (7.3.0) UNRELEASED; urgency=low
       Closes: #534332
     - Historical dh_auto_* behavior should be preserved despite these
       large changes..
+  * Move two move 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().
 
  -- Joey Hess <joeyh@debian.org>  Mon, 20 Apr 2009 16:26:08 -0400
 
index 1de8aae24678201c447e8925c2bcb14a60966dfc..45713fd946a64af09c61e78914b1ddbcad4edde4 100755 (executable)
@@ -45,6 +45,7 @@ package.
 
 init(options => {
        "filename=s" => \$dh{FILENAME},
+       "destdir=s" => \$dh{DESTDIR},
 });
 
 # Set the default destination directory.
index c83ec81bb24aef0c79f05ca9e6e0b6441271cd2f..86a868bf66c80e2dc4095dfb14726d6e7d1c2220 100755 (executable)
@@ -48,29 +48,6 @@ directory (or whereever you've told it to look using --sourcedir).
 
 =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
@@ -84,17 +61,43 @@ you don't miss installing newly added files in new upstream releases.
 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.
@@ -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;
index 72cbb0ba38a5457bf56d730e018620c5799c9768..5e1db0fc74f531ce2449c0dd50c03238ded3e839 100755 (executable)
@@ -67,7 +67,9 @@ deleted by dh_clean later.
 
 =cut
 
-init();
+init(options => {
+       "sourcedir=s" => \$dh{SOURCEDIR},       
+});
 
 my $ret=0;
 
index bd79628c4f22cd27f78a9617111665e96c7bc0c4..f338b5779e9dfaa4151cc8ec886f5534ec40d349 100644 (file)
@@ -120,8 +120,6 @@ switch              variable        description
                                those processed here), will apply to all 
                                binary packages the program acts on, not just
                                the first
---sourcedir    SOURCEDIR       will be set to a string
---destdir      DESTDIR         will be set to a string
 --priority     PRIORITY        will be set to a number
 --mainpackage  MAINPACKAGE     controls which package is treated as the
                                main package to act on