On Sun, Nov 28, 2010 at 8:58 PM, Gaetan Nadon <[email protected]> wrote: > On Sun, 2010-11-28 at 19:58 +0100, Roland Mainz wrote: > > On Sun, Nov 28, 2010 at 7:47 PM, Gaetan Nadon <[email protected]> wrote: >> On Sun, 2010-11-28 at 15:47 +0100, Jan Engelhardt wrote: >> >> Signed-off-by: Jan Engelhardt <[email protected]> >> --- >> autogen.sh | 8 ++++---- >> 1 files changed, 4 insertions(+), 4 deletions(-) >> >> diff --git a/autogen.sh b/autogen.sh >> index 904cd67..90d2520 100755 >> --- a/autogen.sh >> +++ b/autogen.sh >> @@ -1,12 +1,12 @@ >> #! /bin/sh >> >> -srcdir=`dirname $0` >> +srcdir=`dirname "$0"` >> test -z "$srcdir" && srcdir=. >> >> ORIGDIR=`pwd` >> -cd $srcdir >> +cd "$srcdir" >> >> autoreconf -v --install || exit 1 >> -cd $ORIGDIR || exit $? >> +cd "$ORIGDIR" || exit $? >> >> -$srcdir/configure --enable-maintainer-mode "$@" >> +exec "$srcdir/configure" --enable-maintainer-mode "$@" >> >> I am not expert in quoting, can you explain how this is more appropriate? >> If it is, then all other autogen.sh should be changed as well. >> I am always looking for improvement. > > Without double-quotes an variable expansion (e.g. ${var}) is subject > to field splitting (for each character listed in the variable IFS - > which by default contains <space>, <tab>, <newline>). > Example (note that "sh" is expected to be a POSIX sh-like shell): > Without double-quotes the "printf" utility will see the value "foo > bar" as two arguments (note that printf(1) will repeatedly use the > format until all arguments have been used-up): > -- snip -- > $ sh -c 'x="foo bar" ; printf "|%s|\n" $x' > |foo| > |bar| > -- snip -- > With double-quotes it will print: > -- snip -- > $ sh -c 'x="foo bar" ; printf "|%s|\n" "$x"' > |foo bar| > -- snip -- > > It's usually recommended to use double-quotes unless field splitting > is really wanted (or set IFS='' to disable field-splitting). > > Thanks. I tried to run autogen.sh on a module installed in a source > directory containing a space > and it failed.
Note the issue mainly applies to users on Windows which use environments like Cygwin, UWIN, SFU etc. where user homedirs very often have whitespaces etc. in the name of their home directory. ---- Bye, Roland -- __ . . __ (o.\ \/ /.o) [email protected] \__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer /O /==\ O\ TEL +49 641 3992797 (;O/ \/ \O;) _______________________________________________ [email protected]: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg Your subscription address: [email protected]
