Problems with "spaces" in file names during stage-qa

Mark Felder feld at FreeBSD.org
Mon Nov 4 19:15:25 UTC 2013



On Mon, Nov 4, 2013, at 12:27, Danilo E. Gondolfo wrote:
> On 11/03/13 20:56, Matthias Andree wrote:
> > Am 03.11.2013 14:16, schrieb Danilo E. Gondolfo:
> >> Hello folks,
> >>
> >>  I've had some problems with blank chars in file names during stage-qa.
> >>
> >> Problems like that:
> >>
> >> ====> Running Q/A tests (stage-qa)
> >> sed:
> >> /home/barba/Sources/freebsd-working/ports/games/lincity-ng/work/stage/usr/local/share/lincity-ng/music/01:
> >> No such file or directory
> >> sed: -: No such file or directory
> >> sed: pronobozo: No such file or directory
> >> sed: -: No such file or directory
> >> sed: lincity.ogg: No such file or directory
> >> sed:
> >> /home/barba/Sources/freebsd-working/ports/games/lincity-ng/work/stage/usr/local/share/lincity-ng/music/03:
> >> No such file or directory
> >> sed: -: No such file or directory
> >> sed: Robert: No such file or directory
> >> sed: van: No such file or directory
> >> sed: Herk: No such file or directory
> >> sed: -: No such file or directory
> >> sed: Architectural: No such file or directory
> >> sed: Contemplations.ogg: No such file or directory
> >> sed:
> >> /home/barba/Sources/freebsd-working/ports/games/lincity-ng/work/stage/usr/local/share/lincity-ng/music/02:
> >> No such file or directory
> >> sed: -: No such file or directory
> >> sed: Robert: No such file or directory
> >> sed: van: No such file or directory
> >> sed: Herk: No such file or directory
> >> sed: -: No such file or directory
> >> sed: City: No such file or directory
> >> sed: Blues.ogg: No such file or directory
> >>
> >>
> >> I've fixed this with the attached patch. What do you think?
> > Thanks for taking a stab at this.
> >
> > However, the patch goes only halfway. If we really want to proof it
> > against blanks, we need to tweak IFS - and that would still not proof it
> > against tabs or line feeds in filenames.
> >
> > As reference, I found David A. Wheeler's article most elucidating:
> > <http://www.dwheeler.com/essays/filenames-in-shell.html>
> >
> > Would you like to take another, more robust, stab at the script?
> Tweak IFS is smarter :D
> It reduced my patch to this:
> 
> Index: qa.sh
> ===================================================================
> --- qa.sh    (revision 332718)
> +++ qa.sh    (working copy)
> @@ -110,6 +110,7 @@
>  ret=0
>  cd ${STAGEDIR}
>  for check in ${checks}; do
> +    IFS="$(printf '\n\t')"
>      ${check} || ret=1
>  done
> 
> But the problem with other blanks remains... =/
> 

This is at least a step in the right direction -- it fixes the hundreds
of errors when I build my multimedia/plexmediaserver port. Sadly, it
looks like nobody has a real solution for this...


More information about the freebsd-ports mailing list