bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bug-gnulib] gnulib/gnulib-tool shell quoting problem for Solaris /b


From: Bruno Haible
Subject: Re: [bug-gnulib] gnulib/gnulib-tool shell quoting problem for Solaris /bin/sh
Date: Tue, 24 Jan 2006 20:14:34 +0100
User-agent: KMail/1.5

Mark D. Baushke wrote:
> on a Solaris 9 system
> I have run into problems when /bin/sh is used.
>
> ...
>
> I am getting these two errors:
>
> sed: -e expression #1, char 2: unterminated `s' command
> ../gnulib/gnulib-tool: .*^I,,: not found
> sed: -e expression #1, char 2: unterminated `s' command
> ../gnulib/gnulib-tool: .*^I,,: not found
>
> I have tracked the problems down to the two for loops in this block of
> code starting on line 1152 in the gnulib-tool file:
>
>   # Then the files that are in new-files, but not in old-files:
>   already_present=
>   for f in `LC_ALL=C join -t"$delimiter" -v2 "$tmp"/old-files
> "$tmp"/new-files | sed -e 's,'^.*"$delimiter"',,'`; do case "$f" in
>       build-aux/*) g=`echo "$f" | sed -e "s,^build-aux/,$auxdir/,"` ;;
>       lib/*) g=`echo "$f" | sed -e "s,^lib/,$sourcebase/,"` ;;
>       m4/*) g=`echo "$f" | sed -e "s,^m4/,$m4base/,"` ;;
>       tests/*) g=`echo "$f" | sed -e "s,^tests/,$testsbase/,"` ;;
>       *) g="$f" ;;
>     esac
>     func_add_or_update
>   done
>   # Then the files that are in new-files and in old-files:
>   already_present=true
>   for f in `LC_ALL=C join -t"$delimiter" "$tmp"/old-files "$tmp"/new-files
> | sed -e 's,'^.*"$delimiter"',,'`; do case "$f" in
>       build-aux/*) g=`echo "$f" | sed -e "s,^build-aux/,$auxdir/,"` ;;
>       lib/*) g=`echo "$f" | sed -e "s,^lib/,$sourcebase/,"` ;;
>       m4/*) g=`echo "$f" | sed -e "s,^m4/,$m4base/,"` ;;
>       tests/*) g=`echo "$f" | sed -e "s,^tests/,$testsbase/,"` ;;
>       *) g="$f" ;;
>     esac
>     func_add_or_update
>   done
>
> The value of $delimeter is a control-I character.

Thanks for the report and patch. I've committed a patch equivalent to
yours.

> After using the patch, I only see the Solaris host adding one additional
> '-: not found' error message. For example, I see this on the Solaris 9
> host:
>
> % maint-aux/gnulib-update
> ../gnulib/gnulib-tool: -: not found
> ********************************************************************
> Makefile.am needs updating. Use `cvs diff lib/Makefile.gnulib' to
> view changes.
> ********************************************************************

To find out which command in gnulib-tool is causing this, you can
add a
    set -x
command in line 22 of gnulib-tool, then run maint-aux/gnulib-update
again, and look where in the output you find the "-: not found" error
message. Thanks!

Bruno





reply via email to

[Prev in Thread] Current Thread [Next in Thread]