Bug#865009: Unable to use quotes surrounding spaces in DEBBUILDOPTS

James Clarke jrtc27 at debian.org
Sun Jun 18 17:09:18 UTC 2017


Package: pbuilder
Version: 0.228.7
Severity: normal
Control: found -1 0.228.1

If DEBBUILDOPTS contains options with spaces, get_changes_options and
should_clean_source (and get_source_options since 0.228.3) don't work
properly, and you get errors like the following:

> /usr/lib/pbuilder/pbuilder-modules: eval: line 967: unexpected EOF while looking for matching `''
> /usr/lib/pbuilder/pbuilder-modules: eval: line 968: syntax error: unexpected end of file
> /usr/lib/pbuilder/pbuilder-modules: eval: line 967: unexpected EOF while looking for matching `''
> /usr/lib/pbuilder/pbuilder-modules: eval: line 968: syntax error: unexpected end of file
> I: Running cd /build/debootstrap-1.0.89~bpo8+1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin" HOME="/nonexistent" dpkg-buildpackage -us -uc  -A -m'Mattia Rizzolo <mattia at debian.org>' -A -rfakeroot && env PATH="/usr/sbin:/usr/bin:/sbin:/bin" HOME="/nonexistent" dpkg-genchanges -S '-m'Mattia' > ../debootstrap_1.0.89~bpo8+1_source.changes
> /bin/sh: 2: Syntax error: Unterminated quoted string

The problem stems from the fact that bash ignores the quotes in the
variable itself when performing word expansion:

> $ L='a "b c" d'; for a in $L; do echo $a; done
> a
> "b
> c"
> d

We need this to put "b c" as one word, otherwise they get treated as
separate options (and eval is unhappy due to the non-matching quotes).



More information about the Pbuilder-maint mailing list