]> 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},
        
                "A" => \$dh{PARAMS_ALL},
                "all" => \$dh{PARAMS_ALL},
        
-               "sourcedir=s" => \$dh{SOURCEDIR},
-               
-               "destdir=s" => \$dh{DESTDIR},
-               
                "priority=s" => \$dh{PRIORITY},
                
                "h|help" => \&showhelp,
                "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..
       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
 
 
  -- 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},
 
 init(options => {
        "filename=s" => \$dh{FILENAME},
+       "destdir=s" => \$dh{DESTDIR},
 });
 
 # Set the default destination directory.
 });
 
 # 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
 
 
 =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
 =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.
 
 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<-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.
 =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},
        "autodest" => \$dh{AUTODEST},
        "list-missing" => \$dh{LIST_MISSING},
        "fail-missing" => \$dh{FAIL_MISSING},
+       "sourcedir=s" => \$dh{SOURCEDIR},       
 });
 
 my @installed;
 });
 
 my @installed;
index 72cbb0ba38a5457bf56d730e018620c5799c9768..5e1db0fc74f531ce2449c0dd50c03238ded3e839 100755 (executable)
@@ -67,7 +67,9 @@ deleted by dh_clean later.
 
 =cut
 
 
 =cut
 
-init();
+init(options => {
+       "sourcedir=s" => \$dh{SOURCEDIR},       
+});
 
 my $ret=0;
 
 
 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
                                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
 --priority     PRIORITY        will be set to a number
 --mainpackage  MAINPACKAGE     controls which package is treated as the
                                main package to act on