Hi Philipp,
On Fri, Mar 04, 2016 at 03:59:10PM +0100, Philipp Hahn wrote:
> Package: git-buildpackage
> Version: 0.6.22
> Followup-For: Bug #692803
> 
> Dear Maintainer,
> 
> /usr/bin/git-pbuilder contains:
> > 266 # Add all of the additional arguments we got on the command line, but 
> > quote
> > 267 # them from the shell since they'll undergo another round of shell 
> > expansion
> > 268 # when the pbuilder runs debbuild.
> ...
> > 270 for arg in "$@" ; do
> ...
> > 274     DEBBUILDOPTS+=" $(shell_quote "$arg")"
> > 275 done
> 
> This seems to be right only when *not* using --use-pdebuild-internal, as
> 
> /usr/lib/pbuilder/pdebuild-checkparams:
> >  44 »···--debbuildopts)
> >  45 »···    DEBBUILDOPTS="${2:+$DEBBUILDOPTS $2}"
> passes the argument unmodified, but then
> 
> /usr/bin/pdebuild:
> >  46 if [ "${USE_PDEBUILD_INTERNAL}" = 'yes' ]; then
> >  57 »···--debbuildopts "${DEBBUILDOPTS}" \
> passes on the argument unmodified when using the internal pdebuild, but
> 
> >  74 else
> >  78     echo "dpkg-buildpackage -S -us -uc -r${BUILDSOURCEROOTCMD} 
> > $DEBBUILDOPTS" | \
> >  80 »···/bin/bash
> does splitting on IFS when not using it.
> >  90 fi
> 
> 
> For completeness:
> 
> /usr/lib/pbuilder/pdebuild-internal:
> >  48 »···--debbuildopts)
> >  50 »···    DEBBUILDOPTS="${2:+${DEBBUILDOPTS:+$DEBBUILDOPTS }$2}";
> un-splitted
> > 123 export DEBBUILDOPTS
> > 124 CMD="/usr/bin/dpkg-buildpackage -rfakeroot -us -uc "'${DEBBUILDOPTS}'
> > 128 if echo "$CMD" | \
> > 129     su -p pbuser;·
> 
> does *not* spit on IFS, so DEBBUILDOPTS still contains the 's from 
> shell_quote() leading to the error
> 
> > I: Running /usr/bin/dpkg-buildpackage -rfakeroot -us -uc ${DEBBUILDOPTS}
> > dpkg-buildpackage: unknown option or argument '-sa'
> >
> > Use --help for program usage information.

Could you add examples how you invoke gbp to see the error. Is it just
passing --use-pdebuild-internal as --git-pbuilder-options ?

I do think we need to skip the quoting in this case.

cc'ing Russ since I'm not sure if he's following gbp bugs.

> PS: I still wonder why --use-pdebuild-internal is not the default, as I
> don't want to pollute my development environment with all those build
> dependencies. That makes running "debian/rules clean" sometimes more
> complicate as I'm missing some required dependencies for that, but
> still..."

I just use "-nc" when invoking gbp.

Cheers,
 -- Guido

Reply via email to