diff options
author | Modestas Vainius <modestas@vainius.eu> | 2009-06-30 02:55:41 +0300 |
---|---|---|
committer | Modestas Vainius <modestas@vainius.eu> | 2009-06-30 02:55:41 +0300 |
commit | e1669c2f4bec174ea29725430640bbbca950ff4c (patch) | |
tree | 3550e7e2175b5d7a31c493f38b34e151596a0cdc /Debian/Debhelper/Dh_Getopt.pm | |
parent | 2ddab1cefed6fb9a1ec173e32fd01b0ca7514abb (diff) |
Use ASCII RS for separating options in DH_INTERNAL_OPTIONS.
Since now extra options via dh command line arguments are encouraged, dh will
break when a bit more complex option gets added to DH_INTERNAL_OPTIONS and it
gets misparsed by the debhelper command called from the override. E.g.
debian/rules:
| %:
| dh --builddirectory="build dir"
|
| override_dh_install:
| dh_install
Will fail with something like:
| ....
| make[1]: Entering directory `............'
| dh_install
| cp: cannot stat `debian/tmp/dir': No such file or directory
| dh_install: cp returned exit code 1
| make[1]: *** [override_dh_install] Error 1
So since DH_INTERNAL_OPTIONS is exclusively for internal use, why not to use an
old good ASCII unrepresentable control character as a separator? So I chose
ASCII 1E - RS Record Separator.
Signed-off-by: Modestas Vainius <modestas@vainius.eu>
Diffstat (limited to 'Debian/Debhelper/Dh_Getopt.pm')
-rw-r--r-- | Debian/Debhelper/Dh_Getopt.pm | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Debian/Debhelper/Dh_Getopt.pm b/Debian/Debhelper/Dh_Getopt.pm index 86f3cdba..6e5cacdd 100644 --- a/Debian/Debhelper/Dh_Getopt.pm +++ b/Debian/Debhelper/Dh_Getopt.pm @@ -168,7 +168,7 @@ sub parseopts { # DH_INTERNAL_OPTIONS is used to pass additional options from # dh through an override target to a command. if (defined $ENV{DH_INTERNAL_OPTIONS}) { - @ARGV_extra=split_options_string($ENV{DH_INTERNAL_OPTIONS}); + @ARGV_extra=split(/\x1e/, $ENV{DH_INTERNAL_OPTIONS}); getoptions(\@ARGV_extra, $options); # Avoid forcing acting on packages specified in |